Mám následující zařízení s Linux Mint 18.1 na notebookech a GNU / Linux Debian 9 na serveru.
(Všechny jsou 64bitové a mají pracovní plochu Cinnamon.)
Všechna zařízení pohonu jsou formátována souborovým systémem ext4 ; RAID 1 se provádí pomocí mdadm
.
-
Notebook s 1 SSHD (nezaměňovat s HDD).
-
Notebook se 3 disky: 2 x spotřebitelské pevné disky v RAID 1 a 1 x SSD.
-
Server s 5 disky: 4 x podnikové pevné disky na dvojnásobku RAID 1 a 1 x SSD.
Mám systém na těchto SSD a nikdy bych nedefragmentoval SSD.
Otázka se týká HHD a SSHD.
Našel jsem starý soubor PDF s několika dalšími funkcemi e4defrag
.
-
Proč musí být souborový systém připojen, podle této chybové zprávy, když se pokoušíte defragmentovat odpojený souborový systém? Chci pochopit, proč to je:
Filesystem is not mounted
-
Chtěl bych implementovat defragmentaci volného místa. AFAIK je nyní předmětem kontroly. Je možné, abych např. zkompilovat
e4defrag
ze zdroje s těmito možnostmi nebo jakkoli?e4defrag -f /deviceOrDirectory
-
bych Také bych rád použil relevantní datovou funkci:
e4defrag -r /deviceOrDirectory
Mám mnoho relevantních důvodů domnívat se, že fragmentace na těchto strojích zpomaluje rychlost čtení, například:
-
Převzato ze serveru pomocí pevných disků RAID 1 :
[2556/30987]/raid1a/bitcoind/blocks/rev00820.dat: 100% extents: 16 -> 1 [ OK ]
-
Převzato z notebooku pomocí RAID 1 HDD:
[29405/50810]/raid1/movies/SGA-HEVC/S04E01 - Adrift.mp4: 100% extents: 31 -> 6 [ OK ]
Jak vidíte, defragmentace nebyla schopna ani dát soubor 31 bloků na 1 kus. Samozřejmě můžete namítnout, že jde o filmový soubor, takže na tom nezáleží. Je to pravda, ale pouze v tomto případě.
Příkaz, kterým spustím defragmentaci:
-
Na serveru:
sudo e4defrag -v /dev/md1
-
Na notebooku:
sudo e4defrag -v /raid1/
Ano Nezáleží na tom, zda vyvolám příkaz pomocí názvu zařízení nebo adresáře.
Můžete mi ukázat správný směr?
Komentáře
- Máte výsledky měření, které ukazují na defragmentaci jako zdroj pomalého přístupu? Pokud ano, jaké? Ve většině případů nemusíte ' provádět manuální defragmentaci na souborových systémech ext4, pokud ' je dostatek volného místa aby jej algoritmus přidělování automaticky defragmentoval během normálního provozu.
- @dirkt Dosud nebyla provedena žádná měření. ' se nehádám, zda je nebo není efektivní defragmentovat
ext4
souborový systém. Otázky jsou jasné: Jak postupovate4defrag -r
ae4defrag -f
.
Odpovědět
e4defrag
potřebuje připojení systému souborů, protože požádá ovladač systému souborů jádra o provedení defragmentace, ne nedělejte to sám.
Pokud jde o defragmentaci volného místa a defragmentaci příslušných souborů, opravy nebyly nikdy dokončeny; poslední zmínka v příslušném seznamu adres sahá do roku 2014 :
The
e4defrag
je ve2fsprogs
a kód se stále udržuje a vylepšuje. Dmitrij Monakhov přidal zejména mnoho „testů mučení“ a v základním kódu jádra našel řadu rasových podmínek. Nedávno také poslal refaktor kódu kódu jádra, který jej výrazně vylepšil a (zmenšil velikost ext4 o 550 řádků kódu).Jak již bylo řečeno, pro tuto verzi nebyl žádný skutečný vývoj funkcí.
e4defrag
za nějakou dobu. Proběhla nějaká diskuse o tom, jaké by mohly být API jádra pro podporu této funkce, ale nikdy neexistoval finální návrh API, natož implementace.
Takže pochybuji, že v současné době stojí za testování něco.
e4defrag --version
říkáe4defrag 1.45.5 (07-Jan-2020)
.e4defrag
na čas. Je to stále plně podporovaná část Ext4, ale není použitelná ve všech případech (souborové systémy s bigalloc nelze defragmentovat, žurnálování dat je nekompatibilní s defragmentací a inody DAX a šifrované soubory nelze přesunout).