Montowanie systemu plików Linux

9

Chciałbym czytać z karty SD zawierającej system plików i system operacyjny z Raspberry Pi z systemem Raspbian / noobs. Zainstalowałem ext2fuse (na Mac El Capitan 10.11.6):

$ brew update
$ brew tap caskroom/cask
$ brew cask install osxfuse
$ sudo shutdown -r now
$ brew install ext2fuse
$ sudo shutdown -r now

Teraz, kiedy wkładam kartę SD (z Raspbian linux OS), otrzymuję:

$ diskutil list
/dev/disk2 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *8.0 GB     disk2
   1:             Windows_FAT_16 RECOVERY                1.2 GB     disk2s1
   2:                      Linux                         33.6 MB    disk2s5
   3:             Windows_FAT_32 boot                    66.1 MB    disk2s6
   4:                      Linux                         6.8 GB     disk2s7

Ale wywołanie następującego powoduje zamontowanie pustego katalogu:

$ sudo /usr/local/opt/ext2fuse/bin/ext2fuse /dev/disk2s7 /sd
$ cd /sd
$ ls
.
$ sudo /usr/local/opt/ext2fuse/bin/ext2fuse /dev/disk2 /sd2
/dev/disk2 is to be mounted at /sd2
fuse-ext2fs: Resource busy while trying to open /dev/disk2

Dodatkowo nie mogę wymyślić, jak je odmontować. Wcześniej korzystałem z opcji „wysuń wszystko” po kliknięciu ikony wysuwania obok zamontowanych partycji „boot” lub „RECOVERY” w wyszukiwarce. Wywołanie następującego nie działa:

$ diskutil unmount /sd
(null) was already unmounted
$ sudo umount /sd
umount(/sd): Resource busy -- try 'diskutil unmount'
$ rmdir /sd
rmdir: sd: Resource busy
$ sudo mkdir /sd
mkdir: /sd: File exists
$ diskutil umount force /sd
Unmount failed for /sd

** edycja ** Nie wiem, co zrobiłem, ale mogę teraz sudo rmdir /sdi są one usuwane.

AJP
źródło
Można spróbować sudo mkdir /sd, sudo /usr/local/opt/ext2fuse/bin/ext2fuse /dev/disk2s7 /sda diskutil umount force /sdi zgłoś się wyniki?
real_human_bean
chcesz odczytywać / zapisywać w systemie plików ext2 / 3?
Sairam,
@jorvi nie ma obecnie na mnie karty SD, ale sudo mkdir /sd=> mkdir: /sd: File exists i diskutil umount force /sd=> Unmount failed for /sd.
AJP,
Po prostu odczyt systemu plików ext2 / 3 byłby świetny (choć oczywiście zapis byłby premią, ale w tej chwili nie można nawet odczytać) @Sairam
AJP
@AJP, dobrze byłoby znać problem, który rozwiązujesz, na wypadek gdyby kroki, które wykonałeś były nieaktualne. Wygląda na to, że jest teraz odpowiedź.
Sairam,

Odpowiedzi:

1
  • Usuń ext2fuse za pomocą brew uninstall ext2fuse.
  • Pobierz fuse-ext2 dostępny na stronie głównej git i rozpakuj go w folderze Pobrane
  • Postępuj zgodnie z tymi instrukcjami:

    brew install m4
    brew install e2fsprogs automake autoconf libtool
    cd ~/Downloads/fuse-ext2-master
    ./autogen.sh
    CFLAGS="-idirafter/$(brew --prefix e2fsprogs)/include -idirafter/usr/local/include/osxfuse" LDFLAGS="-L$(brew --prefix e2fsprogs)/lib" ./configure
    make 
    sudo make install
    
  • Zamontuj partycje, np. Disk2s7:

    sudo fuse-ext2 /dev/disk2s7 /sd -o allow_other,force,rw+
    

Testowane i zweryfikowane na wirtualnej maszynie El Capitan 10.11.6!

klanomath
źródło
Wolałbym używać naparu, ale da to szansę po powrocie do Wi-Fi.
AJP,
1
To działa dobrze. Czy wiesz też, jak odmontować? (i dodatkowe podziękowania za zastanowienie się, jak odmontować inne dyski)
AJP
Z zainstalowanym fuse-ext2 zawsze odmontowałem wolumin, używając menu kontekstowego> wysuw „Vol name”. sudo umount diskXsYdziała również (z odpowiednimi X i Y). Co masz na myśli mówiąc o „innych” dyskach?
klanomath
ls /sd*=> /sd: \n\n/sd2: \n\n/sd3: \n\n/sd4: \n(inne pochodzą z poprzednich prób) i diskutil umount force /sd=> Unmount failed for /sd. Ponowne uruchomienie nic nie robi, są tam, kiedy wrócę. (Również ponownie otrzymałem nagrodę, jeśli wygasa i musiałbym wznowić. Nie jestem pewien, jak to działa, nie chcę, abyś stracił po swojej doskonałej porady. Dzięki.)
AJP
@AJP Możesz odmontować punkt montowania (/ sd *) !. Powinieneś być w stanie uzyskać punkty montowania i nazwę woluminu, wprowadzając, mounta następnie odmontowując woluminy za pomocą sudo umount [force] /mountpoint/vol_name(np.sudo umount /Volumes/SDData
klanomath