Sommaire
Guide détaillé
Étape 1
Valider la compatibilité du service
Un service qui exige privilèges kernel, montages spéciaux ou accès matériel n’est pas toujours fait pour un LXC non privilégié.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Contrôler un service systemd
systemd donne l’état réel du service, son démarrage automatique et les journaux utiles au diagnostic.
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 100 --no-pager
Ce que font les commandes
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Transformer une application en service systemd
systemd permet de démarrer automatiquement une application, lire ses journaux et la redémarrer proprement.
sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true
sudo mkdir -p /srv/app
sudo chown -R appsvc:appsvc /srv/app
sudo nano /etc/systemd/system/app.service
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 80 --no-pager
Ce que font les commandes
- `sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Base outils Debian / Ubuntu
apt installe les utilitaires utiles, puis systemctl et journalctl vérifient que la machine reste saine.
sudo apt update
sudo apt install -y curl vim rsync
systemctl --failed
journalctl -p warning -n 50 --no-pager
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `systemctl status app.service` doit être actif.
- `journalctl -u app.service` ne doit pas afficher de boucle d’erreurs.
Étape 2
Comprendre les identifiants mappés
UID et GID vus dans le conteneur ne correspondent pas forcément à ceux de l’hôte. Cette traduction explique beaucoup de problèmes de droits.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour ce conteneur LXC, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Comprendre les identifiants mappés" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Transformer une application en service systemd
systemd permet de démarrer automatiquement une application, lire ses journaux et la redémarrer proprement.
sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true
sudo mkdir -p /srv/app
sudo chown -R appsvc:appsvc /srv/app
sudo nano /etc/systemd/system/app.service
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 80 --no-pager
Ce que font les commandes
- `sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Base outils Debian / Ubuntu
apt installe les utilitaires utiles, puis systemctl et journalctl vérifient que la machine reste saine.
sudo apt update
sudo apt install -y curl vim rsync
systemctl --failed
journalctl -p warning -n 50 --no-pager
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `systemctl status app.service` doit être actif.
- `journalctl -u app.service` ne doit pas afficher de boucle d’erreurs.
Étape 3
Limiter les montages exposés
Montez uniquement les dossiers nécessaires, avec les droits minimums. Un montage trop large annule une partie de l’intérêt du conteneur non privilégié.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour ce conteneur LXC, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Limiter les montages exposés" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Transformer une application en service systemd
systemd permet de démarrer automatiquement une application, lire ses journaux et la redémarrer proprement.
sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true
sudo mkdir -p /srv/app
sudo chown -R appsvc:appsvc /srv/app
sudo nano /etc/systemd/system/app.service
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 80 --no-pager
Ce que font les commandes
- `sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Base outils Debian / Ubuntu
apt installe les utilitaires utiles, puis systemctl et journalctl vérifient que la machine reste saine.
sudo apt update
sudo apt install -y curl vim rsync
systemctl --failed
journalctl -p warning -n 50 --no-pager
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `systemctl status app.service` doit être actif.
- `journalctl -u app.service` ne doit pas afficher de boucle d’erreurs.
Étape 4
Tester les opérations sensibles
Upload, écriture de cache, rotation de logs et restauration doivent être testés. Les permissions cassent souvent au moment le moins confortable.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour ce conteneur LXC, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Tester les opérations sensibles" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Transformer une application en service systemd
systemd permet de démarrer automatiquement une application, lire ses journaux et la redémarrer proprement.
sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true
sudo mkdir -p /srv/app
sudo chown -R appsvc:appsvc /srv/app
sudo nano /etc/systemd/system/app.service
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 80 --no-pager
Ce que font les commandes
- `sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Base outils Debian / Ubuntu
apt installe les utilitaires utiles, puis systemctl et journalctl vérifient que la machine reste saine.
sudo apt update
sudo apt install -y curl vim rsync
systemctl --failed
journalctl -p warning -n 50 --no-pager
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `systemctl status app.service` doit être actif.
- `journalctl -u app.service` ne doit pas afficher de boucle d’erreurs.
Étape 5
Documenter chaque exception
Si vous accordez un droit particulier, notez pourquoi, pour combien de temps et comment le retirer. L’exception permanente devient vite une dette.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour ce conteneur LXC, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Documenter chaque exception" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Transformer une application en service systemd
systemd permet de démarrer automatiquement une application, lire ses journaux et la redémarrer proprement.
sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true
sudo mkdir -p /srv/app
sudo chown -R appsvc:appsvc /srv/app
sudo nano /etc/systemd/system/app.service
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 80 --no-pager
Ce que font les commandes
- `sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Base outils Debian / Ubuntu
apt installe les utilitaires utiles, puis systemctl et journalctl vérifient que la machine reste saine.
sudo apt update
sudo apt install -y curl vim rsync
systemctl --failed
journalctl -p warning -n 50 --no-pager
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `systemctl status app.service` doit être actif.
- `journalctl -u app.service` ne doit pas afficher de boucle d’erreurs.
Étape 6
Préparer une preuve de bon fonctionnement
Avant de livrer, gardez un test d’écriture, un test de lecture et une capture des montages réellement utilisés.
Observer la machine avant de changer quoi que ce soit
Ces commandes affichent la distribution, le nom de la machine, les interfaces réseau, les routes, la mémoire et l’espace disque. Elles ne modifient rien.
cat /etc/os-release
hostnamectl
ip -br addr
ip route
free -h
df -h
Ce que font les commandes
- `cat /etc/os-release` affiche la distribution et sa version exacte.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip -br addr` liste les interfaces et adresses IP sous une forme courte.
- `ip route` montre la passerelle utilisée et les routes connues.
- `free -h` affiche RAM et swap dans une unité lisible.
- `df -h` indique l’espace disque libre par point de montage.
Appliquer cette étape avec une trace simple
Pour ce conteneur LXC, on écrit ce que l’on va faire, on exécute les vérifications, puis on garde une note datée.
mkdir -p ~/newscloud-notes
printf '%s\n' "Préparer une preuve de bon fonctionnement" > ~/newscloud-notes/etape.txt
systemctl --failed
journalctl -p warning -n 50 --no-pager
cat ~/newscloud-notes/etape.txt
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `printf` écrit une note ou un fichier de contrôle avec un format prévisible.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
- `cat ~/newscloud-notes/etape.txt` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
Transformer une application en service systemd
systemd permet de démarrer automatiquement une application, lire ses journaux et la redémarrer proprement.
sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true
sudo mkdir -p /srv/app
sudo chown -R appsvc:appsvc /srv/app
sudo nano /etc/systemd/system/app.service
sudo systemctl daemon-reload
sudo systemctl enable --now app.service
systemctl status app.service --no-pager
journalctl -u app.service -n 80 --no-pager
Ce que font les commandes
- `sudo useradd --system --home /srv/app --shell /usr/sbin/nologin appsvc || true` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `chown` remet la propriété des fichiers au bon utilisateur de service.
- `nano` ouvre le fichier à modifier ; remplacez les valeurs exemples avant d’enregistrer.
- `systemctl daemon-reload` recharge les unités systemd après modification d’un fichier de service.
- `systemctl enable --now` démarre le service immédiatement et l’active au prochain démarrage.
- `systemctl status` confirme l’état du service et affiche les dernières lignes utiles.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Base outils Debian / Ubuntu
apt installe les utilitaires utiles, puis systemctl et journalctl vérifient que la machine reste saine.
sudo apt update
sudo apt install -y curl vim rsync
systemctl --failed
journalctl -p warning -n 50 --no-pager
Ce que font les commandes
- `apt update` recharge la liste des paquets Debian/Ubuntu disponibles.
- `apt install` installe les paquets indiqués depuis les dépôts configurés.
- `systemctl --failed` liste les services en échec pour repérer un problème global.
- `journalctl` lit les journaux systemd ; l’option `--no-pager` évite un affichage interactif.
Tracer le changement pour audit
Pour un guide expert, gardez une preuve simple de l’état avant/après et du moment exact de l’intervention.
mkdir -p ~/change-log
{
date -Iseconds
hostnamectl
ip route
df -h
free -h
} > ~/change-log/avant-$(date +%F-%H%M).txt
# Après intervention, relancez le même bloc en remplaçant avant par apres.
Ce que font les commandes
- `mkdir -p` crée le dossier demandé sans erreur s’il existe déjà.
- `date -Iseconds` exécute l’action indiquée ; lisez la sortie avant de passer à la commande suivante.
- `hostnamectl` affiche le nom, le type de machine et quelques informations système.
- `ip route` montre la passerelle utilisée et les routes connues.
- `df -h` indique l’espace disque libre par point de montage.
- `free -h` affiche RAM et swap dans une unité lisible.
- Après intervention, relancez le même bloc en remplaçant avant par apres..
Variantes et attention
- Les commandes de ce guide sont adaptées pour Debian / Ubuntu. Si votre image est une autre famille Linux, gardez la logique mais remplacez le gestionnaire de paquets et les noms de services.
- En LXC, certaines actions noyau, modules kernel, Docker imbriqué ou montages spéciaux peuvent dépendre de la configuration de l’hôte. Si une commande touche au noyau, vérifiez d’abord que le conteneur le permet.
- Niveau expert : mesurez avant/après, conservez les traces, et préparez un rollback. Une commande correcte hors contexte peut rester dangereuse si elle est lancée au mauvais endroit.
Vérifications
- La commande `systemctl --failed` ne doit pas afficher de service critique en échec.
- La commande `df -h` doit montrer assez d’espace libre sur `/`, `/var` et les volumes applicatifs.
- `systemctl status app.service` doit être actif.
- `journalctl -u app.service` ne doit pas afficher de boucle d’erreurs.
Checklist finale
- UID/GID compris
- Montages minimaux
- Exceptions tracées