Не удаляется, даже от рута по rm -rf, ошибка типа rm: невозможно удалить '/var/lib/pacman/local/_hren/files': Неправильное сообщение


ls -la /root/_hren/
ls: невозможно получить доступ к '/root/_hren/mtree': Неправильное сообщение
ls: невозможно получить доступ к '/root/_hren/files': Неправильное сообщение
итого 8
drwxrwxrwx  2 root root 4096 фев 15 18:03 .
drwxr-x--- 11 root root 4096 фев 17 13:15 ..
-?????????  ? ?    ?       ?            ? files
-?????????  ? ?    ?       ?            ? mtree
# debugfs -R 'imap /root/_hren/mtree' /dev/sda2
debugfs 1.45.5 (07-Jan-2020)
Inode 420626 is part of block group 51
	located at block 1574753, offset 0x0100
# debugfs -R 'imap /root/_hren/files' /dev/sda2
debugfs 1.45.5 (07-Jan-2020)
Inode 420628 is part of block group 51
	located at block 1574753, offset 0x0300
# extundelete --inode 420628 /dev/sda2
NOTICE: Extended attributes are not restored.
WARNING: EXT3_FEATURE_INCOMPAT_RECOVER is set.
The partition should be unmounted to undelete any files without further data loss.
If the partition is not currently mounted, this message indicates
it was improperly unmounted, and you should run fsck before continuing.
If you decide to continue, extundelete may overwrite some of the deleted
files and make recovering those files impossible.  You should unmount the
file system and check it with fsck before using extundelete.
Would you like to continue? (y/n)
y
Loading filesystem metadata ... 158 groups loaded.
Group: 51
extundelete: Inode checksum does not match inode while reading inode.
extundelete: Inode checksum does not match inode while printing inode.
Используя extundelete просто хотел немного задурить систему и посмотреть что выдаст .... плохо что изменил название директории, сейчас вообще все запутано.
И лучше дальше ничего не трогать. Блока inode система не знает и ничего выжать нельзя. Пробуй fsck - но, имхо, ... это 50 на 50. Не получится, будешь жить с этим.
Ошибки не исчезают с опытом - они просто умнеют
wau
Inode 420626 is part of block group 51 located at block 1574753, offset 0x0100
….
Inode 420628 is part of block group 51 located at block 1574753, offset 0x0300
То есть блоки все-таки показал. ... то есть сейчас можно эти блоки вытащить и посмотреть инфу иноде .... давно этим не занимался, а потому сразу не соображу, как это может помочь .. ну и дело это очень и очень муторное ...
Номера inode стали известны и, в принципе можно найти блоки в которых расположен данный файл по номеру inode, типа такого
sudo ext4magic /dev/sda2 -I 420626 -x

Не пойму, то ничего не показывало, а то стал показывать … может тогда покажет вывод и stat file ???
Ошибки не исчезают с опытом - они просто умнеют
ext4magic /dev/sda2 -I 420626 -x
Filesystem in use: /dev/sda2

Error 2133571474 while reading inode 420626
Fatal Error: can not read InodeNr. 420626

Ну очень выборочно показывает :)

У меня таймаут (в этих работах), пойду попилю первую очередь втрой очереди стола https://wau.spb.ru/zhonskij-stol-na-polputi/
wau
Fatal Error: can not read InodeNr. 420626
Как и предполагал выше, система не может прочитать inode. Из того что удалось получить
wau
Inode 420626 is part of block group 51
located at block 1574753, offset 0x0100
можно получить сам блок inode (256 байт), зная его расположение на диске
от начала раздела sda2 -  1574753*4096 + 256
Но отсюда можно только узнать номера блоков, в которых размещается файл (при условии, что эти блоки будут там указаны) … ну и вытащить сам этот файл … но им же не заменишь имеющийся? - система вряди ли позволит, и выходит, что это нам ничего не дает в части исправления ошибки.
Плюс к этому, не нравится еще и вывод
wau
Inode checksum does not match inode while printing inode

Возможно, как то и можно ручками внести все исправления в систему, но я таких случаев не слышал (можно, но не все) …. это нужно четко знать, что где и на что менять, но чтобы это все проделать нужно досканально знать стуктуру журналирования ext4 - я этого не знаю, мой интерес и познания были направлены в другое русло - вытащить с диска какой то файл или сделать определенные изменения, например, даты создания/изменения файла.

Остается одна надежда, что это может сделать fsck

PS - пришла еще одна идейка, раз нам стал известен номер inode, то можно попробовать удалить эти файлы по номеру inode, типа
find -inum <номер_inode> -delete …  или ...  find -inum <номер_inode> -exec rm -rf {} +
Надежды мало, но попытаться все равно нужно.
Ошибки не исчезают с опытом - они просто умнеют
не прокатило -

find -inum 420626 -exec rm -rf {} +
rm: невозможно удалить './_hren/mtree': Неправильное сообщение
wau
не прокатило -
Значит не судьба ....... на этом можно и заканчивать. Дальше решать тебе - пробовать fsck или ничего не делать ...
Ошибки не исчезают с опытом - они просто умнеют
В части ext4magic - хоть ее и привел для другой цели, но, кстати, у этой утилиты имеется режим эксперта и, как пишут, можно использовать ее для определенного восстановления испорченных файлов - но сам я этого никогда не делал.
Если есть желание, попробуй, но использовать нужно вроде бы при отмонтированном разделе. Статей на эту тему много плюс man.
Ошибки не исчезают с опытом - они просто умнеют
vasek
В части ext4magic
Мне он очень помог недавно восстанови в файл. Случайно удалил файл над которым пол дня страдал.
Lupus pilum mutat, non mentem.
jim945
Случайно удалил файл над которым пол дня страдал.
Удаленные он восстанавливает нормально и можно даже узнать процент сохранения файла ... и плюс можно получить дополнительную информацию для ручного восствновления. Но есть интересна фраза в man для опции эксперта
This makes it possible to open  and  recover  front  corrupted file systems.
Я понимаю так, что можно как то лечить и файловую систему - возможно не правильно понимаю и, как писал, никогда это не использовал. Но интересно.
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.