Idag ska vi titta på hur man migrerar all data från en hårddisk till en annan, arbete som kan vara användbart om vi av någon anledning behöver byta ut den aktuella hårddisken på vår dator med en annan (med samma eller annan kapacitet).
För några dagar sedan, på ett avslappnat besök i en väns hus (som tillfälligt migrerade till GNU / Linux för några månader sedan efter min uthållighet), visade han mig mycket gärna en ny hårddisk som han fick (en 500 Gb hårddisk som Även om det för många kan verka som en enhet med liten kapacitet, här i Jurassic Cuba är det fortfarande ett bra steg mot stor datalagring) och det behövs för att ersätta den redan föråldrade och halvfelade 160 GB-skivan.
Hans förslag i sig var att ta bort den gamla disken och placera 500 GB-disken på sin plats och sedan installera Debian, vilket var distro som jag hade installerat på den gamla disken, och det tar en stund att återställa alla dess inställningar.
Medan detta hände väntade en kusin till min vän på kulminationen av detta arbete för att ta 80 GB-skivan, som i sin tur skulle ersätta en 40 GB-skiva i en mycket äldre dator.
Detaljen med allt detta är att jag inte ens gick med en installationsskiva av Debianoch mindre med förvaren till hands. Så tanken på att installera systemet och applikationerna var inte inom vår räckvidd, såvida jag inte gick till mitt hus för att hitta vad som var nödvändigt, men att flytta från ena änden av staden Santiago de Cuba till en annan skulle inte vara ett alternativ för mig. , i en stad där officiell transport (privata motorcyklar) har fördubblat sin hastighet under det nya året (nåd skulle kosta mig inte mindre än 40 pesos).
Det var då gnistan tändes: att klona albumet. Jag vet att denna kloning av skivan skulle ha varit det första som skulle ha hänt många av er, men för mig, kvasi-alfabetet I dessa uppgifter verkade det som ett plötsligt alternativ som skickades direkt av Open Olympus Gods.
Efter att ha räknat den nödvändiga introduktionen går vi till de tekniska aspekterna av det aktuella ärendet. Inledningsvis har vi en 80 GB hårddisk med följande partitioneringssystem:
/ dev / sda1 / / dev / sda5 swap / dev / sda6 / home
Och den nya 500 GB hårddisken som vi kommer att partitionera enligt följande:
/ dev / sdb1 / / dev / sdb2 swap / dev / sdb3 / home
Många har säkert märkt att i fallet med den första hårddisken finns det ett hopp från sda1 till sda5, detta beror på att när man definierar partitioner, finns det en startbar primärpartition som är sda1 och sedan en utökad partition som är uppdelad i två: sda5 ysfrån 6.
Vid något tillfälle tror jag att jag var tvungen att ta bort en partition där min vän brukade hysa den utkastade Windows 7.
500 Gb-hårddisken är partitionerad så att partitionsnumren hittas i följd. Denna skiva heter / Dev / sdb för genom att installera den i SATA-porten delar du samtidigt systemet med den befintliga disken, / Dev / sda.
Formatera partitionerna
För att skapa partitionerna kan vi använda något visuellt verktyg som gparted, eller någon applikation från konsolen som cfdisk. Kom ihåg att i det här steget kommer vi från operativsystemet på den första hårddisken, den 80 GB.
Det vill säga, från detta skapar vi de tre partitionerna på den nya hårddisken. När partitionerna har skapats måste de formateras:
mkfs.ext4 / dev / sdb1 mkfs.ext4 / dev / sdb3 mkswap / dev / sdb2
Vad vi just gjorde är att formatera / dev / sdb1 och / dev / sdb2 som ext4 och / dev / sdb2 som SWAP.
Ordningen mkfs.ext4 es liknande a mkfs -t ext4. Vi måste ta hänsyn till att när vi startar om på den nya hårddisken måste vi berätta för systemet att det har en ny swap-partition (swap-partition):
swapon / dev / sda2
Vi använder sda2 och inte sdb2, för när vi är klara tar vi bort den gamla disken.
Kloning av partitioner
Vi faller redan in i det kycklingris med kyckling. Det finns inget definitivt recept för att klona en partition. I vårt fall måste vi göra en exakt kopia av innehållet i / home, för detta kommer vi att göra följande (som root):
cd / media mkdir sdb3 mmount -t ext4 / dev / sdb3 / media / sdb3 rsync -a / home / myfriend media / sdb3
Koppla av, jag förklarar:
Inside / media har vi skapat en katalog med namnet sdb3 (som ska sammanfalla med namnet på partitionen på den nya skivan), så att den inte skapar förvirring vid montering.
Sedan ska vi använda kommandot rsync för att synkronisera filer och mappar från / home till / media / sdb3, eftersom sdb3-partitionen kommer att vara / home.
Flaggan -a Det hjälper oss att behålla behörigheterna, ägaren, datumet och katalogerna.
Vi har använt intelligent / hem / min vän och inte / hem / min vän /, för om jag hade lagt snedstrecket i slutet av min vän skulle jag exklusivt kopiera filer och mappar inuti / hem / min vän. Vad vi gjorde motsvarar att sätta:
rsync -a / home / / media / sdb3
Som med min vän har han bara en användare hemma, det spelar ingen roll att sätta en eller annan kommandorad.
Det är dags att klona roten / partitionen, vilket naturligtvis. Det är ett kritiskt och känsligt ögonblick, eftersom vissa fel kan lämna oss partitionen utan att starta, och därför en hårddisk utan system.
Ett tips innan nästa steg är att göra lite rengöring i vår rotpartition för att spara utrymme och minska trafiken på onödiga data från en hårddisk till en annan.
Det är bra att tidigare tömma papperskorgen (även innan kloning hem), ta bort de paket som inte används och specifika paket som vi inte behöver:
dpkg -l | grep ^ rc dpkg - purge-paket
Vi kan också se till att ta bort paketen från det lokala förvaret: de som vi har laddat ner i varje uppdatering eller installation från förvaren och har cachats:
apt-få rena
Genom att göra ovanstående steg kommer du säkert att finna att de kan frigöra lite GB utrymme. Tja, låt oss bara klona vår rot /.
När det gäller rotpartitionen är det lämpligt att kopiera data bit för bit. Det tar kortare tid än hem eftersom det uppenbarligen är mindre ackumulering av information och att göra det bit för bit är tendensen till misslyckanden nästan noll och det blir inga fel med speciella behörigheter.
Kommandoraden i detta fall är:
dd if = / dev / sda1 of = / dev / sdb1
I det här fallet har vi inte behövt montera någonting. Tiden för att slutföra operationen kommer att vara lite längre, men det kommer att vara värt det.
Förbereder omstart
Vid denna punkt, redan partitionen / Dev / sdb1 Det är en klon av systemrot som är installerat på vår gamla disk. Poängen har kommit att se till att när vi tar bort 80 GB-skivan, känner igen och startar vår dator från 500 GB-skivan.
Det är dags att röra vid den välkända fstab-filen (den från 500-disken som finns i / media / sdb1 / etc / fstab).
nano / media / sdb1 / etc / fstab
Och vi kommer att få något liknande det här:
# / etc / fstab: statisk filsysteminformation. # # proc / proc proc nodev, noexec, nosuid 0 0 #Entry for / dev / sda1: UUID = 6b192eef-e188-4e07-94de-14c95e02de78 / ext4-fel = remount-ro 0 $ #Entry for / dev / sda2: UUID = 3bd60ec0 -92f3-4ea6-a4d3-aaaf27dd8b8e ingen swap sw 0 0 #Entry for / dev / sda3: UUID = 3828f973-3b20-4019-9fe2-8296c755be31 / home ext4 standard 0 2
Nu måste vi ändra de gamla UUID: erna (de i den fstab-filen är från 80 GB-skivan) till de nya UUID: erna (från den nya 500 GB-skivan). För att göra detta, vad du behöver göra är att hitta enheterna med deras UUID, och detta görs på flera sätt:
Ett alternativ kan vara med kommandot:
ls -l / dev / disk / by-uuid
Och även som root:
blkid
Nu behöver vi bara ersätta fstabs UUID: er med de rätta.
Garanterar start. Installerar Grub2
El debian wheezy installerad på min väns gamla hårddisk använder Grub2 som systemstart, så i MBR (Master Boot Record) på den nya hårddisken (den 500 GB) måste vi installera en ny GRUB.
Det är sant att konfigurationsfilerna redan är skrivna till / boot-katalogen, men MBR (den första sektorn ("sektor noll") på hårddisken.) Är tom, så som den är skulle den inte kunna startas .
Konfigurationen sparas inom /boot/grub/grub.cfg, men den här filen skapas av grub-mkconfig, så det skulle inte vara tillrådligt att redigera det för hand.
Det bästa är att när den nya partitionen är monterad (kom ihåg att den nyligen klonade rotpartitionen inte är monterad, dd klon utan monteringspartition):
montera -t ext4 / dev / sdb1 / media / sdb1
Nu måste vi ladda GRUB2 i MBR genom att göra följande:
grub-install / dev / sdb
Och voila, så enkelt har vi redan GRUB konfigurerad i MBR på 500 GB hårddisk.
Sista stegen
Nu stänger vi av datorn, tar bort min väns 80 Gb-hårddisk, ger den till kusinen (se första historien), slår på datorn igen, korsar fingrarna och ...
Fuente: http://swlx.cubava.cu
Vän, jag vet inte om jag har fel men jag tror - jag tror - att innan du använder kommandot 'dd' måste destinationspartitionen vara exakt lika stor som källpartitionen. Om inte, tusen ursäkter.
Det är samma som jag tror
dd kommer att klona partitionen och överskottet lämnar den odelad, så eftersom det kräver mer utrymme för att installera nya applikationer tillåter det inte det.
Det spelar ingen roll om destinationspartitionen är större än källpartitionen, då kan filsystemet uppmanas att använda den extra storleken.
Det är episkt. Låt oss se om jag kan installera Debian men Arch-stil (rena kommandon).
Du kunde ha använt dd för att klona MBR:
dd if = / dev / sda of = / dev / sdb bs = 512 count = 1
Jag tror inte att det är nödvändigt att skiljeväggarna är exakt samma, åtminstone i arch wiki nämns det inte, vi måste försöka. Hälsningar.
Det ser bra ut, men jag förstår inte varför att göra en dd om = / dev / sda av = / dev / sdb hoppar över de första 512 bytes?
Okej, jag har förstått, skillnaden är att bara partitionen klonas i början och det är därför 512 byte i MBR hoppas över. Tack så mycket för råd RudaMacho.
Hej, planerar du att uppdatera ditt system? Jag säger det för Windows XP
Hej elav, jag tror att uppgiften skulle ha varit mycket enklare att använda clonezilla, men det är bra att du experimenterade på det här sättet, trots allt är det "hacker" -andan
Hälsningar!
I Slackware har jag använt tjära för att göra en fullständig kopia av filer mellan diskarna, vilket bevarar behörigheterna liksom jag tar tillfället i akt att säkerhetskopiera, fstab-filen är mycket enklare så det är inte nödvändigt att ändra uuid, det räcker att du har skapat partitionerna I samma ordning, eftersom lilo används är det lättare att skapa boot ...
Mycket bra 😀
Enligt min erfarenhet gpartad kopia - klon - partitioner snabbare
Och om du behöver förstora eller klippa dem kan du också
Magnifik elav guide, tack så mycket för att du delar.
Jag har en fråga: är det nödvändigt att använda swapon-kommandot för systemet för att upptäcka swap-partitionen, eller skulle det vara tillräckligt för att ändra UUID i fstab?
För 6 månader sedan var jag uttråkad av debian stable och kde 4.8. Jag ville ha det senaste KDE !! Jag hade ingen installationsskiva eller USB-minne .. så jag klonade min stall med nästan samma metoder som elav beskriver och uppgraderar till sid.
Jag rekommenderar denna praxis för alla Linux-användare där ute, vårt system behöver inte mer än 15 GB. genom rotpartition. och två eller lite mindre är inte mycket.
Utmärkt bidrag hade aldrig varit så enkelt än med en så tydlig och tydlig förklaring ... Grattis bro, du är lärare i GNU / Linux !!!
Mycket bra handledning. Väldigt klart!
Det finns också kommandot "dd"