J'essaye de déboguer un démarrage de système inutile (suspendu) le 14.04.2 LTS. root est un système de fichiers ext4 dans un conteneur luks. les systèmes de fichiers sont à l'état propre.
Le processus de démarrage s’arrête après le pont upstart-socket-bridge (pas nécessairement après ce service spécifique, par exemple, lorsque cups-daemon a été installé, il s’est arrêté par la suite). init -v
n'est pas très utile non plus. La seule entrée de journal qui ne se contente pas de consigner le démarrage/l’arrêt de divers services est celle concernant udev juste avant init.
Begin: Running /scripts/init-bottom ... done.
udev exit failed --rc=2
(Éditer) Le remontage de la racine rw semblait initialement toujours conduire à un démarrage en mode minimal, mais le fait est que c'est un peu imprévisible et que j'avais échoué et que les bottes avaient réussi. wut?
Observation: tout semble aller pour le mieux, le système ne remonte tout simplement pas la racine accessible en écriture ou ne continue le démarrage.
Q: Comment puis-je déterminer le service responsable du blocage du processus de démarrage?
initctl list
après le raccrochage. Ce sont les travaux en cours.mountnfs-bootclean.sh start/running
udev start/running, process 438
upstart-udev-bridge start/running, process 432
plymouth start/running, process 122
resolvconf start/running
ssh start/running, process 767 <-- this one was manually started
mountall start/running, process 337
mountkernfs.sh start/running
mountnfs.sh start/running
bootmisc.sh start/running
upstart-socket-bridge start/running, process 745**
cryptdisks start/running
mountdevsubfs.sh start/running
mtab.sh start/running
network-interface (lo) start/running
network-interface (eth0) start/running
plymouth-ready (startup) start/running, process 315
plymouth-upstart-bridge start/running, process 316
mountall-bootclean.sh start/running
network-interface-security (network-interface/eth0) start/running
network-interface-security (network-interface/lo) start/running
init 5
pour que le système bloqué continue à démarrer normalement.Il semble s'agir de la faute ureadahead
s. La purge a abouti à 5 bottes propres sans aucun problème. Je laisserai simplement la question (et les 100 représentants supplémentaires) ouverte à toute personne intéressée ou connaissant la réponse à la question initiale: comment, si ce n’était par un essai au hasard, j’aurais pu comprendre cela.
Pour référence, les étapes de débogage (infructueuses) que j’ai essayées, qui peuvent toutefois être utiles aux autres:
sash
, puis modifiez la ligne de commande de votre noyau (utilisez la clé e dans grub ou modifiez grub.cfg/cmdline.txt) et ajoutez init=/bin/sash
, redémarrez, examinez la situation de ce shell. et seulement ensuite utilisez exec init
pour continuer à démarrerinit
avec le commutateur -v
pour augmenter la journalisationmount -o remount,rw /
avant d'exécuter init) - ceci permet davantage de journalisation/var/log/upstart
getty -n -l /bin/bash 38400 tty2 &
- cela aide à examiner l'état du système (par exemple, ps -Af
, iotop
)initctl list
pour déterminer quels services sont dans quel état