Zdravím.
Chcel by som sa opýtať, či ste niekto z vás skúšali takú tú "primitívnu" "copy" metódu defragmentácie nejakého ext4 oddielu HDD v Linuxe (u mňa v Minte 17.3), keď z fragmentovaného oddielu, ktorý chcete defragmentovať, prekopírujete (zazálohujete) všetky dáta na nejaký iný ext4 oddiel (alebo na zvlášť HDD), potom kompletne vymažete dáta na fragmentovanom oddieli (prípadne ho sformátujete, alebo prepíšete nulami a následne sformátujete), a nakoniec prekopírujete zazálohované dáta nazad na oddiel bez fragmentácie, kde boli vymazaná všetky dáta.
Či vám takýto "surový" spôsob defragmentácie v Linuxe fungoval:
https://www.maketecheasier.com/defragment-linux/
Lebo mne to zrejme vôbec nefunguje. Ja keď vymažem dáta na fragmentovanom skúšobnom oddieli (cca 1,2 GB), tak mi najprv príkaz "sudo fsck -fn /dev/sda4" v termináli ukáže nulovú fragmentáciu, ale akonáhle na tento oddiel znova prekopírujem pôvodné dáta zo záložného oddielu, tak ihneď mi spomínaný príkaz pri testovanom oddieli v termináli ukáže aj 25% fragmentáciu. Nechápem, prečo sa tie súbory "nenahádžu" na testovaný oddiel pekne/úsporne rad za radom.
Robím niečo zle?
Vďaka za rady.
Ja som na Linuxe roky a pozrieť sa na fragmentáciu ma nenapadlo pozrieť už 10rokov.
S čím máš problém s tým číslom? Na to vykašli, pokiaľ máš výkonnostné problémy, tak napíš to sa riešiť dá.
Všetky natívne linuxové súborové systémy ukladajú súbory inteligentne a defragmentáciu nepotrebujú.
No a na ReiserFS tá defragmentácia s prekopírovaním súboru funguje. Teda ono je to ešte aj o politike ktorá je na akom súborovom systéme nastavená. Takže to kľudne inému užívateľovi fungovať nemusí.
A podľa čoho zistíš, že funguje?
Ono to funguje, ale musí ísť o dostatočne veľký súbor (napr. film) a disk musí byť napr. na 80% a viac plný.
Zapíšem súbory so zásobníkov:
Uvoľním súbory z keše:
Skopírujem súbor do čiernej diery:
Mrknem sa na čas, potom ten súbor skopírujem a zopakujem to znovu.
Nemusí sa stať vôbec nič, proste na danú vec má vplyv viacero faktorov a ako som písal, linuxové FS sa snažia defragmentácií vyhýbať.
Používaj na zistenie defragmentácie pre ext(2,3,4) e4defrag, je priamo na to určený. Tá hodnota ktorú píše fsck je fakt divná, ale proste pokiaľ nemáš nejaký ozajstný výkonový problém, tak sa na ňu nepozeraj :)
Kúpil som si externý USB3 disk na multimédiá, mal 1/2TB a naformátoval som ho na ext4. Kúpil som si film. K tomu filmu bola pribalená faktúra v PDF o veľkosti do 3KiB. Keďže ext4 FS má štandardnú veľkosť bloku 4KiB (čo je pre porovnanie veľkosť jednej pamäťovej stránky na x86), tak sa tá faktúra zmestila do jedného bloku. Ten film má 2GiB (524.288 blokov). Nahral som si obidva súbory na ten externý disk a pre istotu som skontroloval fragmentáciu lebo do konca prázdnin je ešte pár dní, a mne sa nechce ísť von do toho usmokleného počasia. Program fsck mi povedal že mám 50% fragmentáciu, čo teraz?
V reále sa stalo to, že sa mi začal kopírovať film na ten disk a počas toho kopírovania sa mi nahrala na jeden blok tá faktúra, takže vyše polmiliónový rad blokov ktoré okupoval film bol porušený len raz jediným blokom. Program fsck mi napísal že mám polovicu súborov fragmentovanú, to je pravda. Program e4defrag mi vypísal že mám fragmentačné skóre nula. V poznámke uviedol že pri skóre 0 až 30 to nie je problém, pri skóre 31 až 55 je to trošku problém, a pri skóre nad 56 potrebuje FS defragmentáciu.
PS: Ten údaj o fragmentácii súborov z fsck má síce výpovednú hodnotu, ale tá má malú váhu. V tom blogísku potreboval autor nahnať zobrazovanie reklamy, a tak vyhlásil že bežná situácia je kritický problém ktorý treba riešiť. Fragmentácia je kľúčové slovo ktoré spúšťa pavlovov reflex pri užívateľoch MS Windows, a to aj keď sa začali zaoberať rozumne navrhnutými operačnými systémami. Opísaná potreba riešenia tejto nepodstatnej situácie naštartovala lavínu zobrazovaní keďže s tým kadekto po svete začal prudiť. Každý si zarába ako vie. Niekto trollingom vo svete virálnych informácií, niekoho také technológie desaťročia živia. Mne takýto nepodstatný komunikačný šum už nevykúzli ani úškrn na tvári.
super vysvetlenie a pekný príbeh ;-)
Ehm, pozrel si si čo píše ten príkaz?
To že máš okolo 25% súborov rozseknutých na dve alebo viac častí ešte neznamená že sa máš báť o výkon. Mne to píše na fragmentáciu po roku používania na 10% súborov, pričom e4defrag mi vypísal fragmentačné skóre NULA.
PS: Nabudúce buď použi program na defragmentáciu, alebo tie dáta nahrávaj s5 v jednom prúde. Teda nie cez GUI klikátka čo púšťajú veľa prúdov naraz (kvôli výkonu, že áno, každá platňa má vlastnú autonómne sa pohybujúcu hlavu a pri SSD diskoch na tom vôbec nezáleží). Sprav to napríklad cez tar.
Ja som sa riadil návodom v tomto článku:
https://www.maketecheasier.com/defragment-linux/
kde autor článku písal, že ak je výstup "fsck":
"If your fragmentation is above 20%, you should proceed to defragment your system.".
Na prekopírovanie súborov nazad som použil aj príkaz "cp" v Termináli, nakoľko som si myslel, že súbory sa budú ukladať na oddiel postupne a nie naraz.
Ešte to tam skúsim hodiť nazad ako zbalený archív.
Inak, aký program máš konkrétne na mysli?
"e4defrag" v príkazovom riadku?
A ako to konkrétne myslíš s tým "tar", aby sa mi dáta nahrávali späť na disk pekne rad za radom bez fragmentácie (resp. "contiguous")?
Však nebuď skúpy na slovo. ;)
Uvedom si, že v mojom prípade ide o začiatočníka, max. mierne pokročilého užívateľa Linuxu, ktorý sa chce naučiť niečo nové, aby bol viac Človekom.
Vďaka priatelia.
Takže pri súborovom systéme ext4 sa neriadiť výstupom napr. "25% non-contiguous", ktorý mi Terminál vyhodí po zadaní príkazu "sudo fsck -fn /dev/sda4",
ale výstupom po zadaní príkazu "sudo e4defrag -c /dev/sda4"?
Skús porovnať výstup z obidvoch príkazov. Z toho čo ťa vyľakal, a z toho čo som ti poskytol.
Mňa nič nevyľakalo. Len sa mi to zdá divné.