web-dev-qa-db-fra.com

Ajouter une entrée de menu grub qui démarre dans mon installation actuelle mais avec un niveau d'exécution différent

J'utilise la dernière version de Kubuntu (14.10) et je voudrais ajouter une entrée de menu grub2 qui me permet de démarrer directement dans un niveau d'exécution différent? Je souhaite modifier /etc/rc3.d ou /etc/rc4.d pour démarrer directement dans la ligne de commande et ne pas charger X. Je pense que l'entrée de menu personnalisée doit être placée dans /etc/grub.d/40_custom? Je suppose que je peux copier mon/l'entrée de menu par défaut dans /boot/grub/grub.cfg? mais comment puis-je faire démarrer cette entrée à un niveau d'exécution différent?

Puis-je ajouter la commande telinit 3 à la fin de l'entrée de menu personnalisé?

toute aide serait appréciée :)

1
sinttx

Le problème avec l'ajout d'une entrée à l'aide de 40_custom signifie que l'entrée est statique - le contenu est copié tel quel dans grub.cfg, donc un nouveau noyau nécessite de rééditer ce fichier. Avec un très léger bricolage du 10-linux, Tu peux recevoir update-grub pour générer une entrée supplémentaire pour chacun des noyaux installés. Éditer /etc/grub.d/10_linux, et après les lignes où il est dit:

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

Ajoutez un autre appel à linux_entry:

linux_entry "${OS}, runlevel 3" "${version}" advanced \
          "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT} 3"

(La sélection d'un niveau d'exécution est aussi simple que le virement de bord à la fin des options, IIRC.)


Effet:

Entrée de menu dans le sous-menu "Options avancées": entry
Le contenu de cette entrée: contents

Bien sûr, normalement les niveaux d'exécution 2-5 sont équivalents, donc le démarrage à partir de celui-ci ne fait aucune différence pour moi, sauf:

$ runlevel
N 3
2
muru