Đó là khá dễ dàng cho một đĩa có một số lượng lớn các inodes sử dụng ngay cả nếu đĩa không phải là rất đầy đủ.
Một inode được cấp phát cho tệp, vì vậy nếu bạn có nhiều tệp, mỗi byte 1 byte, bạn sẽ hết thời lượng inodes trước khi hết đĩa.
Cũng có thể xóa tệp sẽ không làm giảm số lượng inode nếu các tệp có nhiều liên kết cứng. Như tôi đã nói, inodes thuộc về các tập tin, không entry thư mục. Nếu một tệp có hai mục nhập được liên kết với nó, việc xóa một tệp sẽ không giải phóng inode.
Ngoài ra, bạn có thể xóa mục nhập thư mục nhưng nếu quá trình đang chạy vẫn mở tệp, thì inode sẽ không được giải phóng.
Lời khuyên ban đầu của tôi là xóa tất cả các tệp mà bạn có thể, sau đó khởi động lại hộp để đảm bảo không còn quy trình nào giữ các tệp đang mở.
Nếu bạn làm điều đó và bạn vẫn gặp rắc rối và cho chúng tôi biết.
Bằng cách này, nếu bạn đang tìm kiếm các thư mục có chứa rất nhiều tác phẩm, kịch bản này có thể giúp:
#!/bin/bash
# count_em - count files in all subdirectories under current directory.
echo 'echo $(ls -a "$1" | wc -l) $1' >/tmp/count_em_$$
chmod 700 /tmp/count_em_$$
find . -mount -type d -print0 | xargs -0 -n1 /tmp/count_em_$$ | sort -n
rm -f /tmp/count_em_$$
Bạn muốn cung cấp cho bạn 50 điểm cho câu hỏi này. Làm thế nào tôi có thể làm được! :) – Sophy
@Sophy Đừng làm vậy. bạn sẽ bị tự động cấm –
@StevenLu Cảm ơn bạn đã thông tin! Tôi muốn tặng anh ấy vì tôi đã dành vài ngày để giải quyết vấn đề của mình. Nhưng vấn đề này có thể giúp tôi. Cảm ơn một lần nữa, – Sophy