我的主目录中有一个目录,但我无法以任何方式删除它。
使用 rm -rf JsZ-r6K.50/ 会导致控制台崩溃。我也尝试使用 sudo rm,但结果是一样的。
drwxr-xr-x 3 volkan volkan 4096 Nov 5 03:19 .installjammerinfo/
drwxrwxr-x 4 volkan volkan 4096 Aug 6 15:28 .java/
drwxr-xr-x 2 volkan volkan 86122496 Nov 8 22:25 JsZ-r6K.50/
drwx------ 5 volkan volkan 4096 Nov 8 02:58 .kde/
我怎样才能删除该目录?
编辑:
volkan@ubuntu:~$ lsattr -d JsZ*
----------I--e-- JsZ-r6K.50
针对 OmPs 进行编辑:
我把文件移到了 /var/tmp/newname,但也无法从那里删除它。以下命令也失败了,它们冻结了控制台。
仅lsof
命令给出了以下内容:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 3935 volkan cwd DIR 8,6 86122496 914129 new
rm 4177 volkan 3r DIR 8,6 86122496 914129 new
rm 4177 volkan 4r DIR 8,6 86122496 914129 new
答案1
警告,以下内容非常危险,请先备份您的数据:
您可能有一个脚本在该文件夹中运行...(您的 lsof 显示一个 bash 命令)
确保离开该文件夹并具有管理权限(sudo 或 root)。
终止所有可能访问该文件夹的进程:
kill -9 `lsof -t /MyFolder`
然后你就可以删除它了:
rm -rf /MyFolder
MyFolder 是您想要删除的文件夹。
如果不起作用,请向我们展示 mount 命令的输出
此致。
答案2
这真的很奇怪 --- 似乎是一个损坏的条目(链接数非常非常可疑)。我会做的是首先,备份然后尝试在下次重启时强制检查磁盘。
请注意,如果您怀疑这可能是磁盘损坏,那么备份分区中的所有数据非常重要。
要在下次重启时强制检查文件系统,首先要识别设备;从目录中,df .
会显示如下内容:
(0)samsung-romano:~% df .
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda6 503315720 140840260 336901780 30% /home
因此设备是 /dev/sda6。现在在下次重启时强制检查。有多种方法可以做到这一点,我通常使用的方法是强制在设备上使用较高的安装计数,例如
sudo tune2fs -c 100 /dev/sda6
sudo tune2fs -C 100 /dev/sda6
第一个命令表示每挂载 100 次检查一次设备上的文件系统,第二个命令将挂载计数设置为 100,因此下次启动时将检查该文件系统。
最有可能的情况是,检查将检测到它并将其删除/移动到lost+found
文件系统根目录中(在我的情况下是/home/lost+found/
)。从那里通常可以将其删除。
答案3
我建议尝试将其移动到其他位置。
mv /path/to/filename /var/tmp/newname
如果这个有效的话我想你就大功告成了,可以把它从那里移除了。
也可以尝试做一个
file /path/to/filename
这应该会告诉你它是什么类型的文件。如果没有任何效果。尝试
cp /dev/null /path/to/filename
rm /path/to/filename
这将使文件包含 0 字节,然后您可以轻松地将其删除。
检查为什么删除此文件会导致终端崩溃。
lsof /path/to/filename
这将列出系统上使用此文件的所有进程。您可以停止这些进程并删除,然后再次尝试删除该文件。