2.8 KiB
title | categories |
---|---|
Howto OpenBSD/Flashinstall | openbsd |
Introduction
L'idée ici est d'installer OpenBSD sur une mémoire flash type clé USB ou carte SD avec /var en read only afin de préserver le support.
minicom
pu port /dev/ttyUSB0
pu baudrate 115200
pu rtscts No
pu xonxoff Yes
On peut aussi lancer la commande directement : $ minicom -b 115200 -D /dev/ttyUSB0
Mise en place
1. Démarrer sur le CD d'installation d'OpenBSD
Dans le cas d'une APU, on peut copier minirootXX.fs sur la carte SD (avec dd).
Puis au prompt boot>
on indique au système que c'est une console série
boot> stty com0 115200
boot> set tty com0
Cela peut également être précisé dans le fichier de configuration /etc/boot.conf
, avec la partition montée sur une autre machine :
# echo "set tty com0" > /mnt/etc/boot.conf
# echo "stty com0 115200" >> /mnt/etc/boot.conf
Puis on peut passer à l'installation
2. Installer OpenBSD sur la Clé USB ou carte SD par exemple
Pour un support de 8G, on utilise ce type de partitionnement :
/ 1G (a)
swap 512M (b)
/var 1536M (d)
/usr 2G (e)
/home lereste (f)
3. Une fois la machine redémarrée on applique les modifications suivantes :
# mkdir /var_persistent
# vi /etc/fstab
On modifie le fichier /etc/fstab afin qu'il ressemble à cela :
7c9d38374e397267.b none swap sw
7c9d38374e397267.a / ffs rw,softdep,noatime 1 1
7c9d38374e397267.f /home ffs rw,softdep,noatime,nodev,nosuid 1 2
7c9d38374e397267.e /usr ffs rw,softdep,noatime,nodev 1 2
7c9d38374e397267.d /var_persistent ffs ro,softdep,noatime,nodev,nosuid 1 2
swap /var mfs rw,nodev,nosuid,-P=/var_persistent,-s1536m 0 0
swap /tmp mfs rw,nodev,nosuid,-s64m 0 0
Ici on utilise mfs qui le gros avantage d'avoir l'option -P qui permet de recupérer le contenu d'un dossier !
On redémarre…
# Reboot
4. Une fois la machine de nouveau disponible
pkg_add rsync
5. On rajoute le rsync de synchronisation vers la partition persistante
Lors d'un shutdown propre :
# cat /etc/rc.shutdown
mount -u -w /var_persistent
sync
sleep 1
echo "Syncing /var (MFS) to Flash, please be patient..."
/usr/local/bin/rsync -aqH --delete --delete-excluded --exclude='run/*' --exclude='cache/*' --exclude='cron/tabs/*.sock' /var/ /var_persistent/
En cron une fois par semaine :
30 4 * * 6 /bin/sh /etc/rc.shutdown >/dev/null && /sbin/mount -u -r /var_persistent
6. On redémarre pour tester !