Jawaban:
Sistem file modern, khususnya yang dirancang untuk menjadi efisien dalam kasus penggunaan multi-pengguna dan / atau multi-tasking, melakukan pekerjaan dengan cukup baik untuk tidak memecah data sampai sistem file menjadi mendekati penuh (tidak ada angka pasti di mana "dekat ke penuh" "mark karena tergantung pada seberapa besar filesystem itu, distribusi ukuran file dan apa pola akses Anda - angka antara 85% dan 95% umumnya dikutip) atau pola kreasi dan penulisan file tidak biasa atau filesystem itu sangat tua sehingga telah melihat banyak "aksi". Ini termasuk ext2 / 3/4, reiser, btrfs, NTFS, ZFS, dan lainnya.
Saat ini tidak ada cara tingkat kernel / / sistem file untuk defragment ext3 atau 4 saat ini (lihat http://en.wikipedia.org/wiki/Ext3#Defragmentation untuk info lebih lanjut) walaupun ext4 direncanakan akan segera mendapatkan online defragmentasi.
Ada alat pengguna-tanah (seperti http://vleu.net/shake/dan lain-lain yang tercantum dalam artikel wikipedia) yang mencoba mendefrag file individual atau set file dengan menyalin / menulis ulang mereka - jika ada blok ruang kosong yang cukup besar, ini biasanya menghasilkan file yang diberikan blok yang berdekatan. Ini sama sekali tidak menjamin file berada di dekat satu sama lain, jadi jika Anda menjalankan guncangan pada sepasang file besar yang Anda temukan adalah hasil dari dua file yang didefragmentasi sendiri tetapi tidak berada di dekat satu sama lain pada disk. Dalam sistem file multi-pengguna, lokalitas file satu sama lain tidak sering penting (tentu saja kurang penting daripada fragmentasi file itu sendiri) karena kepala drive membalik di semua tempat untuk melayani pengguna yang berbeda '
Jika Anda memiliki sistem file yang telah menjadi sangat terfragmentasi dari waktu ke waktu dan saat ini memiliki cukup banyak ruang kosong maka menjalankan sesuatu seperti di shake
atas semua file dapat memiliki efek yang Anda cari. Metode lain adalah menyalin semua data ke sistem file baru, menghapus yang asli, dan kemudian menyalinnya kembali. Ini membantu dalam banyak cara yang sama shake
tetapi tetapi mungkin lebih cepat untuk jumlah data yang lebih besar.
Untuk sedikit fragmentasi, jangan khawatir tentang hal itu. Saya tahu orang-orang yang menghabiskan lebih banyak waktu duduk menonton bar kemajuan defragmentasi daripada yang akan mereka hemat (karena akses disk yang lebih efisien) dalam beberapa masa operasi normal!
ureadahead
, seperti yang dilakukan Ubuntu baru-baru ini secara default (lihat ubuntuforums.org/showthread.php?t=1434502 untuk info lebih lanjut), untuk mencapai efek yang sama. Beberapa penundaan dalam urutan boot Linux dapat dikurangi dengan memintanya untuk memulai layanan secara lebih bersamaan jika memungkinkan jika pengaturan boot disro Anda mendukung ini (atur CONCURRENCY = shell di / etc / defaults / rc pada Debian) dan tweak serupa. Untuk memeriksa apakah Anda membuat perbedaan dengan perubahan yang Anda lakukan gunakan bootchart.org untuk menunjukkan apa yang terjadi sebelum Anda men-tweak hal-hal dibandingkan dengan sesudahnya.
e2defrag
dan bereksperimen dengan itu untuk mencapai pengemasan seperti itu. Anda dapat menemukannya di launchpad.net/e2defrag .
/etc/defaults/rc
tetapi memiliki /etc/default/rcS
pada debian 6
e2defrag
sekarang lebih baik mendukung Ext3, lebih baik daripada shake
?