phân tích sử dụng đĩa bỏ qua gắn kết


67

Ubuntu đang phàn nàn rằng hệ thống tệp gốc của tôi đã gần đầy, nhưng khi tôi sử dụng baobab(còn gọi là "Trình phân tích sử dụng đĩa") hoặc du -hnó cũng tóm tắt việc sử dụng tất cả các hệ thống tệp được gắn khác.

Làm cách nào tôi có thể loại trừ các hệ thống tệp khác được gắn trong các thư mục con các loại?

Câu trả lời:


72

baobab: Nếu bạn muốn sử dụng baobab, điều này có thể bằng cách gắn hệ thống tập tin gốc ở một nơi khác và phân tích điều đó. Bằng cách này, các hệ thống tệp khác sẽ không được gắn kết trong mount gốc mới và mọi tệp được ẩn bởi các mount bên dưới /sẽ được phát hiện và tính trong phân tích của bạn.

Giả sử hệ thống tập tin gốc của bạn được bật sda1( dfsẽ cho bạn biết đó là thiết bị nào):

mkdir root-rebound
sudo mount /dev/sda1 root-rebound
baobab root-rebound

và sau đó dọn dẹp khi bạn hoàn thành:

sudo umount root-rebound
rmdir root-rebound

Ngoài ra, bạn có thể ngắt kết nối các hệ thống tập tin theo cách thủ công. Bạn cũng có thể quét chỉ thư mục nhà của mình, vì rất có thể nó sẽ chứa nguồn sử dụng không gian đĩa quá mức.

du có hai tùy chọn có thể ngăn đếm các hệ thống tập tin khác:

 -x, --one-file-system
         skip directories on different file systems
     --exclude=PATTERN
         exclude files that match PATTERN

Do vậy,

du -hx

sẽ bỏ qua tất cả các hệ thống tập tin gắn kết khác hoặc

du -h --exclude /media

sẽ bỏ qua tất cả các tệp trong /mediađó hầu hết các hệ thống tệp được gắn kết.

Nếu bạn đang sử dụng du, sắp xếp sao cho những thứ lớn nhất xuất hiện ở cuối danh sách có thể giúp giải mã đầu ra. ví dụ:

du -hx | sort -h

2
Thật tuyệt, tôi không thấy tùy chọn -x. Tôi cũng tìm thấy một cách khác: bạn có thể gắn lại hệ thống tập tin ở đâu đó, sau đó sử dụng du hoặc baobab để phân tích nó. Ngoài ra, tôi thấy nó hữu ích để làm du -hx | sort -h, mặc dù baobab dễ giải thích hơn.
drevicko

@ Cumulos007 - nếu nó tuyệt vời với bạn, tôi sẽ thêm giải pháp và đề xuất của tôi vào câu trả lời của bạn và chấp nhận nó
drevicko

Đối với tôi vậy là tốt rồi!
Cumulus007

1
@wim không, phiên bản GUI dường như không thể sử dụng tùy chọn -x của du. Gắn hệ thống tập tin gốc ở một nơi khác hoạt động mặc dù - đó là những gì tôi làm trong những ngày này (:
drevicko

1
du -kx | sort -nlà cách của tôi
Alejandro Teixeira Muñoz

6

Tùy thuộc vào loại hệ thống tệp, bạn có thể không được phép gắn hệ thống tệp gốc trên một điểm gắn kết bên dưới /. Bạn sẽ nhận được một cái gì đó tương tự như thế này:

mount: /dev/sda1 already mounted or /mnt busy
mount: according to mtab, /dev/sda1 is mounted on /

Gắn chỉ đọc ( -o ro) có thể giúp đỡ. Nếu thất bại, sử dụng một liên kết gắn kết:

mount --bind / /mnt

Sau khi gắn kết, sử dụng bất kỳ công cụ nào để phân tích việc sử dụng đĩa, tức là du -sh * | sort -h


3

Báo cáo lỗi này giải thích làm thế nào có thể cấu hình baobab để bỏ qua các thư mục. Thật không may, bạn không thể làm điều đó bên trong ứng dụng, nhưng bạn phải sử dụng dconf-editorvà mở org.gnome.baobab.preferences. Ở đây bạn sẽ tìm thấy một mục excluded-uris; thay đổi điều này thành ['file:///path/to/ignore'](làm việc với dấu ngoặc đơn cho tôi).


Điều này không thực sự trả lời câu hỏi, nhưng đó là thông tin hữu ích và ai đó đang tìm kiếm thông tin đó có thể kết thúc tại đây, vì vậy tôi đang nâng cấp (:
drevicko

Nó trả lời câu hỏi về cách bỏ qua các mount trong baobab (bằng cách loại trừ các điểm mount) mà không cần phải phân vùng lại root. Nửa còn lại của câu hỏi (du) đã được trả lời trong bài được chấp nhận.
geira

2

Baobab cố gắng cung cấp cho bạn quyền kiểm soát các thiết bị / phân vùng mà bạn quét - truy cập Edit->Preferences. Thông thường, bạn chỉ muốn quét thiết bị tại Mount Point /. Tuy nhiên, điều này không nhận ra tất cả các loại liên kết / gắn kết / liên kết , do đó, cuối cùng Baobab vẫn có thể tạo ra kết quả khó hiểu nếu bạn có cấu hình không tầm thường.


Đối với du, hàm shell sau đây được gọi dutopsẽ hiển thị cấp cao nhất của thư mục được chỉ định (hoặc thư mục hiện tại). Với điều này, bạn có thể thăm dò từng thư mục con một.

function dutop() { du --max-depth=1 --one-file-system -h $@ |sort -h; }

Điều này có thể sẽ báo cáo các lỗi "Quyền bị từ chối" không quan trọng nếu bạn áp dụng nó /, nhưng bạn có thể giải quyết những lỗi đó đôi khi như sau, sẽ hỏi mật khẩu của bạn (nếu bạn chưa cung cấp gần đây).

function sudutop() { sudo du --max-depth=1 --one-file-system -h $@ |sort -h; }

Đối với các thư mục lớn, chúng có thể mất một lúc. Họ sẽ không báo cáo bất kỳ trạng thái gia tăng nào vì thao tác sắp xếp đang đệm tất cả các kết quả trung gian. Sẽ tốt hơn nếu bỏ qua Ctrl-C nếu bạn cảm thấy mệt mỏi vì phải chờ đợi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.