Днес ще разгледаме как да мигрираме всички данни от един твърд диск на друг, работа, която би могла да бъде полезна, ако по някаква причина трябва да заменим текущия твърд диск на нашия компютър с друг (със същия или различен капацитет).
Преди няколко дни, на случайно посещение в къща на приятел (който случайно мигрира към GNU / Linux преди няколко месеца след моето упорство), той с удоволствие ми показа нов твърд диск, който му беше даден (500 Gb HDD, който Въпреки че за мнозина може да изглежда като устройство с малък капацитет, тук, в Джурасик Куба, това все още е чудесна стъпка към голямото съхранение на данни) и това е необходимо, за да замени вече остарелия и наполовина неуспешен диск от 160 GB.
Самото му предложение беше да премахне стария диск и да постави 500 GB диск на негово място, след което да инсталира Debian, което беше дистрибуцията, която бях инсталирал на стария диск, и отне известно време, за да възстановя всичките му настройки.
Докато това се случваше, братовчед на моя приятел чакаше кулминацията на тази работа, за да вземе 80 GB диск, който от своя страна ще замени 40 GB диск в много по-стар компютър.
Детайлът на всичко това е, че дори не съм ходил с инсталационен диск на Debianи по-малко с наличните хранилища. Така че идеята за инсталиране на системата и приложенията не беше в обсега ни, освен ако не отидох в къщата си, за да намеря необходимото, но преместването от единия край на град Сантяго де Куба в друг нямаше да бъде алтернатива за мен., в град, където официалният транспорт (частни мотоциклети) е удвоил скоростта си през тази нова година (благодатта щеше да ми струва не по-малко от 40 песо).
Там искрата бе запалена: да се клонира албумът. Знам, че това клониране на диска би било първото нещо, което би хрумнало на много от вас, но за мен, квази азбука В тези задачи изглеждаше като внезапна алтернатива, изпратена директно от боговете на Отворения Олимп.
След като преброим необходимото въведение, преминаваме към техническите аспекти на въпросния случай. Първоначално имаме 80 GB твърд диск със следната система за разделяне:
/ dev / sda1 / / dev / sda5 swap / dev / sda6 / home
И новият 500 GB твърд диск, който ще разделим, както следва:
/ dev / sdb1 / / dev / sdb2 суап / dev / sdb3 / начало
Много със сигурност са забелязали, че в случая на първия твърд диск има скок от sda1 на sda5, това е така, защото при дефинирането на дяловете има стартиращ първичен дял, който е sda1, и след това разширен дял, който се разделя на две : sdaxnumx YSda6.
Също така, по някое време мисля, че трябваше да изтрия дял, където моят приятел използваше прогонения Windows 7.
Твърдият диск с капацитет 500 Gb е разделен така, че номерата на дяловете да се намират последователно. Този диск е наречен / Сътрудничество / SDB защото като го инсталирате в SATA порта, вие едновременно споделяте системата с вече съществуващия диск, / Dev / SDA.
Форматиране на дяловете
За да създадем дяловете, можем да използваме визуален инструмент като GParted, или някакво приложение от конзола като cfdisk. Не забравяйте, че в тази стъпка ние сме от операционната система на първия твърд диск, този от 80 GB.
Тоест от това създаваме трите дяла на новия твърд диск. След като дяловете бъдат създадени, те трябва да бъдат форматирани:
mkfs.ext4 / dev / sdb1 mkfs.ext4 / dev / sdb3 mkswap / dev / sdb2
Това, което току-що направихме, е format / dev / sdb1 и / dev / sdb2 като ext4 и / dev / sdb2 като SWAP.
Поръчката mkfs.ext4 е подобно на mkfs -t ext4. Трябва да вземем предвид, че когато рестартираме на новия твърд диск, трябва да кажем на системата, че има нов swap дял (swap partition):
swapon / dev / sda2
Използваме sda2, а не sdb2, защото когато приключим, ще премахнем стария диск.
Клониране на дялове
Вече попадаме в него пилешки ориз пилешко. Няма окончателна рецепта за клониране на дял. В нашия случай трябва да направим точно копие на съдържанието на / home, за това ще направим следното (като root):
cd / media mkdir sdb3 mmount -t ext4 / dev / sdb3 / media / sdb3 rsync -a / home / myfriend media / sdb3
Спокойно, обяснявам:
Вътре / медия създадохме директория с името sdb3 (която трябва да съвпада с името на дяла на новия диск), така че при монтажа да не създава объркване.
След това ще използваме командата rsync, за да синхронизираме файловете и папките от / home в / media / sdb3, тъй като sdb3 дялът ще бъде / home.
Знамето -a Това ще ни помогне да поддържаме разрешенията, собственика, датата и директориите.
Интелигентно сме използвали / дома / приятеля ми и не / начало / приятел /, защото ако бях поставил наклонената черта в края на моя приятел, щях да копирам изключително файловете и папките вътре / дома / моя приятел. Това, което направихме, е равносилно на поставяне:
rsync -a / home / / media / sdb3
Както в случая с моя приятел, той има само един потребител вкъщи, няма значение да постави един или друг команден ред.
Дойде време да клонирате корен / дял, което, разбира се. Това е критичен и деликатен момент, тъй като някои неизправности могат да ни оставят дяла без стартиране и следователно твърд диск без система.
Съвет преди следващата стъпка е да направите малко почистване в нашия корен дял, за да спестите място и да намалите трафика на ненужни данни от един твърд диск на друг.
Добре е предварително да изпразните кошчето (дори преди да клонирате вкъщи), да изтриете пакетите, които не се използват, и конкретни пакети, които не са ни необходими:
dpkg -l | grep ^ rc dpkg --пакет за почистване
Също така можем да се погрижим да премахнем пакетите от локалното хранилище: тези, които сме изтеглили при всяка актуализация или инсталация от хранилищата и са били кеширани:
apt-get clean
Правейки горните стъпки, със сигурност ще откриете, че те могат да освободят малко GB пространство. Е, нека клонираме нашия корен /.
В случай на коренния дял е препоръчително да копирате данните бит по бит. Ще отнеме по-малко време от дома, защото очевидно е по-малко натрупване на информация и при това малко по малко тенденцията към неуспехи е почти нулева и няма да има грешки със специални разрешения.
Командният ред в този случай е:
dd ако = / dev / sda1 от = / dev / sdb1
В този случай не е трябвало да монтираме нищо. Времето за завършване на операцията ще бъде малко по-дълго, но ще си заслужава.
Подготовка за рестартиране
На този етап вече е дялът / Сътрудничество / sdb1 Това е клон на системния корен, инсталиран на нашия стар диск. Въпросът е дошъл да се уверим, че когато премахнем диска от 80 GB, компютърът ни разпознава и зарежда от 500 GB диск.
Време е да докоснете добре познатия файл fstab (този от 500 диска, намерен в / media / sdb1 / etc / fstab).
nano / media / sdb1 / etc / fstab
И ще получим нещо подобно на това:
# / etc / fstab: статична информация за файловата система. # # proc / proc proc nodev, noexec, nosuid 0 0 #Entry for / dev / sda1: UUID = 6b192eef-e188-4e07-94de-14c95e02de78 / ext4 error = remount-ro 0 $ #Entry for / dev / sda2: UUID = 3bd60ec0 -92f3-4ea6-a4d3-aaaf27dd8b8e няма суап sw 0 0 # Влизане за / dev / sda3: UUID = 3828f973-3b20-4019-9fe2-8296c755be31 / home ext4 по подразбиране 0 2
Сега трябва да сменим старите UUID (тези в този fstab файл са от 80GB диск) с новите UUID (от новия 500GB диск). За да направите това, трябва да намерите устройствата по техния UUID и това се прави по няколко начина:
Една опция може да бъде с командата:
ls -l / dev / disk / by-uuid
И също като корен:
blkid
Сега трябва само да заменим UUID на fstab с правилните.
Гарантирано стартиране. Инсталиране на Grub2
El Дебиан Уизи инсталиран на стария твърд диск на моя приятел използва Grub2 като системно зареждане, така че в MBR (главен зареждащ запис) на новия твърд диск (този от 500 GB) ще трябва да инсталираме нов GRUB.
Вярно е, че конфигурационните файлове вече са записани в директорията / boot, но MBR (първият сектор („сектор нула“) на твърдия диск.) Е празен, така че в действителност той не би стартирал.
Конфигурацията се записва в /boot/grub/grub.cfg, но този файл е създаден от grub-mkconfig, така че не би било препоръчително да го редактирате на ръка.
Най-хубавото е, след като новият дял е монтиран (не забравяйте, че ново клонираният корен дял не е монтиран, dd клонинг без монтиращ дял):
монтиране -t ext4 / dev / sdb1 / media / sdb1
Сега трябва да заредим GRUB2 в MBR, като направим следното:
grub-install / dev / sdb
И вуаля, това просто, вече го имаме GRUB конфигуриран в MBR на 500 GB твърд диск.
Последни стъпки
Сега изключваме компютъра, премахваме твърдия диск от 80 Gb на моя приятел, даваме го на братовчед (виж първоначалната история), включваме компютъра отново, кръстосваме пръсти и ...
Fuente: http://swlx.cubava.cu
Приятелю, не знам дали греша, но мисля - мисля - че преди да използваш командата 'dd' целевият дял трябва да е с абсолютно същия размер като изходния дял. Ако не, хиляда извинения.
Същото е, както си мисля
dd ще клонира дяла и излишъкът ще го остави неразпределен, така че тъй като изисква повече място за инсталиране на нови приложения, той няма да го позволи.
Няма значение дали целевият дял е по-голям от изходния дял, тогава на файловата система може да се каже да използва допълнителния размер.
Това е епично. Нека да видим дали мога да инсталирам Debian, но Arch стил (чисти команди).
Бихте могли да използвате dd за клониране на MBR:
dd ако = / dev / sda от = / dev / sdb bs = 512 брой = 1
Не мисля, че е необходимо дяловете да бъдат абсолютно еднакви, поне в wiki на arch не го споменава, би било необходимо да се опита. За разбирането.
Това изглежда добре, но не разбирам защо правенето на dd, ако = / dev / sda на = / dev / sdb прескача първите 512 байта?
Добре, разбрах, разликата е, че отначало се клонира само дялът и затова се пропускат 512 байта на MBR. Благодаря ви много за съвета RudaMacho.
Здравейте, планирате ли да актуализирате вашата система? Казвам го за windows xp
Здравей elav, мисля, че с помощта на clonezilla задачата би била много по-опростена, но е добре, че си експериментирал по този начин, в края на краищата това е «хакерският» дух
Поздрави!
В Slackware съм използвал tar, за да направя пълното копие на файлове между дисковете, което запазва разрешенията, както и се възползвам от възможността да направя резервно копие, fstab файлът е много по-опростен, така че не е необходимо да модифицирате uuid, достатъчно е че сте създали дяловете В същия ред, тъй като се използва lilo, е по-лесно да създадете зареждане ...
Много добре 😀
Според моя опит gparted copy - clone - разделя по-бързо
И ако трябва да ги увеличите или намалите, можете също
Великолепно ръководство на elav, много благодаря за споделянето.
Имам въпрос: необходимо ли е да се използва командата swapon за системата за откриване на суап дяла, или би било достатъчно да се промени UUID в fstab?
Преди 6 месеца бях отегчен от debian stable и kde 4.8. Исках най-новата KDE !! Нямах инсталационен диск или usb памет .. така че клонирам конюшнята си с почти същите методи, които elav описва и надгражда до sid.
Препоръчвам тази практика за всички потребители на Linux, нашата система не се нуждае от повече от 15 GB. чрез корен дял. и два пъти или малко по-малко не е много.
Отличен принос никога не би бил толкова лесен, отколкото с толкова ясно и ясно обяснение ... Поздравления брато, ти си учител в gnu / linux !!!
Много добър урок. Много чисто!
Има и командата "dd"