Не удаляемый каталог в lost+found

Как я могу удалить этот каталог? я сделал fsck и это нашло некоторый мусор, я просмотрел эти файлы, и там не было чего-то важного. Поэтому я попытался удалить содержимое /lost+found и все прошло, кроме этого странного каталога. Я думал, что положить его на /tmp (Я могу переместить этот каталог через том) будет стереть его при следующей перезагрузке, но он все еще там после перезагрузки и другой fsck,

Кажется, что проблема в низком уровне, а игры с правами доступа и правами недостаточно, я позволил вам воспроизвести проблему самостоятельно. Наслаждайтесь!

  • Это безопасно, вы сможете размонтировать образ, чтобы избавиться от этих каталогов на вашем компьютере;
  • Это не iso-изображение, это результат dd if=/dev/sda1 of=/files/broken.iso;

Я сделал 15 МБ архив с изображением ~1,2 ГБ. Вы можете скачать и использовать его с помощью следующих команд:

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

2 ответа

Решение

Одна возможность - неизменный флаг в случае файловой системы 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 -u 6666 -g 19312 rm -rf ./#1589030
Другие вопросы по тегам