在lost + found中无法删除的目录


10

如何删除该目录?我确实fsck发现了一些垃圾,我浏览了这些文件,发现没有什么重要的东西。因此,我尝试删除的内容,/lost+found除了这个奇怪的目录以外,一切都消失了。我以为将它放到/tmp(我可以在卷上移动该目录)将在下次重新启动时将其擦除,但是在重新启动和另一个重新启动后它仍然存在fsck

看来问题很严重,而且所有权和权限不足,我已经使您能够自己重现该问题。请享用!

  • 这是安全的,您将能够卸载映像以摆脱计算机上的这些目录
  • 这不是等值图像,这是的结果dd if=/dev/sda1 of=/files/broken.iso

我已使用约1.2GB的映像制作了15MB的存档。您可以使用以下命令下载并使用它:

cd /tmp
wget https://dl.dropboxusercontent.com/u/22701362/broken.tar.xz
tar xvf broken.tar.xz
mkdir test
sudo mount broken.iso test
cd test

将有两个目录(在创建该映像期间,磁盘上似乎有两个这样的目录):

/tmp/test> tree
.
├── 1
│   └── plexus-component-annotations-1.5.5.jar.sha1 [error opening dir]
└── 2
    └── #1589030 [error opening dir]

4 directories, 0 files

删除这两个目录,祝您好运:

/tmp/test> sudo rm -rf *
rm: cannot remove '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
rm: cannot remove '2/#1589030': Operation not permitted

/tmp/test> sudo chown -R root:root *
chown: changing ownership of '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
chown: cannot read directory '2/#1589030': Permission denied

/tmp/test> sudo chmod -R 777 *
chmod: changing permissions of '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
chmod: changing permissions of '2/#1589030': Operation not permitted
chmod: cannot read directory '2/#1589030': Permission denied

如何/tmp在同一个卷上?您可以发布的输出df吗?另外,请发布输出sudo perl -MFile::Path -e 'rmtree("/tmp/foo") || die "$!"'以防万一我们收到更多有用的错误消息。
terdon's

@terdon我已将输出添加到问题中。您认为输出结果是否有所帮助?
悲伤

1
很好,df输出显示我们/ tmp`实际上是一个普通目录,/而不是默认设置的tmpfs。这令人惊讶,但是解释了为什么您可以将目录复制到该目录/tmp以及它在重新启动后仍然可以生存的原因。该perl输出并没有真正增加多少,没有,但它是值得一试。我在这里抓着稻草。
terdon '16

offtopic:在Ubuntu /tmp中,默认情况下是普通目录。这样做是为了防止填充到100%并节省RAM。在启动过程中将对其进行清理。此行为存在很长时间。
悲伤

我会尝试从livecd引导,然后在文件系统中拨动。
Journeyman Geek,2016年

Answers:


8

一种可能是ext文件系统中的不可变标志。参见lsattr命令输出。如果有的话i,可以用chattr -i filename

具有“ i”属性的文件无法修改:无法删除或重命名,无法创建与此文件的链接,也不能向该文件写入数据。只有超级用户或具有CAP_LINUX_IMMUTABLE功能的进程才能设置或清除此属性。

在这种情况下,还有其他事情发生

这似乎有效,

> lsattr 1
-----a---------- 1/plexus-component-annotations-1.5.5.jar.sha1
> rmdir 1/plexus-component-annotations-1.5.5.jar.sha1
rmdir: failed to remove '1/plexus-component-annotations-1.5.5.jar.sha1': Operation not permitted
> chattr -a 1/plexus-component-annotations-1.5.5.jar.sha1
> rmdir 1/plexus-component-annotations-1.5.5.jar.sha1

> lsattr 2
---D-ad--j--T--- 2/#1589030 
> chattr -D -a -d -j -T 2/\#1589030
> rmdir 2/\#1589030

不。你看到我用过sudo吗?如果您下载图像,安装图像并尝试一下,将不胜感激。
悲伤

这不是“ iso映像”,这是由于dd if=/dev/sda1 of=broken.iso
悲伤

是的,您可能是对的,对不起!您是否有机会重现该问题?
悲伤

1
是的,看起来真的很奇怪。
JJ Hakala

我现在觉得自己很愚蠢:(但是您是我今天的英雄,JJ Hakala先生
悲伤

1

尝试成为拥有它的用户将其删除

sudo -u 6666 -g 19312 rm -rf ./#1589030

sudo -u '#6666' -g '#19311' rm -rf \#1589030 rm: cannot remove '#1589030': Permission denied sudo -u '#6666' -g '#19311' chmod 777 \#1589030 chmod: cannot access '#1589030': Permission denied
悲伤

如果不存在,您需要让用户做
Amias '16

使用这些UID和GID创建用户和组无济于事
Grief
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.