Portál AbcLinuxu, 4. května 2025 12:44

Dotaz: Jak zmenšit EXT3 i s oddílem

23.6.2010 17:45 ref2
Jak zmenšit EXT3 i s oddílem
Přečteno: 409×
Odpovědět | Admin
Našel jsem několik ošklivých návodů jak zmenšit ext3 a oddíl. Dost se v nich objevovalo že se musí vypnout žurnál(myslím že resize2fs už umí ext3 ne?) pak že se zmenší partišna(a nechá se radši o 5procent větší - no fuj). Nezná někdo lepší způsob. Co by udělalo, kdybych odstranil partišnu, pak vytvořil novou a až potom zmenšil souborový systém, s tím, že bych nechal resize2fs automaticky kalkulovat velikost fs(tak jak se to dělá při zvětšování oddílu)..... jo a jedná se o primární diskové oddíly.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jendа avatar 23.6.2010 18:18 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak zmenšit EXT3 i s oddílem
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dost se v nich objevovalo že se musí vypnout žurnál
To byly nějaké dost staré návody.
pak že se zmenší partišna(a nechá se radši o 5procent větší - no fuj)
Problém je v tom, že různé nástroje třeba zaokrouhlují na bloky, cylindry… Nebo zobrazí GB a myslí tím GiB atd. Obvykle se to řeší tak, že se FS zmenší na menší než požadovanou velikost, pak se partišna dá přesně na požadovanou velikost a pak se zavolá resize2fs bez parametrů, který FS expanduje přesně na velikost partišny.
Co by udělalo, kdybych odstranil partišnu, pak vytvořil novou
V podstatě není rozdíl mezi zmenšením partišny a smazáním a vytvořením nové menší.
Nezná někdo lepší způsob. Co by udělalo, kdybych odstranil partišnu, pak vytvořil novou a až potom zmenšil souborový systém, s tím, že bych nechal resize2fs automaticky kalkulovat velikost fs(tak jak se to dělá při zvětšování oddílu)
A jak se pak asi resize2fs dostane k datům, které byly na konci souborového systému?
23.6.2010 21:26 ref2
Rozbalit Rozbalit vše Re: Jak zmenšit EXT3 i s oddílem
ok, jak bych měl postupovat když je partišna v raidu 1? /dev/sda2 + /dev/sdb2 = /dev/md1
23.6.2010 21:34 ref2
Rozbalit Rozbalit vše Re: Jak zmenšit EXT3 i s oddílem
Odpovím si sám. Řeším kraviny - nejspíš bude stačit odpojit jeden disk z raidu, na něm odstranit a vytvořit menší partišnu, spustit na něm další raid, překopírovat data z toho současného, ten současný vypnout a upravit na to co je na tom prvním disku a připojit do toho nového raidu a pak ten nový raid přejmenovat na ten co byl ten starý.
23.6.2010 21:35 ref2
Rozbalit Rozbalit vše Re: Jak zmenšit EXT3 i s oddílem
Nedá se náhodou s daty pracovat i když by ten oddíl nebyl v raidu? Tzn. /dev/sdb2 bych odstranil z raidu a pak normálně přimontoval. Lze to tak nebo se naruší data?
24.6.2010 11:41 MMichal | skóre: 21
Rozbalit Rozbalit vše Re: Jak zmenšit EXT3 i s oddílem
Pokud používáte SW RAID - To není tak jednoduché, protože SW RAID se superblokem má v té partišně uložené metadata pole, které mohou být na začátku nebo na konci (v závislosti na verzi - viz. man mdadm). Pokud jsou na konci, tak by to asi šlo, protože FS začíná na začátku partišny a nedosahuje konce, takže by to mělo být OK. Pokud jsou ale na začátku, tak tam systém nenajde ten FS (asi by šlo řešit vytvořením nového blokového zařízení přes DeviceMapper, ale to je jiná kapitola).

Dle mého názoru je dobrá varianta uvedená o příspěvek výš, tj. odebrání disku z původního raidu a vytvoření nového raidu a překopírování dat.

A pár rad na závěr:
  1. na novém poli použijte LVM namísto diskových oddílů - lépe se pak provádí úprava velikosti a s trochou opatrnosti a cviku se lze vyhnout nutnosti zmenšit FS více a pak jej roztáhnout - dokonce jsem viděl i příkaz, který provedl obojí, ale nevím, jak se jmenoval
  2. po zmenšení blokové vrstvy (diskový oddíl / LV) ještě před prvním mountem doporučuji spustit fsck bez oprav - mělo by odhalit situaci, kdy je FS delší než blokové zařízení kvůli chybě při resize a pak to lze bezpečně opravit (roztáhnout či obnovit původní velikost blokové vrstvy)
  3. pokud používáte u SW RAIDu block intent map pro inkrementální resync, zrušte jej pro degradované pole (původní i nové) - já měl degradované pole s intent mapou cca 10x pomalejší
  4. pro SW RAID: při přesunu disku z jednoho pole do druhého mějte jistotu, že na něm nezbyly metadata původního pole - z toho by mohl být systém zmatený a sestavovat pole jinak, než chcete; metadata se většinou přepíší při zařazení do jiného pole (pokud jsou u obou polí metadata na stejném místě), ale pokud mají různou verzi, můžou mít různé umístění metadat (např. v1.0 na konci a v1.1 na začátku - viz. man mdadm)
Michal

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.