Zamontuj dysk HFSPlus z uprawnieniami do odczytu / zapisu w systemie Linux


9

Zdaję sobie sprawę, że to pytanie ma charakter podobny do tego pytania , ale mam nadzieję, że zwrócę szczególną uwagę na dodatkowy problem w jednym z komentarzy tej odpowiedzi na to pytanie .

Wyjąłem dysk twardy ze starego MacbookPro i próbuję go zamontować na moim Podstawowym systemie operacyjnym, gdzie jest on automatycznie montowany jako tylko do odczytu. Chcę uzyskać dostęp rw do tego dysku.

Postępuj zgodnie z procedurą podaną w odpowiedzi na powyższy link, po uruchomieniu

sudo mount -t hfsplus -o remount,force,rw /dev/sdc2 /media/myharddrive

dostaję

mount: warning: /media/myharddrive seems to be mounted read-only.

Zostało to odnotowane w komentarzu do tego pytania, ale nie zwróciło wystarczającej uwagi, aby nagrodzić odpowiedź. Dlaczego wciąż jest tylko do odczytu? Czy to nie forcegwarantuje?

Następujące mogą, ale nie muszą być istotne:

Pobiegłem także sudo fsck.hfsplus -f /dev/sdc2po wpisie na blogu, do którego link znajduje się w odpowiedzi, i dodałem -fflagę, gdy fscknie chciałem sprawdzać systemu z kronikowaniem. ładnie to działało do

** /dev/sdc2 ** Checking HFS Plus volume. ** Checking Extents Overflow file. ** Checking Catalog file. ** Checking multi-linked files. Orphaned indirect node iNode28863935 ** Checking Catalog hierarchy. ** Checking Extended Attributes file. ** Checking volume bitmap. ** Checking volume information. ** Repairing volume. ** Rechecking volume. ** Checking HFS Plus volume. ** Checking Extents Overflow file. ** Checking Catalog file. ** Checking multi-linked files. ** Checking Catalog hierarchy. ** Checking Extended Attributes file. ** Checking volume bitmap. ** Checking volume information. ** The volume myharddrive was repaired successfully. *** glibc detected *** fsck.hfsplus: munmap_chunk(): invalid pointer: 0x00000000022f9e30 ***

po którym następuje ślad i mapa pamięci. fsckRozmowa wydaje się mieć żadnego wpływu na moim dysku, ani dobre, ani złe.

Wszelkie wskazówki, jak uzyskać dostęp do odczytu i zapisu na moim dysku, bez uruchamiania OSX , byłyby bardzo mile widziane.

EDYTUJ Komentarze i odpowiedź Michaela Kjörlinga rozwiązały mój podstawowy problem dostępu do moich danych. Jednak pogrubione pytania nie zostały jeszcze rozwiązane, więc zredagowałem pytanie, aby podkreślić ten problem, pozostawiając pytanie otwarte dla przyszłych użytkowników.


Dlaczego czujesz potrzebę uruchamiania, chmodaby pobrać dane z dysku? Wydaje się, że prostym rozwiązaniem jest po prostu skopiowanie tylko do odczytu do innego systemu plików, a następnie w razie potrzeby poprawienie uprawnień i własności.
CVn

@ MichaelKjörling Nie mam nawet uprawnień do odczytu plików, które chciałbym skopiować
kinbiko

Uruchomienie sudopowinno być możliwe, ponieważ root omija wszystkie sprawdzenia uprawnień systemu plików. Zakłada to oczywiście założenie, że problem z uprawnieniami dotyczy uprawnień na poziomie systemu plików.
CVn

@ MichaelKjörling nawet z sudoja rozumiem cp: omitting directory Documents/. podczas próby skopiowania Dokumentów na mój lokalny dysk twardy
kinbiko

1
Nie jest to jednak problem z uprawnieniami.
CVn

Odpowiedzi:


4

Jak zauważyliśmy w komentarzach, tutaj są dwa możliwe problemy:

  1. Próbujesz uruchomić kopię jako zwykły użytkownik. Może to spowodować błąd odczytu plików źródłowych, ponieważ nie masz do nich uprawnień do odczytu. Można to łatwo skorygować, uruchamiając kopiowanie sudotak samo, jak podczas montowania.
  2. Otrzymujesz, cp: omitting directory Documents/gdy próbujesz uruchomić kopiowanie sudo. To wcale nie jest problem z uprawnieniami i można go naprawić, po prostu mówiąc, cpaby dołączyć podkatalogi.

Łącząc te dwa elementy, powinieneś być w stanie skopiować swoje pliki za pomocą polecenia typu sudo cp -av /media/myharddrive /somewhere/else, gdzie / gdzie / gdzie istnieje i jest zapisywalny.

Ten -vparametr nie jest bezwzględnie potrzebny, ale po pół godzinie lub godzinie oczekiwania możesz docenić listę plików podczas ich kopiowania. Pamiętaj, że jeśli masz bardzo dużą liczbę małych plików, odświeżanie ekranu może zmniejszyć przepustowość kopiowania; w takim przypadku po prostu zminimalizuj okno i od czasu do czasu je sprawdzaj.

-amówi cp, aby działał w trybie „archiwizowania”, zachowując możliwie najwięcej plików, które kopiuje, w tym podkatalogów. Możesz też użyć -rtego polecenia, aby zachować tylko strukturę katalogów.

Korzystając z tego, powinieneś być w stanie skopiować pliki do bardziej odpowiedniego miejsca, gdzie możesz pracować z nimi bardziej swobodnie, bez ograniczeń związanych z ograniczeniem tylko do odczytu obsługi systemu plików HFS +.


Zaktualizowałem pytanie, aby konkretnie rozwiązać problem z montażem, i nie przyjmuję twojej odpowiedzi, ponieważ nie odpowiada na to pytanie. Z przyjemnością dam ci nagrodę, gdy skończy się czas.
kinbiko

Mam dokładnie taki sam problem jak OP i próbowałem zamontować te flagi pod sudo, próbowałem mkdirpod sudo w zamontowanym napędzie i otrzymałem ten błąd:mkdir cannot create directory 'test': Read-only file system
James Heald

Miałem ten sam problem co OP i twoja odpowiedź wydawała się załatwić. Dzięki!
fady

0

Myślę, że twoim problemem jest w zasadzie wyłączenie rejestrowania bez korzystania z OSX.

Wymaga to edycji binarnej (hakowania) nagłówka dysku, w wyniku czego miejsce na dysku zajęte przez dziennik prawdopodobnie zostanie utracone.

Oto wskaźniki do dwóch raczej podobnych programów C, które twierdzą, że właśnie to robią:

Nie mogę zagwarantować, że te programy nie zniszczą dysku, więc sugeruję wypróbowanie tego na kopii zapasowej obrazu dysku.

Ten post może być przydatny: Jak mogę zamontować obraz dysku? .


0

Dużo miałem ten sam problem i to, czego do tej pory się nauczyłem: zrobienie udanego fsck jest niezbędne. Ponieważ to nie działa na twoim komputerze, myślę, że powinno to być twoje podejście do naprawy:

  • którą wersję hfsprogs / fsck.hfsplus zainstalowałeś?
  • na moim komputerze (z uruchomionym Debianem) zainstalowałem go ze źródła (używając pobrań z innego źródła)

    wget „http”: // „gentoo.osuosl.org/distfiles/diskdev_cmds-332.14.tar.gz”

    wget „http”: // „gentoo.osuosl.org/distfiles/diskdev_cmds-332.14_p1.patch.bz2”

    tar xzf diskdev_cmds-332.14.tar.gz

    bunzip2 -c diskdev_cmds-332.14_p1.patch.bz2 | łatka -p0

    cd diskdev_cmds-332.14

    make -f Makefile.lnx

    cp fsck_hfs.tproj / fsck_hfs /sbin/fsck.hfsplus

    cp newfs_hfs.tproj / newfs_hfs /sbin/mkfs.hfsplus

    ln -s /sbin/fsck.hfsplus /sbin/fsck.hfs

    ln -s /sbin/mkfs.hfsplus /sbin/mkfs.hfs

W ten sposób fsck działał dla mnie cały czas z moim dyskiem hfs +.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.