Nếu bạn đang dùng Linux, chắc hẵn sẽ gặp tình trạng ổ cứng bị chiếm dung lượng nhưng không biết file hay folder nào đang nặng nhất để tìm và xóa bớt. Trên Linux, có sẵn các lệnh giúp bạn tìm File/Folder lớn nhất. Với sự kết hợp 3 lệnh du
, sort
và head
sẽ giúp bạn nhanh chóng liệt kê ra các dữ liệu đang chiếm dung lượng ổ cứng trên Linux hay VPS của bạn.
Tham gia kênh Telegram của AnonyViet 👉 Link 👈 |
- Lệnh
du
: xác định dung lượng sử dụng - Lệnh
sort
: sort lại các dòng của file text hoặc input data - Lệnh
head
: output dữ liệu từ trên xuống, ví dụ lấy 10 dòng đầu tiên chẳng hạn
Kiểm tra dung lượng của thư mục /home/
nếu muốn kiểm tra dung lượng thư mục root thì thay thành /root/
du -sh /home/
Sử dụng lệnh bên dưới để tìm 10 file/thư mục có dung lượng lớn nhất. Thay /home
bằng đường dẫn bạn muốn
du -a /home/ | sort -n -r | head -n 10
Output ví dụ:
589700 /home 589696 /home/anonyviet.com 526988 /home/anonyviet.com/public_html 506628 /home/anonyviet.com/public_html/wp-content 385096 /home/anonyviet.com/public_html/wp-content/uploads 179988 /home/anonyviet.com/public_html/wp-content/uploads/2014 117072 /home/anonyviet.com/public_html/wp-content/uploads/2013 74212 /home/anonyviet.com/public_html/wp-content/plugins 47296 /home/anonyviet.com/public_html/wp-content/uploads/2012 43100 /home/anonyviet.com/public_html/wp-content/cache
Nếu bạn muốn đổi dung lượng byte thành MB, KB thì dùng lệnh sau:
cd /home du -hsx * | sort -rh | head -10
Các lệnh trên chỉ sử dụng được khi Linux có cài đặt gói sort
, nếu không thì bạn có thể dùng lệnh dưới đây:
for i in G M K; do du -ah | grep [0-9]$i | sort -nr -k 1; done | head -n 11
Output ví dụ:
179M . 84M ./uploads 57M ./images 51M ./images/a 49M ./images/abc/2013 47M ./uploads/def 37M ./videos/gha/2013/12 37M ./videos/gha/2013 37M ./videos/gha 36M ./videos 35M ./uploads/gha
Lệnh tìm kiếm các file lớn nhất trong 1 Folder:
Tìm kiếm file lớn nhất trong Folder /home
find /home -printf '%s %p\n'| sort -nr | head -10
Tìm kiếm file lớn nhất trong Folder hiện tại
find . -printf '%s %p\n'| sort -nr | head -10
Output ví dụ:
5700875 ./images/faq/2023/11/iftop-outputs.gif 5459671 ./videos/faq/2023/12/glances/glances.webm 5091119 ./videos/faq/2023/12/glances/glances.ogv 4706278 ./images/faq/2023/09/cyberciti.biz.linux.wallpapers_r0x1.tar.gz 3911341 ./videos/faq/2023/12/vim-exit/vim-exit.ogv 3640181 ./videos/faq/2023/12/python-subprocess/python-subprocess.webm 3571712 ./images/faq/2023/12/glances-demo-large.gif 3222684 ./videos/faq/2023/12/vim-exit/vim-exit.mp4 3198164 ./videos/faq/2023/12/python-subprocess/python-subprocess.ogv 3056537 ./images/faq/2023/08/debian-as-parent-distribution.png.bak
Để chỉ hiển thị file, không hiển thị Folder thì các bạn dùng lệnh:
find /path -type f -printf '%s %p\n'| sort -nr | head -10
hoặc
find /path -type f -iname "*.mp4" -printf '%s %p\n'| sort -nr | head -10
- Tìm thư mục lớn nhất trong Linux
- Tìm thư mục nặng nhất trong Linux
- Tìm folder lớn nhất trong Linux
- Tìm folder nặng nhất trong Linux
- Tìm file lớn nhất trong Linux
- Tìm file nặng nhất trong Linux
Tham khảo: hocvps.com
Câu hỏi thường gặp
Tôi có thể tìm file/folder lớn nhất ở đâu trên hệ thống Linux của mình?
Bạn có thể sử dụng lệnh du -sh /path/to/directory
để xem tổng dung lượng của một thư mục. Để tìm 10 file/folder lớn nhất, hãy dùng lệnh du -a /path/to/directory | sort -n -r | head -n 10
. Thay /path/to/directory
bằng đường dẫn thư mục mong muốn.
Làm thế nào để chuyển đổi đơn vị dung lượng (bytes) sang MB hoặc KB?
Sử dụng lệnh du -hsx * | sort -rh | head -10
trong thư mục bạn muốn kiểm tra. Lệnh này sẽ hiển thị kích thước theo đơn vị MB, KB.
Nếu tôi chỉ muốn tìm file lớn nhất (không phải thư mục), tôi nên làm gì?
Hãy sử dụng lệnh find /path -type f -printf '%s %p\n'| sort -nr | head -10
. Thay /path
bằng đường dẫn thư mục bạn muốn tìm kiếm.