Latar Belakang
Saya mengalami kesalahan kecil logrotate ... Logrotate akan memutar log yang diarsipkan dengan salah langkah menyebabkan pertumbuhan kuadrat file di my /var/log/
. Dan ketika saya tahu ada sesuatu yang salah, /var/log/
sudah berisi beberapa juta file ...
Saya berhasil (setelah beberapa hairloss dan menemukan / sed / grep magic) menghapus semua file yang menyinggung dan memperbaiki konfigurasi logrotate saya. Dan pikir semuanya baik-baik saja ...
Masalah
Setiap kali saya ls
/ du -hs
atau daftar isi /var/log/
(yang sekarang berisi 80mb arsip / log dan paling banyak beberapa ratus file) proses melakukan itu hang selama satu atau dua menit. Saya percaya ini entah bagaimana terkait dengan kesalahan logrotate tapi saya tidak yakin, itu bisa menjadi sesuatu yang lain. Lagi pula saya bingung ke mana harus mulai debugging atau mencari perbaikan untuk ini. Tolong bantu: 3
Info lain
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
Saya pikir ini: Berapa banyak file dalam direktori yang terlalu banyak? (Mengunduh data dari internet) terkait tetapi saya tidak memiliki file yang tersisa lagi.
Edit
Masalahnya tetap ada bahkan setelah panggilan untuk init 1
jadi saya pikir aman untuk berasumsi tidak ada proses lain untuk disalahkan kecuali FS.
Solusi (sebagaimana diterapkan dari jawaban yang diterima)
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
sumber