Розумний спосіб дефрагментації файлової системи FAT?


10

Який найкращий спосіб дефрагментації файлової системи FAT при запуску Linux / Unix (наприклад, на USB-палиці)?


4
Я б пішов на ваш перший варіант, якщо простір не проблема. Я створив би чисту файлову систему у великому файлі, встановленому в петлі. Таким чином ви отримуєте можливість перевірити результат перед тим, як перезаписати палицю.
jippie

Пропозиція @ jippie також пропонує резервну копію. Інакше я б пішов на утиліту defrag, але спочатку уважно перевірте, чи вона надійна, і заздалегідь створіть резервну копію, чи є я вкладення даних.
фонбранд

@jippie: ви маєте на увазі створити циклічний файл однакового розміру початкового жирового розділу, скопіюйте його в нього, перевірте, а потім DD у вихідний пристрій? Вам знадобиться додатковий простір, і я не бачу, як це краще просто просто скопіювати файл у локальну файлову систему ext. Або мені чогось не вистачає.
Marc MAURICE

1
Ви можете перевірити результат перед зміною вмісту флешки.
jippie

Відповіді:


7

Ви можете перевірити, чи файл фрагментований чи не використовується filefragпрограма.

Таким чином ви можете відфільтрувати файли, які не фрагментовані, і зробити копію / копіювання назад лише для вже фрагментованих файлів. Це повинно економити ваш час. Однак майте на увазі, що немає жодної гарантії, що новий макет файлу буде кращим за старий.

Найкращий спосіб - взагалі ігнорувати фрагментацію файлів. Особливо на USB-накопичувачі це навряд чи має значення, лише відходи записують цикли, і на відміну від жорстких дисків, немає рухомих деталей і, таким чином, не так багато штрафу через фрагментацію.

Дефрагментація повинна бути необхідною лише у тому випадку, якщо трапилось щось смішне, що спричинило фрагментацію файлів дуже екстремальним чином. Наприклад, торент-клієнти, які завантажують вміст файлів у довільному порядку без попереднього розміщення. Але якщо FAT в якийсь момент не почав підтримувати розріджені файли, це навіть не проблема, оскільки попереднє розміщення на такому FS є обов'язковим.


1
Дякую за вашу відповідь. Насправді мені потрібен спосіб повністю дефрагментації файлової системи FAT, оскільки я використовую Easy2boot , і кожен iso-файл не повинен бути фрагментованим.
Marc MAURICE

Мені звучить як застарілий метод. Ізолуп GRUB2 дуже популярний, тому безліч дистрибутивів підтримують циклічну ізоляцію з будь-якого місця. Тим, хто цього не робить, можливо, він працює безпосередньо з розділу, але він може так само вийти з ладу. Цілком залежить від самого ISO.
frostschutz

2
Недолік GROB2 isoloop полягає в тому, що він безпосередньо завантажить ядро ​​Linux в ISO. Ви повинні знати шлях завантаження ядра / initrd, і ви втратите меню ISOLINUX, яке пропонує власні варіанти завантаження.
Marc MAURICE

Пошук шляху не важкий, а решта залежить від того, скільки зусиль ви хочете докласти, щоб перетворити елементи меню isolinux у підменю grub2 ... але так, всі рішення мають свої недоліки. Я щойно перевірив свій розділ ISO - НІКОЛІ файлів нефрагментовані. І вони були скопійовані одна за одною. Виправлення могло б стати для мене головним болем, тому я скоріше відмовляться від ISO, які не підтримують встановлення isoloop.
frostschutz

Я ніколи не використовував easy2boot сам, але оскільки це рішення передбачає створення розділу, ви не могли б зробити це в першу чергу - один розділ на ISO та dd. Жодна фрагментація не можлива таким чином. Або, якщо це взагалі можливо, файлова система без фрагментації (ISO всередині ISO?)
frostschutz

0

Подивимось на це з іншого кута, тому що ти наводив приклад "на прикладі usb stick"

НАПРИКЛАДНИЙ ПРИКЛАД

USB-накопичувач - це пам'ять FLASH, і слід враховувати дві речі: 1) Оскільки пам'ять FLASH не має рухомих частин, помітне збільшення продуктивності не повинно бути поміченим шляхом дефрагментації. Захисні засоби - або для очищення файлової системи, або для повторної організації файлових блоків, щоб встановити їх ближче один до одного - щоб зменшити фізичні рухи руки (шукати) та час очікування закрутки диска (затримка). У Flash цього немає. 2) Написання і запис і запис на флеш-пам’яті зношується. Тепер, на 100K витривалість письма, можливо, ваш USB-накопичувач прослужив би від кількох до 10 років, але кількість часу, яке ви можете написати, - це "кінцеве" число. Постійні дераги до USB-накопичувача при цьому втрачають життя через обмеження витривалості.

І це не лише ваш USB-накопичувач, SD-карти, компактний FLASH і навіть SSD-накопичувачі.

Моя думка, не дефрагментуйте лише чорт зате, знайте, що є базовою технологією файлової системи та її наслідками, і навіть якщо вона магнітна і не електронна, занадто багато дефрагментів може врешті-решт пошкодити вашу файлову систему, і ви втратите ваші файли.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.