Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Problem jest następujący:
Padł mi dysk twardy, wszystkie dane przepadły, jednak mam kopie partycji linuxa (debian 6.0.3) jeszcze z przed uszkodzonia dysku.
Jako ze nowy dysk jest nieco mniejszy i zainstalowałem już na nim inne systemy operacyjne - WinXP i BeOS oraz Debiana 6.0.3 (czysty z netinstall, zmieniony tylko grub-pc na grub-legacy) zastanawiam się jak przenieść wszystkie dane, programy, konfigi na tego świeżego debiana, tak żeby go nie uszkodzić a przywrócić funkcjonalność starego systemu.
Przy pierwszym podejściu probowałem przywrócić obraz tej partycji bezpośrednio na pustą partycję jednak nie byłem w stanie naprawić błędów systemu plików, fsck sypał błędami przy każdym uruchomieniu.
Prosił bym o jakiś opis krok po kroku jak to zrobić. Nie mam już możliwości dociągania pakietów z sieci - limit na karcie mam już prawie wykorzystany do zera, stąd pomysł przekopiowania danych z obrazu na działający system - w zasadzie wszystkiego oprócz /boot
Ostatnio edytowany przez dhg (2012-07-21 16:11:30)
Offline
Możesz zamontować gdzieś obraz wykonany przez dd i zsynchronizować z nim obecny system za pomocą rsync. Ale od strzała to na pewno nie ruszy, trzeba by potem pozmieniać UUID-y, konfig GRUB-a zaktualizować, uważać żeby się z tą osobną partycją /boot nie zaplątać i może coś jeszcze.
Offline
Dzięki za wskazówki. A propo UUID: jak je wygenerować na nowo? Wolałem starą metodę zapisywania partycji w grubie, bez tego cholerstwa, ale mówi się trudno.
Wpadłem na troche inny pomysł przywrócenia systemu: mianowicie z livecd podmontował bym sobie partycie i obraz i z obrazu przekopiował wszystko na fizyczny dysk z pominięciem /boot (wszystko jest na jednej partycji, jak coś padnie mam jeszcze awaryjnego gruba na fdd (pamiętacie jeszcze co to jest? ;) ) tyle ze tu znowu wszystko rozbija się o te przeklęte uuid :/ i nie jestem pewien czy w ten cudowny sposób nie rozwale znowu całego systemu. Wcześniej wystarczyło wrzucenie obrazu przez dd na dysk, ale teraz nie jestem w stanie odtworzyć rozmiarowo partycji.
W każdym bądź razie spróbuję chwilowo rsync i poczytam co zrobić z tymi uuid'ami.
Offline
Czy rsync czy usunięcie zawartości a potem skopiowanie, to w sumie na to samo wychodzi, rsync to takie bardziej zaawansowane kopiowanie po prostu. UUID-ów nie musisz generować, one już są, sprawdzisz obecne via:
ls -l /dev/disk/by-uuid/
Nie ma obowiązku używać UUID-ów, ja nie używam, nadal mam tradycyjne oznaczenia partycji w fstabie i w konfigu GRUB-a. Anyway, tak czy tak musisz zaktualizować fstab i konfig GRUB-a, niezależnie czy to będą nowe UUID-y czy tradycyjne oznaczenia.
Offline
Jak rozumiem po skopiowaniu plików systemu z obrazu na dysk:
restart
wchodze z livecd przez chroot na partycje debiana,
zmieniam wpisy w /etc/fstab na aktualne, niekoniecznie z uuid tylko normalne /dev/sdaX
robie update-grub
restart i powinno działać.
Offline
Na podstawie informacji które podałeś ja to widzę mniej więcej tak jak poniżej. Oczywiście nie mam ich wszystkich, także zaznaczam od razu, że coś może się różnić od tego co jest w rzeczywistości. W każdym razie możesz się na tym oprzeć, ale nie wklejać bezmyślnie.
• livecd
• montujesz obraz do /mnt/obraz
• montujesz / Debiana do /mnt/debian
• synchronizujesz / z tym z obrazu:
rsync -avx --delete --exclude=/boot/* /mnt/obraz/ /mnt/debian/
• aktualizujesz jakimś edytorem wpisy w /mnt/debian/etc/fstab
• montujesz partycję /boot Debiana do /mnt/debian/boot
• synchronizujesz /boot z tym z obrazu:
rsync -avx --delete /mnt/obraz/boot/ /mnt/debian/boot/
• chroot:
mount -t proc proc /mnt/debian/proc mount -t sysfs sysfs /mnt/debian/sys mount -o bind /dev /mnt/debian/dev mount -o bind /dev/pts /mnt/debian/dev/pts chroot /mnt/debian
• w chroocie:
rm /boot/grub/* grub-set-default /dev/sda update-grub grub-install /dev/sda
Offline
Teraz sam sie zdziwiłem.
Przekopiowałem wszystko z obrazu na dysk, wklepałem reboot i nie zdążyłem uruchomić liveCD, załadował się debian i bez żadnych komunikatów o błędach, po prostu wystartował jak gdyby nigdy nic. Zaznaczam ze nie edytowałem żadnych plików.
ArnVaker serdeczne dzięki za pomoc :)
Temat myśle można zamknąć.
Offline
A w jaki sposób kopiowałeś? Jeżeli zostały pliki konfiguracyjne z nowego systemu, o czym świadczy to bezproblemowe uruchomienie, to pewnie zrobiła się jakaś sieczka złożona z obu systemów.
Offline
Podmontowałem obraz oraz partycje.
Wykasowałem z partycji wszystko z wyjątkiem folderu /boot , @initrd.img oraz @vmlinuz
Przez mc skopiowałem wszystko po kolei z wyjątkiem tego co zostało nie usunięte z partycji
Nie podmieniałem żadnych plików.
Nie wszystko jednak poszło tak gładko. Musiałem zedytować fstab bo nie mogłem podmontować ręcznie partycji BeOSa - nie było jej widać w systemie. Cała reszta poszła bezproblemowo.
Poraz kolejny Debian mile mnie zaskoczył
Offline
IMO to byłoby możliwe gdyby oznaczenia się nie zmieniły. Ale skoro na starym dysku był inny UUID partycji / i to on jest wpisany w fstabie, a na nowym dysku jest nowy UUID partycji /, to skąd system wie o którą chodzi?
EDIT: Możesz wrzucić:
ls -l /dev/disk/by-uuid/ cat /etc/fstab cat /proc/cmdline
?
PS Tak z ciekawości tylko pytam żeby zrozumieć dlaczego. ;)
Offline
ls -l /dev/disk/by-uuid/ razem 0 lrwxrwxrwx 1 root root 10 07-21 16:55 30A8-498A -> ../../sda1 lrwxrwxrwx 1 root root 10 07-21 16:55 d32e6310-7c11-4305-b8d9-cf3989808862 -> ../../sda6 lrwxrwxrwx 1 root root 10 07-21 16:55 d9f2317b-56d0-4902-8fec-661ac377275a -> ../../sda5
cat /proc/cmdline root=UUID=d9f2317b-56d0-4902-8fec-661ac377275a vga=791 ro
cat /etc/fstab ################################################# # /etc/fstab: static file system information. # # # # modded by dhg # # # ################################################# # linux partitions # <file system> <mount point> <type> <options> <dump> <pass> /dev/sda5 / ext3 errors=remount-ro 0 1 /dev/sda6 none swap sw 0 0 proc /proc proc defaults 0 0 # Other partitions: # <file system> <mount point> <type> <options> <dump> <pass> /dev/sda1 /media/windows vfat rw,uid=1000,gid=100,umask=0,iocharset=iso8859-2,codepage=852,quaiet,showexec 0 0 /dev/sda2 /media/beos auto rw,user,noauto 0 0 # Removable devices # <file system> <mount point> <type> <options> <dump> <pass> /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
a to fstab z obrazu bo zapewne bardziej o te ci chodziło :)
# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 # / was on /dev/sda2 during installation UUID=0dda8dfd-2de5-46e2-902e-ec0bb4d10554 / ext3 errors=remount-ro 0 1 # swap was on /dev/sda5 during installation UUID=e5971a34-7359-4a66-bb81-00523a84534f none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
a skąd system wie? wie bo grub został z nowej instalacji systemu :
cat /boot/grub/menu.lst default 2 timeout 5 color black/red yellow/red title FreeDos root (hd0,0) makeactive chainloader +1 title BeOS rootnoverify (hd0,1) makeactive chainloader +1 title Debian Squeeze root (hd0,4) kernel /boot/vmlinuz-2.6.32-5-686 root=UUID=d9f2317b-56d0-4902-8fec-661ac377275a vga=791 ro initrd /boot/initrd.img-2.6.32-5-686 title Debian Squeeze (single-user mode) root (hd0,4) kernel /boot/vmlinuz-2.6.32-5-686 root=UUID=d9f2317b-56d0-4902-8fec-661ac377275a vga=791 ro single initrd /boot/initrd.img-2.6.32-5-686
jak pisalem, katalogu /boot z nowej instalacji nie usunołem i nie zastapilem.
Ostatnio edytowany przez dhg (2012-07-21 17:13:06)
Offline
Dzięki. W międzyczasie sprawdziłem też u siebie i wychodzi na to, że oznaczenie partycji / w fstabie jest obecnie ignorowane. Przemontowana z podanymi opcjami zostaje ta partycja, która jest podana jako root=… w konfigu GRUB-a. Informacje od Ciebie to potwierdzają.
PS Tylko partycję /boot możesz sobie dopisać do fstaba i tę literówkę „quaiet” poprawić. :P
Offline
Dzięki wielkie jeszcze raz.
Ku*wicy już dostawałem nie mogąc wyłapać co za błąd w fstab siedzi że partycji nie montowało.
btw jakby komuś przyszło do głowy montować dyski beos'a to system plików da mount i fstab to befs.
Ostatnio edytowany przez dhg (2012-07-21 20:05:46)
Offline
Strony: 1