Witaj na Forum Linuxiarzy
Zanim zalogujesz się, by pisać na naszym forum, zapoznaj się z kilkoma zasadami savoir-vivre'u w dziale Administracja.
Wiadomości z problemami zamieszczone w wątku "Przywitaj się" oraz wszelkie reklamy na naszym forum będą usuwane.

Jak uratować Mint-a, najlepiej z zawartością dysku? ;)

Zaczęty przez Piko, Kwiecień 25, 2018, 05:11:45 PM

Poprzedni wątek - Następny wątek

Piko

Witam.
Używam Linuxa od ponad 2 lat, nie bardzo się jeszcze na nim poznałem i potrzebuję w miarę prostej porady jak z tego wybrnąć?
Dziś rano miałem odpalony komputer zaczęło coś mulić.. zatrzymał się raz na chwilę , potem drugi.. wisi.. Więc wyłączyłem. Po restarcie niestety już się nie odpalił. Pokazuje okno co chcę odpalić.. i zatrzymuje się wypisując initramfs i czeka na ...
No właśnie... By cokolwiek zrobić trzeba być w terminalu, zainstalowałem sobie z płyty na innym (mniejszym) dysku nowy taki sam system i teraz chciałbym skopiować pliki (może jakieś 50GB?)... bądź jak by się udało nawet uruchomić poprzedni system by odzyskać np.  hasła z przeglądarki..
Przy podłączeniu bezpośrednio starego dysku są komunikaty iż nie da się zamontować dev/sdb1  ext4 natomiast wykonując polecenia w terminalu
kade-linux kade # fdisk -l

Disk /dev/sda: 164.7 GB, 164696555520 bytes
głowic: 255, sektorów/ścieżkę: 63, cylindrów: 20023, w sumie sektorów: 321672960
Jednostka = sektorów, czyli 1 * 512 = 512 bajtów
Rozmiar sektora (logiczny/fizyczny) w bajtach: 512 / 512
Rozmiar we/wy (minimalny/optymalny) w bajtach: 512 / 512
Identyfikator dysku: 0x000cb7b3

Urządzenie Rozruch   Początek      Koniec   Bloków   ID  System
/dev/sda1   *        2048   317480959   158739456   83  Linux
/dev/sda2       317483006   321671167     2094081    5  Rozszerzona
/dev/sda5       317483008   321671167     2094080   82  Linux swap / Solaris

Disk /dev/sdb: 251.0 GB, 251000193024 bytes
głowic: 255, sektorów/ścieżkę: 63, cylindrów: 30515, w sumie sektorów: 490234752
Jednostka = sektorów, czyli 1 * 512 = 512 bajtów
Rozmiar sektora (logiczny/fizyczny) w bajtach: 512 / 512
Rozmiar we/wy (minimalny/optymalny) w bajtach: 512 / 512
Identyfikator dysku: 0x0003f9b6

Urządzenie Rozruch   Początek      Koniec   Bloków   ID  System
/dev/sdb1   *        2048   486043647   243020800   83  Linux
/dev/sdb2       486045694   490233855     2094081    5  Rozszerzona
/dev/sdb5       486045696   490233855     2094080   82  Linux swap / Solaris

Jaki program uruchomić ? Bądź co napisać w terminalu by to zgrać?
Proszę też o wyrozumiałość  :)
Pozdrawiam Piko.

gom1

Jaki komunikat pokazuje się przy (nieudanej) próbie zamontowania sdb1?
Wszędzie dobrze, ale w /home najlepiej

Piko

#2
Witam i dziękuję za odzew.. 

Error mounting /dev/sdb1 at /media/kade/de85b33a-dd52-4dac-9889-66c852879967: Command-line `mount -t "ext4" -o "uhelper=udisks2,nodev,nosuid" "/dev/sdb1" "/media/kade/de85b33a-dd52-4dac-9889-66c852879967"' exited with non-zero exit status 32: mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

(udisks-error-quark, 0)

To jest komunikat z próby pod montowania dysku z opcji "Dyski"  a z konsoli nie próbowałem , bo nie wiem jak wpisać? Coś źle wpiszę i skasuję lub zmienię nazwę ..
Dużo w necie jest na ten temat.. dla wszystkich piszących to jest proste.. a dla mnie nie o ile wpisanie polecenia mount /dev/sdb1 nie stanowi problemu to tam jeszcze coś trzeba dopisać dalej (jakieś /mnt/sdb1) a tego już nie rozumiem?
Pozdrawiam .

Nabrałem nieco odwagi.. i odpaliłem terminal wpisałem (możliwe że nie pełne jest te moje polecenie) i wyszło to:

kade-linux kade # mount /dev/sdb1
mount: nie znaleziono /dev/sdb1 w /etc/fstab ani /etc/mtab

lesio

W komendzie "mount" trzeba podać także gdzie chcemy coś podmontować (bo inaczej polecenie stara się tą informację pozyskać z plików, które wypisał komunikat.
np.:
# mount /dev/sdb1 /mnt
czyli polecenie "mount" podmontuje partycję /dev/sdb1 do katalogu /mnt (o ile /mnt istnieje, a partycja nie jest uszkodzona)

Jeżeli dane są ważne, to może najpierw warto zabezpieczyć partycję, kopiując ją binarnie do pliku na jakimś innym dysku, np.:
# dd if=/dev/sdb1 of=partycja.obraz
próbując coś naprawić, możemy pogorszyć sytuację, a tak zawsze możemy obraz partycji odtworzyć poleceniem:
# dd if=partycja.obraz of=/dev/sdb1

Po wykonaniu backupu, możemy spróbować naprawić partycję poleceniem: (uwaga - każda próba naprawy może spowodować jeszcze większe uszkodzenia, dlatego ważny jest backup)
# fsck /dev/sdb1

Piko

Cytat: lesio w Kwiecień 25, 2018, 08:04:04 PM

Jeżeli dane są ważne, to może najpierw warto zabezpieczyć partycję, kopiując ją binarnie do pliku na jakimś innym dysku, np.:
# dd if=/dev/sdb1 of=partycja.obraz
próbując coś naprawić, możemy pogorszyć sytuację, a tak zawsze możemy obraz partycji odtworzyć poleceniem:
# dd if=partycja.obraz of=/dev/sdb1

Rozumiem przez to że muszę podłączyć dysk większy niż te moje 250GB by zrobić kopię?

Cytat: lesio w Kwiecień 25, 2018, 08:04:04 PM
# fsck /dev/sdb1
A to polecenie jest kompletne w celu ratowania mojego starego dysku, tak?
Dziękuję i pozdrawiam Piko.

lesio

Na obydwa pytania odpowiedź brzmi "Tak" - masz rację.
Niestety, kopiowanie 250GB trochę trwa. Można ograniczyć wielkość obrazu partycji, włączając "po drodze kompresję (np. gzip lub compress). Oczywiście trudno przewidzieć jej efektywny stopień - często efekt jest znakomity, szczególnie gdy część partycji jest pusta. Wtedy polecenie backupu wyglądałoby mniej więcej tak:

# dd if=/dev/sdb1|compress > partycja.obraz.z  (nazwa oczywiście dowolna, ale dla plików skompresowanych przez "compress" zwyczajowo dodaje się rozszerzenie ".z"
lub
# dd if=/dev/sdb1|compress|dd of=partycja.obraz.z

a odtwarzanie np. tak:
# dd if=partycja.obraz.z|uncompress|dd of=/dev/sdb1
lub
# cat partycja.obraz.z|uncompress|dd of=/dev/sdb1

Piko

Witam.
Fajnie, dziękuję bardzo. Z tą kompresją nawet bardziej by mi pasowało?
A zapytam jeszcze o coś takiego czy spróbować podłączyć ów dysk pod Xp przez SATA bądź jako zewnętrzny przez USB? Czy system mi tam czegoś przypadkiem nie nadpisze? Wiem że w drugą stronę dyski z Windowsem  da się czytać się pod Linuxem i to działa? Puki co uzbroję się w cierpliwość i najpierw jednak będę chciał zgrać obraz.
Jeszcze raz dzięki i pozdrawiam Piko.

gom1

Obawiam się, że XPekiem nie zobaczysz partycji ext4. Ja bym nie kombinował.
Wszędzie dobrze, ale w /home najlepiej

TataPingu

@Piko
- w pierwszym rzędzie, jak już Lesio wspominał, powinieneś zrobić kopię feralnej partycji.
Z tego co napisałeś wynika, że jesteś raczej nowicjuszem. Osobiście radziłbym Ci zamiast używać terminalowych poleceń (nie znając dobrze linuksa możesz jednym błędnym poleceniem "załatwić sobie system na dobre") użyć do tego celu dystrybucji specjalnie do tego przygotowanej.
To PartedMagic, poszukaj w necie pmagic_2013_06_15.iso, lub pmagic_2013_02_28.iso (lub ew. wcześniejszych - te wersje są jeszcze "wolnymi"), przygotuj sobie z nich startowy dysk i zabotuj live. To graficzny linux (bazuje chyba na LXDE), więc będzie przyjaźniejszy dla Ciebie
Po starcie livea znajdziesz wszystko co potrzebne, żeby skopiować Twoje partycje, lub pliki, ale równocześnie będziesz mógł sprawdzić stan techniczny HD.
PartedMagic

Piko

Witam.
@lesio,TataPingu.
Skorzystałem z Twojej pomocy i tak zrobię. Tzn. najpierw skopiuję sobie obraz dysku (i to nie wykluczone że w sposób opisany przez TataPingu?) Dziś podpiąłem dysk IDE 160GB po starym Win (bo dwa sloty SATA mam zajęte), sformatowałem, utworzyłem jedną z partycję z całego dysku, na niej katalog "abc". i próbowałem skopiować z kompresją wpisując w konsoli:

# dd if=/dev/sdc1 | gzip > /abc/sda1/backup.gz

Nie wiem dlaczego bash mi odpowiadał że nie ma takiego katalogu ani pliku, skoro fizycznie sam go utworzyłem? Widać nie bardzo jest dla mnie zrozumiałe poruszanie się po partycjach. Mowa tu o poleceniu #cd. które powinno mnie przenieść na inny dysk do wskazanego katalogu?Tak samo nie potrafiłem poleceniem konsolowym #mkdir utworzyć katalogu na dysku sda1, tylko otwierając ikonę katalog domowy wybrałem dysk i na nim przyciskiem myszy wybrałem utwórz katalog, wpisałem nazwę abc i jest.  I teraz otwierając terminal w katalogu abc skróciłem wpis konsolowy do wersji poniżej  ...

# dd if=/dev/sdc1 | gzip > backup.gz

Ruszyło... i faktycznie po około 4h.. 160GB się zapełniło.. Hmmm.. Liczyłem na to że przy użyciu kompresji zdołam upchać zawartość tej 250 (nawet nie w połowie zapełnionej )na tym dysku. Lipa. Mam plik backup.gz ale wiem że jest nie pełny więc nie wartościowy.
Nie wiem czy jutro uda mi się gdzieś dostać 250-tkę lub coś większego .. a w sobotę wyruszam na Majówkę. Tak czy owak , będę robił najpierw backup a potem dopiero kombinował. W jaki sposób backup, czy konsolą czy PartedMagic? Nie wiem jeszcze?
Pierwsze emocje po takim ciosie już opadły, teraz jestem już spokojniejszy i inaczej na to patrzę. Widzę że są duże szanse ale też trzeba działać spokojnie bez paniki. ;)
Na razie dziękuję z pomoc i cenne dla mnie rady. Pozdrawiam Piko.

Grzegorz

        Tak czy owak , będę robił najpierw backup a potem dopiero kombinował.
Backup zawsze i wszędzie , coś na ten temat doświadczyłem na własnej skórze.
Grzegorz

TataPingu

@Piko
Jeśli pojemność dysku jest za mała, użyj więc PartedMagic...
- jest tam też program qt4-fsarchiver, którym możesz robić kopie partycji, ale również poszczególnych katalogów (np. tylko home).
Program jest pewny i sprawdzony (najgorsze co może się przydarzyć, to zrobienie backupa, który okaże się wadliwy podczas próby powrotnego wgrania danych), a podczas robienia kopii dane są automatycznie komprimowane. Np, jedna z moich partycji systemowych ulokowana jest na 30 GB, a po zrobieniu backupa wynosi nie wiecej, jak 7-8 GB.

Jedynym "minusem" tego programu (właściwy program to fsarchiver) jest to, że nie można "podglądnąć" nowo stworzonych plików backupa.
Nie jest to jednak wielkim problemem, bo w ciągu krótkiego czasu można wgrać plik na przygotowaną wolną partycję, a tam mamy już dokładną kopię oryginału.

Piko

#12
Witam.
Dziękuję za informację TataPingu. Tak zrobię. Jeszcze dziś popołudniu spróbuję zrobić jeszcze jedno podejście ;)
Pozdrawiam Piko.

Jak napisałem tak zrobiłem. Tzn. Udało mi się z neta ściągnąć pmagic_2013_02_28.iso. Na początek pozwoliłem sobie odpalić sam program by jakoś ogarnąć jego obsługę. To nie jest jeden program, tam jest cały zestaw narzędzi.. Ja korzystałem z tego co jest na pulpicie (w tools jest bardzo bogata oferta programów).
Do czego zmierzam. Na początek zrobiłem sobie backup tego dysku na którym teraz pracuję.. nie chciało mi zrobić był error i krzyczał że sda1 jest zamontowany.. więc go od montowałem  i ruszyło.. Kompresja jest spora i bardzo byłem zadowolony. Był komunikat że operacja wykonana bez błędów. Więc przed chwilą zmieniłem konfigurację .. przez wpięcie tego dysku na którym mi zależy.
Doszła literka w dyskach ..pojawiło się sdc1, sdc2, sdc5.  Przy próbie kliknięcia na dysk sdc1,2 czy 5 jest komunikat
udevil: denied 65: device /dev/sdc1 is not mounted

co rozumiem że dysk jest nie zamontowany ?
W programie (teraz mi wyleciała ta nazwa ***mount, on pokazuje na zielono i czerwono partycje zamontowane i odmontowane) i ewidentnie partycja sdc1,2,5 są na zielono. Próba kliknięcia nie przynosi pożądanych rezultatów.
Próbowałem dokładnie tak samo jak z poprzednim dyskiem robić backup i otrzymywałem taki komunikat w oknie konsolowym programu robiącego backup:

filesys.c#313,generic_mount(): partition [/dev/sdc1] cannot be mounted on [/tmp/fsa/20180427-191858-00] as [ext4] with options [user_xattr,acl]
oper_save.c#1032,filesystem_mount_partition(): cannot mount partition [/dev/sdc1]: filesystem may not be supported by either fsarchiver or the kernel.
removed /media/sdb1/abc/backup-partedmagic-sdc1.fsarchiver.fsa

[ Finished ]  Press Enter to close:


a próba od montowania z programu kończyła się komunikatem:
udevil: /dev/sdc1 is known to mount - running mount as current user
udevil: warning 45: options ignored for device in fstab (or specify mount point)
mount: wrong fs type, bad option, bad superblock on /dev/sdc1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

Na razie mnie to przerasta. Czas niestety już się dziś dla mnie skończył.. Na dziś koniec moich eksperymentów, ale chciałem jeszcze tu napisać co zrobiłem i zapytać co dalej z tym "fantem" począć ?
Jeszcze raz dziękuję za sugestie i pozdrawiam Piko.

P.S. Tym razem zaloguję się dopiero jak wrócę za niecałe dwa tygodnie.

lesio

Krytyczna partycja nie da się zamontować, bo ma błędy. Kopię tej partycji trzeba wykonać, gdy jest niezamontowana. Polecenie "dd" to realizuje. Nie korzystam pod linuxem z innych narzędzi, więc nie wiem jak to realizuje pakiet, z którego korzystasz.
Polecenie "dd" wykonuje kopię binarną bez analizowania zawartości, tzn. kopiuje także "pustą" część dysku (która jednak jest zapełniona danymi, np pochodzącymi ze skasowanych plików). Dlatego kompresja nie jest szczególnie duża. Narzędzie z płytki Partition Magic może chcieć kopiować tylko obszar wykorzystywany aktualnie przez pliki, a w tym celu usiłuje podmontować filesystem (oczywiście nie uda się to, bo jest on uszkodzony)  w celu przeczytania informacji o nim. Trzeba więc znaleźć narzędzie na płytce Partition Magic, które nie przeprowadza takiej analizy i kopiuje całość. Oczywiście plik obrazu będzie wtedy dużo większy (sądzę, że podobnie wielki, jak pochodzący od polecenia "dd" z gzipem.

Piko

Witam.
Już wróciłem. Wczoraj kupiłem dysk o tej samej pojemności, miałem problem z podłączeniem bo się gryzł z innymi dyskami, ale już jest ok. Zrobiłem wieczorem pierwsze podejście - nie udane. Więc zapytam osób bardziej obeznanych w temacie czy dobrze rozumiem pewne zagadnienia? 
Cytat: lesio w Kwiecień 29, 2018, 01:02:35 AM
Polecenie "dd" wykonuje kopię binarną bez analizowania zawartości, tzn. kopiuje także "pustą" część dysku (która jednak jest zapełniona danymi, np pochodzącymi ze skasowanych plików). Dlatego kompresja nie jest szczególnie duża.
I to wystarczy, czy mam zrobić backup jeszcze innych partycji, tablicy partycji i kodu MBR (bo takie rzeczy też "robi" polecenie #dd)?
I jeszcze jedno, bo jakoś nie mogłem tym razem przeskoczyć tego, tzn. wskazać miejsca zapisu pliku backup.gz .
Ostatnio wchodziłem w wybrany katalog i w nim otwierałem terminal i zapisywał mi. Wczoraj zrobiłem podobnie a jednak plik zapisywał mi na bieżącym dysku co spowodowało zapchanie mi kompa i zakończenie wykonywania polecenia z błędem.
gzip: stdout: No space left on device

Dysk /dev/sda ma jedną pełną partycję ext4. Natomiast dysk który chcę ratować nazywa się dev/sdd z partycjami 1,2,5. I teraz jak powinna wyglądać składnia polecenia by to zagrało tak jak ja bym chciał?

kade-linux kade # fdisk -l

Disk /dev/sda: 250.0 GB, 250000000000 bytes
głowic: 255, sektorów/ścieżkę: 63, cylindrów: 30394, w sumie sektorów: 488281250
Jednostka = sektorów, czyli 1 * 512 = 512 bajtów
Rozmiar sektora (logiczny/fizyczny) w bajtach: 512 / 512
Rozmiar we/wy (minimalny/optymalny) w bajtach: 512 / 512
Identyfikator dysku: 0x263a99d9

Urządzenie Rozruch   Początek      Koniec   Bloków   ID  System
/dev/sda1              63   488281249   244140593+  83  Linux
.
.
.
Disk /dev/sdd: 251.0 GB, 251000193024 bytes
głowic: 255, sektorów/ścieżkę: 63, cylindrów: 30515, w sumie sektorów: 490234752
Jednostka = sektorów, czyli 1 * 512 = 512 bajtów
Rozmiar sektora (logiczny/fizyczny) w bajtach: 512 / 512
Rozmiar we/wy (minimalny/optymalny) w bajtach: 512 / 512
Identyfikator dysku: 0x0003f9b6

Urządzenie Rozruch   Początek      Koniec   Bloków   ID  System
/dev/sdd1   *        2048   486043647   243020800   83  Linux
/dev/sdd2       486045694   490233855     2094081    5  Rozszerzona
/dev/sdd5       486045696   490233855     2094080   82  Linux swap / Solaris


Bo tak wyglądało jak ja zrobiłem a nagrało mi na dysk bieżący. Chyba że to sprawka wygaszacza ekranu? On może namieszał?


kade-linux d78128f7-3794-4986-8ead-2696a99a154a # dd if=/dev/sdd1 | gzip > /backup_1.gz


Dużo się tego zrobiło, ale tak właśnie jest im głębiej w las tym jest ciemniej ..
Dziękuję i pozdrawiam Piko.

Zobacz najnowsze wiadomości na forum