Дефрагментація файлової системи ext4 за допомогою утиліти e4defrag

Бібліотека сайту rus-linux.net

Різні операційні системи використовують різні файлові системи. Наприклад, GNU / Linux підтримує велику кількість файлових систем, але найбільш часто використовується Ext4 (яка в майбутньому можливо буде замінена на Btrfs). І коли мова йде про файлових системах, перше, що спадає на думку - це фрагментація, яка надає прямий вплив на продуктивність файлової системи.

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

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

Деякі джерела стверджують, що файловим системам GNU / Linux, таким як Ext4, не потрібно дефрагментація (на відміну від файлових систем для Windows), так як вони спроектовані таким чином, що мінімізують фрагментації даних.

Дефрагментація файлової системи ext4 за допомогою утиліти e4defrag

Це, в деякій мірі, дійсно так. Але є експерти, такі як Такаші Сато, експериментально перевірили вплив фрагментації на продуктивність основних файлових систем GNU / Linux.
Він написав прекрасну статтю під назвою "ext4 online defragmentation" (останні її версії можна знайти тут), в якій можна знайти такі висновки:

"Було створено 50 фрагментованих файлів розміром 1 Гб (в файлової системі ext4). Перед і після фрагментації замерялась швидкість читання даних."
". Заміри показали, що для одного файлу розміром 1 Гб дефрагментація може підвищити продуктивність при читанні на 25%. Після дефрагментації всіх файлів швидкість доступу до них підвищилася на 29%".
Такаші Сато і Акіра Фуджита створили просту у використанні утиліту командного рядка для дефрагментації файлової системи ext4. Вона називається "e4defrag", і починаючи з Ubuntu 12.04 LTS вона передвстановлюють в системі за замовчуванням. Але необхідно пам'ятати, що вона працює тільки з файлової системою ext4 ".

Використання e4defrag

Дуже просто. Відкрийте термінал і введіть наступну команду:

"Location" може бути будь-яким змонтованим пристроєм з файловою системою ext4 (включаючи кореневу файлову систему), а також будь-Директорією або навіть окремим файлом всередині файлової системи ext4.

отримання звіту

Ще одна прекрасна функція e4defrag - можливість сканування змонтованої файлової системи ext4 (директорії або файлу) з отриманням звіту, в якому вказується ступінь фрагментації. Грунтуючись на цьому показнику, e4defrag видасть вам рекомендації, необхідні наступні документи дефрагментація даної системи.

Зауваження: якщо ступінь дефрагментації знаходиться в діапазоні 0-30, дефрагментація не потрібна. При ступеня фрагментації більше 56% дефрагментація обов'язкове.

Дефрагментація файлової системи ext4 за допомогою утиліти e4defrag

На скріншоті свіжовстановленому операційна система, тому ступінь фрагментації дорівнює нулю.

Сканування запускається за допомогою наступної команди:

кілька прикладів

Сканування і дефрагментація своїй домашній директорії:

Сканування і дефрагментація кореневої файлової системи:

Зауваження: в процесі дефрагментації виводяться повідомлення, що повідомляють про виконання операцій. Якщо ви там побачите повідомлення з позначкою "Failure", не переживайте, це нормально, так як деякі системні файли неможливо перемістити.

Не забувайте, що в GNU / Linux всі ваші файли змонтовані в кореневій файловій системі ( "/"), тому якщо у вас змонтовано кілька файлових систем ext4, вони також будуть дефрагментовані, що, в залежності від їх розміру і кількості файлів, може зайняти досить тривалий час.
Якщо у вас кілька розділів з файловою системою ext4, і ви хочете дефрагментувати їх індивідуально, але не знаєте ім'я пристрою (/ dev / sda.), Ви можете зробити це, скориставшись наведеними нижче інструкціями.

1. Введіть наведену нижче команду в терміналі, щоб отримати список наявних розділів і їх файлових систем.

2. Потім у висновку команди знайдіть поле "id". Розділи, у яких в цьому полі стоїть "83", мають файлову систему ext4. Потім в цьому ж рядку знайдіть стовпець "Device", там ви побачите ім'я пристрою. На наведеному нижче скріншоті у мене два таких пристрої - "sda5" і "sda6".

Дефрагментація файлової системи ext4 за допомогою утиліти e4defrag

3. Потім просто скопіюйте ім'я пристрою і вставте його в таку команду:

Залежно від типу розділу (встановлена ​​чи ні на ньому операційна система), вам може знадобитися "sudo".

Якщо вас зацікавила ця утиліта і її можливості, більш детальну інформацію можна отримати, прочитавши інструкція:

На цьому все. Хай щастить.

Схожі статті