[ { "id": "bureau-decouverte", "title": "Le bureau Linux", "description": "Maîtrisez les bases de l'interface graphique de Linux Mint.", "level": "Découverte", "level_id": 1, "members_only": false, "duration_min": 3, "icon": "🖥️", "questions": [ { "id": 1, "text": "Sur Linux Mint, comment ouvre-t-on une application depuis le menu ?", "choices": [ "On double-clique sur l'icône dans la barre des tâches", "On clique sur le menu principal puis on cherche l'application", "On appuie sur F5", "On tape le nom dans la barre d'adresse" ], "answer": 1 }, { "id": 2, "text": "Que se passe-t-il quand on clique sur le bouton ✕ d'une fenêtre ?", "choices": [ "Le programme se met en veille", "La fenêtre se réduit dans la barre des tâches", "Le programme se ferme", "L'ordinateur s'éteint" ], "answer": 2 }, { "id": 3, "text": "Qu'est-ce que la barre des tâches sous Linux Mint (bureau Cinnamon) ?", "choices": [ "Une barre de progression pour les téléchargements", "La barre en bas de l'écran qui affiche les fenêtres ouvertes", "Un outil de traduction de texte", "La barre de menu d'une application" ], "answer": 1 }, { "id": 4, "text": "Comment déplacer une fenêtre sur le bureau ?", "choices": [ "En cliquant droit dessus et en choisissant « Déplacer »", "En faisant glisser la barre de titre de la fenêtre", "En maintenant Ctrl et en cliquant", "Ce n'est pas possible sous Linux" ], "answer": 1 }, { "id": 5, "text": "Où vont les fichiers quand on les supprime dans le gestionnaire de fichiers ?", "choices": [ "Ils sont définitivement effacés immédiatement", "Ils vont dans la Corbeille", "Ils sont déplacés vers /tmp", "Ils sont compressés automatiquement" ], "answer": 1 }, { "id": 6, "text": "Comment prendre une capture d'écran sous Linux Mint ?", "choices": [ "Ctrl+P", "Alt+Impr écran (pour la fenêtre active)", "La touche Impr écran (Print Screen) pour tout l'écran", "Ctrl+C" ], "answer": 2 } ] }, { "id": "internet-decouverte", "title": "Internet et le navigateur web", "description": "Naviguez sur le web en toute confiance avec Firefox.", "level": "Découverte", "level_id": 1, "members_only": false, "duration_min": 3, "icon": "🌐", "questions": [ { "id": 1, "text": "Qu'est-ce qu'une URL ?", "choices": [ "Un type de virus informatique", "L'adresse d'une page web", "Un logiciel de navigation", "Un protocole de messagerie" ], "answer": 1 }, { "id": 2, "text": "Que signifie HTTPS par rapport à HTTP ?", "choices": [ "HTTPS est plus rapide que HTTP", "HTTPS chiffre la communication entre votre navigateur et le serveur", "HTTPS est réservé aux sites professionnels", "Il n'y a aucune différence pratique" ], "answer": 1 }, { "id": 3, "text": "Comment ouvrir un nouvel onglet dans Firefox ?", "choices": [ "Ctrl+N", "Ctrl+T", "Ctrl+O", "F5" ], "answer": 1 }, { "id": 4, "text": "Qu'est-ce qu'un moteur de recherche ?", "choices": [ "Un logiciel qui accélère votre ordinateur", "Un service qui référence des pages web et permet de les trouver", "Un programme qui traduit les pages web automatiquement", "Un type de navigateur spécialisé" ], "answer": 1 }, { "id": 5, "text": "Comment recharger une page web dans Firefox ?", "choices": [ "Ctrl+R ou F5", "Ctrl+L", "Alt+F4", "Ctrl+Z" ], "answer": 0 }, { "id": 6, "text": "Qu'est-ce qu'un favori (bookmark) dans un navigateur ?", "choices": [ "Une page web enregistrée pour y accéder rapidement", "Le site web le plus visité de la semaine", "L'historique complet de navigation", "Un mot de passe enregistré" ], "answer": 0 } ] }, { "id": "fichiers-debutant", "title": "Fichiers et dossiers", "description": "Comprenez l'organisation des fichiers sous Linux.", "level": "Débutant", "level_id": 2, "members_only": false, "duration_min": 4, "icon": "📁", "questions": [ { "id": 1, "text": "Quel est le dossier personnel de l'utilisateur « alice » sous Linux ?", "choices": [ "/home/alice", "C:\\Users\\alice", "/usr/alice", "/root/alice" ], "answer": 0 }, { "id": 2, "text": "Qu'est-ce qu'une extension de fichier ?", "choices": [ "La taille d'un fichier en octets", "Les lettres après le point dans le nom d'un fichier (.pdf, .mp3…)", "Le dossier où se trouve un fichier", "La date de création d'un fichier" ], "answer": 1 }, { "id": 3, "text": "Que représente le dossier / (barre oblique seule) sous Linux ?", "choices": [ "Le dossier personnel de l'utilisateur", "Un dossier temporaire vide", "La racine du système de fichiers (le point de départ de tout)", "Le dossier des fichiers de configuration" ], "answer": 2 }, { "id": 4, "text": "Comment afficher les fichiers cachés dans Nemo (le gestionnaire de fichiers de Linux Mint) ?", "choices": [ "Clic droit → « Afficher les fichiers cachés »", "Menu Affichage → « Afficher les fichiers cachés » ou raccourci Ctrl+H", "Il n'est pas possible d'afficher les fichiers cachés", "En tapant « hidden » dans la barre d'adresse" ], "answer": 1 }, { "id": 5, "text": "Sous Linux, par quel caractère commence le nom d'un fichier caché ?", "choices": [ "Un underscore _", "Un point . (exemple : .bashrc)", "Un tiret -", "Un dièse #" ], "answer": 1 }, { "id": 6, "text": "Que fait le raccourci Ctrl+Z dans la plupart des applications ?", "choices": [ "Fermer l'application", "Annuler la dernière action", "Enregistrer le fichier", "Couper la sélection" ], "answer": 1 } ] }, { "id": "logiciels-debutant", "title": "Installer des logiciels", "description": "Gérez vos logiciels sous Linux Mint sans ligne de commande.", "level": "Débutant", "level_id": 2, "members_only": false, "duration_min": 4, "icon": "📦", "questions": [ { "id": 1, "text": "Quel est l'outil graphique pour installer des logiciels sous Linux Mint ?", "choices": [ "Le Gestionnaire de logiciels", "L'App Store", "Le Centre de téléchargement Windows", "Le Panneau de configuration" ], "answer": 0 }, { "id": 2, "text": "Qu'est-ce qu'un dépôt de logiciels (repository) sous Linux ?", "choices": [ "Un disque dur externe pour stocker des sauvegardes", "Un serveur qui héberge des paquets logiciels prêts à installer", "Un logiciel de gestion de fichiers", "Une partition dédiée aux programmes" ], "answer": 1 }, { "id": 3, "text": "Pourquoi faut-il régulièrement mettre à jour son système Linux ?", "choices": [ "Pour améliorer les performances uniquement", "Pour corriger les bugs et les failles de sécurité", "Pour changer l'apparence du bureau", "Les mises à jour ne sont pas nécessaires sous Linux" ], "answer": 1 }, { "id": 4, "text": "Qu'est-ce que LibreOffice ?", "choices": [ "Un système d'exploitation", "Un navigateur web libre", "Une suite bureautique libre, alternative à Microsoft Office", "Un antivirus" ], "answer": 2 }, { "id": 5, "text": "Comment installe-t-on un logiciel en ligne de commande sous Linux Mint ?", "choices": [ "install ", "sudo apt install ", "get-app ", "download " ], "answer": 1 } ] }, { "id": "terminal-intermediaire", "title": "Le terminal — premiers pas", "description": "Découvrez la puissance de la ligne de commande Linux.", "level": "Intermédiaire", "level_id": 3, "members_only": false, "duration_min": 5, "icon": "⌨️", "questions": [ { "id": 1, "text": "Quelle commande affiche le répertoire courant (là où vous êtes) ?", "choices": ["ls", "cd", "pwd", "dir"], "answer": 2 }, { "id": 2, "text": "Quelle commande liste les fichiers et dossiers du répertoire courant ?", "choices": ["list", "ls", "dir", "files"], "answer": 1 }, { "id": 3, "text": "Que fait la commande `cd ..` ?", "choices": [ "Revient au dossier personnel (~)", "Monte d'un niveau dans l'arborescence (dossier parent)", "Change le nom du dossier courant", "Crée un nouveau dossier" ], "answer": 1 }, { "id": 4, "text": "Quelle commande crée un nouveau dossier nommé « projets » ?", "choices": ["newdir projets", "create projets", "mkdir projets", "touch projets"], "answer": 2 }, { "id": 5, "text": "Que fait la commande `man ls` ?", "choices": [ "Affiche la version de la commande ls", "Exécute ls avec toutes les options disponibles", "Affiche le manuel de la commande ls", "Liste les fichiers en mode manuel" ], "answer": 2 }, { "id": 6, "text": "Que signifie le ~ (tilde) dans le prompt du terminal ?", "choices": [ "Le dossier racine /", "Le dossier /tmp", "Le dossier personnel de l'utilisateur (/home/utilisateur)", "Le dernier dossier visité" ], "answer": 2 } ] }, { "id": "permissions-intermediaire", "title": "Les permissions Linux", "description": "Comprenez qui peut lire, écrire et exécuter quoi.", "level": "Intermédiaire", "level_id": 3, "members_only": false, "duration_min": 5, "icon": "🔐", "questions": [ { "id": 1, "text": "Que signifient les permissions `rwxr-xr--` sur un fichier ?", "choices": [ "Lecture seule pour tout le monde", "Propriétaire : lire/écrire/exécuter | Groupe : lire/exécuter | Autres : lire seulement", "Propriétaire : tout | Groupe : tout | Autres : rien", "Ce format de permissions n'existe pas sous Linux" ], "answer": 1 }, { "id": 2, "text": "Quelle commande modifie les permissions d'un fichier ?", "choices": ["perm", "chperm", "chmod", "access"], "answer": 2 }, { "id": 3, "text": "Que fait `chmod 755 script.sh` ?", "choices": [ "Supprime tous les droits sur le fichier", "Donne tous les droits au propriétaire, lecture+exécution au groupe et aux autres", "Rend le fichier lisible uniquement par le propriétaire", "Change le propriétaire du fichier" ], "answer": 1 }, { "id": 4, "text": "Quelle commande change le propriétaire d'un fichier ?", "choices": ["owner", "chown", "chmod", "usermod"], "answer": 1 }, { "id": 5, "text": "Que signifie la lettre `x` dans les permissions Linux ?", "choices": [ "Exclure (exclude)", "eXtended (étendu)", "Exécuter (execute)", "eXport" ], "answer": 2 } ] }, { "id": "git-avance", "title": "Git — les bases", "description": "Maîtrisez la gestion de versions avec Git.", "level": "Avancé", "level_id": 4, "members_only": true, "duration_min": 6, "icon": "🌿", "questions": [ { "id": 1, "text": "Que fait `git init` dans un dossier ?", "choices": [ "Télécharge un dépôt distant", "Initialise un nouveau dépôt Git local dans le dossier", "Initialise la connexion avec GitHub/Gitea", "Réinitialise toutes les modifications en cours" ], "answer": 1 }, { "id": 2, "text": "Quelle commande affiche l'état actuel du dépôt (fichiers modifiés, staged, etc.) ?", "choices": ["git log", "git diff", "git status", "git show"], "answer": 2 }, { "id": 3, "text": "Comment ajouter tous les fichiers modifiés à l'index (staging area) ?", "choices": ["git commit -a", "git add .", "git stage all", "git push all"], "answer": 1 }, { "id": 4, "text": "Que fait `git commit -m \"message\"` ?", "choices": [ "Envoie les modifications vers le dépôt distant", "Crée un point de sauvegarde (commit) avec le message donné", "Ajoute les fichiers à l'index", "Crée une nouvelle branche nommée « message »" ], "answer": 1 }, { "id": 5, "text": "Quelle commande envoie les commits locaux vers le dépôt distant ?", "choices": ["git send", "git upload", "git push", "git commit --remote"], "answer": 2 }, { "id": 6, "text": "Que fait `git pull` ?", "choices": [ "Supprime les modifications locales non committées", "Récupère et fusionne les modifications du dépôt distant", "Crée une nouvelle branche à partir du distant", "Affiche les derniers commits du dépôt distant" ], "answer": 1 } ] }, { "id": "admin-avance", "title": "Administration système", "description": "Gérez votre système Linux comme un pro.", "level": "Avancé", "level_id": 4, "members_only": true, "duration_min": 6, "icon": "⚙️", "questions": [ { "id": 1, "text": "Quelle commande met à jour la liste des paquets disponibles sous Debian/Ubuntu/Mint ?", "choices": ["sudo apt upgrade", "sudo apt update", "sudo apt refresh", "sudo dpkg update"], "answer": 1 }, { "id": 2, "text": "Quelle commande affiche les processus en cours d'exécution de façon interactive ?", "choices": ["ps aux", "top ou htop", "process", "list-proc"], "answer": 1 }, { "id": 3, "text": "Comment arrêter le service `nginx` avec systemd ?", "choices": [ "service nginx kill", "nginx --stop", "sudo systemctl stop nginx", "sudo kill nginx" ], "answer": 2 }, { "id": 4, "text": "Que fait la commande `sudo` ?", "choices": [ "Exécute une commande avec les droits d'un autre utilisateur (par défaut root)", "Sécurise une commande contre les erreurs", "Vérifie si une commande existe sur le système", "Exécute une commande en arrière-plan" ], "answer": 0 }, { "id": 5, "text": "Quelle commande affiche l'espace disque disponible sur les partitions montées ?", "choices": ["diskspace", "du -h", "df -h", "free -h"], "answer": 2 }, { "id": 6, "text": "Comment afficher les dernières lignes d'un fichier de log en temps réel ?", "choices": [ "cat /var/log/syslog", "tail -f /var/log/syslog", "watch /var/log/syslog", "log -f /var/log/syslog" ], "answer": 1 } ] }, { "id": "securite-expert", "title": "Sécurité Linux", "description": "Bonnes pratiques et outils de sécurité sous Linux.", "level": "Expert", "level_id": 5, "members_only": true, "duration_min": 7, "icon": "🛡️", "questions": [ { "id": 1, "text": "Pourquoi ne faut-il pas utiliser le compte root au quotidien ?", "choices": [ "Root est plus lent que les autres utilisateurs", "Une erreur ou un programme malveillant peut endommager tout le système sans restriction", "Root ne peut pas accéder aux fichiers personnels", "Il n'y a aucun risque particulier à utiliser root" ], "answer": 1 }, { "id": 2, "text": "Qu'est-ce qu'une clé SSH ?", "choices": [ "Un mot de passe chiffré pour les connexions web HTTPS", "Une paire cryptographique (clé publique/privée) pour s'authentifier sans mot de passe", "Un certificat SSL pour serveurs web", "Un outil de chiffrement de disque comme LUKS" ], "answer": 1 }, { "id": 3, "text": "Quelle commande génère une paire de clés SSH de type Ed25519 ?", "choices": [ "ssh-create -t ed25519", "openssl genkey ed25519", "ssh-keygen -t ed25519", "gpg --gen-key --type ed25519" ], "answer": 2 }, { "id": 4, "text": "Quel est le principe du moindre privilège (least privilege) ?", "choices": [ "Toujours utiliser le compte root pour les tâches système", "Accorder à chaque processus et utilisateur uniquement les droits strictement nécessaires", "Réduire les performances du système pour plus de sécurité", "Interdire l'accès internet aux utilisateurs non-root" ], "answer": 1 }, { "id": 5, "text": "Quelle commande affiche les connexions réseau actives et les ports en écoute ?", "choices": ["ifconfig -a", "ss -tulpn (ou netstat -tulpn)", "ping -l", "route -n"], "answer": 1 }, { "id": 6, "text": "Qu'est-ce qu'un pare-feu (firewall) ?", "choices": [ "Un antivirus spécialisé pour les applications web", "Un système qui filtre le trafic réseau entrant et sortant selon des règles", "Un logiciel qui chiffre les applications installées", "Un outil de sauvegarde automatique" ], "answer": 1 } ] }, { "id": "bash-expert", "title": "Bash scripting", "description": "Automatisez vos tâches avec des scripts shell.", "level": "Expert", "level_id": 5, "members_only": true, "duration_min": 7, "icon": "📜", "questions": [ { "id": 1, "text": "Quelle doit être la première ligne d'un script bash ?", "choices": ["#!/usr/bin/python3", "#!/bin/bash", "#bash", "// bash script"], "answer": 1 }, { "id": 2, "text": "Comment rendre un script bash exécutable ?", "choices": ["bash +x script.sh", "chmod +x script.sh", "exec script.sh", "run script.sh"], "answer": 1 }, { "id": 3, "text": "Que représente `$1` dans un script bash ?", "choices": [ "Le nom du script lui-même", "La valeur de la variable nommée « 1 »", "Le premier argument passé au script lors de son appel", "Le code de retour de la dernière commande exécutée" ], "answer": 2 }, { "id": 4, "text": "Quelle est la différence entre `>` et `>>` en redirection ?", "choices": [ ">> est plus rapide que >", ">> ajoute à la fin du fichier existant, > écrase le fichier", ">> redirige les erreurs, > redirige la sortie standard", "Aucune différence pratique entre les deux" ], "answer": 1 }, { "id": 5, "text": "Comment tester si le fichier `/etc/hosts` existe dans un script bash ?", "choices": [ "if exists \"/etc/hosts\"; then", "if [ -f \"/etc/hosts\" ]; then", "if file \"/etc/hosts\"; then", "if check -f \"/etc/hosts\"; then" ], "answer": 1 } ] } ]