Якщо ви намагаєтеся запустити xfs_repair , отримуючи повідомлення про помилку, яке передбачає встановлення файлової системи для відтворення журналу, а після монтажу все ще отримує те саме повідомлення про помилку, можливо, вам доведеться виконати примусовий ремонт (використовуючи -L
прапор xfs_repair
). Цей варіант повинен бути в крайньому випадку.
Наприклад, я буду використовувати випадок, коли в моїй установці CentOS 7 у мене був пошкоджений кореневий розділ. При спробі встановити розділ, я постійно отримував повідомлення про помилку нижче:
mount: mount / dev / mapper / centos-root on / mnt / centos-root не вдалося: структура потребує очищення
На жаль, примусовий ремонт потребує нульового (знищення) журналу перед спробою ремонту. Під час використання цього методу існує можливість отримати більш корумповані дані, ніж спочатку передбачалося; однак, ми можемо використовувати відповідні інструменти xfs, щоб побачити, який збиток може бути заподіяний перед тим, як вносити будь-які постійні зміни.
Використовуючи xfs_metadump та xfs_mdrestore , ви можете створити зображення метаданих ураженого розділу та виконати примусове відновлення зображення, а не самого розділу. Переваги цього - можливість бачити пошкодження, які виникають із примусовим ремонтом, перед тим, як виконати його на перегородці.
Для цього вам знадобиться пристойний USB або зовнішній жорсткий диск. Почніть із встановлення USB-накопичувача - мій USB розташований на /dev/sdb1
, ваш може бути названий інакше.
mkdir -p /mnt/usb
mount /dev/sdb1 /mnt/usb
Після монтажу запустіть, xfs_metadump
щоб створити копію метаданих розділу на USB - знову ж таки ваш впливовий розділ може бути іншим. У цьому випадку у мене був пошкоджений кореневий розділ, розташований за адресою /dev/mapper/centos-root
:
xfs_metadump /dev/mapper/centos-root /mnt/usb/centos-root.metadump
Далі ви захочете відновити метадані до зображення, щоб ми могли виконати ремонт та виміряти пошкодження.
xfs_mdrestore /mnt/usb/centos-root.metadump /mnt/usb/centos-root.img
Я виявив, що в режимі порятунку xfs_mdrestore
недоступний, і замість цього вам потрібно буде перебувати в режимі порятунку живого компакт-диска CentOS.
Нарешті, ми можемо виконати ремонт зображення:
xfs_repair -L /mnt/usb/centos-root.img
Після завершення ремонту та оцінки ваших результатів та можливих пошкоджень, ви можете визначити, чи хочете ви виконати ремонт відносно розділу.
Щоб запустити ремонт відносно розділу, просто запустіть:
xfs_repair -L /dev/mapper/centos-root
Не забудьте перевірити й інші розділи на предмет корупції. Після ремонту перезавантажте систему, і ви зможете успішно завантажитися.
Пам'ятайте, що -L
прапор слід використовувати як крайній захід, коли немає інших можливих варіантів ремонту.
Я виявив, що ці онлайн-статті допомогли: