Nie można usunąć folderu o nazwie __MACOSX


1

Mam więc folder w moim ~./Trashfolderze i nie mogę go usunąć. Nazywa się __MACOSX i wypróbowałem wszystko, co mogę wymyślić, aby się go pozbyć. Finder w ogóle się nie uruchomi z tego powodu (zaczyna się trochę przy logowaniu, ale potem się zawiesza / zawiesza), terminal zatrzymuje się, gdy próbuje go usunąć (zarówno jako ja, jak i jako sudo), a nawet zawiesza się, gdy automatyczne uzupełnianie (tabulacja) po wpisaniu kilku pierwszych znaków. Jakieś sugestie?

Aktualizacja : wykonanie normalnej lslisty jest w porządku, ale ls -lpróba dowiedzenia się więcej na ten temat powoduje zawieszenie terminala:

polaris:~ rob$ cd .Trash/
polaris:.Trash rob$ ls
__MACOSX
polaris:.Trash rob$ ls -l
^C^C

(Naciśnięcie ^ C nic nie robi)

Kolejna aktualizacja : narzędzie Onyx trash zawiesza się podczas usuwania kosza lub bezpiecznego usuwania kosza, awarie SuperEmptyTrash,


Czy próbowałeś sprawdzić dysk pod kątem problemów?
Matteo

@Matteo masz na myśli weryfikację / naprawę dysku w Disk Utility.app?
Penguinrob

Tak, a także uprawnienia.
Matteo

Oboje i wrócili dobrze. Mówił, że wolumen wydaje się być w porządku, a jedynym zmienionym zezwoleniem był dokument z apache, który zmieniłam, co wątpię, czy będzie to problem
penguinrob

Odpowiedzi:


2

Mogę wymyślić kilka rzeczy.

Najpierw spróbuj usunąć wszystko z .Trashfolderu z uprawnieniami sudo:

sudo rm -rf ~/.Trash/*

Jeśli to się nie powiedzie, spróbuj zresetować PRAM na komputerze Mac. Czasami może to zaskakująco naprawić dziwne błędy.

Na koniec upewnij się, że uprawnienia do twojego .Trashfolderu są poprawne

ls -ale ~/.Trash/

Uprawnienia do folderu powinny wyglądać następująco:

drwx------ 24 username staff 816 Mar 24 22:06 .

drwxr-xr-x+ 34 username staff 1156 Mar 24 09:51 ..


Oczywiście, jeśli ls -lzawiesi się Terminal, sprawdzenie uprawnień prawdopodobnie spowoduje to samo. Jednak warto to zrobić.
sudo rm -rf

tak, wciąż to zamraża.
Penguinrob

Czy próbowałeś usunąć folder kosza, jak już wspomniałem? Jeśli tak, spróbuj naprawić uprawnienia do folderu domowego: osxdaily.com/2011/11/15/… Należy pamiętać, że naprawa uprawnień różni się od standardowej naprawy Narzędzia dyskowego. Musisz zrestartować urządzenie Lion.
sudo rm -rf

Tak, mam. Nadal mam tę komendę otwartą w zakładce Terminal od godziny temu, aby sprawdzić, czy to zajmie trochę czasu, ale nadal jest zamrożone.
Penguinrob

Przed ponownym uruchomieniem możesz spróbować czegoś dla mnie? Mam przeczucie. sudo fs_usage -f filesys | grep ~/.Trash To pokaże, gdy cokolwiek spróbuje uzyskać dostęp do folderu śmieci. Zastanawiam się, czy coś ma blokadę odczytu i nie pozwala jej odejść.
sudo rm -rf

1

Najpierw zasugerowałem „sudo rm -rf __MACOSX” - który zamraża terminal.

Hmm. Mam tylko .Trashes w moim ~, jesteś w 10.7?

W każdym razie - „ls -lA” pokazuje, że końcowy znak uprawnień to t, więc „tylko właściciele plików mogą łączyć lub odłączać pliki w określonym katalogu”. W tym przypadku chcesz odłączyć (usunąć). Właścicielem tego katalogu jest root, więc musisz być rootem.

Domyślnie nie można „su” w Lion. Możesz włączyć konto roota za pomocą Usług katalogowych w / System / Library / CoreServices. Uwierzytelnij, a następnie wybierz „Włącz użytkownika root” w menu edycji.

Gdy już to zrobisz, zwykłe „su”, po którym następuje hasło, sprawia, że ​​faktycznie „rootujesz” nie tylko innego użytkownika, który robi rzeczy z uprawnieniami roota. Monit zmieni się na coś bardzo podobnego sh-3.2#do zwykłego i whoamiodpowie „root”.

Wtedy powinieneś być w stanie zabić ten plik!


Tak, próbowałem tego, po prostu zamrażam terminal.
Penguinrob

Myślę, że znalazłem drogę po kopaniu ...
Adam Eberbach

Zakładam, że uruchamianie su jest takie samo jak sudo -i, ponieważ nadal mam roota dla whoami. Nadal zamraża terminal podczas próby jego usunięcia.
Penguinrob

1
Spróbuj „sudo chflags nouchg __MACOSX” - a następnie spróbuj ponownie? Sugerowałbym także „sudo chflags noschg __MACOSX”, ale myślę, że musisz uruchomić system w trybie jednego użytkownika - jeśli chcesz go wypróbować, uruchom ponownie i przytrzymaj komendę-S podczas uruchamiania.
Adam Eberbach

Jak poszedłeś, pingwinie? Wygląda na to, że zdobyłem tutaj downvote drive-by, zakładam, że to nie byłeś ty.
Adam Eberbach

1

Przeniosłem folder do /tmpi ponownie uruchomiłem komputer. Sądzę, że /tmpnie został on zachowany w trakcie ponownego uruchamiania, więc pozwoliłem systemowi zająć się tym problemem.


I czy to zadziałało?
nohillside

1

Wypróbowałem wszystkie powyższe sugestie z wyjątkiem ostatniej, ponieważ nie chciałem, aby maszyna nie uruchamiała się w przypadku zawieszenia się, próbując usunąć nieusuwalny plik. Ale działały:

  1. Przeniesiono __MACOSX z kosza, przeciągając go do pustego folderu.
  2. Od Findera zmieniono uprawnienia, tak aby właściciel, grupa, wszyscy mogli czytać / zapisywać / wykonywać.
  3. Otwarty terminal i wydany sudo -r -f __MACOSX

Byłem zaskoczony, że powyższe zadziałało, ale tak się stało!


1
Zakładam, że użyłeś Findera do przeniesienia folderu z kosza, ale to by nie działało, ponieważ Finder w ogóle by się nie zaczął. Terminal wisiał za każdym razem, gdy próbowałem coś zrobić, ale dzięki za to, że powiedziałeś, co działa dla ciebie!
Penguinrob
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.