Câu trả lời:
Sử dụng e4defrag để chống phân mảnh tệp của bạn
Nếu hệ thống tệp ext4 của bạn được tạo bằng extent
tùy chọn (mặc định trong các bản phát hành gần đây), bạn có thể sử dụng e4defrag
tiện ích để kiểm tra và chống phân mảnh trực tuyến, tức là không cần thông báo.
Chỉ cần kiểm tra mức độ phân mảnh với một cái gì đó như thế này (bạn cần phải root để xem chi tiết):
sudo e4defrag -c /path/to/myfiles
Đây là một ví dụ về đầu ra bạn có thể nhận được:
$ sudo e4defrag -c iso/
<Fragmented files> now/best size/ext
1. /home/gerlos/iso/debian-live-7.5.0-i386-rescue.iso
7/1 111177 KB
2. /home/gerlos/iso/systemrescuecd-x86-4.4.1.iso
4/1 100897 KB
3. /home/gerlos/iso/debian-live-7.5.0-amd64-rescue.iso
6/1 116053 KB
4. /home/gerlos/iso/ubuntu-14.04.2-server-amd64.iso
8/1 76160 KB
5. /home/gerlos/iso/ubuntu-14.10-desktop-amd64.iso
15/1 75712 KB
Total/best extents 40/5
Average size per extent 90577 KB
Fragmentation score 0
[0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]
This directory (iso/) does not need defragmentation.
Done.
Như trong ví dụ này, hầu hết thời gian sẽ cho bạn biết rằng không cần chống phân mảnh, nhưng nếu bạn muốn làm điều đó bằng mọi cách bạn có thể sử dụng (bạn không cần sử dụng sudo để chống phân mảnh các tệp của riêng bạn):
e4defrag /path/to/myfiles
Người dùng của bạn thậm chí có thể chạy nó trên các tệp của riêng họ, không cần phải root trừ khi bạn muốn làm việc trên các tệp hệ thống hoặc người dùng khác.
e4defrag
có trong e2fsprogs
gói và tôi đoán nó đã được cài đặt trên hệ thống Ubuntu của bạn.
e4defrag -c
với sudo
hoặc root để có được thông tin chi tiết về phân mảnh tệp của bạn. Nhưng không cần phải root để chống phân mảnh chúng.
/
thì sao?
sudo
) để chạy e4defrag /
, và không cần phải làm gì đặc biệt. e4defrag
sẽ kiểm tra mọi tập tin ở đó, vì vậy hãy sẵn sàng chờ ổ đĩa của bạn đọc mọi thứ. Hãy nhớ rằng nó có thể là một sự lãng phí lớn thời gian. Hầu hết thời gian, nếu bạn có đủ không gian trống trong hệ thống tệp, bạn sẽ chỉ có một vài tệp bị phân mảnh và thường chúng sẽ nằm trong thư mục nhà của bạn, liên quan đến hoạt động trình duyệt web của bạn. Ví dụ: trên máy tính để bàn mà tôi sử dụng hàng ngày e4defrag
báo cáo rằng chỉ có 5 tệp bị phân mảnh, tất cả đều có cấu hình Chromium và thư mục bộ đệm.
Hãy xem trên e2fspross . Điều này cũng có sẵn trong các gói Ubuntu. Nó cung cấp chương trình e4defrag.
extent
trong khổ ext4
thơ của [fs_types]
phần trong /etc/mke2fs.conf
- do đó, nó là "mặc định". Mặc dù, bất kể cấu hình thời gian tạo của máy mà hệ thống tệp được kết nối, tốt nhất bạn nên tự kiểm tra hệ thống tệp: tune2fs -l </dev/with/ext4> | grep extent
(hoặc xem dòng "Tính năng hệ thống tệp " trong đầu ra Tune2fs hoàn chỉnh). Nhắc bạn, tôi chỉ chạy e4defrag -c ...
trên hệ thống tệp 1TB đầy đủ 100% extent
và chỉ có 5 tệp bị phân mảnh và "điểm phân mảnh" 0. YMMV.
e2defrag -c /path
chỉ in 5 tệp bị phân mảnh đầu tiên được tìm thấy (thậm chí không phải là các tệp bị phân mảnh nhất). Chạy e2defrag -v /path
để xem làm thế nào nó làm giảm số lượng phạm vi.
Nếu bạn có đủ dung lượng trên ổ cứng, bạn có thể sử dụng Gparted để chống phân mảnh hệ thống tệp của mình ( ext2, ext 4, nraft, v.v. ). Bạn phải khởi động từ đĩa khởi động CD / DVD / USB vì ổ đĩa bạn đang làm việc phải được ngắt kết nối. Bạn cũng phải có sẵn nhiều không gian chưa sử dụng hơn không gian đã sử dụng để làm việc này và có thể mất một lúc.
Với phân vùng bạn muốn chống phân mảnh làm phân vùng cuối cùng trên ổ đĩa:
Bây giờ nó được phân mảnh.
Và tôi biết rằng bạn không quan tâm đến lý do tại sao / tại sao không chống phân mảnh Ubuntu, nhưng tôi sẽ đăng liên kết đến lý do tại sao-không phân mảnh-không cần thiết .
Tôi cũng thêm câu trả lời này để chỉ ra cách chúng ta có thể tìm thấy về các công cụ Linux tích hợp khác nhau để thực hiện một số thao tác thường được thực hiện. bạn
Ngoài ra, lưu ý rằng bạn chỉ cần làm siêu người dùng nếu bạn muốn chống phân mảnh mà không ngắt kết nối.
e4defrag -vc /path #verbose output with count
Ubuntu 14.04 LTS đặt (ít nhất là ổ đĩa chính) vào phân vùng EXT4 khi được cài đặt trên một bản cài đặt sạch (không nằm trên Win-Junk).
Trong trường hợp này, nếu bạn vừa thiết lập một hệ thống mới hoặc được định dạng mới trên một hệ thống cũ và sau đó cài đặt sạch, thì theo mặc định với 14.04 LTS, bạn có Phân vùng EXT4 tại /dev/sda1
.
Bây giờ, chỉ cần mở Terminal ( CTRL- ALT- T) và gõ:
sudo e4defrag -c /dev/sda1
và kiên nhẫn cho đến khi hoàn thành 'kiểm tra' và bạn nhận lại báo cáo phân mảnh.
Nếu bạn không tự tin về việc có Phân vùng EXT4 trên ổ đĩa hệ điều hành của mình, chỉ cần vào TRANG CHỦ và nhập df -T
. Nhìn để xem phân vùng sda * của bạn được đặt thành gì (hãy thử trong 14.04LTS và bạn sẽ thấy EXT4 trừ khi bạn chọn loại phân vùng khác khi thiết lập ổ cứng).
done
. Điều đó chỉ có nghĩa là không có sự phân mảnh?