Как дефрагментировать файловую систему ext4

45

Мне не нужен ответ, говорящий, что нет необходимости, пожалуйста!

    
задан Pedro Diniz 23.11.2012 в 20:52
источник

5 ответов

45

Используйте e4defrag для дефрагментации ваших файлов

Если ваша файловая система ext4 создана с опцией extent (она используется по умолчанию в последних дистрибутивах), вы можете использовать утилиту e4defrag для проверки и дефрагментации ее в Интернете, то есть без учета.

Просто проверьте уровень фрагментации с чем-то вроде этого (вам нужно быть root для просмотра деталей):

sudo e4defrag -c /path/to/myfiles

Вот пример вывода, который вы можете получить:

$ 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.

Как и в этом примере, большую часть времени он скажет вам, что дефрагментации не требуется, но если вы хотите это сделать, вы все равно можете использовать (вам не нужно использовать sudo для дефрагментации ваших собственных файлов):

e4defrag /path/to/myfiles

Ваши пользователи могут даже запускать их на своих собственных файлах, нет необходимости быть root, если вы не хотите работать с другими пользовательскими или системными файлами.

e4defrag находится в пакете e2fsprogs , и я предполагаю, что он уже установлен в вашей системе Ubuntu.     

ответ дан gerlos 08.05.2015 в 10:55
источник
25

Посмотрите e2fsprogs . Это также доступно в пакетах Ubuntu. Он предоставляет программу e4defrag.

    
ответ дан TIIUNDER 23.11.2012 в 21:13
15

Использовать Gparted для дефрагментации файловой системы

Если на вашем жестком диске достаточно места, вы можете использовать Gparted для дефрагментации своего файловой системы ( ext2, ext 4, nfts и т. д. ). Вы должны загрузиться с загрузочного диска CD / DVD / USB, потому что диск, на котором вы работаете, должен быть размонтирован. У вас также должно быть больше неиспользуемого пространства, чем используемое пространство для работы, и это может занять некоторое время.

  • Загрузка с загрузочного диска.
  • Запустите gparted и сжимайте раздел, содержащий данные, которые вы хотите дефрагментировать, на сумму, превышающую объем ваших данных.
  • Убедитесь, что раздел, который вы хотите дефрагментировать, - это последний раздел на диске, переместив его в конец (возможно, вам придется создать еще один пустой раздел перед ним, если на диске есть только один раздел).

С разделом, который вы хотите дефрагментировать как последний раздел на диске:

  • увеличьте раздел слева от него до максимального размера. Это приведет к перемещению данных разделов в конец диска.
  • Как только это будет сделано, сократите этот раздел до прежнего размера.
  • Если вы создали пустой раздел, чтобы иметь более одного на диске, вы можете его удалить.
  • Переместите свои разделы обратно в исходный порядок и заново отредактируйте раздел, который вы хотите получить, до полного размера.

Теперь он дефрагментирован.

И я знаю, что вас не интересует, почему / почему не дефрагментировать ubuntu, но я отправлю ссылку на почему-дефрагментация-ненужная в любом случае.

    
ответ дан James 23.11.2012 в 22:34
1

Ubuntu 14.04 LTS помещает (по крайней мере, основной диск) в раздел EXT4 при установке на чистой установке (не находящейся поверх Win-Junk).

В этом случае, если вы только что настроили новую систему или отформатировали ее на старой системе, а затем выполнили чистую установку, то по умолчанию с 14.04 LTS у вас есть раздел EXT4 в /dev/sda1 .

Теперь просто откройте терминал ( CTRL - ALT - T ) и введите:

sudo e4defrag -c /dev/sda1

и будьте терпеливы, пока «проверка» не будет завершена, и вы получите отчет о фрагментации.

Если вы не уверены в наличии раздела EXT4 на вашем жестком диске, просто перейдите на главную страницу и введите df -T . Посмотрите, для чего установлены ваши разделы sda * (попробуйте это в 14.04LTS, и вы увидите EXT4, если вы не выбрали другой тип раздела при установке жесткого диска).

    
ответ дан lance 06.03.2016 в 20:52
0

Я добавляю этот ответ, чтобы показать, как мы можем найти различные встроенные инструменты Linux для выполнения некоторых обычно выполняемых операций. Вы

Также обратите внимание, что вам нужно делать суперпользователь только в том случае, если вы хотите дефрагментировать без размонтирования.

Использование команды apropos

e4defrag -vc /path #verbose output with count
    
ответ дан Sudip Bhandari 21.02.2018 в 06:16