danh sách ext4 của các tệp rất chậm trong một thư mục cụ thể có chứa nhiều tệp trước đó


16

Lý lịch

Tôi đã có một lỗi sai logrotate nhỏ ... Logrotate sẽ xoay các bản ghi lưu trữ bằng cách đánh lạc hướng gây ra sự tăng trưởng bậc hai của các tệp trong tôi /var/log/. Và khi tôi bắt được gió rằng có thứ gì đó không ổn, /var/log/đã chứa vài triệu tệp ...

Tôi đã quản lý (sau một số phép thuật Hairloss và find / sed / grep) xóa tất cả các tệp vi phạm và sửa cấu hình logrotate của tôi. Và nghĩ rằng tất cả đều ổn ...

Vấn đề

Bất cứ khi nào tôi ls/ du -hshoặc nói cách khác là liệt kê nội dung của /var/log/(hiện chứa 80mb lưu trữ / nhật ký và nhiều nhất là vài trăm tệp), quá trình thực hiện đó sẽ bị treo trong một hoặc hai phút. Tôi tin rằng điều này bằng cách nào đó có liên quan đến sai lệch logrotate nhưng tôi không chắc chắn, nó có thể là một cái gì đó khác. Dù sao tôi cũng không biết bắt đầu gỡ lỗi ở đâu hoặc tìm cách khắc phục vấn đề này. Xin hãy giúp đỡ: 3

Thông tin khác

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 

Tôi nghĩ vậy: Có bao nhiêu tệp trong một thư mục quá nhiều? (Tải xuống dữ liệu từ mạng) có liên quan nhưng tôi không còn các tệp nữa.

Biên tập

Vấn đề vẫn tồn tại ngay cả sau khi có cuộc gọi đến init 1 vì vậy tôi nghĩ an toàn khi cho rằng không có quy trình nào khác để đổ lỗi ngoài FS.

Giải pháp (như được áp dụng từ câu trả lời được chấp nhận)

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

Câu trả lời:


25

Thư mục chỉ bao giờ tăng kích thước, không co lại. Hãy thử di chuyển tất cả các tệp đó vào một thư mục tạm thời (như log2), sau đó rmdir thư mục cũ và đổi tên tệp tạm thời thành thư mục vĩnh viễn mới.


Tôi chỉ làm điều này khi bạn trả lời. Nó hoạt động :) Đáng buồn thay, tôi không có đủ danh tiếng để nâng cao bạn: /
Emily L.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.