V dnešním tutoriálu vysvětlím, jak můžete přesunout kořenový oddíl naší distribuce Linuxu na jiný oddíl (ať už na stejném pevném disku nebo ne). Tato potřeba ke mně přišla v polovině loňského roku, kdy jsem ještě používal čakru, a od té doby je to proces, který jsem použil při více příležitostech s uspokojivými výsledky a nulovými problémy.
Pokud jsou kroky dodrženy do písmene, jedná se o 100% bezpečný, relativně rychlý a zcela reverzibilní provoz. Budeme potřebovat pouze živé CD jakéhokoli distribuce, kterou tam máme (například jeden z Ubuntu bude sloužit našemu účelu), a správně identifikovat, který je zdrojový a cílový oddíl.
Pro takové informace se můžeme obrátit na GParted nebo KDE Partition Editor. Když je provedeme, uvidíme okno podobné tomu na níže uvedeném snímku obrazovky. Tam musíme najít náš původní kořenový oddíl a podívat se, ke kterému disku patří (sda, sdb, sdc ...), jaké číslo má (sda2, sdb1, sdj5 atd.) A jaké je jeho UUID (alfanumerický kód, který najdete v sekci „rozšířené informace“). Je zřejmé, že pokud se chystáme přesunout oddíl, budeme potřebovat cíl, takže musíme předtím vytvořit díru na pevném disku, abychom provedli přesun, a zapsat si odpovídající data.
Před pokračováním chci uvést, že v tomto tutoriálu odkazuji pouze na Grub2; pokud použijete jiný zavaděč, některé kroky nebo příkazy se mohou lišit - ve skutečnosti je to s Grub Legacy mnohem jednodušší. Takže s informacemi z dříve zapsanými na kousek papíru se pustíme do práce:
1) Spustíme počítač s živým CD a čekáme na načtení plochy.
2) V terminálu dáme následující dva příkazy:
sudo mkdir / mnt / old
sudo mkdir / mnt / new
sudo mount / dev / sdaX / mnt / old (kde sdaX je původní kořenový oddíl).
sudo mount / dev / sdbX / mnt / new (kde sdbX je nový kořenový oddíl).
sudo cp -rav / mnt / old / * / mnt / new
sudo cp -rav /mnt/old/.* / mnt / new
sudo umount / mnt / old
sudo mount -o bind / dev / mnt / new / dev
sudo mount -t proc none / mnt / new / proc
sudo chroot / mnt / new / bin / bash
sudo grub-install / dev / sdb (kde sdb je pevný disk, kde máme nový kořenový oddíl a nemusíme na něj uvádět číslo nebo něco podobného).
sudo kate /boot/grub/grub.cfg
- Kam dáte (hdX, Y), změníme číslice X a Y podle následujícího:
X: označuje číslo pevného disku. Pokud je disk sda, X se rovná 0. Pokud je disk sdb, X se rovná 1. Pokud je disk sdc, X se rovná 2 atd.
Y: označuje číslo oddílu. 1,2,3… Příklad: druhý oddíl prvního disku (hd0,2); druhý oddíl třetího disku (hd2,2) ... Máte představu?
- Druhým polem, které je třeba upravit, je UUID (kód pro čísla a písmena tak dlouhý), který stále odkazuje na starý oddíl. Změníme to na UUID nového oddílu (nezapomeňte, že to můžete zkontrolovat například v GParted). Zkontrolujte data dobře!
- Třetí modifikace, a jedna z nejdůležitějších, souvisí s malým červeným obdélníkem, který je pod UUID a který vloží do obrazu „sdb2“. To je místo, kde musíte označit nový oddíl vašeho root, který logicky musí odpovídat (hdX, Y). Příklady: (hd0,1) -> sda1 // (hd2,3) -> sdc3
Mějte na paměti, že tyto změny se v zásadě musí opakovat v závislosti na počtu položek našeho operačního systému přítomných v Grubu. Mám tři záznamy čaker, proto musím tato data třikrát změnit. Nicméně, Doporučuji vám změnit pouze první položku a jakmile uvidíte, že vše začíná správně, pokračujte úpravou zbytku ze svého skutečného operačního systému.
sudo kate / etc / fstab
9) Nyní můžeme restartovat a zkontrolovat, zda je vše v pořádku. Pokud operační systém funguje dobře, můžeme pokračovat v nahrazení dat, která jsme ponechali beze změny ve zbývajících položkách souboru grub.cfg, a také odstranit starý kořenový oddíl - pokud je to naše přání-.
To je pro dnešek vše.
Toto hledalo XD. dík
Je to velmi bezpečný postup, použil jsem ho mnohokrát před lety a dobrá věc je, že nový / oddíl nebude obsahovat fragmentaci souborů ...
Přestože jsem se nedávno pokusil změnit kořenový oddíl s variantou také změny systému souborů (z reiserfs na ext3), ale bylo to pro mě nemožné kvůli více pokusům a otočením, než jsem dal, nějak při spuštění systému detekce selhala de / kvůli tomu, že hledal reiserfs systém / oddíl, když byl nový formátován pomocí ext3. Při vstupu do režimu údržby a ruční montáži / jako ext3 systém fungoval správně, ale při příštím spuštění selhal znovu ze stejného důvodu. Neexistovala žádná úprava grub nebo fstab, která fungovala ... vždy hledal / oddíl s reiserfs, nemohl najít řešení ...
Vypadá to, že tam byl nějaký soubor směřující k oddílu reiserfs. Možná nenápadný řádek z bootloaderu nebo něco podobného, jinak by se ext3 měla načíst správně.
Pokud jsem si to myslel ... a strávil hodiny hledáním něčeho, ale nic nenašel ... ani prohledáváním internetu.
Každopádně vás nemohu ujistit, že v minulosti jsem postup udělal bez problémů, je to tak, že uplynulo asi 6 nebo 7 let od doby, kdy jsem to dělal skoro pro potěšení ... naposledy, co jsem to zkusil s Debianem Lenny, asi největší rozdíl je jádro, než jsi možná použil distro s linuxem 2.4.x.
Každopádně, pokud hledáte řešení, doufám, že ho sdílíte ...
Dobrý tip, ... kdybych to věděl dříve.
Zdravím.
Ano, velmi dobrý tip, vypadá to hodně jako postup při změně disku / domova, ale nevěděl jsem, co to může dělat s rootem.
Velmi dobrá informace, i když ji možná nepoužívám, je dobré znát samotné mouchy. 🙂
Ano, s / home je to mnohem jednodušší, protože nemusíte znovu instalovat Grub nebo upravovat jeho konfigurační soubor. Kopírování všeho, co potřebujete, a úprava fstab je dost.
Samozřejmě mluvíme o / home, je zřejmé, že / root vyžaduje více pozornosti.
Není to jako / Home, což je obvykle téměř jen vyjmutí a vložení nebo, pokud to není možné, kopírování a vložení.
velmi dobrý manuál, příteli, moc děkuji, zajímalo by mě, jestli si odněkud lze stáhnout pdf verzi nebo jakoukoli jinou, pozdravy
Tady máte, čerstvé z trouby;):
https://sites.google.com/site/rsvnna/baul/Mover%20Root.pdf
díky příteli, velmi dobře
Díky moc! Hledal jsem něco podobného a co mě napadlo, bylo vytvořit obrazy diskových oddílů a poté je obnovit, ale samozřejmě chybělo více věcí, například připojovací body atd. Takže mi to vyhovuje jako rukavice!
Velmi dobrá informace, vždy je užitečné mít tyto věci po ruce pro každý případ. Díky moc.
Pokud používáte Grub2, nebyl by to grub2-install?
Při vytváření těchto návodů buďte opatrní, abyste někoho dostali do nepořádku, pokud nedáte správné příkazy.
V Archu byla stará verze grubu přejmenována na grub-legacy a grub 2 byl ponechán pouze jako grub, takže je správný, ale stejně je vhodné si přečíst dokumentaci vaší distribuce, než provedete důležitý tah, jako je tento, abyste si byli jisti názvů balíků
a díky autorovi jsem hledal podrobný postup a to mi dobře posloužilo
Pár příkazů více než bod 5 pro mě nefungovalo, lepší toto:
sudo su
mkdir / media / kk (kde je připojen kořen nainstalovaného systému)
mount -t ext4 -o rw / dev / sda / media / kk
mount –bind / proc / media / kk / proc
mount –bind / dev / media / kk / dev
mount –bind / sys / media / kk / sys
chroot / media / kk
aktualizovat skupinu
grub-install / dev / sda (nebo sdb,…)
Moc vám děkuji, hodně mi to pomohlo, protože po zkopírování všeho do nového oddílu můžete alternativně přesunout instalaci grub pomocí nástroje pro opravu bootování, abyste nemuseli dělat kroky 5 a dále
sudo add-apt-repository ppa: yannubuntu / boot-repair
sudo apt-get update
sudo apt-get nainstalovat boot-repair
je spuštěna aplikace graphifa, jsou aktivovány pokročilé možnosti; umístění grub a nový oddíl je vybrán pro instalaci grub.