journalctl lit les logs que systemd enregistre. Depuis un téléphone, il suffit d'une connexion SSH et de quelques options : -u nginx filtre par service, -f suit la sortie en direct, -b se limite au démarrage en cours, --since restreint par période, -p err n'affiche que les erreurs et -n fixe le nombre de lignes à afficher.

Commandes journalctl essentielles pour vérifier un serveur depuis votre téléphone

journalctl -u nginx -f affiche les dernières entrées de nginx puis attend les nouvelles, exactement comme tail -f sur un fichier de log. Ces commandes couvrent la plupart des vérifications rapides :

# Follow nginx live (Ctrl+C to quit)
journalctl -u nginx -f

# Last 50 nginx entries, no pager
journalctl -u nginx -n 50 --no-pager

# Everything since the current boot
journalctl -b

# Previous boot (needs a persistent journal)
journalctl --list-boots
journalctl -b -1

# Narrow by date or time
journalctl --since "2026-10-26 08:00" --until "2026-10-26 09:30"
journalctl -u nginx --since "1 hour ago"
journalctl --since today

# Errors or worse in this boot
journalctl -p err -b

# Combined: nginx errors in the last 10 minutes
journalctl -u nginx -p err --since "10 min ago"

Si votre utilisateur n'appartient pas au groupe systemd-journal ou adm, journalctl n'affiche que vos propres entrées ; ajoutez sudo en préfixe pour lire les logs système. Chaque option est documentée dans la page de manuel de journalctl.

Ce que filtre chaque option de journalctl : -u, -f, -b, --since, -p et -n

Les options de journalctl se combinent selon une logique ET : journalctl -u nginx -b -p err ne renvoie que les erreurs de nginx depuis le dernier démarrage.

  • -u : filtre par unité systemd. Elle accepte nginx ou nginx.service et peut être répétée pour entremêler plusieurs unités.
  • -f : suit le journal en direct, en affichant d'abord les 10 dernières entrées.
  • -b : limite la sortie au démarrage en cours ; -b -1 correspond au précédent. Pratique après un redémarrage inattendu.
  • --since et --until : acceptent des horodatages "YYYY-MM-DD HH:MM:SS" et des expressions comme yesterday, today ou "2 hours ago".
  • -p : priorité syslog de 0 (emerg) à 7 (debug). -p err inclut err, crit, alert et emerg.
  • -n : nombre d'entrées finales. -n 100 évite que des milliers de lignes n'inondent un petit écran.

Deux autres options aident sur un écran étroit : -r inverse l'ordre pour que les entrées les plus récentes apparaissent en premier, et -o cat n'affiche que le message, sans horodatage, hôte ni processus, ce qui réduit les retours à la ligne.

journalctl sur iOS et Android face au bureau : tableau comparatif

journalctl envoie sa sortie dans le pager less, piloté par PgUp, PgDn, End et q ; le clavier système du téléphone ne possède aucune de ces touches.

Tâche journalctlBureauTéléphone avec le clavier systèmeTéléphone avec termi1
Quitter -fCtrl+CPas de touche Ctrl directeTouche Ctrl sur son propre clavier
Faire défiler le pagerPgUp, PgDn et EndPas de touches de paginationCouche fn avec PgUp, PgDn, Home et End
Compléter les noms d'unitésTabPas de TabTouche Tab dédiée
Changement de réseauLiaison filaire ou Wi-Fi stableLa session SSH peut tomber lors du passage au réseau mobileMosh maintient la session
Laisser -f tournerLa fenêtre reste ouvertePerdu si la session tombetmux le maintient en cours d'exécution

Avec n'importe quel client, ajouter --no-pager ou -n supprime complètement le besoin de touches de pagination.

journalctl -f sans coupures : Mosh et tmux lors des changements de réseau

Mosh utilise UDP, sur les ports 60000-61000 par défaut, et lance mosh-server via une connexion SSH initiale ; c'est pourquoi un journalctl -u nginx -f en cours survit au passage du Wi-Fi au réseau mobile.

Le pare-feu du serveur doit autoriser cette plage UDP ainsi que le port TCP 22 d'OpenSSH. Mosh ne fait ni redirection de ports ni redirection X11. Si le serveur n'a pas d'IP publique ni de ports ouverts, un réseau maillé privé Prialo ou Tailscale le rend accessible sans l'exposer.

Pour que le suivi continue même après la fermeture de l'application, lancez-le dans tmux :

tmux new -s logs
journalctl -u nginx -f
# Ctrl+B then d to detach; when you come back:
tmux attach -t logs

termi1 combine les deux : il maintient la session avec Mosh et utilise tmux pour que tout ce que vous avez laissé tourner soit toujours là à votre retour.

Exporter les logs journalctl dans un fichier et les télécharger via SFTP

journalctl -u nginx --since today --no-pager > /tmp/nginx-today.log enregistre les entrées nginx du jour en texte brut, prêtes à être jointes à un ticket ou lues plus tard.

Sur ordinateur, vous pouvez le récupérer avec scp, qui utilise par défaut le protocole SFTP depuis OpenSSH 9.0. Dans termi1, SFTP est intégré : vous pouvez donc afficher et télécharger le fichier sans quitter la session. Supprimez ensuite le fichier de /tmp s'il contient des données sensibles.

L'IA de termi1 tape la commande journalctl sans appuyer sur Entrée

L'IA de termi1 transforme une phrase tapée ou dictée, comme « erreurs nginx de la dernière heure », en une commande saisie à l'invite sans appuyer sur Entrée, afin que vous puissiez vérifier les options avant de l'exécuter.

Elle propose deux modes : « Review », qui n'appuie jamais sur Entrée, et « Safe auto », le mode par défaut, où seul un ensemble limité de commandes reconnues comme sûres reçoit Entrée. Sur les connexions marquées comme production, Production Guard garantit que rien ne reçoit Entrée automatiquement et retient tout ce qui supprime, arrête ou modifie quelque chose, comme un systemctl restart nginx après la lecture des logs. L'IA n'ouvre jamais la session et ne reçoit ni clés ni mots de passe, et les clés SSH générées sur le téléphone restent dans le stockage sécurisé du système. Découvrez le terminal SSH, Mosh et SFTP, que vous pouvez télécharger sur l'App Store ou Google Play.

Questions fréquentes

Comment suivre les logs nginx en temps réel avec journalctl ?

Vous suivez les logs nginx en temps réel avec journalctl -u nginx -f, qui affiche les dix dernières entrées puis ajoute les nouvelles à mesure qu'elles arrivent. Appuyez sur Ctrl+C pour quitter. Si nginx écrit aussi dans /var/log/nginx, ces fichiers existent indépendamment du journal.

Quelle est la différence entre journalctl -b et journalctl -b -1 ?

journalctl -b affiche les entrées du démarrage en cours, tandis que journalctl -b -1 affiche le démarrage précédent. La seconde ne fonctionne que si le journal est persistant, c'est-à-dire stocké dans /var/log/journal et pas seulement en mémoire. journalctl --list-boots liste les démarrages disponibles.

Quelles priorités journalctl -p err inclut-il ?

journalctl -p err inclut les messages de priorité err (3) et tous les niveaux plus graves : crit, alert et emerg. Il exclut warning, notice, info et debug. Combiné à -b ou --since, c'est le moyen le plus rapide de voir ce qui a échoué sans lire chaque ligne informative.

Pourquoi journalctl n'affiche-t-il pas les logs système sans sudo ?

Sans sudo, journalctl n'affiche que les propres entrées de l'utilisateur lorsque celui-ci n'appartient pas au groupe systemd-journal ou adm. Ajouter l'utilisateur à l'un de ces groupes permet de lire le journal système sans élever ses privilèges à chaque requête. Le changement s'applique après l'ouverture d'une nouvelle session.