Восстановление файловой системы Linux после сбоя
Дата добавления: 06 сентября 2010
Сбой файловой системы в linux случается достаточно редко, но лично у меня пару раз такое происходило из-за экстренного выключения ноутбука, вместо традиционного завершения сеанса операционной системы. И, при следующем включении, дистрибутив просто не загружался и выводил ошибку в терминале о неисправности используемого сектора жесткого диска. Если вам приходилось видеть данную ошибку, то, скорее всего, проблема в коренном (чаще всего он и есть поврежденный) секторе файловой системы.
Для выполнения восстановления нам необходим любой современный LiveCD дистрибутив.
Загружаемся в LiveCD и заходим в терминал от имени суперпользователя.
Для восстановление файловой системы в linux используется консольная утилита под названием fsck. Её вызов очень прост даже для новичков в мире linux.
Последовательность действий:
1. Загружаемся с LiveCD дистрибутива linux, содержащего в себе драйвер для работы с вашей файловой системой (например ext4) и собственно утилиту fsck.
2. Заходим в терминал LiveCD под именем суперпользователя. Например, в той-же Ubuntu нужно просто набрать в основной консоли sudo su. В Debian есть отдельный пункт меню для вызова root консоли. В Gentoo вам вообще ничего не придется делать — после загрузки вы уже под именем root.
3. Если вы не помните путь до поврежденной файловой системы (/dev/sdx), то смотрите на вывод команды fdisk -l и ориентируясь на размер или другие параметры, запоминаете путь до файловой системы (например /dev/sda1).
4. Теперь осталось запустить утилиту восстановления файловой системы командой fsck -fy /dev/sdx , где sdx — имя раздела (например sda1). Опция -f (force) используется для принудительной выполнении проверки. Опция -y (yes) позволяет программе автоматически отвечать «да» на все вопросы в ходе работы.
Также стоит запомнить опцию -t которая задаёт тип файловой системы.
Вот так-бы выглядел запуск проверки диска у меня на ноутбуке:
Автор: vasilisc, дата: 18 сентября 2014 , время: 13:40:29 (MSK).
В Ubuntu через определенное количество монтирований жестких дисков (читай «перезагрузок компьютера») принудительно включается fsck для проверки жестких дисков. Многие знают, что с помощью tune2fs можно управлять интервалами проверок fsck.
Но иногда нужно проверить диск «здесь и сейчас». Если запустить fsck с указанием ваших дисков, то скорее всего они примонтированы и fsck предупредит, что это чревато для вас. Как быть? Отмонтировать, чтобы проверить? А как быть с корнем?
Linux mint восстановление системы с live cd
ВОССТАНОВЛЕНИЕ С ПОМОЩЬЮ LiveCD/USB
Запустите систему с LiveCD/USB и откройте терминал . Для этого
можно нажать Alt+F2 и ввести команду:
Далее необходимо узнать Вашу таблицу разделов. Используйте
На экран должна быть выведена примерно такая таблица:
/dev/sda1 29 8369 66999082+ 83 Linux
/dev/sda2 * 8370 13995 45190845 7 HPFS/NTFS
/dev/sda3 13996 14593 4803435 5 Extended
Из таблицы видим, что Linux стоит (в нашем случае) на разделе
Теперь подключим этот раздел в /mnt следующей командой:
В случае, если нужно только восстановить MBR диска (например,
после переустановки Windows), то этого достаточно.
Если нужно обновить и меню grub (например, после установки
Windows), то нужно сделать:
ВОССТАНОВЛЕНИЕ ИСПОЛЬЗУЯ CHROOT
Запустите систему с LiveCD/USB и откройте терминал . Для этого
можно нажать Alt+F2 и ввести команду:
Далее необходимо узнать Вашу таблицу разделов. Используйте
На экран должна быть выведена примерно такая таблица:
/dev/sda1 29 8369 66999082+ 83 Linux
/dev/sda2 * 8370 13995 45190845 7 HPFS/NTFS
/dev/sda3 13996 14593 4803435 5 Extended
Теперь нужно примонтировать Ваш Linux раздел (здесь это sda1) и
еще несколько важных директорий:
Если раздел /boot находится отдельно, то Вам необходимо
примонтировать его в /mnt/boot !
Теперь перейдем в окружающую среду chroot !
ВОССТАНОВЛЕНИЕ В RESCUE MODE
При отсутствии загрузочного диска, можно восстановить Grub из его
консоли. Восстановление происходит следующим образом: сначала
нужно подгрузить все модули, чтобы стала доступна вся
функциональность Grub, а затем уже запуститься с нужного раздела.
Как известно, Grub состоит из двух частей. Первая часть записана в MBR
диска. Она содержит базовую функциональность, то есть в ней есть
консоль в rescue mode и ничего больше. Вначале нужно определить, на
каком разделе находится вторая часть груба (она лежит в каталоге
/boot/grub), подгрузить недостающие модули. И только потом можно
будет дать команду запуска с нужного раздела. В rescue mode доступно
всего четыре команды:
В ответ она выведет, например, следующее:
(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)
Иногда Grub может неправильно опеределить, какие файловые системы
находятся на разделах дисков. В данном случае определяет их как
msdos. Нам нужно постараться угадать, какие диски мы видим. В
данном случае видно два диска. Диск с индексом 0 содержит три
раздела, диск с индексом 1 содержит два раздела. Зная структуру своих
дисков несложно определить нужный диск.
Grub называет разделы в обратном порядке . И становится непонятно,
что имеется в виду под (hd0,msdos3) — первый раздел или третий? Тут
можно выкрутиться, использовав синтаксис (hd0,1). Нужно помнить, что
в Grub счет дисков начинается с 0, а счет разделов — с 1. Предположим,
что Linux установлен на первый диск в первый раздел, то есть (hd0,1).
Этими командами мы указываем использовать диск (hd0,1) для
дальнейших команд. После чего нужно проверить, действительно ли на
этом разделе есть то, что нам нужно. Даем команду:
если в ответ получаем список всех файлов в этой директории, то диск и
раздел выбраны правильно. Подгружаем модули:
Проверьте правильность написания первой команды для файловых
систем ext3 и ext4
После чего Grub перейдёт в полнофункциональный режим. Он
автоматически найдет все операционки, которые можно подгружать, и
покажет своё Grub-меню.
Дальнейшее восстановление сводится к тому, чтобы загрузить нужный
нам Linux, и в нем от рута дать команду:
Где sdX, диск, на который нужно установить Grub.
Информация любезно предоставлена пользователем avkP3
Восстановление GRUB
Восстановление GRUB
Восстановление GRUB
Восстановление GRUB
Восстановление GRUB
Восстановление GRUB
Восстановление GRUB
Восстановление GRUB
Восстановление GRUB
ikrost , в случае запуска с LiveCD — да, будет жить в оперативке.
На рабочую систему ставиь не приходилось за ненадобностью, но как любая другая прога — расположится в /bin , /var , /usr , и т.д
можно глянуть внутрь деб-пакета — там все видно будет
Восстановление GRUB
Про статью не скажу (читал её «по диагонали»).
Для диска с разметкой MBR можно так (один из вариантов)
sudo mount /dev/sdaN /mnt — смонтировать корневую директорию
sudo grub-install —root-directory=/mnt /dev/sdХ — где Х, нужный жесткий диск
Для диска с разметкой GPT ( установка в UEFI режиме )
Восстановление GRUB
Восстановление GRUB
Dja , Попробовал все три варианта — ни один не помог.
То ли у меня случай был такой запущенный, то ли пакеты и команды для их использования обновились — не знаю.
Первый способ, как я понял лайтовый для простых случаев. Поэтому на него не особо-то и рассчитывал.
Во втором способе, на просторах интернета предлагают другие команды и их больше на три штуки. Впрочем, не сработал ни тот вариант ни этот.
В третьем способе затык на insmod ext2. не находит (хотя /boot отформатирован именно в ext2) и все дальше прохода нет.
Boot Repair упоминаемый в обсуждении продвинулся дальше всех — загрузил окно с выбором пользователя, но не принял пароля (ни пользователя, ни рута).
В результате, запустил установку с livecd с форматированием /swap, /boot и / , а /home просто подмонтировал без форматирования (хорошо, что при начальной разметке во времена оно я эти разделы выделил). Правда, пользователя старого оставлять не рискнул. Создал нового и уже под ним таскал/спасал документы из предыдущего пользователя. Вот уж не знаю насколько правильный сей способ с точки зрения опытных линуксоидов, но мне помог только такой вариант. Может еще кому поможет.