Як очистити необроблений список інодійних сиріт?


17

Я спробував змонтувати раніше тільки для читання змонтованої файлової читання для запису :

mount -o remount,rw /mountpoint

На жаль, це не вийшло:

mount: /mountpoint not mounted already, or bad option

dmesg звіти:

[2570543.520449] EXT4-fs (dm-0): Couldn't remount RDWR because of unprocessed orphan inode list.  Please umount/remount instead

А umountтакож не працює:

umount /mountpoint
umount: /mountpoint: device is busy.
    (In some cases useful info about processes that use
     the device is found by lsof(8) or fuser(1))

На жаль, жоден lsofз них fuserне показує жодного процесу доступу до чогось, що знаходиться під точкою монтажу.

Отже - як я можу очистити цей необроблений список сиріт, щоб знову змонтувати файлову систему без перезавантаження комп'ютера?


1
Ви fuser -km /mountpointще пробували ? Але остерігайтеся, прапор -k знищить усі процеси, що мають доступ до цього каталогу.
Річард Келлер

Чи можете ви надати трохи більше розуміння того, з чого складається dm-0?
Таніс

У мене виникає відчуття, що я знаю, що там, але ви можете мені сказати, чи файлова система спочатку була перероблена в rw, перерахована (через атаку помилки чи що завгодно) ro, а тепер ви намагаєтесь знову перейти?
Метью Іфе

@Mlfe: Файлова система раніше була відтворена roза призначенням. Це файлова система в LVM, що містить щоденний знімок резервного копіювання, який буде встановлено rwпід час роботи резервного копіювання та roпісля закінчення резервного копіювання.
bmk

Відповіді:


6

Ви очищаєте список необроблених орік-сиріт, демонтуючи та повторно налаштовуючи файлову систему.

Розширене обговорення в списку розсилки Linux-ext4 має більше інформації про те, що це повідомлення і чому це може здатися. Якщо коротко, то сталося одне з двох: або ви зіткнулися з помилкою в ядрі, або набагато більше шансів, що в одній з попередніх разів ви перепрофілювали файлову систему повторно, коли сталася пошкодження файлової системи. Тому, ймовірно, система вважає, що файлова система все ще використовує, коли її немає.

Якщо минув рік, і ви все ще не перезавантажили машину, просто відмовтесь і заплануйте вікно технічного обслуговування.


Тим часом я запланував вікно обслуговування та перезавантажив машину. Це вирішило проблему (я нічого іншого не очікував ...). Я прийму вашу відповідь. Напевно, ви праві, що сталася якась пошкодження файлової системи - хоча я цього не можу довести.
bmk

25

Якщо ви використовуєте ext2 / ext3 / ext4, ви повинні мати можливість e2fsckочищати осиротілі узори:

e2fsck -f

Для рейзерфів можна використовувати, reiserfsckякі також очистять осиротілі вузли.


Не впевнені, чому це було знято, можливо, це послужило причиною пониження? Запуск e2fsck очищає осиротілі вставки, які ви побачите на виході консолі, clearing orphaned inode XXXXде XXXX є номером інода. Ви можете легко запустити e2fsck без перезавантаження системи. Після запуску e2fsck ви маєте змогу знову скласти розділ.
Річард Келлер

2
Дякую велике .. Я витрачаю години на з'ясування помилки. Виконання 'e2fsck -f / dev / sda1' виправляло для мене осиротілі вузли разом із деякими іншими виправленнями. Я просто сказав "так" всім і працює нормально зараз :)
whitehat

1
Дуже дякую!!. Ваші команди зафіксовано диск для віртуальної версії VirtualBox після невдалої встановлення нової версії VirtualBox: sudo e2fsck -f / dev / sda1
nine9five

2
Ідеально, працював для мене на кореневому розділі. Прийнята відповідь (перезавантаження) працювала не одна. Мені довелося перезавантажуватись після e2fsck, тому здається, що вам все ще потрібне вікно обслуговування.
AdamS

1
Краща відповідь, ніж прийнята. Це прекрасно працювало для моєї VPS. Знайшли багато помилок і виправили це, ніж перезавантажте і все запускається знову. Врятував мій день.
Brain Foo Long

6

e2fsck -f <mount point> не буде працювати.

Спочатку з’ясуйте точки кріплення за допомогою

sudo mount -l

Потім натисніть диск безпосередньо.

Наприклад для мене

sudo e2fsck -f /dev/xvda2

Коли ви переглядаєте проблему в Google і добираєтеся до власного рішення на stackoverflow. Моє життя зараз завершено.
Ганеш Крішнан

1

Я б рекомендував спочатку демонструвати розділ насильно, тобто, використовуючи параметр -f та перевірку роботи файлової системи за допомогою fsck.


1
На жаль, umount -fтеж не вдалося. Повідомлення про помилку таке ж, як і у звичайній umount.
bmk

1

Напевно, ви повинні спробувати лінивий демонтаж, тобто:

umount -l
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.