Can't remove a directory in Unix

只谈情不闲聊 提交于 2019-12-03 07:01:30

问题


I've got a seemingly un-deletable directory in Unix that contains some hidden files with names that start with .panfs. I'm unable to delete it using either of these commands:

rm -R <dir>
rm -Rf <dir>

Does anyone have any suggestions?


回答1:


Try to delete it with root user or use sudo, if you are in trouble

Use rm -rf dir with root account and it will be deleted, since you should be facing a permissions issue.




回答2:


Check with df dir and mount how is your directory mounted and to which file system it belongs to. Notice that if you use NFS, CIFS/SMB, or some other distributed file system, you could have issues... since distributed file systems are caching (both server side and client side) so don't have POSIX semantics. See filesystems(5).

Very probably you are using NFS (then your question should say that, and give much more details, notably mount and export options in /etc/fstab, see fstab(5), version of NFS protocol used, etc...). Then you need to give more details about how it is exactly mounted, if you have processes using that file system (use lsof(8)...), and how authentication works. Quite often, root access does not exactly work thru NFS as you want it to... (intuitively your local root is not a network-wide root).

In some cases, you need to remove files on the NFS server after having unmounted that remote NFS file system on all NFS clients. And details vary with version of NFS protocol used and configuration options.

See also nfsd(7), exports(5), chattr(1) etc and this question on Serverfault, and this Linux NFS overview.




回答3:


Sorry, but voted 20+ approved solution didn't work for me :) but I nailed the sucker.

In my case, under root, rm -rf (directory) leads to an infinite loop, and size of the folder is under a gig. Furthermore, the folder is non-listable that is using the dir command within the folder also leads to infinite loop.

Oh Hell no!!!

Enter recovery mode by holding on to left shift at boot. Provide your root password or press enter if there is none.

cd /

mount -o remount,rw /

rm -f (directory) //Purpose is to fix loop bug

rm -r (directory)

See ya!

All hail Linux Lite.




回答4:


Syntax :

rm -rf <Directory_Name>

It worked for me. It will remove the directory with all its content ...(forcibly)




回答5:


to those who prefers to separate the options for a full mastering of their linux command lines so :

$ rm -r -f your-dir-name/

rm → remove

-r → recursively

-f → force (even protected with chMod permissions)



来源:https://stackoverflow.com/questions/16947559/cant-remove-a-directory-in-unix

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!