Cách xem dung lượng ổ đĩa trống và mức sử dụng ổ đĩa từ thiết bị đầu cuối Linux

Tác giả sysadmin, T.Mười 18, 2023, 10:00:13 SÁNG

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách xem dung lượng ổ đĩa trống và mức sử dụng ổ đĩa từ thiết bị đầu cuối Linux


Mọi thứ bạn cần biết về lệnh df và du của Linux.

  • Lệnh df hiển thị dung lượng đĩa sẵn có và đã sử dụng cho tất cả các hệ thống tệp được gắn, trong khi du hiển thị kích thước của thư mục và thư mục con.
  • Sử dụng các tùy chọn như -h (người có thể đọc được), -B (kích thước khối), -i (inodes) và -t (loại), bạn có thể tùy chỉnh đầu ra của df và du để phù hợp với yêu cầu của mình và khám phá việc sử dụng dung lượng ổ đĩa trong chi tiết hơn.

Lệnh dfvà dubáo cáo về việc sử dụng dung lượng ổ đĩa từ bên trong shell Bash được sử dụng trên Linux, macOS và nhiều hệ điều hành giống Unix khác. Các lệnh này cho phép bạn dễ dàng xác định những gì đang sử dụng hết dung lượng lưu trữ trên hệ thống của bạn.

1. Xem Tổng dung lượng đĩa, có sẵn và đã sử dụng trên Linux

Bash chứa hai lệnh hữu ích liên quan đến dung lượng ổ đĩa. Để tìm hiểu dung lượng đĩa sẵn có và đã sử dụng, hãy sử dụng df(hệ thống tệp đĩa, đôi khi được gọi là không có đĩa). Để khám phá những gì đang chiếm dung lượng ổ đĩa đã sử dụng, hãy sử dụng du(disk Usage).

Nhập dfvà nhấn enter trong cửa sổ terminal Bash để bắt đầu. Bạn sẽ thấy rất nhiều kết quả tương tự như ảnh chụp màn hình bên dưới. Việc sử dụng dfmà không có bất kỳ tùy chọn nào sẽ hiển thị dung lượng có sẵn và đã sử dụng cho tất cả các hệ thống tệp được gắn. Thoạt nhìn, nó có vẻ khó hiểu, nhưng nó khá dễ hiểu.

Mã nguồn [Chọn]
df

Mỗi dòng của màn hình được tạo thành từ sáu cột.

  • Fileystem: Tên của hệ thống tập tin này.
  • Khối 1K: Số khối 1K có sẵn trên hệ thống tệp này.
  • Đã sử dụng: Số khối 1K đã được sử dụng trên hệ thống tệp này.
  • Có sẵn: Số khối 1K không được sử dụng trên hệ thống tệp này.
  • Sử dụng%: Lượng không gian được sử dụng trong hệ thống tệp này được tính theo phần trăm.
  • Tệp: Tên hệ thống tệp, nếu được chỉ định trên dòng lệnh.
  • Được gắn trên: Điểm gắn kết của hệ thống tập tin.

Bạn có thể thay thế số lượng khối 1K bằng đầu ra hữu ích hơn bằng cách sử dụng -Btùy chọn (kích thước khối). Để sử dụng tùy chọn này, hãy nhập df,một khoảng trắng, sau đó -Bnhập một chữ cái trong danh sách K, M, G, T, P, E, Z hoặc Y. Những chữ cái này đại diện cho kilo, mega, giga, tera, peta, exa, giá trị zeta và yotta từ bội số của thang đo 1024.

Ví dụ: để xem số liệu sử dụng ổ đĩa tính bằng megabyte, bạn sẽ sử dụng lệnh sau. Lưu ý không có khoảng cách giữa B và M.

Mã nguồn [Chọn]
df -BM

Tùy chọn -h (người có thể đọc được) hướng dẫn dfsử dụng đơn vị phù hợp nhất cho kích thước của từng hệ thống tệp. Trong lưu ý đầu ra tiếp theo rằng có các hệ thống tệp có kích thước gigabyte, megabyte và thậm chí kilobyte.

Mã nguồn [Chọn]
df -h

Nếu bạn cần xem thông tin được biểu thị bằng số lượng inode, hãy sử dụng -itùy chọn (inodes). Inode là cấu trúc dữ liệu được hệ thống tệp Linux sử dụng để mô tả các tệp và lưu trữ siêu dữ liệu về chúng. Trên Linux, inode chứa các dữ liệu như tên, ngày sửa đổi, vị trí trên ổ cứng, v.v. cho từng tệp và thư mục. Điều này sẽ không hữu ích với đa số mọi người, nhưng quản trị viên hệ thống đôi khi phải tham khảo loại thông tin này.

Mã nguồn [Chọn]
df -i

Trừ khi được yêu cầu không, df sẽ cung cấp thông tin về tất cả các hệ thống tập tin được gắn kết. Điều này có thể dẫn đến một màn hình lộn xộn với nhiều đầu ra. Ví dụ: /dev/loopcác mục trong danh sách là hệ thống tệp giả cho phép tệp được gắn kết như thể nó là một phân vùng. Nếu bạn sử dụng snapphương pháp cài đặt ứng dụng mới của Ubuntu, bạn có thể có được rất nhiều ứng dụng như vậy. Dung lượng trống trên các tệp này sẽ luôn bằng 0 vì chúng không thực sự là một hệ thống tệp, vì vậy chúng ta không cần xem chúng.

Chúng tôi có thể yêu cầu dfloại trừ các hệ thống tập tin thuộc một loại cụ thể. Để làm như vậy, chúng ta cần biết loại hệ thống tập tin nào chúng ta muốn loại trừ. Tùy -Tchọn (loại in) sẽ cung cấp cho chúng tôi thông tin đó. Nó hướng dẫn dfđưa loại hệ thống tập tin vào đầu ra.

Mã nguồn [Chọn]
df -T

Các mục /dev/loop là tất cả squashfscác hệ thống tập tin. Chúng ta có thể loại trừ chúng bằng lệnh sau:

Mã nguồn [Chọn]
df -x squashfs

Điều đó mang lại cho chúng tôi một đầu ra dễ quản lý hơn. Để có được tổng số, chúng ta có thể thêm tùy chọn --total.

Mã nguồn [Chọn]
df -x squallfs --total

Chúng tôi có thể yêu cầu dfchỉ bao gồm các hệ thống tệp thuộc một loại cụ thể bằng cách sử dụng -ttùy chọn (loại).

Mã nguồn [Chọn]
df -t ext4

Nếu muốn xem kích thước của một tập hợp các hệ thống tệp, chúng ta có thể chỉ định chúng theo tên. Tên ổ đĩa trong Linux được sắp xếp theo thứ tự bảng chữ cái. Ổ đĩa đầu tiên được gọi là /dev/sda, ổ đĩa thứ hai là /dev/sdb, v.v. Các phân vùng được đánh số. /dev/sda1 Phân vùng đầu tiên trên ổ đĩa cũng vậy /dev/sda. Chúng tôi yêu cầu dftrả về thông tin trên một hệ thống tệp cụ thể bằng cách chuyển tên của hệ thống tệp đó làm tham số lệnh. Chúng ta hãy nhìn vào phân vùng đầu tiên của ổ cứng đầu tiên.

Mã nguồn [Chọn]
df /dev/sda1

Lưu ý rằng bạn có thể sử dụng ký tự đại diện trong tên hệ thống tệp, trong đó *đại diện cho bất kỳ bộ ký tự nào và ?đại diện cho bất kỳ ký tự đơn nào. Vì vậy, để xem tất cả các phân vùng trên ổ đĩa đầu tiên, chúng ta có thể sử dụng:

Mã nguồn [Chọn]
df /dev/sda*
Chúng tôi có thể yêu cầu dfbáo cáo về một tập hợp các hệ thống tệp được đặt tên. Anh ấy, chúng tôi đang yêu cầu kích thước của hệ thống tập /devtin /runvà chúng tôi muốn tổng cộng.

Mã nguồn [Chọn]
df -h --total /dev /run

Để tùy chỉnh thêm màn hình, chúng tôi có thể cho biết dfcần bao gồm những cột nào. Để làm như vậy, hãy sử dụng --outputtùy chọn và cung cấp danh sách các tên cột bắt buộc được phân tách bằng dấu phẩy. Đảm bảo không bao gồm bất kỳ khoảng trắng nào trong danh sách được phân tách bằng dấu phẩy.

  • nguồn: Tên của hệ thống tập tin.
  • fstype: Loại hệ thống tập tin.
  • itotal: Kích thước của hệ thống tập tin tính bằng inodes.
  • iused: Không gian được sử dụng trên hệ thống tập tin tính bằng inodes.
  • iavail: Dung lượng trống trên hệ thống tập tin tính bằng inodes.
  • ipcent: Phần trăm dung lượng đã sử dụng trên hệ thống tập tin tính bằng inode, dưới dạng phần trăm.
  • size: Kích thước của hệ thống tập tin, theo mặc định tính bằng khối 1K.
  • used: Không gian được sử dụng trên hệ thống tệp, theo mặc định tính bằng khối 1K.
  • tận dụng: Không gian có sẵn trên hệ thống tệp, theo mặc định tính bằng khối 1K.
  • pcent: Phần trăm dung lượng đã sử dụng trên hệ thống tệp tính bằng inode, theo mặc định là khối 1K.
  • file: Tên hệ thống tập tin nếu được chỉ định trên dòng lệnh.
  • target: Điểm gắn kết cho hệ thống tập tin.

Hãy yêu cầu df báo cáo về phân vùng đầu tiên trên ổ đĩa đầu tiên, với các số mà con người có thể đọc được và với các cột nguồn, fstype, kích thước, đã sử dụng, có sẵn và pcent:

Mã nguồn [Chọn]
df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent

Lệnh dài là ứng cử viên hoàn hảo để được chuyển thành bí danh. Chúng ta có thể tạo bí danh dfc(cho df custom) bằng cách nhập thông tin sau và nhấn Enter:

Mã nguồn [Chọn]
alias dfc="df -h /dev/sda1 --output=source,fstype,size,used,avail,pcent"

Gõ dfc và nhấn Enter sẽ có tác dụng tương tự như gõ lệnh dài. Để đặt bí danh này vĩnh viễn, hãy thêm nó vào tệp or của bạn..bashrc.bash_aliases

Chúng tôi đang tìm cách tinh chỉnh kết quả đầu ra dfđể thông tin hiển thị phù hợp với yêu cầu của bạn. Nếu bạn muốn thực hiện cách tiếp cận ngược lại và dftrả về tất cả thông tin, bạn có thể sử dụng -atùy chọn (tất cả) và --outputtùy chọn như hiển thị bên dưới. Tùy chọn -a (tất cả) yêu cầu dfbao gồm mọi hệ thống tệp và việc sử dụng tùy chọn --output không có danh sách các cột được phân tách bằng dấu phẩy sẽ df bao gồm mọi cột.

Mã nguồn [Chọn]
df -a --output

Dẫn đầu ra thông dfqua lesslệnh là một cách thuận tiện để xem lại lượng đầu ra lớn mà lệnh này có thể tạo ra.

Mã nguồn [Chọn]
df -a --output | less
2. Tìm hiểu những gì đang chiếm dung lượng đĩa đã sử dụng

Hãy cùng thực hiện một số điều tra và tìm hiểu xem điều gì đang chiếm dung lượng trên PC này. Chúng ta sẽ bắt đầu với một trong dfnhững lệnh của chúng ta.

Mã nguồn [Chọn]
df -h -t ext4

Có 78% dung lượng đĩa được sử dụng trên phân vùng đầu tiên của ổ cứng đầu tiên. Chúng ta có thể sử dụng dulệnh để hiển thị thư mục nào đang chứa nhiều dữ liệu nhất. Việc đưa ra dulệnh không có tùy chọn sẽ hiển thị danh sách tất cả các thư mục và thư mục con bên dưới thư mục duchứa lệnh. Nếu bạn thực hiện việc này từ thư mục chính thì danh sách sẽ rất dài.

Mã nguồn [Chọn]
du

Định dạng đầu ra rất đơn giản. Mỗi dòng hiển thị kích thước và tên của một thư mục. Theo mặc định, kích thước được hiển thị theo khối 1K. Để buộc dusử dụng kích thước khối khác, hãy sử dụng -Btùy chọn (kích thước khối). Để sử dụng tùy chọn này du, hãy nhập, một khoảng trắng, sau đó -Bvà một chữ cái trong danh sách K, M, G, T, P, E, Z và Y, như chúng tôi đã làm ở trên cho df. Để sử dụng khối 1M, hãy sử dụng lệnh này:

Mã nguồn [Chọn]
du -BM

Giống như df, ducó một tùy chọn mà con người có thể đọc được, -h, sử dụng nhiều kích thước khối tùy theo kích thước của từng thư mục.

Mã nguồn [Chọn]
du -h

Tùy chọn -s (tóm tắt) đưa ra tổng số cho mỗi thư mục mà không hiển thị các thư mục con trong mỗi thư mục. Lệnh sau yêu cầu dutrả về thông tin ở định dạng tóm tắt, ở dạng số mà con người có thể đọc được, cho tất cả các thư mục (*) bên dưới thư mục làm việc hiện tại.

Mã nguồn [Chọn]
du -h -s *

Thư mục Ảnh chứa nhiều dữ liệu nhất cho đến nay. Chúng ta có thể yêu cầu dusắp xếp các thư mục theo kích thước từ lớn nhất đến nhỏ nhất.

Mã nguồn [Chọn]
du -sm Pictures/* | sort -nr

Bằng cách tinh chỉnh thông tin được trả về df, duthật dễ dàng để biết dung lượng ổ cứng đang được sử dụng và khám phá những gì đang chiếm dung lượng đó. Sau đó, bạn có thể đưa ra quyết định sáng suốt về việc di chuyển một số dữ liệu sang bộ lưu trữ khác, thêm ổ cứng khác vào máy tính hoặc xóa dữ liệu dư thừa.

Các lệnh này có rất nhiều lựa chọn. Chúng tôi đã mô tả các tùy chọn hữu ích nhất ở đây, nhưng bạn có thể xem danh sách đầy đủ các tùy chọn cho lệnh df và cho lệnh du trong các trang man của Linux.