无法删除 Unix 中的目录

问题描述 投票:0回答:8

我在 Unix 中有一个看似不可删除的目录,其中包含一些名称以

.panfs
开头的隐藏文件。我无法使用以下命令删除它:

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

有人有什么建议吗?

linux unix directory rm
8个回答
66
投票

如果遇到麻烦,请尝试使用 root 用户删除它,或者使用 sudo

rm -rf dir
与 root 帐户一起使用,它将被删除,因为您应该面临权限问题。


5
投票

对于那些喜欢分离选项以完全掌握 Linux 命令行的人

rm -r -f directory_name

rm→删除

-r → 递归

-f → 强制(包括 chmod 权限)


4
投票

使用

df
dir
mount
检查您的目录是如何安装的以及它属于哪个 文件系统。请注意,如果您使用NFSCIFS/SMB或其他一些分布式文件系统,您可能会遇到问题...因为分布式文件系统正在缓存(服务器端和客户端),所以没有POSIX 语义。请参阅 文件系统(5)

很可能您正在使用 NFS(那么您的问题应该这么说,并提供更多详细信息,特别是

/etc/fstab
中的挂载和导出选项,请参阅 fstab(5),使用的 NFS 协议版本等...) 。然后,您需要提供有关如何准确安装它、是否有使用该文件系统的进程(使用lsof(8)...)以及身份验证如何工作的更多详细信息。很多时候,root 访问并不完全按照您希望的那样通过 NFS 进行...(直观上您的本地 root 不是网络范围的 root)。

在某些情况下,您需要在所有 NFS 客户端上卸载远程 NFS 文件系统后删除 NFS 服务器上的文件。详细信息因所使用的 NFS 协议版本和配置选项而异。 另请参阅

nfsd(7)

exports(5)chattr(1) 等以及关于 Serverfault 的这个问题,以及这个 Linux NFS 概述。


3
投票
抱歉,但投票超过 20 个批准的解决方案对我来说不起作用:)但我成功了。

在我的例子中,在root下,rm -rf(目录)会导致无限循环,并且文件夹的大小在gig之下。此外,该文件夹是不可列出的,在文件夹内使用 dir 命令也会导致无限循环。

天啊不!!!

启动时按住左移进入恢复模式。 提供您的 root 密码,如果没有密码,请按 Enter。

cd / mount -o remount,rw / rm -f (directory) // Purpose is to fix loop bug rm -r (directory)

再见!

Linux Lite 万岁。


2
投票

rm -rf <Directory_Name>

这对我有用。
它将删除目录及其所有内容...(强制)


1
投票

rm -rf sub rm -rf sub/sub/sub/sub/sub/sub/sub

所有 rm 命令均失败:
无法删除“sub/sub/sub/sub”:目录不为空

我尝试重命名一些文件夹以缩短路径,但这没有帮助。 但在移动其中一个子文件夹后,我能够删除所有子文件夹。

mv sub/sub deleteme rm -rf deleteme rm -rf sub



1
投票
就我而言,我无法删除文件夹,如果我尝试重命名它,则会创建一个新副本。

长话短说,我意识到有一个 Linux 服务指向该文件夹,所以对我有用的是:

更改此服务正在使用的文件夹
  1. 重新启动我的 Linux 服务器
  2. sudo reboot
删除文件夹及其内容
  1. rm -rf dir
您可能不知道正在使用该文件夹的进程,因此您可以找到并终止该进程,或者只是重新启动服务器,就像我作为快速解决方案所做的那样。


0
投票

此外,命令 rm -rf 也有效,因为 -r 标志用于递归删除目录及其内容,而 -f 标志则强制删除而不要求确认。

记住使用-rf组合时要小心,因为它在删除之前不提供任何确认。

© www.soinside.com 2019 - 2024. All rights reserved.