Đột nhiên một ngày, bạn gặp phải lỗi “Low Disk Space on Filesystem Root”, khi đó dung lượng ổ cứng của bạn đã cạn kiệt. Bạn cần phải giải phóng ổ cứng bằng việc xóa bớt dữ liệu đi. Vì vậy chúng ta cần tìm file hoặc thư mục đang chiếm dụng ổ cứng. Một số lệnh /command dưới đây sẽ giúp bạn thực hiện điều này.
Tìm thư mục chiếm nhiều dung lượng nhất | Find Largest Directories
Chúng ta sử dụng lệnh du Linux Command
du -a | sort -n -r | head -n 5
Tìm thư mục chiếm nhiều dung lượng nhất trên thư mục chỉ định / Find Biggest Files and Directories
sudo du -a /home | sort -n -r | head -n 5
Kiểm tra dung lượng mà thư mục đang chiếm
sudo du -sh /home
Tìm file đang chiếm dung lượng nhất / Find Out Top File Sizes Only
Chúng ta sử dụng lệnh find Linux Command
find -type f -exec du -Sh {} + | sort -rh | head -n 5
Nguồn: vinasupport.com
Hướng dẫn cách tìm file và thư mục [folder] chiếm dung lượng nhiều nhất trên VPS Linux để giải phóng bớt dung lượng ổ cứng VPS/Server. Nào, cùng tham khảo ngay 2 lệnh kiểm tra dung lượng thư mục Linux hay được sử dụng nhất dưới đây nhé.
1. Lệnh “du” trong Linux
Lệnh “du”là 1 trong những lệnh kiểm tra dung lượng thư mục Linux được sử dụng thường xuyên nhất. Ta sẽ tìm kiếm theo cách tuần tự các thư mục có dung lượng lớn. Đó là chương trình sẽ thống kê top các thư mục đang có dung lượng lớn nhất. Sau đó, chúng ta chỉ cần kiểm tra tuần tự các thư mục đang có dung lượng lớn đó.
Cấu trúc lệnh:
du -hs /path/ | sort -rh | head -n 10
Chú thích:
- /path/: đường dẫn thư mục mà bạn muốn kiểm tra.
- -h: in ra dung lượng thư mục /file theo format thuận tiện cho người đọc [MB, GB].
- -s: chỉ hiển thị tổng dung lượng.
- sort: lệnh dùng để sắp xếp ký tự.
- -r: đảo ngược chiều output của lệnh sort.
- -h: dùng để so sánh, sắp xếp các số theo kiểu dung lượng [2K, 1G,…]
- head -n 10: lấy 10 dòng đầu tiên của output.
Xem ví dụ sau:
# du -hs /var/log/* | sort -rh | head -n 10 767M /var/log/nginx 183M /var/log/sa 46M /var/log/resources-monitor 9.1M /var/log/maillog-20170911 8.2M /var/log/maillog-20170903 8.0M /var/log/maillog-20170827 6.4M /var/log/maillog-20170917 4.8M /var/log/maillog 4.4M /var/log/messages-20170911 3.8M /var/log/messages-20170903 # du -hs /var/log/nginx/* | sort -rh | head -n 10 469M /var/log/nginx/domains 297M /var/log/nginx/vhost_error.log 1.1M /var/log/nginx/error.log 556K /var/log/nginx/access.log
2. Lệnh “find” trong Linux
Lệnh find trong Linux là một trong những lệnh khá mạnh trong việc tìm kiếm thư mục/file theo các thông tin cần được lọc. Cũng như là hỗ trợ lệnh khác xử lý các output đã được tìm thấy [-exec]. Với cấu trúc lệnh như dưới đây sẽ thống kê rất chi tiết các file/thư mục nào đang có dung lượng lớn nhất.
Cấu trúc lệnh
find /var/log/ -type f -exec du -Sh {} + | sort -rh | head -n 10
Chú thích:
type [ f | d ]: nếu bạn dùng option f, tức là bạn chỉ muốn tìm kiếm file và kiểm tra dung lượng file đã tìm thấy. Nếu bạn dùng option d thì bạn chỉ muốn tìm kiếm thư mục và kiểm tra dung lượng thư mục đó.
Trên internet hiện nay, bạn sẽ tìm thấy nhiều công cụ để kiểm tra việc sử dụng dung lượng ổ cứng trong Linux. Tuy nhiên, Linux có một tiện ích tích hợp mạnh mẽ được gọi là “df”. Bài viết này sẽ giải thích cách để có được thông tin đầy đủ về việc sử dụng không gian đĩa trong Linux với sự giúp đỡ của lệnh “df” với các ví dụ thực tế của chúng. Vì vậy, bạn có thể hiểu rõ hơn về cách sử dụng lệnh df trong Linux.
Lệnh “df” là gì?
Lệnh “df” nghĩa là “disk filesystem”, nó được sử dụng để hiển thị tóm tắt đầy đủ về việc sử dụng không gian đĩa cứng còn sẵn và được sử dụng của hệ thống tập tin trên hệ thống Linux.
1. Kiểm tra dung lượng ổ đĩa
Lệnh “df” hiển thị thông tin về tên thiết bị, tổng số khối, tổng dung lượng đĩa, dung lượng đĩa đã sử dụng, dung lượng đĩa sẵn có và các mount point trên hệ thống tệp.
# df
Filesystem 1K-blocks Used Available Use% Mounted on
udev 1530896 0 1530896 0% /dev
tmpfs 308436 31964 276472 11% /run
/dev/sda1 68626744 28711844 36385840 45% /
tmpfs 1542172 4 1542168 1% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 1542172 0 1542172 0% /sys/fs/cgroup
tmpfs 308432 32 308400 1% /run/user/117
tmpfs 308432 4 308428 1% /run/user/1000
2. Hiển thị thông tin của tất cả dung lượng
# df -a
Filesystem 1K-blocks Used Available Use% Mounted on
udev 1530896 0 1530896 0% /dev
devpts 0 0 0 – /dev/pts
tmpfs 308436 31964 276472 11% /run
/dev/sda1 68626744 28712036 36385648 45% /
securityfs 0 0 0 – /sys/kernel/security
tmpfs 1542172 4 1542168 1% /dev/shm
tmpfs 5120 0 5120 0% /run/lock
tmpfs 1542172 0 1542172 0% /sys/fs/cgroup
cgroup 0 0 0 – /sys/fs/cgroup/systemd
tmpfs 308432 32 308400 1% /run/user/117
tmpfs 308432 4 308428 1% /run/user/1000
fusectl 0 0 0 – /sys/fs/fuse/connections
3. Hiển thị dung lượng sử dụng theo đơn vị [K, M, G]
Bạn có nhận thấy rằng các lệnh trên hiển thị thông tin dung lượng ổ cứng mặc định theo, không dễ đọc được. Vì chúng ta có thói quen đọc kích thước theo megabyte, gigabyte, vv.. vì nó rất dễ hiểu và dễ nhớ.
# df -ha
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 18G 14G 3.4G 80% /
proc 0 0 0 – /proc
sysfs 0 0 0 – /sys
devpts 0 0 0 – /dev/pts
tmpfs 497M 112K 497M 1% /dev/shm
/dev/sda1 190M 121M 60M 67% /boot
none 0 0 0 – /proc/sys/fs/binfmt_misc
/home/ssh/key.img 9.7M 93K 9.1M 1% /tmp/ssh-mount
4. HIển thị thông tin dung lượng theo Megabytes
# df -m
Filesystem 1M-blocks Used Available Use% Mounted on
udev 1496 0 1496 0% /dev
tmpfs 302 32 270 11% /run
/dev/sda1 67019 28033 35540 45% /
tmpfs 1507 1 1507 1% /dev/shm
tmpfs 5 0 5 0% /run/lock
tmpfs 1507 0 1507 0% /sys/fs/cgroup
tmpfs 302 1 302 1% /run/user/117
tmpfs 302 1 302 1% /run/user/1000
5. Hiển thị thông tin Inodes của file system
Sử dụng option “-i” để hiển thị thông tin về số lượng inodes đã sử dụng và tỷ lệ phần trăm của chúng cho từng file system.
# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
udev 382724 316 382408 1% /dev
tmpfs 385543 516 385027 1% /run
/dev/sda1 4390912 226559 4164353 6% /
tmpfs 385543 2 385541 1% /dev/shm
tmpfs 385543 2 385541 1% /run/lock
tmpfs 385543 15 385528 1% /sys/fs/cgroup
tmpfs 385543 27 385516 1% /run/user/117
tmpfs 385543 15 385528 1% /run/user/1000
6. Hiển thị các loại file system
Nếu bạn để ý những câu lệnh output ở phía trên, bạn sẽ nhìn thấy rằng không có liệt kê loại file system [ext4, xfs, ext3,..]. Để kiểm tra loại file system đang sử dụng ta sử dụng tùy chọn “T”
# df -Th
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 1.5G 0 1.5G 0% /dev
tmpfs tmpfs 302M 32M 270M 11% /run
/dev/sda1 ext4 66G 28G 35G 45% /
tmpfs tmpfs 1.5G 4.0K 1.5G 1% /dev/shm
tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs tmpfs 1.5G 0 1.5G 0% /sys/fs/cgroup
tmpfs tmpfs 302M 32K 302M 1% /run/user/117
tmpfs tmpfs 302M 4.0K 302M 1% /run/user/1000
7. HIển thị thông tin của lệnh “df”
# df --help
Usage: df [OPTION]… [FILE]…
Show information about the file system on which each FILE resides,
or all file systems by default.
Mandatory arguments to long options are mandatory for short options too.
-a, –all include dummy file systems
-B, –block-size=SIZE use SIZE-byte blocks
–direct show statistics for a file instead of mount point
–total produce a grand total
-h, –human-readable print sizes in human readable format [e.g., 1K 234M 2G]
-H, –si likewise, but use powers of 1000 not 1024
-i, –inodes list inode information instead of block usage
-k like –block-size=1K
-l, –local limit listing to local file systems
–no-sync do not invoke sync before getting usage info [default]
-P, –portability use the POSIX output format
–sync invoke sync before getting usage info
-t, –type=TYPE limit listing to file systems of type TYPE
-T, –print-type print file system type
-x, –exclude-type=TYPE limit listing to file systems not of type TYPE
-v [ignored]
–help display this help and exit
–version output version information and exit
Display values are in units of the first available SIZE from –block-size,
and the DF_BLOCK_SIZE, BLOCK_SIZE and BLOCKSIZE environment variables.
Otherwise, units default to 1024 bytes [or 512 if POSIXLY_CORRECT is set].
SIZE may be [or may be an integer optionally followed by] one of following:
KB 1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y.
Report df bugs to bug-coreutils@gnu.org
GNU coreutils home page:
General help using GNU software:
For complete documentation, run: info coreutils ‘df invocation’
Như vậy bài viết này đã cung cấp thêm thông tin về lệnh kiểm tra dung lượng ổ cứng trên hệ thống server Linux. Hãy nhớ theo dõi và kiểm tra định kì dung lượng ổ đĩa đễ không gặp phải tình trạng đầy ổ đĩa gây lỗi server.