, когда система Слишком поврежден, чтобы разрешить загрузку с жесткого диска, необходимо загружаться с другой среды. Установочные диски Fedora поддерживают «Rescue Mode», в котором система загружается с компакт-диска, а разделы жесткого диска необязательно смонтированы для доступа.
Чтобы получить доступ к этому режиму, загрузиться от вашей установки Media Fedora и выберите «Rescue Установленную систему» из меню загрузки, используя клавиши со стрелками и введите или нажав клавишу R (если вам нужно сначала редактировать параметры загрузки - Отключить ACPI, например - перейдите к опции Rescue с помощью клавиш со стрелками и нажмите на вкладку «Нажать»).
Керенель загрузится с компакт-диска, и система предложит вам выбрать стиль клавиатуры и язык из прокрутки списков опций. Затем вам будет предоставлена возможность включить сетевые интерфейсы в системе, либо введя информацию IP или с помощью DHCP.
Затем система представит диалоговое окно, заявив, что среда Rescue будет находить и устанавливать файловые системы из установки Fedora Hard Disk, и спрашивает, хотите ли вы продолжить. Это критический вопрос: если ваши файловые системы не повреждены, и вы хотите получить доступ к ним данные, вы можете выбрать «Продолжить», параметр по умолчанию. Если вы обеспокоены состоянием ваших файловых систем и хотите убедиться, что они не будут изменены, но все же хотят получить доступ к ним, выберите только для чтения. Если ваши файловые системы повреждены, у вас есть множественные установки Fedora, или вы хотите выполнить операцию, такую как уменьшение размера корневой файловой системы, выберите «Пропустить». После некоторых дополнительных сообщений вам будет представлен подсказкой корневой оболочки. Если вы решили продолжить с помощью монтажа чтения / записи ваших файловых систем, все файлы из вашей установки Fedora должны быть доступен под / mnt / sysimage - поэтому файл normal / etc / passwd будет доступен в / mnt / sysimage / etc / passwd.
Хотя обычные команды и коммунальные услуги Fedora доступны в режиме спасения, большинство из них не будут работать из-за измененных путей. Вы можете работать по этой проблеме, временно изменяя корневой каталог, используя команду chroot:
Chroot / mnt / sysimage
Однако необходимо знать, что файлы в установленные файловые системы Fedora не будут обновлены во время спасения Процесс загрузки режима, включая / etc / mtab и / var / log / messages. Вы можете компенсировать это в течение некоторой степени, получив информацию из других мест (например, DMESG для сообщений ядра и / ProC / Mounts для получения информации о монтаже).
Если вы были вынуждены использовать Rescue Mode, потому что код загрузчика GRUB вашей системы поврежден или был перезаписан еще одним загрузчиком, вы можете переустановить загрузчик GRUB в режиме Rescue:
Запустите оболочку Grub с командой GRUB :
Процизирующие устройства для угадания приводов BIOS. Это может занять много времени.
GNU GRUB версия 0,97 (640k нижняя / 3072к верхняя память)
[Минимальная редактирование линии Bash - поддерживается. Для первого слова, вкладка Перечисляет возможные команды. Где-нибудь еще вкладка перечисляет возможную Завершение устройства / имена файла.] GRUB>
Используйте команду «Найти», чтобы найти раздел, содержащий загрузочные файлы, поиск /GRub/Grub.conf (или /boot/grub/groub.conf, если это не удается). Grub будет сообщать об разделах, используя свой собственный синтаксис:
GRUB> Найти /grub/groub.conf (HD0,0)
Используйте команду root для настройки раздела, из которого должны быть загружены загрузочные файлы (используйте идентификатор раздела на шаге 2):
GRUB> ROOT (HD0,0) Тип файловой системы - Ext2FS,Тип раздела 0x83
Идентификатор раздела от шага 2 можно преобразовать в идентификатор диска, удаляя номер запятыми и раздела - например, раздел (HD0,0) находится на приводе (HD0). Используйте команду setup с помощью этого идентификатора привода для установки кода загрузчика загрузчика GRUB:
GRUB> Настройка (HD0)
Проверка, существует ли «/ Boot / Grub / Stage1» ... Нет Проверка, существует ли «/ Grub / Stage1» ... Да Проверка, существует ли «Grub / Stage2» ... Да Проверка, существует ли «/ GRUB / E2FS_STAGE1_5» ... Да Запуск «встроен / GRUB / E2FS_STAGE1_5 (HD0)» ... 16 секторов встроены. успешно Запуск «Установка / Grub / Stage1 (HD0) (HD0) 1 + 16 P (HD0,0) / GRUB / Stage2 /Grub/grub.conf" ... успешно Сделанный.
Выход из раковины GRUB с помощью Quit:
Grub> Quit #
После большого устранения неполадок и помогите от @anthon Anthon, мне наконец-то удалось достичь того, что я хотел. Проблема ведь было то, что X Server не было достаточно времени для загрузки. XServer был запущен из Lightdm, который был наверху, и мой сценарий начался с INIT.D.
Кажется, что если монитор подключен X Server начинается ранее, и мой скрипт в init.d не сбился.
Простой Команда 10
, чтобы остановить выполнение скрипта, пока X Server не запустил трюк. Однако это догадка времени, когда X Server начнется. Так что более элегантное решение было бы проверить, когда настольный стол запускается, а затем запустите мое приложение. Для достижения этого я вставил следующие строки перед запуском моего скрипта.
while [ -z $(pidof lxsession) ]; do
echo "LXSession not started yet, waiting for 2 secs"
sleep 2
done
С -Z $ (PIDOF LXSSESSE)
Я проверяю, является ли возвращенная строка PIDOF NULL. (Так что нет PID для процесса LXSession). Как только начинается LXSession, цикл отменяется, и сценарий перемещается на выполнение моего приложения Java, которое теперь находит X Server и работает нормально.
Спасибо всем за вашу помощь. Я надеюсь, что другие люди помогают этой теме и не пытают, как я!
Вы можете иметь любое приложение, выполненное с виртуальным буфером X кадров, используя такие инструменты, как XVFB или XVNC . Вы также должны рассмотреть возможность перехода на использование языка, который не заставляет вас иметь работу X для подключения к.
Это все работает, если вы используете SSH
, чтобы подключиться к машине, не является сюрпризом. Попробуйте сделать соединение после первого ввода Unset Display
, или делая
ssh -o "ForwardX11 no" owl