OK、これは私が達成しようとしているものです:
GRUBに別のメニューオプションがあるため、選択してコマンドラインから直接起動できます。つまり、デスクトップマネージャーを使用せず、既存のメニュー項目(通常どおりUbuntuを起動する)をそのまま残します。
私は/etc/default/grub
を調べましたが、そこには何もするように見えません。また、/boot/grub/grub.cfg
は自動生成されるため、直接編集するのは良い考えではないと思います。
どうすればいいですか?何か案が?
更新:既存の回答(この質問が重複していたことを示唆)は廃止されました。正しい解決策については、下記の承認済みの回答をご覧ください。 (少なくとも16.04+の場合)
ファイル/boot/grub/grub.cfg
を開き、「通常の」Ubuntuを起動するセクションを見つけます。
私にとってこれは:
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b8f25f1e-a169-4aaa-9f05-90e49359d865' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 b8f25f1e-a169-4aaa-9f05-90e49359d865
else
search --no-floppy --fs-uuid --set=root b8f25f1e-a169-4aaa-9f05-90e49359d865
fi
linux /boot/vmlinuz-4.13.0-39-generic.efi.signed root=UUID=b8f25f1e-a169-4aaa-9f05-90e49359d865 ro
initrd /boot/initrd.img-4.13.0-39-generic
}
そのセクションを新しいファイルにコピーします(textmode.txt
など)。
/etc/grub.d
に移動して、ファイル40_custom
を作成(または編集)します。
次の「ヘッダー」をファイルにコピーします。
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
メニューエントリをtextmode.txt
からファイルに追加しますが、いくつかの値を変更します(以下を参照)。
menuentry 'Ubuntu (text mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b8f25f1e-a169-4aaa-9f05-90e49359d865' {
recordfail
load_video
gfxmode $linux_gfx_mode
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt2'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2 b8f25f1e-a169-4aaa-9f05-90e49359d865
else
search --no-floppy --fs-uuid --set=root b8f25f1e-a169-4aaa-9f05-90e49359d865
fi
linux /vmlinuz root=UUID=b8f25f1e-a169-4aaa-9f05-90e49359d865 systemd.unit=multi-user.target ro
initrd /initrd.img
}
変更する必要がある値は次のとおりです。
'Ubuntu'
から'Ubuntu (text mode)'
(またはメニューに表示したいもの)に変更しますlinux
行:linux /vmlinuz root=UUID=... systemd.unit=multi-user.target ro
に変更します。 UUIDが同じままであることを確認してください。initrd
行:/initrd.img
に変更します/
および/vmlinuz
から現在のバージョンへの/initrd.img
ディレクトリにシンボリックリンクがあることを確認してください。とにかく、これがデフォルトです。
走る
Sudo update-grub
このアプローチと この回答 の非常に似た質問に対する違いは、Ubuntuの最近のバージョンでは
linux /boot/vmlinuz-3.8.0-31-generic root=UUID=... ro quiet splash $vt_handoff
に置き換える必要があります
linux /vmlinuz root=UUID=... systemd.unit=multi-user.target ro
recentが実際に何を意味するのかわかりませんが、systemdが導入されたときは16.04であると思います。