Estou executando o Kubuntu mais recente (14.10) e gostaria de adicionar uma entrada de menu grub2 que me permita inicializar diretamente em um nível de execução diferente? Gostaria de modificar /etc/rc3.d
ou /etc/rc4.d
inicializar diretamente na linha de comando e não carregar o X. Acredito que a entrada do menu personalizado deve ser colocada em /etc/grub.d/40_custom
? Presumo que posso copiar minha/a entrada de menu padrão em /boot/grub/grub.cfg
? mas então como faço para que essa entrada seja inicializada em um nível de execução diferente?
Posso adicionar o comando telinit 3
ao final da entrada do menu personalizado?
Qualquer ajuda seria apreciada :)
Responder1
O problema de adicionar uma entrada usando 40_custom
é que a entrada é estática - o conteúdo é copiado como está grub.cfg
, portanto, um novo kernel requer a reedição desse arquivo. Com um leve ajuste no 10-linux
, você pode update-grub
gerar uma entrada adicional para cada um dos kernels instalados. Edite /etc/grub.d/10_linux
, e depois das linhas onde diz:
linux_entry "${OS}" "${version}" advanced \
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
linux_entry "${OS}" "${version}" recovery \
"${GRUB_CMDLINE_LINUX_RECOVERY} ${GRUB_CMDLINE_LINUX}"
fi
Adicione outra chamada para linux_entry
:
linux_entry "${OS}, runlevel 3" "${version}" advanced \
"${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT} 3"
(Selecionar um nível de execução é tão simples quanto inserir o número no final das opções, IIRC.)
Efeito:
Entrada de menu no submenu "Opções avançadas":
O conteúdo dessa entrada:
Claro, normalmente os níveis de execução 2 a 5 são equivalentes, então inicializar a partir dele não fez diferença para mim, exceto:
$ runlevel
N 3