The Manual
Installations sans assistance
L’ISO d’Omarchy peut s’installer sans personne au clavier. Si le programme d’installation trouve un second disque portant l’étiquette cidata et contenant ses fichiers de configuration, il...
L’ISO d’Omarchy peut s’installer sans personne au clavier. Si le programme d’installation trouve un second disque portant l’étiquette cidata et contenant ses fichiers de configuration, il les copie, ignore entièrement l’assistant de configuration, puis redémarre de lui-même sur le système installé. Aucune image ISO spéciale à créer, aucune entrée supplémentaire dans le menu de démarrage : si aucun disque de ce type n’est connecté, rien ne change et l’assistant habituel s’affiche.
Omarchy constitue ainsi une excellente image de base pour les environnements de développement jetables : créez une machine virtuelle dans Proxmox ou avec Packer, démarrez-la, laissez-la travailler, puis connectez-vous en SSH. cidata est l’étiquette NoCloud de cloud-init, si bien que tous les outils de virtualisation courants savent déjà comment connecter un tel disque.
Les fichiers de configuration #
Ces fichiers sont exactement ceux que l’assistant du programme d’installation génère lui-même. Le moyen le plus simple d’obtenir un jeu de départ consiste donc à effectuer une installation interactive (dans une machine virtuelle, par exemple), puis à copier ce qu’il a écrit dans /root :
| Fichier | Obligatoire | Rôle |
|---|---|---|
user_configuration.json |
Oui | Disque, nom d’hôte, fuseau horaire, clavier |
user_credentials.json |
Oui | Nom d’utilisateur et hachage du mot de passe |
user_full_name.txt |
Non | Nom complet Git |
user_email_address.txt |
Non | Adresse e-mail Git |
user_encrypt_installation.txt |
Non | true lorsque la configuration contient un bloc disk_encryption |
authorized_keys |
Non | Clés publiques SSH, une par ligne |
tailscale_authkey |
Non | Clé d’authentification Tailscale permettant de rejoindre votre tailnet au premier démarrage |
Générez le hachage du mot de passe pour user_credentials.json avec openssl passwd -6 "yourpassword".
Vous pouvez également déposer un fichier vide nommé defer-provisioning à la place de user_credentials.json. Cela lance la même installation préparée pour un autre propriétaire que vous pouvez déclencher de manière interactive : la machine est installée sans aucune information personnelle, et la première personne à la démarrer choisit son clavier et crée son utilisateur. Ce mode est destiné à la création d’images pour des parcs de machines, lorsque le disque ne doit contenir les identifiants de personne.
Accès SSH #
Lorsque authorized_keys est présent, l’installation configure les clés dans le fichier ~/.ssh/authorized_keys de l’utilisateur, active sshd et ouvre le pare-feu pour ce service. (Une installation Omarchy standard est livrée avec openssh, mais son service est désactivé et son port fermé ; sans cela, une machine installée sans assistance serait donc inaccessible.) L’installation ajoute uniquement vos clés : elle n’assouplit aucun autre paramètre d’authentification du démon SSH.
Lorsque tailscale_authkey est présent, la machine rejoint plutôt votre tailnet au premier démarrage : Tailscale est installé à partir des paquets inclus dans l’ISO, le pare-feu autorise l’interface du tailnet et une tâche en arrière-plan lance la connexion dès que la machine dispose réellement d’un accès au réseau, en réessayant jusqu’à ce qu’elle réussisse. Utilisez une clé réutilisable et préautorisée afin qu’une même image disque puisse servir à plusieurs machines.
Création du disque cidata #
N’importe quel système de fichiers portant la bonne étiquette convient. Une petite image ISO est la solution la plus simple :
mkdir cidata
cp user_configuration.json user_credentials.json authorized_keys cidata/
genisoimage -output cidata.iso -volid cidata -joliet -rock cidata/
Connectez-la ensuite à la machine virtuelle aux côtés de l’ISO d’Omarchy. Voici un exemple Proxmox complet :
qm create 101 --name my-omarchy \
--bios ovmf --machine q35 --cpu host --cores 4 --memory 8192 \
--ostype l26 --scsihw virtio-scsi-single \
--efidisk0 local-lvm:0,efitype=4m,pre-enrolled-keys=0 \
--scsi0 local-lvm:40,discard=on,iothread=1 \
--net0 virtio,bridge=vmbr0 --vga virtio --serial0 socket \
--ide2 local:iso/omarchy.iso,media=cdrom \
--ide3 local:iso/cidata.iso,media=cdrom \
--boot order='scsi0;ide2'
qm start 101
L’ordre de démarrage place volontairement le disque en premier : au premier démarrage, le disque vide laisse la main à l’ISO, puis le système installé démarre ensuite toujours depuis le disque.
Deux réserves #
Les installations chiffrées sans assistance ne sont pas entièrement autonomes : quelqu’un doit encore saisir la phrase secrète LUKS au premier démarrage. De plus, le bloc disk_encryption de user_configuration.json contient cette phrase secrète en texte clair ; traitez donc un disque cidata créé à partir d’une installation chiffrée comme le secret qu’il constitue.