Can't remove a directory in Unix

房东的猫 提交于 2019-12-02 20:37:58

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.

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.

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.

Shireesh Kumar

Syntax :

rm -rf <Directory_Name>

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

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)

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