Suite à un pouet - de mémoire de @meli_melo mais je ne l'ai pas retrouvé, donc en fait peut-être pas :blob_grinning_sweat: - concernant le temps de sous lié à l'entropie nécessaire pour certain service et en l’occurrence , j'ai voulu vérifier si on pouvait effectivement gagner du temps avec quelques bidouilles...

Spoil : la réponse est oui 😁

Plateforme de test :
- Lenovo ThinkPad T520i
- Intel Core i3-2370M CPU @ 2.40GHz
- SSD SanDisk SDSSDP12 128 Go
- 6 Go Ram

1/5

Voilà mon temps de boot d’origine, que l’on peut récupérer à travers la commande :

systemd-analyse plot > MonGraph.svg

Le résultat n’est pas très bon - mais j'ai connu bien pire - un peu plus de 41 secondes :blobsad:...

Mais surtout on remarque - avec de bons yeux - que le démarrage de ssh bouffe plus de 32 secondes à lui tout seul :blobscream:

C'est donc sur ce point que l'on va agir...

2/5

Comme le précise le wiki de Debian - wiki.debian.org/BoottimeEntrop - avec un noyau récent sur une architecture amd64, la directive CONFIG_RANDOM_TRUST_CPU peut-être utilisée.

Sur ma machine c'était déjà le cas :
CONFIG_RANDOM_TRUST_CPU=y et je ne voyais plus que la mise en place de l'instruction RDRAND (en.wikipedia.org/wiki/RdRand), mais malheureusement non pris en charge par mon CPU :blobsad:

Mort pour le CPU, il reste tout de même la possibilité de s'appuyer sur le chipset.

3/5

En farfouillant un peu j'apprends que l'entropie basée sur le chipset nécessite d'avoir les directives CONFIG_HW_RANDOM et CONFIG_HW_RANDOM_INTEL - dans mon cas vu que CPU intel - activées dans la configuration du noyau.

C'est le cas, mais ces directives fonctionnent à l'aide d'un module (c'est ce que signifie le =m) il faut donc vérifier la présence de ce dernier.

Dans mon cas il s'agit de rng_core obtenu via cat /proc/modules | grep -i rng

Il ne reste plus qu'a générer de l'entropie

4/5

Follow

Tous les paramètres étant réunis pour gagner du temps, il ne reste plus qu'a installer le paquet [rng-tools].

On ajoute la source servant à générer les données aléatoires :

echo "HRNGDEVICE=/dev/urandom" >> /etc/default/rng-tools

Et on lance le service pour vérifier que ça tourne comme il faut ^^

Un petit reboot et hop pas loin de 24 secondes de gagnées :owi:

Le service ssh passe de 32s à 90ms, ce qui tout de même énorme 😮 (attention je vous vois venir 😏 )

Voilou 😊

5/5

@Arnaud_Minable Qu'est qui te prend autant de temps a booter dans l'userqspace ? A mon ex-boulot, ma machine Debian sur SSD démarrait en moins de 4 secondes (kernel + userspace, hors la partie UEFI).

@devnull
Le service ssh. Passé de 32 secondes à 90 ms grâce à l'entropie

@Arnaud_Minable Je veux après avoir optimisé le démarrage de SSH. 90 ms, c'est que ville sur les 10 secondes de démarrage du userspace. Ce sera pas un service qui essaye de démarraer avant le réseau, et qui en a besoin, qui cause ce ralentissement ?

@devnull
Bin en regardant la sortir de systemd-analyse, non ça n'a pas l'air 🤔

@Arnaud_Minable Du coup qu'est qui prend le plus sur ces 10 secondes, et combien ? 🤔

@devnull @Arnaud_Minable

Startup finished in 20.369s (kernel) + 6min 29.871s (userspace) = 6min 50.241s

Et tu te plains avec quelques dizaines de secondes ? :-D

@breizh @devnull
Ha vui effectivement 😮

En même temps tu as le temps de faire couler ton café tranquillou :yay:

@Arnaud_Minable @devnull Je prends pas de café. Ni de thé. Mais ça me laisse le temps de me changer (vélotaf) une fois le disque déchiffré et le boot en cours.

@breizh
Je n'ai pas chiffré le disque de cette machine en même temps, donc on y gagne forcement...
@devnull

@Arnaud_Minable @devnull C’est le PC du taf, chiffrement obligatoire. En vrai c’pas le chiffrement le soucis, juste que le disque mécanique de ce laptop est une sombre merde. Mais c’est ma faute, j’ai oublié de changer pour un SSD à l’install. Et maintenant flemme de refaire l’install avant de changer de PC.

@breizh Mon SSD pour mon laptop perso encore de le carton, par flemme… donc bon… 😅

@Arnaud_Minable

@devnull @Arnaud_Minable J’ai aucun SSD dans mes machines… juste un SSHD (qui n’a aucun intérêt en terme de perfs…) sur mon ThinkPad. La différence entre ma tour (récente et haut de gamme) et mon PC de taf est assez violente (la tour mets genre, 30 secondes à booter et y’en a des services et autres dessus…).

@breizh Pareil, HSfDD classique => Une trentaine de secondes de boot sur mon laptop. Mais bon, au pire j'ai fini par réussir à faire retomber en marche le mode hibernation depuis que le passage à systemd me l'avait cassé.

@Arnaud_Minable

@devnull
NetworkManager-wait-online.service --> 8.486 secondes

Mais je viens de le désactiver du coup c'est encore mieux effectivement ^^

Sign in to participate in the conversation
Arnaud_Minable Social Club

Bonjour,

Vous êtes ici sur mon instance personnelle dédié au réseautage social à travers le Fediverse' !

Cette instance est en ligne depuis le 08 avril 2017 !