Não é possível excluir um diretório vazio no OSX

8

Este post é um pouco longo, desculpe. A versão curta é: Eu tenho um diretório que não consigo excluir. O terminal fornece "erro de entrada / saída" quando tento interagir com ele. Examinei o disco em busca de erros e nenhum foi encontrado. A raiz do problema parece ser que o sistema pensa que isso é um link, quando na verdade é um diretório. Como posso excluí-lo?

Modo História: Eu tenho um diretório chamado "media" na minha área de trabalho, no qual montei outro diretório via SSH (fuse / sshfs). A conexão foi perdida enquanto o diretório estava aberto. O Finder falhou e o diretório desapareceu da área de trabalho. Ainda está lá, no entanto:

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

Quase tudo o que tento fazer no diretório gera um erro de "entrada / saída":

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

Eu recebo o mesmo se tentar remontar o diretório SSH remoto:

fusível: ponto de montagem incorreto `./media/ ': erro de entrada / saída

Mesmo que não esteja visível na área de trabalho ou no Finder, eu posso pesquisar e encontrar. Clicar com o botão direito do mouse no resultado da pesquisa não oferece uma opção de exclusão - apenas abrir e propriedades. Propriedades mostra a hora criada e modificada (corretamente) e um ícone em branco. Também posso optar por abrir o item; nesse caso, ele me fornece:

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

Quando tento excluir, a mesma caixa de diálogo continua aparecendo; escolher correção pede para selecionar um novo item ao qual vincular. Ao fazer isso, é relatado: "Erro desconhecido -1407", que o Google me diz que significa "Esperava uma pasta, mas obteve um arquivo".

Eu posso mover o diretório, mas somente se eu o mantiver na área de trabalho:

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

Existe alguma maneira de excluir isso? Ou pelo menos convencer o sistema de que é um diretório e não um link?

Mithical
fonte
O uso do srm ( developer.apple.com/library/mac/documentation/Darwin/Reference/… ) geralmente funciona para mim para coisas que são difíceis de excluir de outra forma. Você disse que "a varredura do disco para erros", que você fez "verificar disco" ou "verificar as permissões de disco" (experimente as permissões e corrigi-los se você não tiver feito isso)
lupincho
Oi, obrigado pela resposta. Eu verifiquei as permissões do disco, verifiquei o disco e consertei as permissões. Não consigo selecionar "reparar disco", acho que porque não encontrou nenhum erro. O uso de srm no diretório fornece "srm: Impossível para stat media". Também descobri que alguns utilitários de arquivo dizem que o arquivo é um diretório (e não um link). cat e od, por exemplo, antes do relatório, "media: é um diretório".
Você tentou reiniciar o Mac?
Daniel Beck
O que acontece se você entrar no terminal e digitar mount?
Canadian Luke

Respostas:

5

Desculpe, não atualizei depois de resolver isso. Agradeço todas as respostas informadas. Acontece que era uma coisa bem simples. Ao navegar nos painéis de mensagens do Linux, descobri que esse é um tipo de problema conhecido com a montagem via sshfs.

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

Eu experimentei todos os problemas que o OP descreve nesse segmento, além da questão do Finder ocultando o ponto de montagem (talvez ele não consiga estipulá-lo ou algo assim, apenas não o mostra). "... os processos que tentam acessar os compartilhamentos sshfs desconectados entram em suspensão ininterrupta". A solução rápida é parar o sshfs. "Sshfs killal" foi suficiente para mim. Suponho que reiniciar também teria funcionado.


fonte
11
Para referência, eu precisava fazer pkill -9 sshfsseguido porumount -f mountpoint
ctn
2

Acabei de acertar o mesmo problema. Acontece que isso está atualmente listado como um bug no osxfuse. A solução alternativa envolve matar o processo sshfs manualmente e desmontar o diretório remoto. Depois disso, você pode até excluir o ponto de montagem local.

vPraetor
fonte
1

Eu acho que a razão pela qual você não pode selecionar "Reparar Disco" no Utilitário de Disco é porque o problema está no seu disco de inicialização.

Eu recomendaria um dos seguintes:

  • Se você estiver no OS X Lion (10.7), inicialize a partir da partição de recuperação (mantenha o CMD-R ao iniciar a máquina), execute o Utilitário de Disco a partir daí e tente reparar o disco;
  • Se você estiver em uma versão mais antiga do OS X, poderá inicializar a partir de um disco externo ou instalar o AppleJack (freeware);
  • Se tudo mais falhar, eu daria uma chance ao DiskWarrior (não gratuito, mas ainda a ferramenta em que mais confio quando se trata de meus dados).
taglia
fonte