Odmontuj katalog zamontowany przez sshfs na komputerze Mac

157

Zainstalowałem OSXFUSEna moim Macu i użyłem sshfsdo zamontowania zdalnego katalogu. Teraz chciałbym go odmontować, ale nie mogę znaleźć drogi. Mój system operacyjny to OSX 10.8 Mountain. Czy ktoś może pomóc?

waitkuo
źródło

Odpowiedzi:

165

Nie używaj umount.

Posługiwać się

fusermount -u PATH
palswim
źródło
8
Ta odpowiedź pochodzi od @peterdemin w komentarzu do innej odpowiedzi .
palswim
37
Fusermount nie został znaleziony w systemie OS10.8
Meetai.com
26
Użyj umount, jak mówią dokumenty (na co wskazuje odpowiedź @opsmason).
Ioannis Filippidis
3
opcja <umount> działa dobrze pod Mac System Version: OS X 10.10.3 nawet bez sudo
ravi.zombie
4
umountPoczątkowo nie zaczynałam pracować, ponieważ myślałam, że tak jest unmount- nie ma n!
George WS
170

Spróbuj tego:

umount -f <absolute pathname to the mount point>

Przykład:

umount -f /Users/plummie/Documents/stanford 

Jeśli to nie zadziała, spróbuj tego samego polecenia co root:

sudo umount -f ...
Timur Mingulov
źródło
3
Użycie umount -f pozostawiło mi zepsuty katalog, podając błąd: "bash: cd: nazwa-katalogu:
Punkt
5
Uwaga do wykorzystania w przyszłości: powyższe polecenie działa dobrze na Mavericks. Ponadto ścieżka absolutna nie jest konieczna.
be hollenbeck
1
Dobra na OS X 10.10.2 i homebrew
user2707671
2
Dobra na OSX 10.10.4 przy użyciu umount -f /Users/me/Documents/therebez sudo
Christiaan Westerbeek
2
Działa na 10.12.1 Sierra zumount -f ~/relative-path
sscirrus
29
sudo diskutil unmount force PATH 

Działa za każdym razem :)
Zwróć uwagę na forcetag

MuhsinFatih
źródło
To zrobiło to dla mnie, gdzie nic innego nie zrobiło! Dzięki!
drkvogel
To samo tutaj. Wysadź całą lokalizację z orbity - to jedyny sposób, aby mieć pewność.
Darragh Enright
1
Rzeczywiście działa za każdym razem. Kluczem jest opcja wymuszenia :-) Na przykład: Otrzymałem następujący błąd z umount mount_osxfuse: punkt montowania / Users / mount / root jest sam na wolumenie OSXFUSE diskutil
irsis
15

Przynajmniej w 10.11 (El Capitan) strona podręcznika umount wskazuje:

Ze względu na złożoną i przeplatającą się naturę Mac OS X, umount często może się nie udać. Zamiast tego zaleca się użycie diskutil (1) (np. "Diskutil unmount / mnt").

Takie podejście (np. „Diskutil umount ścieżka / do / montowania / punktu ”) pozwala mi odmontować zawartość zamontowaną przez sshfs i nie wymaga sudo. (I uważam, że powinno działać wstecz przez co najmniej 10,8).

Matt Healy
źródło
3
Pęknięta rura czasami pozostawiała głośność w bardzo złym stanie. Tylko w takich przypadkach diskutil unmount force /path/to/mountpointpomogłoby mi.
cw '10
1
Nawiasem mówiąc, działa to tylko dla mnie, jeśli używam diskutil umount force .... Inne metody również tutaj .
abalter
12

użyj, ps aux | grep sshfsaby znaleźć PID sshfs (będzie to liczba obok nazwy użytkownika)

Następnie kill -9 $PID, jeśli inne rozwiązania nie zadziałają

hjfitz
źródło
Działa na OS X 10.11.0 po zawieszeniu go i przeniesieniu do innej sieci (opuszczenie punktu montowania z błędami wejścia / wyjścia). umount nie działał, nie zainstalowano fusermount
RobM
To zadziałało, gdy natknąłem się na sytuację, w której wiele aplikacji / procesów grało w piłkę plażową / „utknął” -status-in-top / „U” -status-in-ps. Twoje zdrowie.
Slipp D. Thompson,
6

Pracowały dla mnie:

hdiutil detach <path to sshfs mount>

Przykład:

hdiutil detach /Users/user1/sshfs

Wolumin utworzony przez sshfs można również zlokalizować w Finderze, kliknąć prawym przyciskiem myszy i wybrać Wysuń. O ile mi wiadomo, jest to wersja GUI powyższego polecenia.

casew
źródło
To jest coś, co działało dla mnie bez problemów na macOS Sierra. Podejrzewałem, że to zadziała bezbłędnie, ponieważ na Gui naciskam przycisk wysuwania, to właśnie się dzieje.
prageeth
Działa doskonale na macOS Sierra .
spencer.sm
Działa dla mnie na High Sierrra, gdy inne podejścia nie, ale musiałem dodać opcję „-force”: np. „Hdiutil detach / Users / user1 / sshfs -force”
Chris
2

Jeśli masz problemy z fusermountpoleceniem, możesz zabić proces:

ps -ax | grep „sshfs”

user3396875
źródło
1
Lub nawet: killall sshfs
matemaciek
2

W moim przypadku (Mac OS Mojave) kluczem jest użycie pełnej ścieżki $umount -f /Volumnes/fullpath/folder

lxy
źródło
1

Jako odniesienie pozwolę sobie zacytować FAQ osxfuse

4.8. Jak odmontować system plików „FUSE for OS X”? Nie mogę nigdzie znaleźć programu Fusermount.

Po prostu użyj standardowego polecenia umount w OS X. Nie potrzebujesz specyficznego dla Linuksa fusermount z "FUSE for OS X".

Jak wspomniano powyżej, albo diskutil unmountczy umountpowinno działać

Christian Butzke
źródło
0

Dla porównania stwierdziłem, że to działa dla mnie.

diskutil unmount / path / to / directory /

Kiedy użyłem polecenia umount, pojawił się błąd, który zalecał to polecenie diskutil.

vikingben
źródło
0

Jeśli twój problem polega na tym, że zamontowałeś dysk sieciowy z SSHFS, ale połączenie ssh zostało przerwane i po prostu nie możesz go ponownie zamontować z powodu błędu takiego jak mount_osxfuse: mount point /Users/your_user/mount_folder is itself on a OSXFUSE volumeużytkownik github, którego nie znaleziono rozwiązanie, które działa dla mnie. Cytując jego odpowiedź:


Moje obecne obejście to:

Znajdź proces sshfs będący winowajcą:

$ pgrep -lf sshfs

Zabij to:

$ kill -9 <pid_of_sshfs_process>

sudo wymuś odmontowanie katalogu „niedostępny”:

$ sudo umount -f <mounted_dir>

Ponownie podłącz teraz „dostępny” katalog za pomocą sshfs ... a jutro rano wróć do kroku 1.

Erlend Magnus Viggen
źródło
-1

Zawsze możesz to zrobić z poziomu wyszukiwarki. Po prostu przejdź do katalogu powyżej, w którym znajduje się uchwyt, i naciśnij ikonę wysuwania nad zamontowanym folderem, który będzie miał SSHFS w nazwie (w wyszukiwarce). Skrót do otwarcia folderu w wyszukiwarce z poziomu terminala to

open .

który otworzy bieżący katalog w nowym oknie wyszukiwarki. Zastąpić "." z wybranym katalogiem.

Marvin
źródło