Cách kiểm tra dung lượng VPS Linux bằng du và df
Hướng dẫn dùng lệnh du và df để kiểm tra dung lượng VPS Linux, tìm thư mục chiếm nhiều không gian và xử lý an toàn khi ổ đĩa gần đầy.
- 9 phút đọc
- 1 lượt xem

Dung lượng ổ đĩa trên VPS có thể tăng nhanh do log, bản sao lưu, tệp tải lên hoặc dữ liệu ứng dụng. Khi phân vùng gần đầy, website và dịch vụ có nguy cơ không ghi được dữ liệu mới, phát sinh lỗi hoặc ngừng hoạt động. Vì vậy, quản trị viên nên kiểm tra dung lượng VPS định kỳ và xác định sớm thư mục nào đang chiếm nhiều không gian.
Hai công cụ dòng lệnh phổ biến cho việc này là df và du. df cho biết mức sử dụng của từng hệ thống tệp, còn du giúp xem dung lượng của thư mục và tệp cụ thể. Bài viết dưới đây hướng dẫn cách dùng hai lệnh, đọc kết quả và xử lý những tình huống thường gặp trên VPS Linux.
Phân biệt lệnh df và du Linux

df (disk free) cung cấp thông tin tổng quan về dung lượng của các hệ thống tệp đang được gắn trên máy. Lệnh này trả lời những câu hỏi như phân vùng nào sắp đầy, còn trống bao nhiêu và thư mục gắn kết nằm ở đâu.
du (disk usage) tính dung lượng mà các tệp và thư mục đang sử dụng. Đây là công cụ phù hợp khi cần tìm thư mục nào đang chiếm nhiều chỗ, chẳng hạn /var/log, thư mục chứa dữ liệu website hoặc vùng lưu bản sao lưu.
Có thể hình dung ngắn gọn:
- Dùng
dfđể kiểm tra tình trạng tổng thể của ổ đĩa và từng phân vùng. - Dùng
duđể lần theo thư mục, tìm nơi sử dụng dung lượng. - Khi thấy hai lệnh cho kết quả khác nhau, cần kiểm tra thêm điểm gắn kết, quyền truy cập và các tệp đã bị xóa nhưng vẫn đang được tiến trình mở.
Nên chạy df trước để xác định phân vùng có vấn đề, sau đó dùng du kiểm tra các thư mục thuộc phân vùng đó. Cách làm này giúp quá trình kiểm tra có trọng tâm và tránh nhầm dung lượng của những ổ đĩa khác.
Kiểm tra dung lượng ổ đĩa bằng lệnh df Linux
Lệnh cơ bản để xem dung lượng các hệ thống tệp là:
df -hTùy chọn -h hiển thị số liệu theo đơn vị dễ đọc như KB, MB hoặc GB. Kết quả thường có các cột:
Filesystem: thiết bị hoặc hệ thống tệp.Size: tổng dung lượng của hệ thống tệp.Used: dung lượng đã sử dụng.Avail: dung lượng còn khả dụng cho người dùng thông thường.Use%: tỷ lệ sử dụng.Mounted on: thư mục gắn kết hệ thống tệp.
Ví dụ, nếu dòng gắn với / có Use% cao, phân vùng gốc đang gần đầy. Nếu /home hoặc một thư mục dữ liệu được gắn trên phân vùng riêng, hãy xem đúng dòng tương ứng thay vì chỉ nhìn tổng dung lượng của máy.
Để xem loại hệ thống tệp cùng dung lượng, dùng:
df -hTTùy chọn -T bổ sung loại hệ thống tệp. Muốn kiểm tra một đường dẫn cụ thể thuộc phân vùng nào, truyền đường dẫn đó vào lệnh:
df -h /varLệnh sẽ hiển thị hệ thống tệp đang chứa /var. Điều này hữu ích khi máy có nhiều phân vùng hoặc ổ đĩa được gắn vào các thư mục khác nhau.
Ngoài dung lượng, VPS cũng có thể hết inode. Inode là cấu trúc dữ liệu dùng để quản lý tệp; một phân vùng có thể còn nhiều GB trống nhưng không tạo được tệp mới nếu inode đã cạn, thường do có quá nhiều tệp nhỏ. Kiểm tra bằng:
df -ihXem cột IUse% để nhận biết tỷ lệ inode đã dùng. Nếu con số này gần 100%, cần tìm và xử lý các thư mục chứa lượng lớn tệp nhỏ thay vì chỉ xóa một tệp dung lượng lớn.
Tìm thư mục chiếm nhiều dung lượng bằng lệnh du Linux

Để xem dung lượng các thư mục cấp đầu tiên trong một đường dẫn, dùng du với tùy chọn phù hợp. Ví dụ kiểm tra các thư mục ngay dưới /var:
sudo du -h --max-depth=1 /var-h giúp số liệu dễ đọc, còn --max-depth=1 giới hạn kết quả ở một cấp thư mục. Nếu không có quyền đọc một số thư mục, du có thể báo lỗi quyền truy cập hoặc bỏ sót dữ liệu. Khi cần kiểm tra toàn hệ thống, dùng sudo và chú ý các thông báo lỗi.
Để sắp xếp kết quả từ thư mục nhỏ đến lớn:
sudo du -h --max-depth=1 /var | sort -hMuốn thấy thư mục lớn nhất ở cuối danh sách để dễ nhận diện, có thể đảo thứ tự:
sudo du -h --max-depth=1 /var | sort -hrNếu phiên bản du không hỗ trợ --max-depth, có thể thử tùy chọn rút gọn -d:
sudo du -h -d 1 /varTùy chọn độ sâu có thể khác nhau giữa các hệ điều hành và phiên bản công cụ. Nếu lệnh báo tùy chọn không hợp lệ, xem hướng dẫn bằng man du hoặc du --help.
Khi đã tìm thấy thư mục lớn, đi sâu thêm từng cấp. Ví dụ, nếu /var có một thư mục con chiếm nhiều chỗ:
sudo du -h --max-depth=1 /var/log | sort -hrCó thể kiểm tra một số vị trí thường tăng dung lượng như /var/log (log), /var/cache (bộ nhớ đệm), /tmp (tệp tạm), thư mục dữ liệu website, thư mục lưu bản sao lưu hoặc thư mục chứa tệp tải lên. Đây chỉ là các vị trí cần kiểm tra, không nên mặc định rằng nội dung trong đó có thể xóa.
Để xem tổng dung lượng của một thư mục cụ thể, dùng:
sudo du -sh /var/logTrong đó -s chỉ hiển thị tổng, thay vì liệt kê mọi tệp con. Nếu muốn tìm các tệp lớn, có thể dùng find để liệt kê tệp vượt một ngưỡng nhất định, chẳng hạn tệp lớn hơn 500 MB:
sudo find /var -type f -size +500M -printLệnh này chỉ liệt kê đường dẫn, không xóa tệp. Hãy xem xét nội dung và mục đích của từng tệp trước khi thực hiện bất kỳ thao tác dọn dẹp nào.
Quy trình kiểm tra và xử lý khi VPS gần đầy

Khi nhận cảnh báo dung lượng thấp hoặc thấy ứng dụng không ghi được dữ liệu, có thể kiểm tra theo trình tự sau:
- Xem tổng quan bằng
df: chạydf -hTđể tìm hệ thống tệp có tỷ lệ sử dụng cao và xác định điểm gắn kết. - Kiểm tra inode: chạy
df -ih. Nếu inode gần hết, tập trung tìm thư mục chứa nhiều tệp nhỏ. - Khoanh vùng bằng
du: chạysudo du -h --max-depth=1trên thư mục gắn kết đang gặp vấn đề. Ví dụ, nếu phân vùng/gần đầy, kiểm tra các thư mục cấp đầu tiên từ/. - Đi sâu vào thư mục lớn: tiếp tục chạy
duở các thư mục con cho đến khi xác định được dữ liệu đáng chú ý. - Xác minh trước khi dọn: kiểm tra ứng dụng nào tạo dữ liệu, thời điểm tệp được cập nhật và liệu tệp có cần cho hoạt động hoặc khôi phục hệ thống hay không.
- Theo dõi lại: sau khi xử lý, chạy lại
df -hvà lệnhduliên quan để xác nhận mức sử dụng đã thay đổi.
Tránh chạy lệnh xóa hàng loạt theo phỏng đoán, đặc biệt trong các thư mục hệ thống như /var/lib, thư mục dữ liệu cơ sở dữ liệu hoặc thư mục ứng dụng. Xóa nhầm có thể làm hỏng dịch vụ hoặc khiến dữ liệu không thể khôi phục. Với log, hãy tìm hiểu chính sách xoay vòng log của hệ thống; với bản sao lưu, nên xác nhận còn bản khác và thời hạn lưu trữ trước khi xóa.
Một tình huống khá phổ biến là df báo phân vùng đã dùng nhiều dung lượng nhưng tổng các thư mục cộng lại theo du thấp hơn đáng kể. Có thể có tệp đã bị xóa khỏi thư mục nhưng một tiến trình vẫn đang mở tệp đó. Khi ấy, dung lượng chỉ được giải phóng sau khi tiến trình đóng tệp, thường là khi dịch vụ được khởi động lại theo quy trình phù hợp. Có thể kiểm tra các tệp đã xóa nhưng còn được mở bằng:
sudo lsof +L1Nếu máy chưa cài lsof, hãy dùng công cụ sẵn có hoặc cài đặt theo hướng dẫn dành cho hệ điều hành. Không nên tự ý dừng tiến trình; trước tiên cần xác định dịch vụ liên quan và đánh giá tác động.
Một nguyên nhân khác là thư mục có điểm gắn kết riêng. Khi chạy du ở thư mục gốc, dữ liệu trên các hệ thống tệp gắn bên dưới có thể khiến kết quả khó đối chiếu với một phân vùng cụ thể. Có thể dùng -x để giới hạn phép tính trong cùng hệ thống tệp:
sudo du -x -h --max-depth=1 / | sort -hrTùy chọn -x hữu ích khi điều tra dung lượng phân vùng gốc mà không tính tiếp dữ liệu thuộc hệ thống tệp khác được gắn vào bên dưới.
Lưu ý khi đọc kết quả và kiểm tra định kỳ
Kết quả của du và df không phải lúc nào cũng trùng nhau. df thống kê mức sử dụng của hệ thống tệp, trong khi du duyệt các tệp mà người dùng có thể truy cập để cộng dung lượng. Tệp đang mở nhưng đã bị xóa, quyền truy cập bị giới hạn, điểm gắn kết và cách hệ thống tệp quản lý dung lượng đều có thể tạo ra chênh lệch.
Ngoài ra, dung lượng hiển thị có thể được làm tròn khi dùng -h. Để xem đơn vị nhất quán hơn, có thể dùng df -B1 hoặc du -B1, nếu phiên bản công cụ hỗ trợ. Khi đối chiếu, hãy kiểm tra cùng một phân vùng và cùng phạm vi thư mục; nếu không, hai kết quả có thể khác nhau mà không có bất thường.
Nên kiểm tra dung lượng định kỳ, nhất là sau khi triển khai ứng dụng, tạo bản sao lưu hoặc xử lý lượng lớn tệp tải lên. Có thể ghi lại kết quả df -h theo thời gian để nhận biết phân vùng đang tăng nhanh. Nếu dung lượng thường xuyên chạm ngưỡng, hãy xem lại chính sách lưu trữ, log và bản sao lưu, đồng thời cân nhắc điều chỉnh tài nguyên phù hợp với nhu cầu vận hành.
Kết luận
df giúp kiểm tra dung lượng còn trống trên từng hệ thống tệp, còn du giúp tìm thư mục và tệp đang chiếm nhiều không gian. Kết hợp hai lệnh theo quy trình từ tổng quan đến chi tiết sẽ giúp quản trị viên kiểm tra dung lượng VPS nhanh hơn, phát hiện nguy cơ sớm và xử lý có căn cứ. Hãy xác minh dữ liệu trước khi dọn dẹp để tránh ảnh hưởng đến dịch vụ.
Nếu nhu cầu lưu trữ và vận hành VPS thay đổi, bạn có thể tham khảo các cấu hình VPS AMD EPYC Gen 3 của VibeVPS, hiện có các gói từ 81.000đ/tháng, rồi lựa chọn theo tài nguyên thực tế cần dùng.
- #VPS Linux
- #du Linux
- #df Linux
- #dung lượng ổ đĩa
- #quản trị máy chủ

