Arka fon
Küçük bir logrotate misshap'im vardı ... Logrotate, arşivlenmiş günlükleri misstake ile döndürür ve dosyamda ikinci dereceden bir büyümeye neden olur /var/log/
. Ve rüzgarı yakaladığım zaman, bir şeylerin kötü olduğunu, /var/log/
zaten birkaç milyon dosya içerdiğini ...
(Bazı hairloss ve find / sed / grep magic'den sonra) tüm rahatsız edici dosyaları kaldırmayı ve logrotate config'imi düzeltmeyi başardım. Ve her şeyin iyi olduğunu düşündüm ...
Sorun
Her ne zaman I ls
/ du -hs
veya başka bir şekilde listelediğimde /var/log/
(şimdi 80mb arşiv / günlük ve en fazla birkaç yüz dosya içerir) bu işlemi iyi bir iki dakika boyunca askıya alır. Bunun bir şekilde logrotate misshap ile ilgili olduğuna inanıyorum ama emin değilim, başka bir şey olabilir. Her neyse, hata ayıklamaya veya bunun için bir düzeltme aramaya nerede kayboldum. Lütfen yardım edin: 3
Diğer bilgiler
uname -a
Linux xxx 3.3.8-gentoo #18 SMP Sat Sep 21 22:44:40 CEST 2013 x86_64 Intel(R)
Core(TM)2 CPU 4400 @ 2.00GHz GenuineIntel GNU/Linux
cat /proc/meminfo
MemTotal: 2051552 kB
MemFree: 75612 kB
Buffers: 9016 kB
Cached: 1740608 kB
SwapCached: 0 kB
CFQ IO scheduler + SLUB allocator
Bunu düşündüm: Bir dizindeki kaç dosya çok fazla? (Net veri indirme) ilgili ama artık dosyaları kalmadı.
Düzenle
Bir çağrıdan sonra bile sorun devam ediyor, init 1
bu yüzden FS'den başka suçlanacak bir süreç olmadığını varsaymanın güvenli olduğunu düşünüyorum.
Çözüm (kabul edilen cevaptan uygulandığı şekliyle)
init 1
mv /var/log /var/log1
mkdir /var/log
chmod --reference=/var/log1 /var/log
chown --reference=/var/log1 /var/log
tar -C /var/log1 -cvp . | tar -C /var/log -xvp
rm -rf /var/log1
init 5