Le problème
Certains annuaires d'utilisateurs ne peuvent pas être supprimés. Par exemple :
/root/.cache/doc/ directory /root/.cache/doc/by-app directory
Si nous essayons de supprimer le répertoire, nous obtenons l'erreur ci-dessous :
# rm -rf /root/.cache/doc/ rm: cannot remove 'doc/by-app': Function not implemented
La solution
Les répertoires sont les points de montage pour le périphérique /dev/fuse.
# mount --mount (ext, ocfs2, nfs, gfs, fuse, cifs, btrfs, xfs) /dev/fuse on /root/.cache/doc type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0)
# df /dev/fuse 0 0 0 - /root/.cache/doc
Nous pouvons voir que le processus utilisateur suivant xdg-docum utilise /root/.cache/doc .
# lsof -b M -n -l -c|grep -i fuse xdg-docum 2222 0 mem REG 252,0 259336 67222590 /usr/lib64/libfuse.so.2.9.4 xdg-docum 2222 0 7u CHR 10,229 0t0 24701 /dev/fuse
# cat ps|grep -i xdg-docum root 2222 0.0 0.0 590816 4860 ? Sl Jan1 0:00 /usr/libexec/xdg-document-portal
Conclusion
Le montage depuis /dev/fuse sur /root/.cache/doc est géré par le processus utilisateur /usr/libexec/xdg-document-portal. Les utilisateurs peuvent avoir besoin d'arrêter gracieusement ce processus, puis de démonter le /root/.cache/doc s'ils veulent supprimer les répertoires.