Hướng dẫn kiểm tra thông số inodes

1. Inodes là gì?

Inodes là một cấu trúc dữ liệu trong một hệ thống tập tin Unix. Số lượng node trong ổ cứng bằng với số lượng tệp và thư mục bạn có trên đó. Hay được hiểu là inodes là số file + folder.

Tất cả những tập tin hình ảnh, video, tập tin HTML, thư mục hay bất kỳ tập tin mã nguồn nào đều liên quan đến inodes. Khi đã đạt đến giới hạn inodes, bạn sẽ không còn có thể tạo thêm bất kỳ tập tin hay file nào nữa. Thậm chí, trang web của bạn còn có thể ngừng hoạt động.
Một website bình thường cũng có thể có rất nhiều inodes.

2. Cách kiểm tra Inodes

Với hệ điều hành Linux, thông số inodes được hiểu là số lượng file và tập tin được chứa trên ổ cứng.
Thông số này sẽ được giới hạn tùy vào hệ thống cụ thể.
Trong một số trường hợp, các dịch vụ báo lỗi no space left on device, do không còn không gian để chứa các file, tập tin liên quan, thực hiện kiểm tra dung lượng ổ cứng bằng lệnh df -h thấy dung lượng ổ cứng vẫn còn trống

Với trường hợp này, sẽ cần lưu ý kiểm tra thông số inode, bằng cách thực hiện lệnh df -ih

Cột IUse% hiện thông số 100%, điều này có nghĩa số lượng file tập tin được phép lưu trữ đã đạt giới hạn max.
Để hệ thống hoạt động bình thường trở lại, sẽ cần giải phóng thông số inodes.
Trước tiên sẽ cần kiểm tra và xác định thư mục, đường dẫn nào đang chiếm thông số inodes cao nhất, từ đó xác định các file, thư mục không cần thiết và tiến hành xóa 

Thực hiện lệnh để đếm và liệt kê thông số innodes của từng đường dẫn cụ thể: 

find / -xdev -printf ‘%h\n’ | sort | uniq -c | sort -k 1 -n

Có thể thay /  bằng 1 đường dẫn bất kỳ, ví dụ /etc để kiểm tra thông số inodes trong thư mục /etc Kết quả trả về như sau:

	202 /usr/share/man/man1  
	2714 /usr/share/man/man3  
	2826 /var/lib/dpkg/info  
	306588 /var/spool/postfix/maildrop  

Như vậy thư mục có đường dẫn /var/spool/postfix/maildrop đang chưa số lượng inodes lớn (306588). Thực hiện lệnh rm -r /var/spool/postfix/maildrop để xóa thư mục maildrop, sau đó tiến hành restart lại dịch vụ liên quan .

Nếu thư mục đang chứa lượng inodes lớn là dữ liệu thật đang sử dụng, bạn cần tiến hành tăng ổ cứng lên dung lượng lớn hơn.
Xem thêm hướng dẫn tăng ổ cứng không cần tắt server tại đây