Eu tive esse problema com uma pasta em um sistema de arquivos btrfs. Verificar pontos de montagem e lsof são as coisas normais a serem procuradas. No meu caso, foi a corrupção causada por um bug antigo, desde que corrigido:
As coisas normais para verificar:
- lsof + D <caminho> - Esta vontade l i s t tudo o pen f iles. Você não pode excluir uma pasta que contém arquivos abertos, embora isso normalmente também geraria um erro ligeiramente diferente: "Dispositivo ou recurso ocupado". Observe que, se você deixar de fora o "+ D <caminho>", o lsof mostrará uma lista para todas as pastas em todos os sistemas de arquivos - o que perderá tempo. ;)
- mount : Isso mostrará os sistemas de arquivos atualmente montados. Você não pode excluir um ponto de montagem montado ativamente ou suas pastas pai.
- sub-lista btrfs <caminho> : Semelhante a um ponto de montagem, você não pode excluir um subvolume btrfs, exceto usando o comando específico do btrfs : subvolume btrfs delete <caminho> .
Solução alternativa de corrupção
No caso de corrupção em que não pode ser facilmente corrigida, a solução básica é fazer backup, formatar o sistema de arquivos e restaurar (deixando de fora os dados incorretos). Dependendo da quantidade de dados que você possui no sistema de arquivos, isso pode ser uma tarefa árdua. : - /
No meu caso, a pasta do problema estava dentro de um subvolume, pelo que pude fazer isso acima, excluindo apenas o subvolume em vez de todo o sistema de arquivos. Fiz uma cópia de segurança dos meus dados e apaguei o subvolume: btrfs sub del <subvolume-path> . Pude restaurar um novo subvolume, deixando de fora a pasta do problema.
Corrupção de i_size
A causa no meu caso foi encontrada como corrupção de i_size , onde era diferente de zero. O Btrfs usa o i_size para informar se a pasta está vazia ou não. Para verificar isso, execute:
stat -c %s <foldername>
O tamanho i de uma pasta vazia no btrfs deve ser zero. Em ext, é tipicamente 4k.
Links Relacionados:
https://btrfs.wiki.kernel.org/index.php/Problem_FAQ#I_cannot_delete_an_empty_directory
rm -r
do terminal? Você já tentou com as respostas deste post ?