Quiz Module 8 - Services et Démon
Instructions
Ce quiz contient 30 questions à choix multiples pour valider votre compréhension du Module 8.
Conseil: Répondez à chaque question avant de révéler la réponse. Les réponses sont cachées juste après chaque question.
Question 1
Quelle commande permet de gérer les services systemd sur Ubuntu 24.04?
Voir l'explication
Réponse correcte: systemctl
Explication: systemctl est la commande principale pour gérer les services systemd. Exemples: systemctl start service, systemctl stop service, systemctl status service, systemctl enable service, systemctl restart service.
Question 2
Quelle commande permet de démarrer un service?
Voir l'explication
Réponse correcte: systemctl start service
Explication: sudo systemctl start service démarre un service. Autres commandes: stop (arrêter), restart (redémarrer), reload (recharger config), status (voir l'état).
Question 3
Quelle commande permet d'activer un service au démarrage?
Voir l'explication
Réponse correcte: systemctl enable service
Explication: sudo systemctl enable service active un service au démarrage (crée un lien symbolique). systemctl disable service désactive. systemctl is-enabled service vérifie si activé.
Question 4
Quelle commande permet de voir l'état d'un service?
Voir l'explication
Réponse correcte: systemctl status service
Explication: systemctl status service affiche l'état détaillé d'un service: actif/inactif, en cours d'exécution, logs récents, etc. Très utile pour diagnostiquer les problèmes.
Question 5
Où se trouvent les fichiers de service systemd?
Voir l'explication
Réponse correcte: /etc/systemd/system/ ou /lib/systemd/system/
Explication: Les fichiers .service systemd sont dans /lib/systemd/system/ (fournis par les paquets) et /etc/systemd/system/ (personnalisés, prioritaires). Après modification, exécutez sudo systemctl daemon-reload.
Question 6
Quelle commande permet de voir les logs d'un service?
Voir l'explication
Réponse correcte: journalctl -u service
Explication: journalctl -u service affiche les logs d'un service spécifique. Options: -f (suivi en temps réel), -n 50 (50 dernières lignes), --since today, --since "1 hour ago".
Question 7
Quelle commande recharge la configuration systemd après modification d'un fichier service?
Voir l'explication
Réponse correcte: systemctl daemon-reload
Explication: sudo systemctl daemon-reload recharge la configuration systemd après modification d'un fichier .service. Nécessaire avant de démarrer/redémarrer un service modifié. Ne pas confondre avec systemctl reload service qui recharge la config d'un service en cours.
Question 8
Quel répertoire contient les tâches cron système (pour tous les utilisateurs)?
Voir l'explication
Réponse correcte: /etc/cron.d/
Explication: /etc/cron.d/ contient les fichiers crontab système (pour tous les utilisateurs). Format similaire à crontab utilisateur mais avec un champ utilisateur. Les fichiers doivent avoir des permissions correctes (pas d'exécution).
Question 9
Qu'est-ce qu'anacron?
Voir l'explication
Réponse correcte: Un système qui exécute les tâches périodiques même si le système était éteint
Explication: anacron exécute les tâches des répertoires /etc/cron.daily/, /etc/cron.weekly/, /etc/cron.monthly/ même si le système était éteint au moment prévu. Utile pour les systèmes qui ne sont pas toujours allumés.
Question 10
Quelle est l'alternative moderne à cron avec systemd?
Voir l'explication
Réponse correcte: systemd timers
Explication: Les systemd.timer units sont l'alternative moderne à cron. Ils offrent plus de flexibilité, meilleure intégration avec systemd, et logs via journalctl. Format: fichier .timer + fichier .service associé.
Question 11
Quelle commande permet de voir tous les services actifs?
Voir l'explication
Réponse correcte: systemctl list-units --type=service --state=running
Explication: systemctl list-units --type=service liste tous les services. --state=running filtre seulement les actifs. systemctl list-units --type=service --all montre aussi les inactifs.
Question 12
Quelle commande permet de voir les timers systemd actifs?
Voir l'explication
Réponse correcte: systemctl list-timers
Explication: systemctl list-timers affiche tous les timers systemd avec leur prochaine exécution. systemctl list-timers --all montre aussi les inactifs. Utile pour voir les tâches planifiées systemd.
Question 13
Quelle commande permet de voir les logs système en temps réel?
Voir l'explication
Réponse correcte: journalctl -f
Explication: journalctl -f suit les logs en temps réel (comme tail -f). journalctl -u service -f suit les logs d'un service spécifique. Ctrl+C pour arrêter.
Question 14
Quelle commande permet de voir les logs depuis le dernier boot?
Voir l'explication
Réponse correcte: journalctl -b
Explication: journalctl -b affiche les logs depuis le dernier boot. journalctl -b -1 montre les logs du boot précédent. journalctl --list-boots liste tous les boots disponibles.
Question 15
Quelle commande permet de masquer un service au démarrage?
Voir l'explication
Réponse correcte: systemctl mask service
Explication: sudo systemctl mask service empêche complètement le démarrage d'un service (même manuel). Crée un lien symbolique vers /dev/null. systemctl unmask service enlève le masque. Plus fort que disable.
Question 16
Quelle commande permet de voir les dépendances d'un service?
Voir l'explication
Réponse correcte: systemctl list-dependencies service
Explication: systemctl list-dependencies service affiche l'arbre des dépendances d'un service (services requis). --reverse montre les services qui dépendent de celui-ci. Utile pour comprendre l'ordre de démarrage.
Question 17
Quelle commande permet de voir les logs des tâches cron sur Ubuntu 24.04?
Voir l'explication
Réponse correcte: journalctl -u cron ou grep CRON /var/log/syslog
Explication: journalctl -u cron affiche les logs du service cron. grep CRON /var/log/syslog cherche les entrées cron dans les logs système. Les logs montrent les exécutions et erreurs des tâches cron.
Question 18
Quelle commande permet de créer un service systemd personnalisé?
Voir l'explication
Réponse correcte: Créer un fichier .service dans /etc/systemd/system/
Explication: Pour créer un service personnalisé, créez un fichier /etc/systemd/system/mon-service.service avec la configuration. Puis sudo systemctl daemon-reload et sudo systemctl enable mon-service. Le fichier doit suivre le format systemd unit.
Question 19
Quelle est la syntaxe pour exécuter une tâche cron tous les jours à 2h00 du matin?
Voir l'explication
Réponse correcte: 0 2 * * *
Explication: 0 2 * * * signifie: minute 0, heure 2, chaque jour, chaque mois, chaque jour de la semaine = tous les jours à 2h00. Format: minute heure jour mois jour-semaine commande.
Question 20
Quelle commande permet de voir les timers systemd avec leurs prochaines exécutions?
Voir l'explication
Réponse correcte: systemctl list-timers
Explication: systemctl list-timers affiche tous les timers actifs avec leur dernière et prochaine exécution. systemctl list-timers --all montre aussi les inactifs. Format: NEXT (prochaine), LEFT (temps restant), LAST (dernière).
Question 21
Quelle commande permet de redémarrer un service?
Voir l'explication
Réponse correcte: systemctl restart service
Explication: sudo systemctl restart service arrête puis redémarre un service. systemctl reload service recharge la configuration sans redémarrer (si le service le supporte). restart est plus sûr mais peut interrompre le service.
Question 22
Quelle commande permet de voir si un service est activé au démarrage?
Voir l'explication
Réponse correcte: systemctl is-enabled service
Explication: systemctl is-enabled service retourne "enabled", "disabled", ou "masked". Utile dans les scripts pour vérifier l'état. systemctl is-active service vérifie si le service est actuellement actif.
Question 23
Quel répertoire contient les scripts exécutés quotidiennement par cron/anacron?
Voir l'explication
Réponse correcte: /etc/cron.daily
Explication: /etc/cron.daily/ contient les scripts exécutés quotidiennement. Similaire: /etc/cron.hourly/, /etc/cron.weekly/, /etc/cron.monthly/. Ces scripts sont exécutés par run-parts ou anacron.
Question 24
Quelle commande permet de voir les logs d'un service depuis une heure?
Voir l'explication
Réponse correcte: journalctl -u service --since "1 hour ago"
Explication: journalctl -u service --since "1 hour ago" affiche les logs depuis une heure. Autres formats: --since today, --since "2024-12-01 10:00:00", --until "1 hour ago". Très flexible pour filtrer par temps.
Question 25
Quelle commande permet de voir tous les services qui ont échoué?
Voir l'explication
Réponse correcte: systemctl --failed
Explication: systemctl --failed ou systemctl list-units --state=failed affiche tous les services qui ont échoué. Utile pour diagnostiquer les problèmes au démarrage. Vérifiez ensuite avec systemctl status service pour voir l'erreur.
Question 26
Quelle est la syntaxe crontab pour exécuter une tâche tous les lundis à 9h00?
Voir l'explication
Réponse correcte: 0 9 * * 1
Explication: 0 9 * * 1 = minute 0, heure 9, chaque jour, chaque mois, lundi (1). Les jours de la semaine: 0 ou 7 = dimanche, 1 = lundi, 2 = mardi, ..., 6 = samedi.
Question 27
Quelle commande permet de voir les logs système depuis aujourd'hui?
Voir l'explication
Réponse correcte: journalctl --since today
Explication: journalctl --since today affiche les logs depuis minuit aujourd'hui. Autres options: --since yesterday, --since "2024-12-01", --since "1 hour ago". Très utile pour filtrer les logs récents.
Question 28
Quelle commande permet de recharger la configuration d'un service sans le redémarrer?
Voir l'explication
Réponse correcte: systemctl reload service
Explication: systemctl reload service recharge la configuration d'un service sans l'arrêter (si le service le supporte). Plus doux que restart car n'interrompt pas les connexions actives. Tous les services ne supportent pas reload.
Question 29
Quelle commande permet de voir les unités systemd de type timer?
Voir l'explication
Réponse correcte: systemctl list-units --type=timer
Explication: systemctl list-units --type=timer liste tous les timers systemd. systemctl list-timers est un alias plus court qui affiche aussi les prochaines exécutions. Utile pour voir toutes les tâches planifiées systemd.
Question 30
Quelle commande permet de démarrer un timer systemd?
Voir l'explication
Réponse correcte: systemctl start timer.timer
Explication: sudo systemctl start mon-timer.timer démarre un timer systemd. systemctl enable mon-timer.timer l'active au démarrage. Le timer doit avoir un fichier .service associé qui contient la commande à exécuter.
Résultat du Quiz
Félicitations pour avoir complété le quiz du Module 8!
Score:
- 25-30 bonnes réponses: Excellent! Vous maîtrisez la gestion des services et cron avancé.
- 20-24 bonnes réponses: Très bien! Revoyez les concepts où vous avez eu des difficultés.
- 15-19 bonnes réponses: Bien! Revoyez les chapitres sur les services et cron.
- Moins de 15: Recommandé de revoir le module avant de continuer.
Prochaines Étapes
Maintenant que vous avez validé vos connaissances:
Module 9: Sécurité Système
Labs pratiques: Mettez en pratique les services et cron avec les labs du Module 8
Quiz créé le: Décembre 2024 - Testé sur Ubuntu 24.04