
Я хотел бы узнать, что нужно сделать, чтобы загрузить систему Linux в среде CLI, не запуская при этом графический сервер X.
Я заинтересован во временном решении, в идеале.
- команда или серия команд, которые можно выполнить на терминале Grub (том, который вы получаете при нажатии C);
- или добавив запись в меню KDM, где вы выбираете среду рабочего стола;
а не постоянное изменение в системе (стандартным поведением должна быть загрузка с графическим интерфейсом по умолчанию).
По вашей просьбе я добавляю соответствующий контент/boot/grub2/grub.cgf
menuentry 'openSUSE 13.2' --class opensuse --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-179689d2-d2f3-4ec8-9cc3-01ec946c6b11' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod ext2
set root='hd0,msdos5'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5 --hint='hd0,msdos5' 179689d2-d2f3-4ec8-9cc3-01ec946c6b11
else
search --no-floppy --fs-uuid --set=root 179689d2-d2f3-4ec8-9cc3-01ec946c6b11
fi
echo 'Loading Linux 3.16.7-24-desktop ...'
linux /boot/vmlinuz-3.16.7-24-desktop root=UUID=179689d2-d2f3-4ec8-9cc3-01ec946c6b11 quiet quiet liveinstall lang=it_IT resume=/dev/disk/by-id/ata-WDC_WD5000BEVT-00A0RT0_WD-WXL1AC0U9725-part7 splash=silent quiet showopts vga=803
echo 'Loading initial ramdisk ...'
initrd /boot/initrd-3.16.7-24-desktop
}
решение1
Мне не совсем понятно, о чем вы спрашиваете, поэтому я дам вам несколько возможных ответов, надеясь, что вы найдете тот, который вас интересует.
Вы можете отключить X-сервер при следующей загрузке
/etc/default/grub
, перейдя по ссылке и найдя строкуGRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
и модифицируя его в
GRUB_CMDLINE_LINUX_DEFAULT="text"
Теперь вам нужно обновить grub,
update-grub
и все готово.
Вы можете сделатьнаоборотдля повторного включения X-сервера.
Вы можете отключить свой оконный менеджер: если вы используете
systemd
, что в настоящее время делают большинство дистрибутивов Linux,systemctl disable kdm
или
gdm
,lightdm
, что бы вы ни использовали.Если вы считаете, что вам следует время от времени менять свое мнение,послезагрузка началась, добавьте в файл
/etc/grub.d/40_custom
следующую ручную запись:menuentry 'Ubuntu (Text mode)' --class ubuntu { recordfail insmod gzio insmod part_msdos insmod ext2 set root='hd0,msdos1' linux /vmlinuz root=/dev/sda1 ro text initrd /initrd.img }
(убедитесь, что вы адаптировались
/dev/sda1
иmsdos1
твойКонфигурация). Это создает просто запись в меню GRUB2, которую вы, возможно, захотите использовать время от времени.Если все, что вам нужно, это текстовый вход, даже если запущен графический сеанс, помните, что комбинация Ctrl+ Alt+ F1(или F2- F6) даст вам именно это, текстовый вход. Кроме того, вы можете отключить свой оконный менеджер из этого текстового входа,
sudo systemctl stop gdm
(ордкдм, лайтдм, сддм,, или что вы там используете), и у вас будет чисто текстовый вход в систему, без запущенного графического сеанса.
Наконец, вы можете прибегнуть к текстовой загрузке, если в вашей графической конфигурации возникла непредвиденная ошибка (неудачное обновление?), которая застала вас врасплох (то есть, не подготовившись к решению3). Если вы застряли в командной строке grub, вы можете использоватьПредложение Тердонасоответствующим образом изменен, потому что в его нынешнем виде он делаетнетработает на моих системах Debian и Arch Linux, но следующее работает: вместо добавления
text
кlinux
строке на дисплее Grub, как предложил Тердон, введите3
(три); например,linux /boot/vmlinuz-4.0.0-1-amd64 root=UUID=5e285652 ro quiet 3
Это успешно загрузит вас на уровень выполнения 3, который представляет собой CLI с сетевыми возможностями, но без менеджера отображения.
решение2
Ну, самый простой подход для однократной загрузки в текстовом режиме — выбрать запись ядра, которую вы хотите загрузить, на экране GRUB2, нажать E, прокрутить вниз до linux
строки и добавить text
в конец. Например:
linux /boot/vmlinuz-4.0.0-1-amd64 root=UUID=5e285652 ro quiet text
Затем нажмите F10или Ctrl+ Xдля загрузки.
решение3
Скопируйте и вставьте из /etc/inittab:
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5
#
# To view current default target, run:
# systemctl get-default
#
# To set a default target, run:
# systemctl set-default TARGET.target
#
Таким образом, вы можете установить:
systemctl set-default multi-user.target
для запуска только CLI
решение4
чтобы отключить X-сервер я редактирую файл /etc/default/grub
на строке
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
изменение на
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash init 3"
затем просто перезагрузите и если вы хотите запустить в графическом режиме, войдите в систему и выполните команду startx