2 votes

Démarrage lent avec SSD et LVM sur une nouvelle installation de 18.04

Ma première installation n'incluait pas LVM et a pris environ 15 secondes après le BIOS pour démarrer. Ma deuxième installation incluait LVM et a pris environ 45 secondes après le démarrage du BIOS. Après de nombreuses recherches sur Google, le consensus général semble être qu'il s'agit d'un bogue dans lequel le choix de LVM tout en utilisant "certains" SSD pendant l'installation provoquera un long démarrage pendant que le système cherche et ne trouve pas un fichier d'échange. Le délai d'attente est de 30 secondes. Quelqu'un a-t-il trouvé un moyen de contourner ce problème ?

3voto

Arni Points 31

Essayez l'une des deux méthodes suivantes, ou les deux.

Première méthode

Vérifiez la durée du temps de démarrage du noyau en ouvrant un terminal et en tapant :

systemd-analyze

El wait-for-root en /usr/share/initramfs-tools/scripts/local se termine après 30 secondes (valeur du sommeil). Le site dev_id La valeur de la variable RESUME qui est défini à /etc/initramfs-tools/conf.d/resume . Cet UUID qui est attribué à RESUME est l'UUID de la partition swap LVM. Attribuez le chemin du fichier de périphérique de la partition d'échange LVM à RESUME et utilisez la fonction wait_for_udev au lieu de wait-for-root .

Pour ce faire, tapez (dans le terminal) :

sudo sed -e 's/^RESUME=/#RESUME=/g' \
   -i /etc/initramfs-tools/conf.d/resume

Une fois que c'est terminé, tapez :

echo "RESUME=/dev/mapper/ubuntu--YOUR FLAVOR OF UBUNTU HERE--vg-swap_1" | \
sudo tee -a /etc/initramfs-tools/conf.d/resume

Recréez initrd et redémarrez le système.

sudo update-initramfs -u

Une fois que c'est terminé, tapez :

sudo reboot

Le temps de démarrage du noyau devrait être plus rapide. Vérifiez en tapant :

systemd-analyze

Vous pourrez également utiliser l'hibernation après cela.

( Fuente )

Deuxième méthode

Naviguez vers /etc/initramfs-tools/conf.d/

Cliquez à droite sur "resume" et choisissez Modifier en tant qu'administrateur . Changez la ligne

RESUME=UUID=<WHATEVER YOUT NUMBER IS>

(par ex. RESUME=UUID=67b3fe6f-1ec4-413f-8c5a-1136bc7f3270 ) à :

RESUME=none

Maintenant, ouvrez un terminal et tapez :

sudo update-initramfs -u

Une fois que c'est terminé, tapez :

sudo reboot

Le temps de démarrage du noyau devrait être plus rapide. Vérifiez en tapant :

systemd-analyze

( Fuente )

1voto

Bruno Sinou Points 11

Clause de non-responsabilité : à l'heure où j'écris ces lignes, je n'ai pas assez de réputation pour commenter les autres réponses, je dois donc en inscrire une nouvelle (principalement comme référence pour moi-même).

J'ai eu un problème similaire sur une nouvelle installation Ubuntu, avec une installation bare metal démarrant en ~15s alors que le démarrage sur une installation LVM a pris ~50s (avec une pause d'environ 30s sur un écran noir).

Un premier appel à sudo systemd-analyze blame m'a fait remarquer que j'avais un autre problème :

$ sudo systemd-analyze blame
     40.699s snapd.seeded.service
     ...

Que j'ai pu résoudre grâce à cette autre Q&R : Long délai de démarrage sur l'écran de chargement/écran splash d'Ubuntu après une mise à niveau régulière sur une installation SSD propre (18.04) en installant rng-tools et de définir HRNGDEVICE=/dev/urandom comme source d'entrée pour les données aléatoires dans /etc/default/rng-tools .

Cela a résolu le problème d'entropie du snapd :

$ sudo journalctl -u snapd.seeded.service --since today
  -- Logs begin at Tue 2018-08-21 18:22:53 CEST, end at Tue 2018-08-21 19:40:09 CE
  # Before: ~40s
  Aug 21 18:22:54 zen systemd[1]: Starting Wait until snapd is fully seeded...
  Aug 21 18:23:36 zen systemd[1]: Started Wait until snapd is fully seeded.
  Aug 21 18:50:18 zen systemd[1]: Stopped Wait until snapd is fully seeded.   
  -- Reboot --
  # After: <1s
  Aug 21 18:51:19 zen systemd[1]: Starting Wait until snapd is fully seeded...
  Aug 21 18:51:19 zen systemd[1]: Started Wait until snapd is fully seeded.
  ....

Mais le noyau prenait toujours ~35s pour démarrer alors j'ai utilisé la méthode "Idiot Proof" de nils-fenner cela n'a pas fonctionné au début mais après avoir mélangé avec la première solution de Arni et David J'ai finalement réussi à réduire le temps de démarrage à ~10s.

Donc, pour (ma) référence, voici ma version d'un chemin sûr pour résoudre le problème :

 $ cd <whatever back up folder on your machine>
 # backup initial config
 $ cp /etc/initramfs-tools/conf.d/resume .

 # Retrieve the correct path to the swap partition (for manually configured LVMs)
 $ sudo fdisk -l

   ... some partitions

   Disk /dev/mapper/vg_zen-uswap: 4 GiB, 4294967296 bytes, 8388608 sectors
   Units: sectors of 1 * 512 = 512 bytes
   Sector size (logical/physical): 512 bytes / 512 bytes
   I/O size (minimum/optimal): 512 bytes / 512 bytes

   ... some more partitions

 # Update the "resume" file with the new path
 # Caution "vg_zen-uswap" is for *my* machine only :)
 $ echo "RESUME=/dev/mapper/vg_zen-uswap" | sudo tee /etc/initramfs-tools/conf.d/resume
   RESUME=/dev/mapper/vg_zen-uswap   

 # Recreate initrd
 $ sudo update-initramfs -u 
   update-initramfs: Generating /boot/initrd.img-4.15.0-32-generic

 # reboot

Cela a fait l'affaire pour moi. HTH.

0voto

Nils Fenner Points 1

Il semble que la deuxième méthode décrite ci-dessus ne fonctionne pas en général. Je recommande également un moyen un peu plus "idiot proof" pour éviter de remplacer accidentellement l'UUID de l'échange.

sudo -i    #become root
cd /etc/initramfs-tools/config.d
mv resume resume.uuid
echo "RESUME=/dev/mapper/YOUR UBUNTU FLAVOUR HERE--vg-swap_1" > resume
#Example: echo "RESUME=/dev/mapper/lubuntu--vg-swap_1" > resume

update-initramfs -uk all
sync && reboot

Maintenant, nous pouvons simplement passer de l'un à l'autre en renommant les deux fichiers.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X