web-dev-qa-db-ja.com

グラフィカルサーバーなしでLinuxシステムをブートする方法

Xグラフィカルサーバーを起動せずに、CLI環境でLinuxシステムを起動するために何をすべきか知りたいのですが。

一時的な解決策に興味があります。理想的には

  • 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
}
6
Sekhemty

あなたが求めていることは私には完全に明確ではないので、あなたが興味のあるものを見つけられることを期待して、いくつかの可能な答えをあなたに与えます。

  1. /etc/default/grubに移動して次の行を見つけることにより、次回の起動時にXサーバーを無効にすることができます

    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    

    そしてそれを

    GRUB_CMDLINE_LINUX_DEFAULT="text"
    

    次に、GRUBを更新する必要があります。

    update-grub
    

    これで完了です。

またはその逆を実行して、Xサーバーを再度有効にすることができます。

  1. ウィンドウマネージャーを無効にすることができます:systemdを使用していると仮定すると、ほとんどのLinuxディストリビューションでは現在、

    systemctl disable kdm
    

    またはgdmlightdm、使用するものは何でも。

  2. afterブートが開始されたので、気が変わったと思う場合は、ファイル/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およびmsdos1your構成に適合させてください)。これにより、GRUB2メニューにたまにしか使用しないエントリが作成されます。

  3. テキストログインだけが必要な場合は、グラフィカルセッションが開始されているときでも、 Ctrl+Alt+F1 (または F2-F6)それだけでテキストによるログインができます。さらに、このテキストログインからウィンドウマネージャーを無効にすることができます。

    Sudo systemctl stop gdm
    

    (ordkdm、lightdm、sddm、、またはあなたが使うものは何でも)そして、そこには純粋にテキストによるログインがあり、グラフィカルセッションは実行されていません。

  4. 最後に、グラフィカルな構成で予期しないエラー(更新がうまくいかなかったか?)に遭遇したときに、テキストのみのブートに頼ることができます。これにより、気づかれない(ie、ソリューションの準備をせずに3)。 grubのコマンドプロンプトで行き詰まっている場合は、 Terdonの提案 を適切に変更して使用できます。これは、現状ではnotが私のDebianおよびArch Linuxシステムで機能するためです、しかし次はそうです:Terdonが示唆したように、Grubディスプレイのtext行にlinuxを追加する代わりに、代わりに3(3)と入力します。例えば。、

    linux   /boot/vmlinuz-4.0.0-1-AMD64 root=UUID=5e285652 ro  quiet 3
    

    これにより、ランレベル3が正常に起動します。ランレベル3は、ネットワークを備えたCLIですが、ディスプレイマネージャーはありません。

19
MariusMatutiae

テキストモードへの1回限りの起動の最も簡単な方法は、GRUB2画面で起動するカーネルエントリを選択することです。 E、下にスクロールしてlinux行まで移動し、末尾にtextを追加します。例えば:

linux   /boot/vmlinuz-4.0.0-1-AMD64 root=UUID=5e285652 ro  quiet text

次に、ヒット F10 または Ctrl+X 起動します。

4
terdon

/ 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
Yura

この記事をご覧ください: Grub2を使用してLinuxを手動で起動する方法

チェーンロードによる間接起動

Grub1の場合、最初のディスクの2番目のパーティションにインストールされているOS、DOS、MS Windows、BSD、Solaris、またはLinuxを起動する場合、Grub Legacyコマンドは次のコードになります。

root (hd0,1)
chainloader +1
boot

Grub2の場合、コマンドは少し異なり、変更は赤いコードで強調表示されます。

set root=(hd0,2)
chainloader +1
boot

カーネルとinitrdファイルに名前を付けて直接起動

...

私のLinuxがvmlinuz-2.6.18-6-686およびinitrd.img-2.6.18-6-686/bootサブディレクトリ1は、コードのGrub1コマンドでLinuxを起動できます。

root (hd0,1)
kernel  /boot/vmlinuz-2.6.18-6-686 root=/dev/sda11 ro 
initrd   /boot/initrd.img-2.6.18-6-686
boot

Grub2の場合、対応するコマンドはコードになります。

set root=(hd0,2)
linux  /boot/vmlinuz-2.6.18-6-686 root=/dev/sda11  
initrd   /boot/initrd.img-2.6.18-6-686
boot
1
duDE