Fondamentaux du stockage, des paquets et de la configuration réseau sous Linux

Concepts clés en administration système et réseau

Ce document explore les principes du stockage RAID, la gestion des volumes logiques, les gestionnaires de paquets, les modèles réseau et les configurations essenitelles pour les systèmes Linux.

Niveaux RAID : principes et caractéristiques

Les configurations RAID offrent différents équilibres entre performance, tolérance aux pannes et espace utilisable :

  • RAID 0 : Striping sans redondance. Utilisation totale des disques, aucune tolérance aux pannes, performances améliorées en lecture/écriture. Minimum 1 disque.
  • RAID 1 : Mirroring. Utilisation à 50%, tolérance aux pannes, lecture améliorée mais écriture réduite. Minimum 2 disques.
  • RAID 5 : Striping avec parité distribuée. Utilisation de (N-1)/N disques, tolérance à la défaillance d'un disque, performances accrues. Minimum 3 disques.
  • RAID 10 : Combinaison de mirroring et striping. Utilisation à 50%, chaque sous-groupe tolère une panne, performances élevées. Minimum 4 disques.
  • RAID 01 : Alternative au RAID 10 avec une tolérance aux pannes légèrement supérieure. Utilisation à 50%, minimum 4 disques.

Administration des volumes logiques (LVM)

LVM permet une gestion flexible des disques. Les opérations d'agrandissement et de réduction des volumes physiques, groupes de volumes et volumes logiques sont courantes. Par exemple, agrandir un volume logique avec lvextend et réduire avec lvreduce, en ajustant le système de fichiers avec resize2fs ou xfs_growfs.

Gestionnaires de paquets et dépôts

Les systèmes Linux utilisent des gestionnaires de paquets pour installer, mettre à jour et supprimer des logiciels. Les paquets contiennent des binaires, des fichiers de configuration et des métadonnées. Les outils principaux incluent :

  • yum/dnf (pour les distributions basées sur RHEL) : accèdent aux dépôts définis dans /etc/yum.repos.d/. Les dépôts peuvent être locaux ou distants. Exemple de commande : yum install nom_paquet.
  • apt (pour Debian/Ubuntu) : utilise /etc/apt/sources.list. Commande typique : apt update && apt install nom_paquet.

Le fonctionnement de yum/dnf suit ces étapes : lecture de la configuration, vérification des dépendances, téléchargement et installation des paquets.

Configuration d'un dépôt yum privé

Pour créer un dépôt privé, configurez un fichier .repo avec les sections BaseOS, AppStream et EPEL. Exemple simplifié :


[MonDepot]
name=Mon Dépôt Personnalisé
baseurl=file:///chemin/vers/le/depot
gpgcheck=0
enabled=1

Remplacez l'URL par un chemin local ou un serveur HTTP. Utilisez createrepo pour générer les métadonnées.

Initialisation post-installation

Pour les distributions comme Rocky Linux ou Ubuntu, les étapes courantes incluent :

  • Désactiver SELinux et le pare-feu pour les environnements de développement.
  • Renommer les interfaces réseau (par exemple, eth0) via la configuration udev ou NetworkManager.
  • Configurer les dépôts système et les sources additionnelles.
  • Installer des outils essentiels comme vim, curl, wget.

Automatisation avec des scripts shell

Un script d'installation automatisé peut utiliser des fonctions pour modulariser les tâches. Exemple pour installer un service comme httpd :


#!/bin/bash
# Version passée en argument
VERSION=$1

initialiser_systeme() {
    systemctl stop firewall
    yum install -y gcc make
}

telecharger_et_decompresser() {
    wget "http://example.com/httpd-$VERSION.tar.gz"
    tar -xzf "httpd-$VERSION.tar.gz"
}

compiler_et_installer() {
    cd "httpd-$VERSION"
    ./configure --prefix=/usr/local/httpd
    make && make install
}

creer_lien() {
    ln -s /usr/local/httpd/bin/httpd /usr/sbin/httpd
}

# Appel des fonctions
initialiser_systeme
telecharger_et_decompresser
compiler_et_installer
creer_lien
systemctl start httpd
echo "Service httpd version $VERSION installé."

Modèle OSI et protocoles réseau

Le modèle OSI comprend sept couches, chacune avec un rôle spécifique :

  • Couche application : Interface avec les applications (HTTP, FTP).
  • Couche présentation : Formatage des données (SSL, JPEG).
  • Couche session : Gestion des sessions (NetBIOS).
  • Couche transport : Transfert fiable (TCP, UDP).
  • Couche réseau : Adressage et routage (IP).
  • Couche liaison de données : Encapsulation et contrôle d'erreurs (Ethernet).
  • Couche physique : Transmission des bits (câbles, signaux).

Configuration réseau de base

Pour configurer l'accès réseau, définissez l'adresse IP, le masque, la passerelle et les serveurs DNS via des fichiers ou des commandes. Exemple de fichier /etc/sysconfig/network-scripts/ifcfg-eth0 :


DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.10
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
ONBOOT=yes

Utilisez ip addr show eth0 pour vérifier la configuration. Pour ajuster la plage de ports dynamiques, modifiez net.ipv4.ip_local_port_range avec sysctl.

Adressage IP et sous-réseaux

Les adresses IP sont divisées en classes (A, B, C, D) basées sur le premier octet. La conception de sous-réseaux permet d'optimiser l'espace d'adressage. Exemple : pour 201.222.200.111/18, le masque est 255.255.192.0 et le nombre d'hôtes est 2^(32-18)-2=16382. Pour diviser 10.0.0.0/8 en 32 sous-réseaux, empruntez 5 bits, résultant en un masque /13 (255.248.0.0) avec 524286 hôtes par sous-réseau.

Communication entre hôtes et liaisons réseau

La transmission de données implique l'encapsulation dans des paquets, l'utilisation de protocoles comme TCP/IP, et le routage via des couches réseau. Les poignées de main TCP (établissement en trois étapes et libération en quatre) assurent une communication fiable. Les configurations de liaison comme bond0 améliorent la redondance en combinant plusieurs interfaces.

Outils de diagnostic et scripts

Pour identifier les hôtes actifs sur un réseau, un script ping simple peut être utilisé :


#!/bin/bash
RESEAU="192.168.1"
for HOTE in $(seq 1 254); do
    if ping -c 1 -W 1 "$RESEAU.$HOTE" &>/dev/null; then
        echo "$RESEAU.$HOTE est actif"
    fi
done

Ce script envoie un ping à chaque adresse IP et affifie les résultats. Utilisez des outils comme ifconfig ou ip pour extraire des informations spécifiques des interfaces.

Étiquettes: RAID LVM YUM dnf apt

Publié le 17 juin à 20h05