Відповіді:
Сучасні файлові системи, особливо ті, які розроблені для ефективності у випадках використання багатокористувацької та / або багатозадачної роботи, роблять досить непогану роботу щодо не фрагментації даних, поки файлові системи не стануть близькими до повного (немає точної цифри для того, де "близько до повного" "позначити, як це залежить від того, наскільки велика є файлова система, розподіл розмірів файлів та які у вас шаблони доступу - цифри від 85% до 95%, як правило, цитується) або схема створення файлів і записів незвична або файлова система є дуже стара, тому побачила багато "дій". Сюди входять ext2 / 3/4, рейзер, btrfs, NTFS, ZFS та інші.
Наразі не існує способу дефрагментації ext3 або 4 на рівні ядра / файлової системи (див. Http://en.wikipedia.org/wiki/Ext3#Defragmentation для отримання додаткової інформації), хоча ext4 планується незабаром отримати в Інтернеті дефрагментація.
Існують інструменти "користувач-земля" (наприклад, http://vleu.net/shake/та інших, перерахованих у цій статті вікіпедії), які намагаються дефрагментувати окремі файли або набори файлів, копіюючи / переписуючи їх - якщо є достатньо великий блок вільного простору, це, як правило, призводить до того, що файлу надається суміжний блок. Це жодним чином не гарантує, що файли знаходяться поруч один з одним, хоча, якщо ви натискаєте на велику пару великих файлів, які ви знайдете, це призводить до того, що два файли самі дефрагментуються, але не десь поблизу один від одного на диску. У файлах багатокористувацької файлової системи розташування файлів один до одного не часто важливе (це, звичайно, менш важливо, ніж фрагментація самих файлів), оскільки головки накопичувачів перекидаються всюди, щоб обслуговувати іншого користувача '
Якщо у вас є файлова система, яка з часом сильно роздроблена і в даний час має достатньо місця, то для чогось подібного shake
до всіх її файлів може з’явитися потрібний вам effet. Іншим способом було б скопіювати всі дані в нову файлову систему, видалити оригінал та знову скопіювати їх. Це допомагає так само, як shake
це робить, але може бути швидшим для більшої кількості даних.
Що стосується невеликої кількості фрагментації, просто не турбуйтеся про це. Я знаю людей, які витрачають більше часу на перегляд барів прогресу дефрагментації, ніж коли-небудь заощаджують (за рахунок більш ефективного доступу до диска) протягом кількох термінів нормальної роботи!
ureadahead
, як недавно побудовані Ubuntu за замовчуванням (див. Ubuntuforums.org/showthread.php?t=1434502 для отримання додаткової інформації), щоб досягти подібного ефекту. Деяку затримку послідовності завантаження Linux можна зменшити, попросивши її запускати сервіси більш одночасно, якщо це можливо, якщо налаштування завантаження вашого диспетчера підтримує це (встановіть CONCURRENCY = оболонку в / etc / defaults / rc на Debian) та подібні налаштування. Щоб перевірити, чи змінюєте ви зміни, якими користуєтеся, використовуйте bootchart.org, щоб показати, що відбувається перед тим, як виправити речі порівняно з пізніше.
e2defrag
і експериментував з цим, щоб досягти такої упаковки. Ви можете знайти його на startpad.net/e2defrag .
/etc/defaults/rc
але є /etc/default/rcS
на debian 6
e2defrag
тепер краще підтримує Ext3, тим краще shake
?