Wpisy otagowane ‘Gentoo Linux’

bytes-per-inode [2]

środa, 29 Wrzesień 2010

Już kiedyś pisałem o dopasowaniu inode do wielkości dysków. Pisałem nie przeczytawszy wcześniej dokumentacji. Teraz wiem więcej i znam przełącznik -T do mke2fs.

Za co jest odpowiedzialny? Wskazujemy w nim wykorzystanie systemu plików tak, by mke2fs mógł optymalnie dobrać parametry (nie musimy tego robić doświadczalnie jak ja wcześniej). Te typy są zdefiniowane w pliku /etc/mke2fs.conf. Jak podaje dokumentacja, system plików o rozmiarze poniżej 3 MB zostanie potraktowany jako floppy, powyżej 3 MB, a poniżej 512 MB – small, a większe dostaną domyślne wartości (można zdefiniować dla nich typ default).

Podtrzymuję, że dysk do 4 GB (a może 8 GB) to też typ small i w przypadku Gentoo Linux warto zmniejszyć bytes/inode ratio (a na pewno jeśli chcemy trzymać portage).

Some things might become overridden

środa, 29 Wrzesień 2010

To był kolejny leniwy dzień…
Zaczęło się od aktualizacji oprogramowania, wśród którego był również BIND:

[...]
1285757303: >>> emerge (10 of 11) net-dns/bind-9.7.1_p2 to /
1285757305: === (10 of 11) Cleaning (net-dns/bind-9.7.1_p2::/usr/portage/net-dns/bind/bind-9.7.1_p2.ebuild)
1285757305: === (10 of 11) Compiling/Merging (net-dns/bind-9.7.1_p2::/usr/portage/net-dns/bind/bind-9.7.1_p2.ebuild)
1285757568: === (10 of 11) Merging (net-dns/bind-9.7.1_p2::/usr/portage/net-dns/bind/bind-9.7.1_p2.ebuild)
1285757573: >>> AUTOCLEAN: net-dns/bind:0
1285757573: === Unmerging... (net-dns/bind-9.4.3_p5)
1285757574: >>> unmerge success: net-dns/bind-9.4.3_p5
1285757576: === (10 of 11) Post-Build Cleaning (net-dns/bind-9.7.1_p2::/usr/portage/net-dns/bind/bind-9.7.1_p2.ebuild)
1285757576: ::: completed emerge (10 of 11) net-dns/bind-9.7.1_p2 to /
[...]

(więcej…)

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.