Начини на плащане Abuse

Дефрагментиране на диск в Linux

23.10.2022, 02:33

Всеки потребител на Windows е запознат с факта, че има дефрагментация на диска. Необходимо е твърдият диск да функционира бързо и е необходимо да се дефрагментира дискът, на който е инсталирана операционната система. Файловата система Ext4 в Linux не е предразположена към фрагментация. Но на практика е известно, че при продължителна работа със системата се натрупва известна фрагментация. По-нататък ще ви разкажем подробно за това как правилно да дефрагментирате диска в Linux. За целта ще разгледаме примера с файловата система Ext4.

Дефрагментация - какво представлява? С прости думи за сложни неща

Какво представлява фрагментацията? Нека разгледаме теорията: твърдият диск е съставен от голям брой малки сектори, като всеки от тях съхранява малка част от данните. Големите файлове се разделят на няколко по-малки фрагмента.

Но Ext4 не фрагментира като другите файлови системи, защото заделя място след записания файл. И дори ако възникне фрагментация, тя се опитва да премести файла в свободното пространство. Фрагментация се появява, когато файловата система е пълна, но това рядко се случва.

SSD дисковете не се нуждаят от дефрагментиране. В тях няма движещи се части.

Когато потребителят записва файл в система FAT или NTFS, за тази операция се отделя определено количество ресурси, след което се записват следващите файлове. Ако е необходимо да се актуализира файлът и да се добави информация към него, ще се използват други сектори в друга част на диска.

Когато има голям брой такива файлове, файлът може да бъде разпределен по целия диск, което означава, че в случай на такава операция като четене ще трябва да се премести четящата глава, а това ще забави производителността. Именно това е същността на фрагментацията.

Как работи дефрагментирането в Linux

Използвайте помощната програма fsck, за да прецените колко фрагментиран е дискът. Подайте опцията -f. Използвайте опцията -n, за да предотвратите големи промени във файловата система:

$ sudo fsck -fn /dev/sdb1

Дефрагментиране на диск в Linux

/dev/sdb1 е дялът за проверка. Не извършвайте проверката върху монтирана система, ще се сблъскате с фалшиви грешки, ако не се извършват никакви действия върху файловата система, няма да има повреди. Помощната програма e4defrag ще ви помогне да извършите дефрагментация, тя се намира в папката e2fsprogs.

Ако все още нямате инсталиран този набор от помощни програми, инсталирайте го с командата:

$ sudo apt install e2fsprogs

След това е налична възможност за дефрагментиране на желания дял. Същият /dev/sdb1. Нека да монтираме дяла преди дефрагментирането:

$ sudo mount /dev/sdb1 /mnt

Дефрагментиране на диск в Linux

След това дефрагментиране на Ext4:

$ sudo e4defrag /dev/sdb1

Дефрагментиране на диск в Linux

След това можете отново да проверите фрагментацията. Преди това демонтирайте дяла. Фрагментация 0%:

$ sudo fsck -fn /dev/sdb1

Това е всичко. Не губете времето си само за дефрагментиране на SSD дискове. Те не се нуждаят от това.