Administration Linux — l'essentiel
Deux pages à imprimer (⌘P). Les commandes, les droits, les pièges.
01Le socle
Repères historiques
- 1969 — Unix, labos Bell, Thompson & Ritchie
- 1973 — réécrit en C → portabilité
- Noyau Linux = Linus Torvalds
- Distribution = noyau + outils d'installation et d'administration
Debian · Ubuntu (dérivée de Debian) · Red Hat · Fedora (libre de Red Hat) · SuSE · Mandriva
Les 4 principes Unix
- Tout est fichier
- Multi-tâches en temps partagé
- Multi-utilisateurs
- Shell comme interpréteur
Noms sensibles à la casse, 255 caractères max, point initial = fichier caché.
Lire l'invite
$ = utilisateur simple ·
# = root · ~ = répertoire personnel
Séparés par des espaces. Plusieurs
commandes sur une ligne : ;
L'arborescence
/ | La racine |
. .. ~ | Courant · parent · personnel |
/etc | Configuration du système et des services |
/home | Utilisateurs simples |
/root | Personnel de root (≠ /) |
/bin | Commandes de base |
/sbin | Commandes admin |
/boot | Démarrage |
/dev | Périphériques |
/usr | Programmes et logiciels |
02Les commandes
Fichiers et déplacements
pwd répertoire courant ls -a fichiers cachés
ls -l détail + permissions ls -la les deux
cd / la RACINE cd .. le PARENT
cd ~ ou cd son répertoire perso cd - le précédent
mkdir rep crée un répertoire touch f crée un fichier vide
mkdir -p a/b crée TOUTE l'arborescence
cp f /dest copie cp -r d1 d2 copie un dossier
mv f1 f2 RENOMME mv f1 dossier deplace
rm f supprime un fichier rmdir d supprime un dossier VIDE
rm -r d supprime dossier+contenu rm -rf d sans confirmation ⚠
man cmd l'AIDE clear efface l'écran
who / whoami / id qui est connecté, qui suis-je, mes UID/GID/groupes
uname -a le noyau cat /etc/debian_versionRaccourcis clavier
| TAB | Autocomplétion |
| ↑ ↓ | Historique |
| Ctrl+C | Arrête la commande |
| Ctrl+Z | Suspend (ne tue pas) |
| Ctrl+A / E | Début / fin de ligne |
| Ctrl+D | Ferme la session |
APT — le piège classique
upgrade = l'INSTALLATION
sudo apt update rafraîchit la liste
sudo apt upgrade met à jour les paquets
sudo apt full-upgrade MAJ complète (peut retirer)
sudo apt install php
sudo apt purge php désinstalle + configFormats : DPKG/apt (Debian, Ubuntu) · RPM (Red Hat, Fedora, SuSE)
Processus
ps -ef / ps aux tous les processus
pstree l'arborescence
top / htop temps réel
cmd & lance en ARRIÈRE-plan
jobs les tâches
fg %1 / bg %1 avant / arrière-plan
kill 1234 termine (TERM)
kill -9 1234 tue (KILL)PID unique · PPID = père · daemon = processus système sans terminal
03Comptes et permissions
Utilisateurs et groupes
sudo adduser bob crée (interactif)
sudo deluser --remove-home bob
sudo addgroup projet
sudo usermod -aG projet bob ⚠ -a OBLIGATOIRE
passwd / sudo passwd bob
groups / idroot a toujours l'UID 0.
sudo = 1 commande · su = session root entière.
Les 4 fichiers système
/etc/passwd | Comptes : UID, GID, /home, shell. Pas de mot de passe |
/etc/shadow | Mots de passe chiffrés |
/etc/group | Groupes et membres |
/etc/sudoers | Qui peut sudo — éditer avec
visudo |
Les droits — r=4 w=2 x=1
-rwxr-xr-- 1 la copie A projet ... script.sh
│└┬┘└┬┘└┬┘ └─┬─┘ └─┬──┘
│ u g o prop. groupe
└ type : - fichier · d répertoire · l lien
rwx=7 rw-=6 r-x=5 r--=4 -wx=3 -w-=2 --x=1
755 script, dossier 644 fichier de données
770 travail d'équipe 600 privé (clé SSH)Sur un RÉPERTOIRE, ça change tout
| Droit | Sur un fichier | Sur un répertoire |
|---|---|---|
r | Lire | Lister les noms |
w | Modifier | Créer / supprimer |
x | Exécuter | Traverser (entrer) |
Sans x, rien n'est possible
dans un répertoire. x sans r : on ouvre un fichier dont on connaît
le nom, sans voir la liste.
Modifier les droits
chmod g+w f symbolique : + - =
chmod u-r f u g o a
chmod 755 f octal : on RÉÉCRIT tout
chown alice:projet f proprio + groupe
chgrp projet f groupe seul
chmod g+s dossier SetGID : héritage
du groupe04Réseau et pièges
Configuration IP statique
ip a voir les interfaces
ip route la passerelle
# /etc/network/interfaces
auto ens33 ⚠ NE PAS OUBLIER
iface ens33 inet static
address 10.0.0.10 ⚠ sans /24
netmask 255.255.255.0 ⚠ ligne à part
gateway 10.0.0.1
sudo systemctl restart networking
sudo ifup ens33Serveur = IP statique, pour une adresse stable et prévisible.
Les 6 pièges du test
usermod -aGet jamais-Gseulupdate≠upgraderm *supprime les fichiers, échoue sur les dossiersxsur un répertoire = traverser, pas lister/etc/passwdne contient aucun mot de passechownchange proprio et groupe ;chgrple groupe seul
Sécuriser un partage
sudo addgroup projet
sudo usermod -aG projet alice
sudo chgrp projet /srv/projet
sudo chmod 770 /srv/projet
sudo chmod g+s /srv/projetJamais 777. Jamais de compte partagé. Principe du moindre privilège.