Fórum Root.cz
Hlavní témata => Software => Téma založeno: romanio 06. 10. 2016, 19:04:25
-
Ahoj,
na Debianu Wheezy na PPC platformě jsem nastavil logování do ramlogu. Protože jsem nedokázal odhadnout, jak velký bude potřeba, nastavil jsem pro začátek 20MB s tím, že to budu sledovat a případně to upravím směrem dolů. Stav je nyní :
$ df -ht tmpfs
Souborový systém Velikost Užito Volno Uži% Připojeno do
ramlog-tmpfs 20M 4,6M 16M 23% /var/log
Zjistil jsem však, že velikost všech souborů je celkem asi 800kB. Nejmenší alokovaný prostor proti 4kb na x86 je 64kB:
$ ls -lsh
celkem 3,2M
0 drwxr-xr-x 2 root root 160 říj 1 01:00 apt
128K -rw-r----- 1 root adm 90K říj 6 18:08 auth.log
64K -rw-r----- 1 root adm 2,0K říj 6 01:02 daemon.log
64K -rw-r--r-- 1 root adm 14K říj 5 18:33 dmesg
64K -rw-r--r-- 1 root root 50K říj 5 17:45 dpkg.log
128K -rw-r----- 1 root adm 75K říj 6 16:31 kern.log
0 -rw-r----- 1 root adm 0 srp 23 21:59 lpr.log
64K -rw-r----- 1 root adm 63K říj 6 01:00 messages
0 drwxr-xr-x 2 root root 100 srp 23 21:59 news
64K -rw-r--r-- 1 root root 728 říj 6 01:00 ramlog
64K -rw-r----- 1 root adm 444 říj 6 16:31 syslog
Zkráceno!
Dle toho, co jsem zatím zjistil, to souvisí s:
$ getconf PAGE_SIZE
65536
$ cat /proc/cpuinfo
processor : 0
cpu : APM82181
clock : 800.000008MHz
revision : 28.131 (pvr 12c4 1c83)
bogomips : 1600.00
timebase : 800000008
platform : PowerPC 44x Platform
model : amcc,apollo3g
Memory : 256 MB
Chci se zeptat:
1. Velikost PAGE_SIZE se dá nějak nastavit, nebo je "zadrátovaná" v kernelu pro danou platformu ?
2. Dá se věřit v případě tmpfs příkazům df, ls -s co se týče alokovaného místa (opravdu ty logy zabírají tolik)?
3. pokud ano, není to trochu plýtvání ? Chápu že s X GB RAM to nikoho netrápí, ale s mými 256MB se každý volný hodí.
Díky.
-
Velikost (normální) stránky je konfigurační volbou jádra při jeho překladu. Tvé jádro má nastaveno PPC_64K_PAGES. Pro malou RAM je to podle mě skutečně plýtvání.
-
Trochu mimo dotaz: podle mě není vůbec jisté, že ramlog šetří zápisy na kartu/disk.
Logy se totiž zapisují pomocí O_APPEND, takže přijdou ZA konec souboru.
Ramlog naproti tomu zapisuje jednou za hodinu pomocí rsync, takže kopíruje CELÝ soubor. To může být v závislosti na velikosti souborů i řádově víc než "append".
Ramlog má i jiné problémy, např. že kopíruje soubory do/z RAM právě v době, kdy se do nich nejvíce zapisuje (start/stop systému); v případě pádu systému nejsou logy synchronizované a není možné zjistit příčinu pádu atd.
-
Velikost (normální) stránky je konfigurační volbou jádra při jeho překladu. Tvé jádro má nastaveno PPC_64K_PAGES. Pro malou RAM je to podle mě skutečně plýtvání.
Díky za odpověď. V úvodu jsem nenapsal, že se jedná o NAS WD Mybook, na který jsem instaloval čistý systém vč. jádra. Teď jsem hledal informace, jestli by PAGE_SIZE mohlo být menší a narazil na stránku
http://n-dimensional.de/blog/2012/05/01/wd-mybook-live-data-rescue/ (http://n-dimensional.de/blog/2012/05/01/wd-mybook-live-data-rescue/)
kde je odpověď, proč je to zrovna takhle : The Linux kernel driver for the ext4 filesystem only handles filesystems with a block size between 512 and PAGE_SIZE. No a datový oddíl má skutečně block size 64kB, takže důvod je jasný (původní záměr výrobce) i skutečnost, že se s tím budu muset smířit.
Možná bystačilo vykoumat, jak nechat v ramlogu pouze aktuální logy, ale aby na hdd byly všechny, tj včetně odrotovaných. Neřešil jste to někdo?
Trochu mimo dotaz: podle mě není vůbec jisté, že ramlog šetří zápisy na kartu/disk.
Tohle mě netrápí, ramlog tam mám proto, aby se disk ve standby neroztáčel kvůli každému zápisu do logů.