Login Logout

Howto OpenBSD/Flashinstall

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 !

Liens utiles