Jak sklonować dysk twardy do obrazu, który mogę później otworzyć?

14

Muszę (najlepiej) zamontować obraz dysku twardego o pojemności 80 GB i zapisać go na innym dysku twardym. Czy jest jakiś sposób, aby to zrobić bez utraty danych?

Dzięki za odpowiedzi, które do tej pory otrzymałem. Z tego systemu nie można teraz korzystać z powodu problemu z przyciskiem zasilania :( [ugh!], Ale informacje będą naprawdę przydatne =)! Dzięki wszystkim, którzy odpowiedzieli do tej pory, jeśli ktokolwiek chce mi dać jakieś wskazówki, zostawię to na chwilę otwarte, ponieważ nadal nie byłem w stanie sklonować dysku.

RolandiXor
źródło
aby zastąpić uszkodzony przycisk zasilania, po prostu zewrzyj piny łączące 2 przewody przycisku zasilania za pomocą śrubokręta lub czegoś takiego, ale tylko te dwa nie dotykają więcej niż te dwa jednocześnie!
marc-andre benoit

Odpowiedzi:

8

Użyj dd(zamień sda1 na partycję, którą chcesz zapisać):

sudo dd if=/dev/sda1 of=/home/user/backup.img

Spowoduje to zamontowanie obrazu partycji. Pamiętaj tylko, że może to chwilę potrwać, a obraz będzie miał rozmiar partycji, a nie znajdujących się na niej plików. W twoim przypadku byłoby to 80 GB. Jeśli skompresujesz obraz, powinien on być mniej więcej wielkości używanego miejsca na dysku twardym.

Bardziej wyczerpujące objaśnienie można znaleźć w DriveImaging: Tworzenie obrazów dysków za pomocą dd .

sBlatt
źródło
Spowoduje to sklonowanie partycji / dev / sda1, a nie dysku twardego / dev / sda. Dla celów ratowania i odzyskiwania może być lepiej skopiować cały dysk twardy, a nie tylko partycję
fabricator4
3

Moją preferowaną metodą jest użycie Live CD CloneZilla. Pobierz .iso, wypal go na dysk za pomocą Brasero, włóż do maszyny, którą chcesz obrazować, uruchom ponownie, podłącz dysk docelowy i postępuj zgodnie z instrukcjami. Zachowaj ostrożność podczas używania dd, jest to narzędzie bardzo niskiego poziomu, a błędy mogą łatwo zniszczyć dane. Jeśli chcesz wykonać kopię obrazu bajt po bajcie, wybierz opcję podziału na partycje CloneZilla.

Nick Pascucci
źródło
+1. Clonezilla jest dobrym narzędziem do tego celu. Możesz również sklonować plik ISO Clonezilla na pendrive USB i uruchomić z USB. Zobacz także ten link, aby uzyskać więcej informacji.
sudodus
3

Remastersys to program, który może tworzyć kopie zapasowe całego dysku twardego, a następnie zapisywać je na przykład na dysku LiveCD. Możesz go również użyć do utworzenia niestandardowej dystrybucji Ubuntu. Ma CLI i GUI, więc wybierz. W GUI wybierz pierwszą opcję, Kopia zapasowa .

Remastersys

Aby go zainstalować, otwórz Centrum oprogramowania, a następnie Edytuj -> Źródła oprogramowania -> Inne oprogramowanie (karta) i kliknij dodaj i wklej

deb http://www.geekconnection.org/remastersys/repository karmic/

Teraz zamknij okno źródeł oprogramowania i poczekaj na odświeżenie repozytoriów i zainstaluj remastersys.

Lyrositor
źródło
Ups .. Wygląda na to, że ponowne otwarcie musi być „karmiczne”
Peter.O
Cześć Lyrositor. Czy możesz to zaktualizować, aby używać relinux zamiast remastersys?
RolandiXor
3

obrazowanie przez LAN

na komputerze z kopią zapasową uruchom:

nc -l -p 12345 | dd of=mybackup.img

na maszynie źródłowej:

dd if=/dev/sda | nc server2 12345
strumień
źródło
całkiem ciekawy sposób to zrobić ^^! Obecnie próbuję przywrócić system do ponownego włączenia lol (głupi przycisk zasilania) !!!!!!!!!
RolandiXor
0

Najprostszą metodą jest użycie dd, ale powszechną skargą jest to, że dd nie daje paska postępu podczas kopiowania dużego dysku. Możesz użyć podglądu rur (pv) w połączeniu z dd, aby wyświetlić pasek postępu i ETA do zakończenia. Zainstaluj pv z

sudo apt-get install pv

Dysk, który kopiujesz, nie musi być montowany, a jeśli odzyskujesz dane z uszkodzonego dysku, dobrym pomysłem jest, jeśli nie jest zamontowany w trybie odczytu / zapisu. Cokolwiek zrobisz na dysku, może zastąpić usunięte dane lub spowodować dalsze uszkodzenie systemu plików. W tym momencie należy wykonać nieco kopię, aby umożliwić odzyskiwanie bez narażania danych na dalsze ryzyko.

Dwie rzeczy, które musisz wiedzieć przed kontynuowaniem, to nazwa urządzenia kopiowanego dysku i jego rzeczywisty rozmiar. Oba można znaleźć, wydając polecenie

sudo fdisk -l

który wyświetli dyski podłączone do systemu i ich rozmiar w MiB.

W najprostszym przypadku polecenie kopiowania dysku do pliku rescue.dd w bieżącym katalogu to:

sudo dd if=/dev/sdx of=rescue.dd

gdzie / dev / sdx będzie musiał zostać zmieniony na rzeczywistą nazwę urządzenia, które kopiujesz. Konieczna może być zmiana własności pliku rescue.dd, ponieważ będzie on własnością roota.

Aby uzyskać przydatny pasek postępu i ETA do ukończenia, przeprowadź polecenie dd przez pv:

sudo dd if=/dev/sdX | pv -s 99999m -bpae | dd of=rescue.dd 

gdzie / dev / sdX to nazwa napędu, który chcesz skopiować, a 99999 to rozmiar urządzenia w MiB (nie MB). Twój użytkownik będzie właścicielem pliku rescue.dd, ponieważ drugie wywołanie dd, które zapisuje plik wyjściowy, jest własnością użytkownika, a nie root. Wyświetlane będą dane: średnia szybkość danych, pasek postępu,% ukończenia i ETA do zakończenia.

producent 4
źródło
Odniosłem sukces używając samego pv, np .: sudo pv / dev / sdb | xz -9> sdcard.img
Fordi
0

Jeśli chcesz zobaczyć postęp, a także nie przeszkadza to w wierszu poleceń, PV jest twoim przyjacielem. Próbuję Ubuntu MATE na moim Raspberry Pi 2 i chciałem wykonać kopię zapasową mojej karty SD i napisać nową, ale nienawidzę uruchamiać dużego IO, nie wiedząc, co się dzieje. To działało najszybciej:

$ sudo su
# pv /dev/sdb | xz > my-pi.img.xz
# pv ubuntu-mate-15.04-desktop-armhf-raspberry-pi-2.img.bz2 | bzip2 -d > /dev/sdb

Przywracanie było równie łatwe

# pv my-pi.img.xz | xz -d > /dev/sdb

We wszystkich przypadkach chodzi o to, aby pvwziąć plik wejściowy / urządzenie i spamować je na standardowe wyjście, a jednocześnie przekazywać raport o postępach do stderr. Następnie xz lub bzip2 pobiera standardowe wejście z potoku (standardowe wyjście poprzedniego polecenia) i działa jak filtr. Przekierowanie wyjściowe określa plik na urządzenie lub plik obrazu.

Nie wiem, czy w ogóle działa z blokami, ale podejrzewam, że Linux robi dla mnie całe buforowanie i odczytuje / zapisuje dane przez blok na poziomie sprzętowym.

Czy w związku z tym korzystanie z dd ma dużą zaletę? Widzę, czy czytaliśmy lub piszemy określone części dysku (np. Jeśli chcesz wyodrębnić partycję z obrazu, zrywając punkty końcowe z fdisk lub parted), ale do spamowania całego dysku, naprawdę wolę prostsze Komenda.

Fordi
źródło
Właśnie przetestowałem i działa. Wystarczy dodać trochę, można wymienić xzz pixz, który wykorzystuje wszystkie rdzenie, aby przyspieszyć ten proces. apt-get install pixz
Leandro N,