[doc, howtos] systemd.
parent
15248a1fa9
commit
f70de08c7a
|
@ -1,6 +1,6 @@
|
|||
-*- mode: org; org-hide-emphasis-markers: t; -*-
|
||||
|
||||
#+TITLE: Description de normes autour des emails.
|
||||
#+TITLE: Description de ~systemd~ et comment l'utiliser?
|
||||
#+AUTHOR: Des nounous quelconques.
|
||||
#+EMAIL: contact@crans.org
|
||||
#+SEQ_TODO: TODO | in_progress | DONE
|
||||
|
@ -74,6 +74,50 @@ de s'y préparer. Pour les deux exemples susmentionnés, cela a été annoncé p
|
|||
d'un an à l'avance.
|
||||
|
||||
|
||||
* Rappel : processus de démarrage d'un ordinateur /systemd/GNU/Linux/
|
||||
|
||||
Ce paragraphe présente la manière dont les machines démarrent. Cette
|
||||
présentation se veut rapide, mais suffisante pour que chacun·e puisse comprendre
|
||||
à quelle étape de ce processus les disques d'un ordinateur sont déchiffrés,
|
||||
montés, /etc./
|
||||
|
||||
/Note/ : Je me concentrerai que sur les systèmes (U)EFI utilisant une table de
|
||||
partitions ~gpt~ (/i.e./ le disque sur lequel se trouvent les fichiers de démarrage
|
||||
contient un partitionnement ~gpt~).
|
||||
|
||||
Procédé de démarrage :
|
||||
|
||||
1. le logiciel de la carte mère est le premier élément à démarrer. Il charge
|
||||
vos paramètres (/e.g./ secure boot activé ou non) ;
|
||||
|
||||
2. le logiciel cherche à démarrer ou bien votre système d'exploitation
|
||||
directement, ou bien un /système d'amorçage/ (/bootloader/ en, anglais) ;
|
||||
|
||||
3. supposons qu'il lance ~systemd-boot~.
|
||||
~systemd-boot~ va constituer un menu avec
|
||||
- une ou plusieurs entrées pour lancer le(s) système(s) d'exploitation
|
||||
disponible(s) sur votre machine (ou en réseau),
|
||||
- une entrée pour redémarrer dans le panneau de configuration du logiciel
|
||||
UEFI,
|
||||
- une entrée pour redémarrer ;
|
||||
|
||||
4. Supposons que l'utilisateurice (ou ~systemd-boot~) choisisse un système sous
|
||||
~systemd~.
|
||||
~systemd~, qui est actuellement lancé dans un petit environnement (appelé
|
||||
/initrd/) va chercher à initialiser le système, noramment en :
|
||||
1. déchiffrant la partition racine du système (si nécessaire),
|
||||
2. montant la partition racine du sysème,
|
||||
3. pivotant sur le système final dont ~systemd~ vient de monter ~/~.
|
||||
|
||||
5. Nous sommes sur la bonne voie : le système de fichier principal est monté.
|
||||
~systemd~ monte les partitions/disques/resources réseaux supplémentaires
|
||||
requis, met en place les sous-systèmes nécessaires (journalisation, réseau,
|
||||
...).
|
||||
|
||||
L'un des derniers services démarré permet aux utilisateurices de
|
||||
s'authentifier. Le sysème a fini de démarrer.
|
||||
|
||||
|
||||
* TODO Configuration
|
||||
|
||||
** TODO Unité de configuration (~man systemd.unit~)
|
||||
|
@ -89,8 +133,60 @@ d'un an à l'avance.
|
|||
|
||||
** TODO Chiffrement (mots de passe, recovery key, FIDO2 ou TMP2)
|
||||
|
||||
L'utilitaire principal pour gérer le chiffrement de disques est
|
||||
~systemd-cryptenroll~.
|
||||
|
||||
** TODO Reconnaissance automatique de partitions
|
||||
|
||||
Lors de l'installation d'un système d'exploitation (avec UEFI), il y a au moins
|
||||
deux partitions :
|
||||
- une ESP (/EFI System Partition/), laquelle stocke les images de démarrage (dont
|
||||
l'éventuel boot loader) ;
|
||||
- une partition racine (root, ou ~/~), laquelle correspond au chemin ~/~ pour le
|
||||
système. C'est ici que sont généralement stockées vos applications, la
|
||||
configuration système, /etc/.
|
||||
|
||||
Pour ~systemd~, touts les points de montage sont des /unités de montage/ et le
|
||||
déchiffrement des disques est effectué via des /unités de services/. Ces unités
|
||||
sont /générées/ (/Cf./ plus bas).
|
||||
|
||||
|
||||
Lors du démarrage, il faut mettre le système de fichiers en place, /i.e./ monter
|
||||
les disques. Lors de l'installation du système d'exploitation, deux choix
|
||||
s'offrent à vous :
|
||||
- /OU BIEN/ Décrire les blocks à déchiffrer dans ~/etc/crypttab~ (/crypt table/) et
|
||||
les points de montage dans ~/etc/fstab~ (/file systems table/).
|
||||
|
||||
Ces fichiers seront inclus dans l'image de démarrage (qui est souvent appellée
|
||||
/initrd/ ou /initramfs/), afin que ~systemd~ sache quels disques déchiffrer et
|
||||
monter (et comment).
|
||||
|
||||
- /OU BIEN/ Indiquer le type de chaque partition ("X est ~/~", "Y est ~/boot~", "Z est
|
||||
~/home~", /etc./). Si tel est le cas, il n'est plus nécessaire d'inclure les
|
||||
partitions concernées dans ~/etc/fstab~.
|
||||
/Note/ : Si vous utilisez LUKS2 pour chiffrer vos disques, il n'est pas non plus
|
||||
nécessaire d'indiquer ces éléments dans ~/etc/crypttab~.
|
||||
|
||||
/Exemple/ : Partition ~/home~, troisième partition du disque ~/dev/nvme0n1~.
|
||||
Il suffit :
|
||||
- de changer le type de partition de ~/dev/nvme0n1p3~ :
|
||||
#+begin_src fdisk
|
||||
fdisk /dev/nvme0n1
|
||||
|
||||
t # change le type de partition
|
||||
3 # numéro de la partition à mettre à jour
|
||||
home # (ou 43) abbréviation pour "933ac7e1-2eb4-4f13-b844-0e14e2aef915"
|
||||
w # écrit les changements à la table de partitions
|
||||
#+end_src
|
||||
- retirer la ligne correspondant à ~/home~ dans ~/etc/fstab~ (et si la partition
|
||||
est chiffrée, de ~/etc/crypttab~ aussi),
|
||||
- régénrer les images de démarrage,
|
||||
- redémarrer et tester.
|
||||
|
||||
/Note/ : se référer à ~man systemd-gpt-auto-generator(8)~ pour une liste complète
|
||||
des tags ~gpt~ reconnus par ~systemd~.
|
||||
|
||||
|
||||
** TODO Redimension automatique de partitions
|
||||
|
||||
** TODO UKI et Secure boot
|
||||
|
|
Loading…
Reference in New Issue