Nie można usunąć pustego katalogu w OSX

9

Ten post jest trochę za długi, przepraszam. Krótka wersja to: Mam katalog, którego nie mogę usunąć. Podczas próby interakcji z nim terminal podaje „błąd wejścia / wyjścia”. Przeskanowałem dysk w poszukiwaniu błędów i nie znaleziono żadnych. Przyczyną problemu wydaje się być to, że system uważa, że ​​jest to link, podczas gdy w rzeczywistości jest to katalog. Jak mogę go usunąć?

Tryb fabularny: Mam na pulpicie katalog o nazwie „media”, do którego zamontowałem inny katalog za pośrednictwem SSH (fuse / sshfs). Połączenie zostało utracone, gdy katalog był otwarty. Finder zawiesił się, a katalog zniknął z pulpitu. Jednak wciąż tam jest:

Desktop mike$ ls -1  
media  
templates  
Desktop mike$ mkdir media  
mkdir: media: File exists 

Niemal wszystko, co próbuję zrobić z tym katalogiem, powoduje błąd „wejście / wyjście”:

Desktop mike$ ls -i  
ls: media: Input/output error  
Desktop mike$ sudo rm -rf media  
rm: media: Input/output error  
Desktop mike$ sudo unlink media  
unlink: media: Input/output error  
Desktop mike$ sudo chmod 777 media  
chmod: media: Input/output error  
Desktop mike$ touch media  
touch: media: Input/output error  
cd ./media  
cd: error retrieving current directory: getcwd: cannot access parent directories: Input/output error

Otrzymuję to samo, jeśli spróbuję ponownie zamontować zdalny katalog SSH:

bezpiecznik: zły punkt montowania `./media/ ': błąd wejścia / wyjścia

Chociaż nie jest to widoczne na pulpicie ani w Finderze, mogę wyszukiwać i znajdować. Kliknięcie prawym przyciskiem myszy wyniku wyszukiwania nie oferuje opcji usuwania - tylko otwieranie i właściwości. Właściwości pokazuje czas utworzenia i modyfikacji (poprawnie) oraz pustą ikonę. Mogę również otworzyć element, w którym to przypadku daje mi:

"The alias 'media' can't be opened because the original item can't be found. Delete, Fix, or OK." 

Kiedy próbuję usunąć, to samo okno dialogowe pojawia się ponownie; wybierając fix prosi o wybranie nowego elementu do połączenia. Wykonywanie tych raportów: „Nieznany błąd -1407”, który, jak mówi mi Google, oznacza: „Spodziewałem się folderu, ale dostałem plik”.

Mogę przenieść katalog, ale tylko jeśli zachowam go na pulpicie:

Desktop mike$ mv ./media ./a  
Desktop mike$ ls -i  
ls: a: Input/output error  
Desktop mike$ mv ./a ../  
mv: cannot resolve a: /Users/mike/Desktop/a

Czy w ogóle mogę to usunąć? A przynajmniej przekonać system, że jest to katalog, a nie link?

Mityczny
źródło
Korzystanie z srm ( developer.apple.com/library/mac/documentation/Darwin/Reference/… ) często działa dla mnie w przypadku rzeczy, które w przeciwnym razie trudno byłoby usunąć. Powiedziałeś „przeskanowałem dysk w poszukiwaniu błędów”, czy „zweryfikowałeś dysk” czy „zweryfikowałeś uprawnienia do dysku” (wypróbuj uprawnienia i napraw je, jeśli jeszcze tego nie zrobiłeś)
lupincho 13.04. O
Cześć, dzięki za odpowiedź. Sprawdziłem uprawnienia do dysku, zweryfikowałem dysk i uprawnienia do naprawy. Nie mogę wybrać opcji „napraw dysk”, ponieważ nie znaleziono żadnych błędów. Użycie srm w katalogu daje mi „srm: Nie można stat media”. Odkryłem również, że niektóre narzędzia do plików powiedzą mi, że plik jest katalogiem (a nie linkiem). cat i od, na przykład przed zgłoszeniem, „media: to katalog”.
Czy próbowałeś ponownie uruchomić komputer Mac?
Daniel Beck
Co się stanie, jeśli wejdziesz do terminalu i napiszesz mount?
Kanadyjczyk Łukasz

Odpowiedzi:

5

Niestety nie zaktualizowałem tego po rozwiązaniu tego problemu. Doceniam wszystkie świadome odpowiedzi. Okazuje się, że była to dość prosta rzecz. Przeglądając fora Linux, odkryłem, że jest to pewien znany problem z montowaniem przez sshfs.

https://bbs.archlinux.org/viewtopic.php?id=94725

Doświadczyłem każdego problemu, który OP opisuje w tym wątku, a także problemu z ukrywaniem punktu podłączenia przez Findera (może nie może go zarejestrować lub coś, więc po prostu go nie pokazuje). „... procesy próbujące uzyskać dostęp do odłączonych udziałów sshfs przechodzą w nieprzerwany sen”. Szybkim rozwiązaniem jest zatrzymanie sshfs. „killal sshfs” było dla mnie wystarczające. Przypuszczam, że ponowne uruchomienie również by zadziałało.


źródło
1
Dla porównania, musiałem zrobić, pkill -9 sshfsa następnieumount -f mountpoint
ctn
2

Właśnie trafiłem w ten sam problem. Okazuje się, że ten błąd jest obecnie wymieniony jako błąd w osxfuse. Obejście polega na ręcznym zabiciu procesu sshfs, a następnie odmontowaniu zdalnego katalogu. Następnie możesz nawet usunąć lokalny punkt montowania.

vPraetor
źródło
1

Myślę, że powodem, dla którego nie możesz wybrać „Napraw dysk” w Narzędziu dyskowym, jest to, że problem dotyczy dysku rozruchowego.

Poleciłbym jedno z poniższych:

  • Jeśli korzystasz z systemu OS X Lion (10.7), uruchom komputer z partycji odzyskiwania (przytrzymaj CMD-R podczas uruchamiania komputera), uruchom Narzędzie dyskowe z tego miejsca i spróbuj naprawić dysk;
  • Jeśli korzystasz ze starszej wersji OS X, możesz albo uruchomić komputer z zewnętrznego dysku, albo zainstalować AppleJack (darmowy);
  • Jeśli wszystko inne zawiedzie, dałbym szansę DiskWarrior (nie za darmo, ale nadal narzędzie, któremu ufam najbardziej, jeśli chodzi o moje dane).
taglia
źródło