Eclats de vers : Ordina 02 : BSD
Table des matières
1. FreeBSD
1.1. Noyau (kernel)
1.1.1. Combinaison magique
Ctrl-Alt-Esc puis
call boot(0) ou panic
nécessite noyau compilé avec KDB et DDB
1.2. Système de base (world)
Commande | Interface | Fonction |
---|---|---|
bsdinstall | TUI | installation |
bsdconfig | TUI | configuration |
freebsd-version | CLI | version du système |
freebsd-update | CLI | mise à jour kernel & world |
1.2.1. Système de fichiers
Commande | Interface | Fonction |
---|---|---|
gpart | CLI | partitionnement du disque |
zpool | CLI | création de piscine zfs |
zfs | CLI | gestion du système de fichier zfs |
mdconfig | CLI | Création de périphériques virtuels associés à un fichier |
glabel | CLI | Permet de donner un nom persistant à un périphérique amovible |
gmirror | CLI | Création d'une association de périphériques redondant |
geli | CLI | Permet de chiffrer un système de fichier |
gshsec | CLI | Permet de partager la clef permettant de déchiffrer |
un système de fichier sur plusieurs périphériques |
1.2.2. Environnement de démarrage (boot environment)
Disponibles avec ZFS comme système de fichier.
Commande | Interface | Fonction |
---|---|---|
beadm | CLI | gestion des environnement de démarrage |
bectl | CLI | gestion des environnement de démarrage |
1.2.3. Démarrage & services
Commande | Interface | Fonction |
---|---|---|
/boot/loader.conf | FILE | fichier de configuration du chargeur de démarrage |
/sbin/init | FILE | processus de démarrage lancé par le noyau |
/etc/rc | FILE | script de démarrage |
/etc/rc.conf | FILE | configuration du démarrage |
/etc/rc.conf.local | FILE | |
/etc/rc.d | DIR | répertoire contenant les scripts permettant |
de lancer ou d'arrêter des services | ||
sysrc | CLI | gestion des variables de /etc/rc.conf : |
pour le démarrage : activation de services, … | ||
service | CLI | gestion des services |
rcorder | CLI | gestion des dépendances entre services |
1.2.4. Noyau (kernel)
Commande | Interface | Fonction |
---|---|---|
kldstat | CLI | affiche la liste des modules chargés |
kldload | CLI | charge un module du noyau |
kldunload | CLI | décharge un module |
sysctl | CLI | contrôle des paramètres du noyau |
/etc/sysctl.conf | FILE | Fichier de configuration de sysctl |
1.2.5. Matériel
Commande | Interface | Fonction |
---|---|---|
usbconfig | CLI | configuration usb |
1.2.6. Utilisateurs & groupes
Commande | Interface | Fonction |
---|---|---|
pw | CLI | gestion des utilisateurs & groupes |
adduser | CLI | ajoute un utilisateur |
rmuser | CLI | supprime un utilisateur |
chpass | CLI | modifie les paramètres d’un utilisateur |
passwd | CLI | changement du mot de passe |
capmkdb | CLI | base de données des capacités |
1.2.7. Paquets
Commande | Interface | Fonction |
---|---|---|
pkg-static | CLI | gestionnaire de paquets |
portmaster | CLI | gestionnaire des ports |
1.2.8. Processus
Commande | Interface | Fonction |
---|---|---|
pkill | CLI | envoie un signal à un processus |
1.2.9. Audio
Commande | Interface | Fonction |
---|---|---|
mixer | CLI | mixer de son |
1.2.10. Mode console virtuelle
(Ctrl +) Alt + F1
Commande | Interface | Fonction |
---|---|---|
kbdmap | disposition du clavier | |
vidcontrol | vidéo | |
vidfont | fonte de caractères |
1.2.11. Réseau
1.2.11.1. Wifi
Commande | Interface | Fonction |
---|---|---|
ifconfig | CLI | configuration des interfaces réseau |
wpapassphrase | CLI | demander le mot de passe et générer |
le contenu de /etc/wpasupplicant.conf |
1.2.11.2. Pare-feu
Commande | Interface | Fonction |
---|---|---|
ipfw | CLI | contrôle du pare-feu |
pf | CLI | pare-feu |
/etc/pf.conf | FILE | Fichier de configuration du pare-feu pf |
pfctl | CLI | contrôle du pare-feu |
Voici quelques exemples de syntaxe pf. Définition de variables, interface et réseau local :
if="rl0" <br /> lan="{ 192.168.123.100, 192.168.123.101, 192.168.123.102 }"
Bloque tout, journalise tout :
block in log all
Laisse passer ssh des autres membre du réseau local :
pass in inet proto tcp from $lan to $if port ssh flags S/SA keep state <br /> pass in inet proto udp from $lan to $if port ssh flags S/SA keep state
1.3. Systeme
1.3.1. Mise à jour par compilation
Il faut se rendre dans le répertoire des sources du système, par exemple :
cd /usr/src
sous FreeBsd. On dispose ensuite des commandes :
make buildworld | Compile le système d'exploitation |
make buildkernel | Compile le noyau du système d'exploitation |
make installkernel | Installe le noyau du système d'exploitation |
On redémarre en mode mono-utilisateur et on lance successivement les commandes :
adjkerntz -i mount -a -t ufs mergemaster -p make installworld mergemaster reboot
1.3.2. Fichiers de configuration
Pour installer les fichiers de configuration, il faut aller dans :
cd /usr/src/etc
et lancer :
make distribution
1.3.3. Containers
Commande | Fonction |
---|---|
jail | permet d'emprisonner un processus |
dans un sous-système | |
/etc/rc.d/jail | |
jexec | permet d'exécuter un processus dans un jail |
jls | liste des jails |
1.4. Paquets
1.4.1. Compilés
Commande | Interface | Fonction |
---|---|---|
pkg | CLI | gestionnaire de paquets |
1.4.2. Sources : ports
Les ports constituent une arborescence d'instructions nécessaires à la compilation, l'installation ou la désinstallation de logiciels. Pour utiliser les ports, il faut d'abord se rendre dans le répertoire associé au logiciel souhaité. Il s'agit de :
cd /usr/ports/catégorie/logiciel
On utilise alors la commande « make » suivi de l'action souhaitée :
make config | Configuration des options de compilation |
make install | Installe |
make clean | Nettoie le répertoire |
1.4.2.1. Options de compilation
/etc/make.conf | Fichier de configuration des compilations de port |
1.4.2.2. Recherche
La racine des ports permet de rechercher un logiciel :
cd /usr/ports <br /> make search key=<span class="rouge">motclef</span>
1.4.2.3. Utilitaires
portsnap | Installation ou mise à jour de l’arbre des ports |
portsearch | Recherche dans l’arbre des ports |
portupgrade | Mise à jour |
portinstall | Installation d'un port |
portversion | Ports non à jour |
portdeinstall | Suppression |
portsclean | Nettoyage |
portaudit | Mise à jour de sécurité |
1.4.2.3.1. Configuration
/usr/local/etc/pkgtools.conf | Fichier de configuration de portupgrade |
IGNORECATEGORIES=['port1', 'port2'] | Catégories ignorées |
HOLDPKGS=['port1', 'port2'] | Paquets non mis à jour |
USEPKGS=['port1', 'port2'] | Utilisation de paquets précompilés si disponibles, |
compilation dans le cas contraire | |
USEPKGSONLY=['port1', 'port2'] | Utilisation de paquets précompilés uniquement |
On peut aussi définir des arguments particuliers de compilation pour certains ports :
MAKE_ARGS={ <br /> '/port1/' => ['/.../', '/.../'], '/port2/' => ['/.../', '/.../'] }
2. NetBSD
2.1. Paquets
2.1.1. Source : pkgsrc
Sous NetBSD, l’arborescence des ports s’appelle pkgsrc.
Répertoire associé à un port :
cd /usr/pkgsrc/catégorie/logiciel
2.1.2. Compilé
Le « pkgsrc » de NetBsd permet d'installer des ports précompilés via la commande :
make bin-install
Il y a aussi l’utilitaire pkgin.