Exécution d'OpenSuse 12.2.
Soudain, la parition racine semble être pleine (99%) mais je ne peux plus supprimer les fichiers manuellement.
"rm: impossible de supprimer xxx: il ne reste plus d'espace sur l'appareil" bien que 450 Mo soient toujours libres selon df. Le système de fichiers est BTRFS.
J'ai essayé de vérifier le FS en utilisant btrfsck mais cela n'a pas aidé.
Que faire?
Réponses:
Très probablement, vous rencontrez un problème où BTRFS doit allouer un peu de métadonnées avant de pouvoir supprimer le fichier. L'un des points faibles de BTRFS est sa gestion de la condition d'espace insuffisant; l'amélioration du comportement dans ce domaine est l'une des priorités du projet.
Une suggestion sur le wiki btrfs est de remplir le fichier au lieu de le supprimer.
Cela supprimera le contenu du fichier sans modifier l'entrée de répertoire. Une fois que vous avez réussi à sortir du coin dans lequel vous vous trouvez, vous pouvez ensuite supprimer les fichiers comme d'habitude. Si cela vous pose problème, vous souhaiterez peut-être temporairement remonter avec l'
nodatacow
option, qui désactive le comportement de copie sur écriture. Mais ... je ne sais pas avec certitude si cela va aider ou non.En général, cependant: ne lancez pas un système de fichiers BTRFS à sec. C'est toujours un logiciel de pré-production, et les boîtiers d'angle sont un peu rugueux.
la source
J'ai rencontré le même message d'erreur, mais dans mon cas, le système de fichiers n'a pas été signalé comme complet:
Mais demander au BTRFS a révélé qu'il était en effet plein:
Même l'écrasement des fichiers (comme l'a suggéré tylerl) était impossible. Ma solution a été trouvée à http://marc.merlins.org/perso/btrfs/post_2014-05-04_Fixing-Btrfs-Filesystem-Full-Problems.html qui conseille d'exécuter un rééquilibrage manuel du système de fichiers à l'aide
btrfs balance start -dusage=55 /path/to/filesystem
.la source
Pour moi, en utilisant ZFS, j'ai trouvé que la suppression d'autres fichiers libérait suffisamment d'espace sur la partition ZFS, puis j'ai pu supprimer les fichiers en question.
la source
Dans mon cas, avec un système de fichiers ZFS sous Linux, je ne pouvais même pas tronquer le fichier. Détruire d'anciens instantanés a fait l'affaire (le cas échéant).
zfs destroy /path/of/snapshot
la source