Il y a un fichier sous ma région d'origine que je ne peux pas supprimer. Quand je fais un ls -al
sur le répertoire, les autorisations sont ?---------
et il y a un? pour les colonnes utilisateur, groupe, taille et date. Lorsque je tente de le supprimer, j'obtiens l'erreur suivante de la part de rm:rm: cannot remove 'file': Invalid argument
Des idées sur une méthode pour supprimer un fichier aussi étrange?
ls -l
sur le fichier? Quel est votre système de fichiers?ls -l
la question, je devaisa
aussi l' utiliser parce qu'il est caché. Le système de fichiers estnfs
(étonnamment). Si j'ai accès au serveur sur lequel il est monté, je vais essayer de le supprimer ici.ls
voir s'il y avait des caractères étranges ou des problèmes d'encodage avec le nom du fichier (ce qui n'est pas dans votre question). J'ai parfois vu des choses étranges comme celle-ci lors de l'utilisation de noms de fichiers en grec sur un système de fichiers non encodé en UTF8. Dans tous les cas, s’il s’agit d’un partage nfs, il peut s’agir d’une corruption du processus de partage. Allez sur le serveur ou remontez-le, cela pourrait aider.Réponses:
Si le fichier est sur NFS, vous devrez vous connecter au serveur qui sert le système de fichiers (le fichier doit être local sur le serveur), vous pourrez alors l'exécuter.
lsof | grep -i nom de fichier
Il devrait lister tous les processus utilisant le fichier, vous pouvez alors fermer le programme (si quelqu'un sur le réseau a ouvert le fichier, je pense qu'un processus nfsd sera répertorié contre le fichier). Une fois que tous les processus sont fermés, vous devriez pouvoir supprimer le fichier si nécessaire, que ce soit local ou distant. Si cela ne fonctionne pas, vous devriez pouvoir rm -rf depuis le serveur pour forcer sa suppression.
la source
lsof filename