Cách xử lý ổ cứng đầy trên Linux

Tóm tắt nhanh (Quick Answer)

Để tìm file dung lượng lớn trên Linux hoặc VPS, bạn có thể sử dụng lệnh: find / -type f -size +1G để tìm file lớn hơn 1GB, hoặc du -ah / | sort -rh | head -n 10 để liệt kê top 10 file và thư mục chiếm nhiều không gian nhất.

Khi vận hành website trên VPS Linux, việc kiểm tra định kỳ dung lượng ổ cứng giúp tránh tình trạng hệ thống bị sập hoặc lỗi HTTP 500 do ổ đĩa đầy (Disk Full). Bài viết này sẽ hướng dẫn bạn quy trình chuẩn từ bước kiểm tra, truy tìm thủ phạm, cho đến cách xóa file rác khổng lồ một cách an toàn nhất.

Nội dung chính

1. Cách kiểm tra dung lượng ổ cứng trên Linux

Trước khi bắt đầu tìm file, bạn cần xác định xem phân vùng nào trên máy chủ đang thực sự bị đầy. Hãy sử dụng lệnh check disk usage cơ bản sau:

KIỂM TRA Ổ CỨNG
df -h

Tham số -h giúp hiển thị dung lượng dưới dạng con số dễ đọc (Megabyte, Gigabyte). Cột Use% sẽ cho bạn biết phân vùng nào đang đạt ngưỡng 100%.

2. Nguyên nhân phổ biến gây đầy ổ cứng

Dưới đây là các "thủ phạm" thường xuyên ngốn tài nguyên lưu trữ nhất trên máy chủ:

  • File log hệ thống: Các file nhật ký trong /var/log (như error.log, access.log) không được cài đặt cơ chế xoay vòng (Logrotate).
  • Dữ liệu Docker (Images/Containers): Thư mục /var/lib/docker phình to do lưu trữ quá nhiều image cũ không sử dụng.
  • Bản sao lưu (Backup) cũ: Các file nén .tar.gz hoặc database .sql sinh ra bởi các plugin backup nhưng quên không xóa.
  • Thùng rác ẩn: Đôi khi lệnh rm thông thường chỉ chuyển file vào thư mục rác (Trash) của người dùng.

3. Cách tìm file dung lượng lớn trên Linux

Cách 1: Dùng lệnh find (Tìm theo dung lượng)

Lệnh find cực kỳ mạnh mẽ để tìm đích danh các file vượt quá một giới hạn cụ thể (Ví dụ: tìm file lớn hơn 1GB):

TÌM FILE > 1GB
find / -type f -size +1G -exec ls -lh {} ; 2>/dev/null

Lưu ý: Luôn đảm bảo kết thúc cụm -exec bằng ; để tránh lỗi shell interpretation. Tham số 2>/dev/null giúp ẩn các thông báo lỗi truy cập.

Cách 2: Dùng lệnh du và sort (Sắp xếp top)

Nếu bạn muốn biết thư mục nào đang nặng nhất, hãy kết hợp lệnh tính dung lượng (du) và lệnh sắp xếp (sort):

TOP 10 THƯ MỤC/FILE NẶNG NHẤT
du -ah /var | sort -rh | head -n 10

Cách 3: Dùng ncdu (Giao diện trực quan)

ncdu là công cụ phân tích không gian đĩa khuyên dùng nhất vì giao diện điều hướng bằng phím mũi tên cực kỳ dễ sử dụng.

CÀI ĐẶT & CHẠY NCDU
# CentOS/AlmaLinux
sudo yum install ncdu -y

# Ubuntu/Debian
sudo apt-get install ncdu -y

# Chạy quét toàn bộ
sudo ncdu /

4. Cách xóa file dung lượng lớn an toàn

Khi đã xác định đúng file cần xóa, hãy sử dụng các lệnh sau:

  • Xóa có xác nhận: Sử dụng tham số -i để hệ thống hỏi lại trước khi thực sự xóa.
    rm -i /path/to/largefile.zip
  • Xóa rỗng file Log (Rất an toàn): Nếu file lớn là một file Log đang được ứng dụng ghi vào (như Nginx hay MySQL), dùng lệnh rm sẽ gây lỗi tiến trình. Hãy làm rỗng file đó thay vì xóa đi:
    truncate -s 0 /var/log/error.log
    Hoặc cách rút gọn:
    > /var/log/error.log

5. Lỗi thường gặp (Troubleshooting)

Một số khó khăn sysadmin thường gặp khi dọn dẹp ổ đĩa:

  • Lỗi "Permission denied": Lệnh quét không có quyền truy cập vào các thư mục sâu của hệ thống. Giải pháp: Thêm sudo vào đầu mỗi lệnh tìm kiếm.
  • Lệnh tìm kiếm chạy quá lâu: Quét toàn bộ / mất rất nhiều thời gian. Giải pháp: Hãy giới hạn phạm vi quét vào các thư mục khả nghi nhất như /var, /home hoặc /tmp.
  • Đã xóa file nhưng df -h không giảm: File đã bị xóa nhưng một tiến trình (process) vẫn đang giữ file đó mở. Giải pháp: Dùng lệnh lsof +L1 để tìm tiến trình đang kẹt và khởi động lại dịch vụ đó.

6. Kết luận

Việc kiểm soát dung lượng ổ cứng là tác vụ sống còn trong quản trị Linux. Bằng cách thành thạo bộ ba công cụ find, duncdu, bạn hoàn toàn có thể nhanh chóng phát hiện và xử lý gọn gàng các file rác, giữ cho máy chủ vận hành trơn tru nhất.

Hệ thống của bạn liên tục chạm ngưỡng tài nguyên?

Đã đến lúc mở rộng hạ tầng lưu trữ. Nâng cấp lên Large VPS với không gian lưu trữ SSD dồi dào hoặc Máy chủ vật lý độc lập để thoải mái vận hành mọi dự án dữ liệu lớn.

Các hướng dẫn kỹ thuật khác

Khám phá thêm các hướng dẫn kỹ thuật, thủ thuật quản trị hệ thống và bài viết phân tích giúp tối ưu hiệu năng và vận hành VPS hoặc máy chủ hiệu quả.