Khi không gian đĩa trên hệ thống Linux trở nên hạn chế, việc xác định thư mục hay tập tin nào đang chiếm nhiều dung lượng nhất là một thách thức. Trong những tình huống như vậy, ncdu
nổi lên như một công cụ tiện ích mạnh mẽ và trực quan, giúp người dùng Linux dễ dàng tìm kiếm, phân tích và quản lý không gian lưu trữ một cách hiệu quả ngay từ giao diện dòng lệnh.
ncdu Là Gì? Sức Mạnh Của Giao Diện Ncurses
ncdu
(viết tắt của “Ncurses Disk Usage”) là một tiện ích Terminal dành cho Linux được thiết kế để phân tích dung lượng ổ đĩa. Nó là một sự thay thế trực quan và thân thiện hơn so với tiện ích du
(disk usage) truyền thống, cung cấp giao diện toàn màn hình được xây dựng trên thư viện ncurses
. Giao diện này cho phép người dùng điều hướng, xem và quản lý các tệp tin, thư mục chiếm dung lượng lớn một cách dễ dàng. ncdu
được phát triển bởi Yoren Heling và nhanh chóng trở thành công cụ không thể thiếu cho các quản trị viên hệ thống cũng như người dùng Linux thông thường.
Hướng Dẫn Cài Đặt ncdu Trên Linux
Việc cài đặt ncdu
vô cùng đơn giản và có thể thực hiện thông qua trình quản lý gói của hầu hết các bản phân phối Linux phổ biến.
Để cài đặt ncdu
trên các hệ thống dựa trên Debian hoặc Ubuntu, bạn chỉ cần thực hiện lệnh sau trong Terminal:
sudo apt install ncdu
ncdu
cũng có sẵn trên nhiều bản phân phối Linux lớn khác như Fedora, CentOS, Arch Linux, openSUSE, v.v., và thậm chí cả trên một số hệ thống BSD. Mặc dù bạn có thể tải mã nguồn hoặc các phiên bản nhị phân từ trang web chính thức của tác giả, việc sử dụng trình quản lý gói của hệ điều hành luôn được khuyến khích. Điều này không chỉ giúp việc cài đặt trở nên thuận tiện mà còn đảm bảo quá trình nâng cấp lên các phiên bản mới hơn trong tương lai dễ dàng hơn.
Khám Phá Thư Mục Chiếm Nhiều Dung Lượng Nhất Với ncdu
Để bắt đầu tìm kiếm và phân tích các thư mục “ngốn” dung lượng trên hệ thống, bạn có thể chạy lệnh ncdu
. Khi chạy ncdu
mà không có đối số nào, nó sẽ bắt đầu quét trong thư mục làm việc hiện tại của bạn:
ncdu
Nếu bạn muốn quét một thư mục cụ thể, hãy thêm đường dẫn của thư mục đó vào dòng lệnh. Ví dụ, để quét toàn bộ hệ thống bắt đầu từ thư mục gốc (/
), bạn nhập:
ncdu /
ncdu
cũng hỗ trợ nhiều đối số dòng lệnh để tùy chỉnh quá trình quét. Một đối số cực kỳ hữu ích là -x
, nó chỉ thị cho ncdu
chỉ quét trên cùng một hệ thống tệp và không theo dõi các liên kết đến các hệ thống tệp khác. Điều này đặc biệt hữu ích khi bạn sử dụng trong môi trường như Windows Subsystem for Linux (WSL), để đảm bảo ncdu
chỉ quét các thư mục trong bản phân phối Linux của bạn mà không quét vào thư mục Windows được gắn kết tại /mnt/c
.
Dưới đây là ví dụ kết hợp các tùy chọn này:
ncdu -x /
Khi bạn khởi chạy ncdu
, nó sẽ bắt đầu quá trình quét. Thời gian quét sẽ phụ thuộc vào quy mô của thư mục bạn đang quét; một ổ đĩa đầy đủ với nhiều thư mục con sẽ mất nhiều thời gian hơn so với một thư mục nhỏ.
ncdu đang quét và liệt kê các thư mục, tập tin lớn trong thư mục gốc /
Sau khi quá trình quét hoàn tất, bạn sẽ thấy một danh sách các thư mục được sắp xếp giảm dần theo kích thước, với các thư mục lớn nhất nằm ở đầu. Từ đây, bạn có thể dễ dàng duyệt sâu vào các thư mục con để xác định chính xác những tệp hoặc thư mục nào đang chiếm nhiều không gian nhất. Khi bạn đi vào một thư mục, ncdu
sẽ hiển thị các thư mục con lớn nhất trong thư mục đó.
Bạn có thể thay đổi cách ncdu
sắp xếp các thư mục bằng cách sử dụng các phím tắt. Phím “n” sẽ sắp xếp theo tên, “s” sắp xếp theo kích thước (mặc định), và “C” sắp xếp theo số lượng mục. Các phím này cũng sẽ chuyển đổi giữa thứ tự tăng dần hoặc giảm dần.
ncdu hiển thị danh sách thư mục được sắp xếp theo số lượng mục (items) tăng dần
Để sắp xếp theo thời gian chỉnh sửa, bạn có thể sử dụng phím “M” (chữ M viết hoa).
ncdu hiển thị kết quả được sắp xếp theo thời gian chỉnh sửa gần nhất của thư mục
Nếu bạn muốn xóa một tệp hoặc thư mục cụ thể, bạn có thể di chuyển đến nó và nhấn phím “d”.
Phím “c” sẽ bật/tắt hiển thị số lượng mục trong các thư mục con.
Bạn có thể chuyển đổi hiển thị phần trăm và biểu đồ dung lượng mà các thư mục đang chiếm bằng phím “g” để hiển thị biểu đồ, phần trăm, hoặc cả hai.
Giao diện ncdu hiển thị phần trăm dung lượng và biểu đồ trực quan cho các thư mục
Di Chuyển Trong ncdu
Việc điều hướng trong ncdu
khá trực quan. Bạn có thể sử dụng các phím mũi tên lên và xuống để di chuyển qua lại giữa các mục trong danh sách. Đối với những người hâm mộ Vim, bạn cũng có thể sử dụng các phím “j” và “k” để di chuyển lên xuống.
Để đi sâu vào một thư mục con, bạn chỉ cần chọn thư mục đó và nhấn Enter hoặc phím mũi tên phải. Để quay lại thư mục cha, bạn có thể nhấn mũi tên trái hoặc Backspace.
Trong quá trình sử dụng ncdu
, bạn có thể cần thực hiện một số thao tác không được tích hợp trực tiếp vào giao diện. ncdu
cho phép bạn khởi chạy một shell (dòng lệnh) ngay từ thư mục hiện tại. Khi hoàn tất các thao tác cần thiết, bạn có thể nhấn Ctrl+D hoặc gõ “exit” để quay trở lại giao diện ncdu
ban đầu.
Các Tùy Chọn Nâng Cao Khác Của ncdu
ncdu
cung cấp nhiều tùy chọn hơn nữa để phục vụ các nhu cầu phân tích dung lượng phức tạp:
--cross-file-system
: Tùy chọn này chỉ thị rõ ràng choncdu
quét và theo dõi các thư mục ngay cả khi chúng nằm trên các hệ thống tệp khác nhau.--exclude <pattern>
: Cho phép bạn loại trừ các thư mục hoặc tệp tin theo một mẫu cụ thể. Ví dụ:ncdu --exclude "*.iso" /
sẽ bỏ qua tất cả các tệp ISO.-L
hoặc--follow-symlinks
: Tùy chọn này yêu cầuncdu
theo dõi và tính toán dung lượng của các liên kết tượng trưng (symbolic links), nghĩa là nó sẽ tính kích thước của đích đến mà liên kết đó trỏ tới.--no-follow-symlinks
: Ngược lại với tùy chọn trên, nó sẽ không theo dõi các liên kết tượng trưng, chỉ tính kích thước của bản thân liên kết.
Vì quá trình quét có thể mất khá nhiều thời gian đối với các ổ đ đĩa lớn, ncdu
cung cấp khả năng lưu kết quả quét vào một tệp tin bằng tùy chọn -o
và xem lại kết quả đó sau này bằng tùy chọn -f
.
Ví dụ, để lưu kết quả quét toàn bộ hệ thống vào một tệp có tên “file”:
ncdu / -o file
Quá trình quét vẫn sẽ diễn ra trong nền. Sau khi hoàn tất, bạn sẽ quay trở lại shell. Để xem lại kết quả đã lưu:
ncdu -f file
Để tìm hiểu sâu hơn về tất cả các tùy chọn và tính năng của ncdu
, bạn có thể sử dụng tùy chọn -h
để xem trợ giúp nhanh, nhấn phím “?” (dấu hỏi) trong giao diện ncdu
để mở menu trợ giúp, hoặc tham khảo trang hướng dẫn sử dụng (manual page) của ncdu
bằng lệnh man ncdu
hoặc truy cập trang web chính thức của dự án.
Kết Luận
ncdu
là một công cụ không thể thiếu cho bất kỳ người dùng Linux nào muốn kiểm soát và quản lý không gian lưu trữ hiệu quả. Với giao diện trực quan dựa trên ncurses
, khả năng quét nhanh chóng và các tùy chọn linh hoạt, ncdu
giúp bạn dễ dàng xác định các thư mục và tệp tin “khổng lồ”, từ đó đưa ra quyết định thông minh để giải phóng dung lượng, tối ưu hóa hiệu suất hệ thống. Hãy tích hợp ncdu
vào bộ công cụ quản trị hệ thống của bạn để duy trì một môi trường Linux sạch sẽ và hiệu quả. Nếu bạn có bất kỳ mẹo hay kinh nghiệm nào khi sử dụng ncdu
, đừng ngần ngại chia sẻ trong phần bình luận bên dưới nhé!