Tuve este problema con una carpeta en un sistema de archivos btrfs. Verificar los puntos de montaje y lsof son las cosas normales a buscar. En mi caso, fue la corrupción causada por un error antiguo, ya que se corrigió:
Las cosas normales para verificar:
- lsof + D <ruta> - Esta voluntad l i s t todo o pluma f iles. No puede eliminar una carpeta que contenga archivos abiertos, aunque normalmente también daría un error ligeramente diferente: "Dispositivo o recurso ocupado". Tenga en cuenta que si omite "+ D <path>", lsof mostrará una lista de todas las carpetas en todos los sistemas de archivos, lo que perderá tiempo. ;)
- montar : Esto le mostrará los sistemas de archivos actualmente montados. No puede eliminar un punto de montaje montado activamente o sus carpetas principales.
- btrfs sub list <path> : similar a un punto de montaje, no puede eliminar un subvolumen de btrfs excepto mediante el comando específico de btrfs : btrfs subvolume delete <path> .
Solución alternativa de corrupción
En el caso de corrupción donde no se puede solucionar fácilmente, la solución básica es hacer una copia de seguridad, formatear el sistema de archivos y luego restaurarlo (dejando fuera los datos incorrectos). Dependiendo de la cantidad de datos que tenga en el sistema de archivos, esto puede ser una tarea difícil. : - /
En mi caso, la carpeta del problema estaba dentro de un subvolumen, así que pude hacer lo anterior pero eliminando solo el subvolumen en lugar de todo el sistema de archivos. Realicé una copia de seguridad de mis datos y eliminé el subvolumen: btrfs sub del <subvolume-path> . Luego pude restaurar en un nuevo subvolumen, dejando fuera la carpeta del problema.
La corrupción de i_size
Se descubrió que la causa en mi caso era la corrupción de i_size , donde no era cero. Btrfs usa i_size para saber si la carpeta está vacía o no. Para verificar esto, ejecute:
stat -c %s <foldername>
El i_size de una carpeta vacía en btrfs debe ser cero. En ext es típicamente 4k.
Enlaces relacionados:
https://btrfs.wiki.kernel.org/index.php/Problem_FAQ#I_cannot_delete_an_empty_directory
rm -r
terminal? ¿Has probado con las respuestas de esta publicación ?