O que faz com que um diretório tenha permissões de d ?????????, um proprietário de?, um grupo de? e um tempo de ?, mas um nome?

0

Eu uso o Windows Subsystem para Linux e Bash no Ubuntu no Windows para suportar linguagens de programação que de outra forma não teriam um bom suporte no Windows. Eu atendi o conselho para não criar / modificar arquivos do Linux com as ferramentas do Windows . Eu mantenho todos os arquivos que eu quero editar em meus editores / IDEs no Windows em /mnt/c/Users/{username}/... por esse conselho. Até agora, as coisas geralmente foram boas.

No entanto, eu queria remover um diretório que estava usando para o rascunho. Eu era incapaz de excluí-lo do shell Ubuntu Bash ou a interface do Windows Explorer. Primeiro tentei rm -rf ou sudo rm -rf do Bash e não obtive nenhuma saída de erro, mas o diretório persistiu. Eu tentei rm -rf ou sudo rm -rf o diretório pai: Directory not empty . Eu tentei excluir através do Windows e tenho um diálogo que diz que eu preciso fornecer permissão de administrador. Eu faço, então eu recebo outro diálogo que diz que eu preciso de permissão para executar esta ação. Tentei alterar as permissões através do Windows Explorer, bem como usando chown e chmod e repetindo as etapas de exclusão sem sucesso imediato.

Após passar pelo processo de exclusão uma vez no Windows e no Linux, tentando alterar permissões / grupos através do Windows e do Linux e tentando excluir novamente, o diretório persistiu. No entanto, ao tentar responder aos comentários, o arquivo acabou sendo excluído.

O que causa esse aparente estado inválido e como posso evitá-lo no futuro?

    
por Thomas Owens 28.03.2017 / 02:45

1 resposta

0

o que você descreve é o resultado de um arquivo corrompido. A causa mais provável é uma falha durante a gravação do arquivo. Em uma instalação típica do Linux, você precisa desmontar o sistema de arquivos e executar o fsck. Por exemplo:

umount /dev/sda5
fsck.ext4 /dev/sda5

Se é um sistema de arquivos xfs,

xfs_repair /dev/sda5

Como você está executando o ubuntu / bash no Windows, pode ser necessário executar o chkdsk no Windows para limpar o erro. Se o erro desapareceu sem intervenção, talvez o Windows tenha detectado o problema e consertado durante uma inicialização.

    
por James 28.03.2017 / 03:35