Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Приемы работы в Ubuntu.
Глава 8: Администрирование

Оригинал: "Ubuntu Hacks: Chapter 8 - Administration"
Авторы: Кайл Ранкин, Джонатан Оксер, Билл Чайлдерс (Kyle Rankin, Jonathan Oxer, Bill Childers)
Дата публикации: June 2006
Перевод: Н.Ромоданов
Дата перевода: октябрь 2010 г.

Совет # 81: Восстановление системы, которая не загружается

Если вы чуть-чуть переусердствовали с настройками вашей новой системы Ubuntu, и она больше не загружается, то в этом разделе вы узнаете несколько способов, как вернуть компьютер в рабочее состояние.

Если вы читаете этот совет, то примите наши соболезнования. Если ваша система не загружается, то это может повергнуть в стресс и вы можете сильно расстроиться. Мы уверены, что вы именно сейчас думаете о всех тех файлах, для которых вы хотели сделать резервные копии (мы знаем, что сейчас неуместно давать советы, но когда ваша система будет восстановлена и заработает, вы можете обратиться к разделу "Резервное копирование вашей системы" [Совет # 79]). Мы, безусловно, попадали много раз в подобную ситуацию, но до сих пор нам удавалось возвращать наши системы к жизни. Хотя все сценарии, в которых системе не удается запустить компьютер, охватить невозможно, мы расскажем, как для устранения проблемы воспользоваться установочным диском Ubuntu CD в режиме восстановления, и опишем некоторые типичные сценарии восстановления.

Загрузка в режиме восстановления

Во-первых, найдите диск Ubuntu CD, с которого вы устанавливали вашу систему, и перезагрузитесь с тем, чтобы открыть экран первоначальной загрузки. Среди различных вариантов имеется вариант "Recover a broken system" ("Восстановление неработающей системы"). Выберите этот вариант, и Ubuntu начнет работать так, что с первого взгляда может показаться, что это выполняется обычная установка системы. Вам точно как, как и при установке, будет предложено выбрать язык и сетевые настройки, но это происходит только начальная настройка среды восстановления. Обратите внимание, что в верхнем левом углу экрана появилось сообщение "Rescue mode" ("Режим восстановления").

Продолжайте двигаться дальше до тех пор, пока не будет предложено выбрать корневое устройство root. На рис. 8-11 вы видите пример диалогового окна с возможностью выбора различных вариантов.

Ubuntu Hacks. Диалоговое окно выбора корневого устройства

Рис.8-11. Диалоговое окно выбора корневого устройства

Как выбрать правильный вариант? Если вы не слишком хорошо знакомы с размещением разделов на ваших жестких дисках, то для этого может потребоваться несколько попыток, но основные правила следующие:
  • Если вы установили Ubuntu в качестве единственной системы и Ubuntu переписала все на текущем диске, вашей корневой файловой системой, вероятно, является первый раздел в списке.
  • Если вы установили Ubuntu в конфигурации с двойной загрузкой с Windows, вашей корневой файловой системой, вероятно, является второй раздел в списке.

После того, как вы выберете корневую файловую систему, Ubuntu попытается смонтировать ее, если попытка окажется успешной, произойдет переход к следующему диалоговому окну. Если попытка окажется неудачной, вы, вероятно, выбрали неправильный раздел, так что сделайте еще одну попытку.

Общий сценарий восстановления

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

Ubuntu Hacks. Выбираем режим восстановления

Рис. 8-12. Выбираем режим восстановления

Система не может выйти из загрузочного меню, либо в меню есть ошибки

Это типичный симптом системы, которую не удается загрузить. Может быть, в случае использования двойной загрузки вы переустановили Windows или другую операционную систему. Независимо от причины, в меню загрузки GRUB, используемое по умолчанию, в настоящий момент присутствуют ошибки и его нужно восстановить.

В меню выбора операций восстановления выберите вариант "Reinstall GRUB boot loader" ("Переустановить загрузчик GRUB"). Следующее окно, которое сразу же появится, может напомнить вам окно, которым вы пользовались в момент установки Ubuntu. В нем спрашивается, где вы хотите установить загрузчик GRUB. Если вы не помните, где конкретно был установлен загрузчик GRUB, то с большей вероятностью он был установлен на вашем первом жестком диске в главной загрузочной записи (Master Boot Record). Если это так, наберите (hd0) и двигайтесь дальше. Режим восстановления переустановит GRUB и вы вернетесь в меню выбора операций "Rescue operations" ("Операции восстановления"). Выберите пункт "Reboot the system" ("Перезагрузка системы"), и перед вами, как мы надеемся, должно появится стандартное меню загрузки.

Система выходит из загрузочного меню, но доступ к корневой файловой системе root отсутствует

Этот симптом может оказаться самым неочевидным, поскольку он может быть вызван самыми разнообразными проблемами, начиная от повреждения файловых систем и заканчивая использованием новых проблематичных ядер. Прежде, чем продолжать использовать режим восстановления, сначала попытайтесь перезагрузиться и выбрать в меню загрузки вариант с другим ядром. Если это ядро загрузится, то, вероятно, какая-то проблема с поддержкой оборудованием в вашем последнем ядре. Когда вы загрузите рабочее ядро, проверьте, есть ли обновления для вашего нового ядра. Если у вас возникли те же самые проблемы при выборе загрузочном меню различных ядер, то перейдите к следующим шагам.

В случае возникновения проблем такого рода, устранение неисправностей необходимо осуществлять непосредственно из спасательного CD, так что выберите вариант "Execute a shell in the installer environment" ("Запустить оболочку в среде инсталлятора"). После этого вы перейдете в оболочку BusyBox, где вы можете выполнять некоторые основные диагностические и восстановительные операции:

Test the root filesystem - Проверка корневой файловой системы

Во-первых, проверьте и посмотрите, можете ли вы читать из корневой файловой системы. Восстановительный режим CD в процессе загрузки смонтирует эту файловую систему на /target. Наберите:

~ # ls /target

и посмотрите, получили ли вы список файлов подобный тому, что изображен на рис.8-13 и который был выдан командой df. Если установка Ubuntu была выполнена с настройками, определенными по умолчанию, ваша корневая файловая система, вероятно, будет находиться на /dev/discs/disc0/part1.

Ubuntu Hacks. Пример диагностики в оболочке BusyBox

Рис. 8-13. Пример диагностики в оболочке BusyBox

Repair the filesystem – Восстановление файловой системы

Теперь используйте команду fsck чтобы попытаться восстановить вашу файловую систему. Во-первых, вам нужно размонтировать раздел /target, если он в настоящее время смонтирован:

~ # umount /target

В среде режима восстановления есть утилиты fsck только для файловых систем ext2, ext3 и jfs, поэтому, если вы во время установки выбрали другую файловую систему, вам придется воспользоваться другим спасательным диском. В Ubuntu по умолчанию используется файловая система ext3, так что если вы выполняли установку по умолчанию, то для того, чтобы проверить и восстановить ваш диск, введите следующую команду:

~ # /sbin/ fsck.ext3 -f /dev/discs/disc0/part1

Замените fsck.ext3 на fsck.ext2 или fsck.jfs, если у вас разделы с ext2 или jfs, соответственно, а также замените раздел на ваш конкретный корневой раздел. После завершения работы fsck снова смонтируйте раздел на /target и постарайтесь получить к нему доступ с помощью команды ls:

~ # mount /dev/discs/disc0/part1 /target
~ # ls /target

Если вы увидите некоторое количество файлов и директорий, поздравляем, ваше устройство восстановлено! Наберите команду exit чтобы выйти из оболочки BusyBox, перезагрузитесь и посмотрите, сможете ли вы успешно загрузить вашу систему.

Система загружается и проходит часть процесса загрузки, но зависает на конкретном сервисе

Будь то из-за плохо написанного скрипта init или из-за какой-либо другой ошибки, в некоторых редких случаях скрипт init может остановиться и отказаться от продолжения процесса загрузки. Когда это происходит, вы не сможете войти в оболочку и решить проблему, поэтому необходимо прибегнуть к спасательному CD. Запомните, какой сервис "буксует", и загрузитесь с вашего установочного диска Ubuntu CD в режиме восстановления.

Для решения вопросов такого рода, вам, на самом деле, нужно перейти в оболочку в среде вашей корневой файловой системы, поэтому в меню восстановительных операций Ubuntu выберите вариант "Execute a shell in /dev/discs/disc0/part1" ("Запустить оболочку в /dev/discs/disc0/part1"). Этот вариант названия может чуть-чуть отличаться, если у вас в качестве корневой файловой системы другой раздел.

В результате вы перейдете в оболочку вашей собственной корневой файловой системы. Вы сможете перемещаться по этой файловой системе и запускать команды, как будто вы на самом деле загрузили вашу файловую систему. Теперь вам нужно найти сервис init, из-за которого у вас возникли проблемы, и отключить его. В разделе "Управление запуском сервисов" [Совет # 77] содержатся инструкции о том, как из командной находить и отключать сервисы, запускаемые при загрузке, так что прочитайте этот совет для ознакомления с конкретной спецификой. Если Ubuntu устанавливалась по умолчанию, вы, вероятно, найдете свой сервис либо в /etc/rc2.d, либо в /etc/rcS.d. После того как вы найдете проблемный сервис, переименуйте его, заменив S на D в начале имени файла.

Когда скрипт init будет отключен, наберите exit и выйдите из оболочки, а затем перезагрузите компьютер и попытаться загрузиться обратно в вашу систему Ubuntu. Отключенный скрипт init теперь не должен вызывать проблем, так что вы теперь должны получить экран приглашения входа в систему.

Заключение

Это лишь некоторые из возможных проблем, которые могут сделать систему незагружаемой. Если вы попробовали все эти варианты восстановления и все еще не смогли восстановить систему, не сдавайтесь! Прочитайте раздел "Получаем помощь" [Совет # 2] и узнайте, как можно получить поддержку от других пользователей Ubuntu.


Назад Оглавление Вперед