Rescue/FAQ: различия между версиями

Материал из ALT Linux Wiki
м (→‎Q5: *-forensic)
 
(не показано 18 промежуточных версий этого же участника)
Строка 1: Строка 1:
__NOTOC__
__NOTOC__
Краткое руководство по восстановлению работоспособности системы Альт в случае '''ошибок загрузки или файловой системы''' с помощью [[Rescue|ALT Linux Rescue]].


== Q1 ==
== Что нужно сделать для восстановления работоспособности системы? ==
# [[#Как загрузиться в режиме LiveCD?|Загрузиться в режиме '''LiveCD''']];
# [[#Какой пароль у суперпользователя root в режиме LiveCD?|Войти в консоль суперпользователем '''root''']];
# [[#Как понять, где мои диски?|Изучить список '''дисков и разделов''', понять, на каких разделах располагается целевая система]];
# [[#Как проверить файловые системы на наличие ошибок?|Проверить '''файловые системы''' на наличие ошибок]];
# [[#Как смонтировать файловые системы для восстановления данных?|'''Смонтировать''' целевые файловые системы во временный каталог]];
# [[#Как поменять корневой каталог (chroot)?|Поменять корневой каталог ('''chroot''')]];
# [[#Как пересоздать образ initramfs?|Пересоздать '''образ initramfs''' (если необходимо)]];
# [[#Как исправить загрузку и переустановить загрузчик GRUB?|Исправить/переустановить загрузчик '''GRUB''']];
# [[#Как завершить работу в режиме LiveCD?|Выйти из '''chroot''', '''размонтировать''' файловые системы и '''перезагрузиться''']].


Q: Что такое ALT Linux Rescue?
== Где взять LiveCD для восстановления системы? ==
'''Загрузиться в режиме LiveCD''' из меню дистрибутива Альт, либо использовать спасательный дистрибутив '''[[Rescue|ALT Linux Rescue]]'''.


A: См. [[Rescue|страничку проекта]].
== Как загрузиться в режиме LiveCD? ==
При включении компьютера '''поменять порядок загрузки''' дисков так, чтобы первой происходила загрузка с установочного диска Альт. Затем в меню выбрать пункт:
LiveCD (жесткий диск не нужен)


== Q2 ==
== Что такое ALT Linux Rescue? ==
'''ALT Linux Rescue''' — спасательный LiveCD-дистрибутив небольшого размера. Для начала работы в загрузочном меню нужно выбрать пункт:
Rescue LiveCD
См. [[Rescue]].


Q: Как понять, где мои диски?
== Какой пароль у суперпользователя root в режиме LiveCD? ==
В режиме LiveCD у суперпользователя ''root'' '''пустой пароль'''.


A: Проверьте вывод следующих команд:
== Как понять, где мои диски? ==
  fdisk -l | grep ^Disk
Проверьте вывод команды:
lsblk -f
Команда выведет '''список блочных устройств (дисков) и разделов''' с указанием имени, файловой системы и точки монтирования. Также можно использовать команды:
  fdisk -l
  cat /proc/partitions
  cat /proc/partitions
  blkid
  blkid


== Q3 ==
== Как проверить файловые системы на наличие ошибок? ==
В режиме LiveCD, в зависимости от используемой файловой системы, выполните команду:
fsck -vf /dev/sda2
где опция '''-v''' включает подробный текстовый вывод, а опция '''-f''' запускает проверку даже в том случае, если файловая система помечена как ''чистая''. Вместо {{path|/dev/sda2}} необходимо указать имя нужного раздела на диске. Для файловой системы '''btrfs''' выполните команду:
btrfs check --repair /dev/sda2
См. [[Проверка_диска_на_ошибки#Проверка_диска_через_консоль_в_ALT_Rescue|Проверка_диска_на_ошибки]].


Q: Как смонтировать файловые системы для восстановления данных?
== Как смонтировать файловые системы для восстановления данных? ==
Если на жестком диске установлен Linux ('''целевая система'''), поможет команда:
mount-system
При этом происходит поиск и монтирование корневых файловых систем во временный каталог вида {{path|/mnt/system1}} (согласно '''/etc/fstab''' целевой системы).
Также можно выполнить монтирование вручную. См. [[Chroot]]


A: Если там Linux, поможет команда {{cmd|mount-system}}, которая автоматически ищет {{path|/etc/fstab}} на корневых Linux-разделах и пытается смонтировать соответствующие ФС группами в каталогах вида {{path|/mnt/systemN}}.
После завершения работ по восстановлению размонтировать файловые системы командой:
unmount-system


A: Воспользоваться командой {{cmd|mount}} вручную.
== Как поменять корневой каталог (chroot)? ==
Сменить корневой каталог нужно для выполнения операций над '''целевой системой''' Linux с помощью команды:
chroot /mnt/system1
Где {{path|/mnt/system1}} - точка монтирования корневых файловых систем из предыдущего шага. Теперь мы имеем работающую систему LiveCD, с корневым каталогом целевой системы. После завершения работы необходимо выйти из режима '''chroot''' командой:
exit
См. [[Chroot]]


== Q4 ==
== Как пересоздать образ initramfs? ==
В случае получения ошибки загрузки '''rdshell-locked: the waiting time expired!''' и других, может понадобиться '''пересоздать initrd''' ('''initial ramdisk''' - компактная корневая файловая система для начальной загрузки). После смены корневого каталога на предыдущем шаге необходимо узнать '''версию ядра целевой системы''':
ls -d /lib/modules/*
В результате будет получен список каталогов, содержащих модули установленных ядер с указанием версий, например:
/lib/modules/6.1.100-un-def-alt1  /lib/modules/6.1.99-un-def-alt1  /lib/modules/nvidia
Где {{path|6.1.100-un-def-alt1}} и есть искомая версия '''целевого ядра''' (в данном примере последняя актуальная, загружаемая по умолчанию). Затем необходимо выполнить '''сборку initrd''' с указанием этой версии:
make-initrd -k 6.1.100-un-def-alt1
(В Вашем случае номер версии может отличаться).
См. [[Chroot#Переход_в_целевую_систему]] [[initrd]], [[make-initrd]]


Q: Как исправить/переустановить GRUB2 в UEFI-режиме?
== Как исправить загрузку и переустановить загрузчик GRUB? ==
В режиме '''chroot''' обновить конфигурационный файл загрузчика:
update-grub
Что является аналогом команды {{cmd|grub-mkconfig -o /boot/grub/grub.cfg}}


A: Загрузите rescue опять же в [[UEFI]]-режиме, далее:
В режиме '''chroot''' установить загрузчик GRUB командой:
grub-install /dev/sda
Где {{path|/dev/sda}} - целевой носитель.
 
Либо попробовать другие способы установки загрузчика: [[Grub#Как_переустановить_GRUB?]]
 
== Как исправить/переустановить GRUB2 в UEFI-режиме? ==
Загрузите rescue опять же в [[UEFI]]-режиме, далее:
# выполните поиск и монтирование целевой системы<ref>вместе с {{path|/boot/efi}} и при надобности — {{path|/boot}}</ref> (например, при помощи {{cmd|mount-system}})
# выполните поиск и монтирование целевой системы<ref>вместе с {{path|/boot/efi}} и при надобности — {{path|/boot}}</ref> (например, при помощи {{cmd|mount-system}})
# перейдите в смонтированную систему (например, {{cmd|chroot /mnt/system1 bash}})
# перейдите в смонтированную систему (например, {{cmd|chroot /mnt/system1 bash}})
Строка 35: Строка 88:
# отмонтируйте все ФС: {{cmd|umount -al}}
# отмонтируйте все ФС: {{cmd|umount -al}}


== Q5 ==
== Что такое forensic mode? ==
Это режим для работы с повреждёнными, чувствительными или недоверенными носителями информации, который отличается тем, что не выполняет автоматический поиск и активацию программных RAID и LVM<ref>начиная с <tt>regular-rescue-20140416</tt>, swap-разделы автоматически не подключаются в любом случае</ref>, а монтирование файловых систем выполняется с опциями <tt>ro,loop</tt>. Cм. [http://www.forensicswiki.org/wiki/Forensic_Live_CD_issues эту статью] с пояснением (вкратце — дабы избежать [http://digital-forensics.sans.org/blog/2011/06/14/digital-forensics-mounting-dirty-ext4-filesystems отката журнала] «грязной» ФС).  См. также {{cmd|mount-forensic}}, {{cmd|raid-forensic}} и {{cmd|lvm2-forensic}}.
 
Для входа в этот режим в загрузочном меню '''LiveCD''' выбрать пункт:
Forensic mode (leave disks alone)


Q: Что такое forensic mode?
Для '''монтирования''' любых файловых систем в этом режиме выполните команду:
mount-forensic
При этом произойдет монтирование разделов во временные каталоги вида {{path|/mnt/sda2}}.


A: Это режим для работы с повреждёнными, чувствительными или недоверенными носителями информации, который отличается тем, что не выполняет автоматический поиск и активацию программных RAID и LVM<ref>начиная с <tt>regular-rescue-20140416</tt>, swap-разделы автоматически не подключаются в любом случае</ref>, а {{cmd|mount-system}} выполняет монтирование файловых систем с опциями <tt>ro,loop</tt>; см. [http://www.forensicswiki.org/wiki/Forensic_Live_CD_issues эту статью] с пояснением (вкратце — дабы избежать [http://digital-forensics.sans.org/blog/2011/06/14/digital-forensics-mounting-dirty-ext4-filesystems отката журнала] «грязной» ФС). См. тж. {{cmd|mount-forensic}}, {{cmd|raid-forensic}} и {{cmd|lvm2-forensic}}.
== Как завершить работу в режиме LiveCD? ==
После завершения работы с целевой системой необходимо выйти из режима '''chroot''' командой:
exit
'''Размонтировать''' файловые системы командой:
unmount-system
В режиме LiveCD под суперпользователем '''для перезагрузки''' ввести команду:
  reboot


== Примечания ==
== Примечания ==

Текущая версия от 08:01, 28 сентября 2024

Краткое руководство по восстановлению работоспособности системы Альт в случае ошибок загрузки или файловой системы с помощью ALT Linux Rescue.

Что нужно сделать для восстановления работоспособности системы?

  1. Загрузиться в режиме LiveCD;
  2. Войти в консоль суперпользователем root;
  3. Изучить список дисков и разделов, понять, на каких разделах располагается целевая система;
  4. Проверить файловые системы на наличие ошибок;
  5. Смонтировать целевые файловые системы во временный каталог;
  6. Поменять корневой каталог (chroot);
  7. Пересоздать образ initramfs (если необходимо);
  8. Исправить/переустановить загрузчик GRUB;
  9. Выйти из chroot, размонтировать файловые системы и перезагрузиться.

Где взять LiveCD для восстановления системы?

Загрузиться в режиме LiveCD из меню дистрибутива Альт, либо использовать спасательный дистрибутив ALT Linux Rescue.

Как загрузиться в режиме LiveCD?

При включении компьютера поменять порядок загрузки дисков так, чтобы первой происходила загрузка с установочного диска Альт. Затем в меню выбрать пункт:

LiveCD (жесткий диск не нужен)

Что такое ALT Linux Rescue?

ALT Linux Rescue — спасательный LiveCD-дистрибутив небольшого размера. Для начала работы в загрузочном меню нужно выбрать пункт:

Rescue LiveCD

См. Rescue.

Какой пароль у суперпользователя root в режиме LiveCD?

В режиме LiveCD у суперпользователя root пустой пароль.

Как понять, где мои диски?

Проверьте вывод команды:

lsblk -f

Команда выведет список блочных устройств (дисков) и разделов с указанием имени, файловой системы и точки монтирования. Также можно использовать команды:

fdisk -l
cat /proc/partitions
blkid

Как проверить файловые системы на наличие ошибок?

В режиме LiveCD, в зависимости от используемой файловой системы, выполните команду:

fsck -vf /dev/sda2

где опция -v включает подробный текстовый вывод, а опция -f запускает проверку даже в том случае, если файловая система помечена как чистая. Вместо /dev/sda2 необходимо указать имя нужного раздела на диске. Для файловой системы btrfs выполните команду:

btrfs check --repair /dev/sda2

См. Проверка_диска_на_ошибки.

Как смонтировать файловые системы для восстановления данных?

Если на жестком диске установлен Linux (целевая система), поможет команда:

mount-system

При этом происходит поиск и монтирование корневых файловых систем во временный каталог вида /mnt/system1 (согласно /etc/fstab целевой системы). Также можно выполнить монтирование вручную. См. Chroot

После завершения работ по восстановлению размонтировать файловые системы командой:

unmount-system

Как поменять корневой каталог (chroot)?

Сменить корневой каталог нужно для выполнения операций над целевой системой Linux с помощью команды:

chroot /mnt/system1

Где /mnt/system1 - точка монтирования корневых файловых систем из предыдущего шага. Теперь мы имеем работающую систему LiveCD, с корневым каталогом целевой системы. После завершения работы необходимо выйти из режима chroot командой:

exit

См. Chroot

Как пересоздать образ initramfs?

В случае получения ошибки загрузки rdshell-locked: the waiting time expired! и других, может понадобиться пересоздать initrd (initial ramdisk - компактная корневая файловая система для начальной загрузки). После смены корневого каталога на предыдущем шаге необходимо узнать версию ядра целевой системы:

ls -d /lib/modules/*

В результате будет получен список каталогов, содержащих модули установленных ядер с указанием версий, например:

/lib/modules/6.1.100-un-def-alt1  /lib/modules/6.1.99-un-def-alt1  /lib/modules/nvidia

Где 6.1.100-un-def-alt1 и есть искомая версия целевого ядра (в данном примере последняя актуальная, загружаемая по умолчанию). Затем необходимо выполнить сборку initrd с указанием этой версии:

make-initrd -k 6.1.100-un-def-alt1

(В Вашем случае номер версии может отличаться). См. Chroot#Переход_в_целевую_систему initrd, make-initrd

Как исправить загрузку и переустановить загрузчик GRUB?

В режиме chroot обновить конфигурационный файл загрузчика:

update-grub

Что является аналогом команды grub-mkconfig -o /boot/grub/grub.cfg

В режиме chroot установить загрузчик GRUB командой:

grub-install /dev/sda

Где /dev/sda - целевой носитель.

Либо попробовать другие способы установки загрузчика: Grub#Как_переустановить_GRUB?

Как исправить/переустановить GRUB2 в UEFI-режиме?

Загрузите rescue опять же в UEFI-режиме, далее:

  1. выполните поиск и монтирование целевой системы[1] (например, при помощи mount-system)
  2. перейдите в смонтированную систему (например, chroot /mnt/system1 bash)
  3. выполните grub-install; sync
  4. выйдите из чрута: exit
  5. отмонтируйте все ФС: umount -al

Что такое forensic mode?

Это режим для работы с повреждёнными, чувствительными или недоверенными носителями информации, который отличается тем, что не выполняет автоматический поиск и активацию программных RAID и LVM[2], а монтирование файловых систем выполняется с опциями ro,loop. Cм. эту статью с пояснением (вкратце — дабы избежать отката журнала «грязной» ФС). См. также mount-forensic, raid-forensic и lvm2-forensic.

Для входа в этот режим в загрузочном меню LiveCD выбрать пункт:

Forensic mode (leave disks alone)

Для монтирования любых файловых систем в этом режиме выполните команду:

mount-forensic

При этом произойдет монтирование разделов во временные каталоги вида /mnt/sda2.

Как завершить работу в режиме LiveCD?

После завершения работы с целевой системой необходимо выйти из режима chroot командой:

exit

Размонтировать файловые системы командой:

unmount-system

В режиме LiveCD под суперпользователем для перезагрузки ввести команду:

reboot

Примечания

  1. вместе с /boot/efi и при надобности — /boot
  2. начиная с regular-rescue-20140416, swap-разделы автоматически не подключаются в любом случае