Wpisy otagowane ‘Gentoo’

Licencje na oprogramowanie w Gentoo

piątek, 5 Luty 2010

Zgodnie z tym, co można wyczytać w Gentoo wiki, począwszy od wersji 2.1.7 portage (10 października 2009 r.) jest możliwość zarządzania licencjami na oprogramowanie. Tzn. blokować paczki na podstawie licencji, np. instalować tylko te zupełnie wolne (czyli zaakceptowane przez Free Software Foundation).
(więcej…)

Gentoo i bytes-per-inode (ext3)

czwartek, 30 Październik 2008

Zakładając małą partycję ext3 w Gentoo (do 4 GB) przy pobraniu drzewa portage szybko skończy nam się miejsce na dysku, a w zasadzie ilość i-węzłów. Doświadczalnie wiem, że warto przestawić bytes-per-inode na jakieś 8’192 (mniejsze niepotrzebne). Domyślna wartość to 16’384.

Odpowiedni parametr do mke2fs to -i <bytes-per-inode>.

Zabezpieczony: Media Server

wtorek, 21 Październik 2008

Ten wpis jest zabezpieczony hasłem. Aby go zobaczyć, proszę wprowadzić poniżej swoje hasło:


Xen na Gentoo Linux i problem z wieloma adresami IP na interfejsie dla bridge

poniedziałek, 22 Wrzesień 2008

Problem:

  • Przy wielu adresach IP przypisanych do jednego interfejsu występuje problem przy starcie Xen.

Środowisko:

Dzieje się tak prawdopodobnie dlatego, że skrypt network-bridge (z /etc/xen/scripts; #!/bin/bash) w funkcji get_ip_info() pobiera adres do zmiennej addr_pfx za pomocą następującego zestawu poleceń (linia 104):

ip addr show dev $1 | egrep '^ *inet' | sed -e 's/ *inet //' -e "s/$1//"

co z kolei jest wykorzystywane w funkcji do_ifup() (linia 113):

ip addr add ${addr_pfx} dev $1

Na systemie z wieloma adresami (> 1) addr_pfx może wyglądać np. tak:

192.168.1.152/24 brd 192.168.1.255 scope global
192.168.160.153/24 brd 192.168.160.255 scope global

Przy do_ifup() pojawi się błąd:

Error: either „local” is duplicate, or „192.168.160.153/24″ is a garbage.

Podobny błąd był zgłoszony przez shadow(at)overdrawn(dot)net 16 stycznia 2008 r., ale dotychczas oficjalnie nic nie zostało z tym zrobione (Peter Große wyraźnie wskazuje na błąd skryptu i proponuje własną łatę na to).

Gentoo Linux runscript depend loop

wtorek, 29 Lipiec 2008

Nie wiem co przeciętny człowiek myśli pod prysznicem, ale mi wpadł do głowy pomysł zapętlenia skryptów startowych (sprawdzenia czy to w ogóle możliwe i jak zabezpieczyli się przed tym wydawcy danej dystrybucji / systemu).
Na początek Gentoo Linux (leży najbliżej prysznica). Prosty skrypt dummy-1 wygląda tak:

depend() {
need dummy-2
}

start() {
echo "dummy-1 on"
}

stop() {
echo "dummy-1 off"
}

Do tego jest jeszcze dummy-2 i dummy-3 różniące się od siebie wymaganiami (depend() -> need), tak, aby każdy z nich wymagał kolejnego, a ostatni – pierwszego. W ten sposób powstaje teoretycznie zapętlenie. Co uzyskamy po próbie uruchomienia? Poniżej wynik:

abg-ng ~ # /etc/init.d/dummy-1 start
* ERROR:  cannot start dummy-3 as dummy-1 could not start
* ERROR:  cannot start dummy-2 as dummy-3 could not start
* ERROR:  cannot start dummy-1 as dummy-2 could not start

Czyli nie da się. Najpierw dummy-1 wymaga, by dummy-2 się uruchomił, ten z kolei chce dummy-3, który ostatecznie ‘psuje zabawę’, bo wymaga dummy-1, który nie potrafił się uruchomić, więc jako pierwszy zgłasza błąd. Później dwa kolejne.

Na drugi ogień pójdzie FreeBSD z PROVIDE i REQUIRE.