0% ont trouvé ce document utile (0 vote)
75 vues16 pages

DS Quizz Linux

Le document présente un ensemble de quiz et de questions thématiques sur des sujets liés à Linux, incluant des domaines tels que la culture générale, les commandes shell, les systèmes de fichiers, les permissions, les processus, les redirections, l'environnement utilisateur, l'administration système, la compilation en C, et le scripting shell. Chaque section contient des questions ouvertes, des QCM, des exercices pratiques, et des affirmations vrai/faux pour tester les connaissances des utilisateurs. Ce matériel est conçu pour aider à l'apprentissage et à la maîtrise des concepts fondamentaux de Linux.

Transféré par

thefrenshsniper
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
75 vues16 pages

DS Quizz Linux

Le document présente un ensemble de quiz et de questions thématiques sur des sujets liés à Linux, incluant des domaines tels que la culture générale, les commandes shell, les systèmes de fichiers, les permissions, les processus, les redirections, l'environnement utilisateur, l'administration système, la compilation en C, et le scripting shell. Chaque section contient des questions ouvertes, des QCM, des exercices pratiques, et des affirmations vrai/faux pour tester les connaissances des utilisateurs. Ce matériel est conçu pour aider à l'apprentissage et à la maîtrise des concepts fondamentaux de Linux.

Transféré par

thefrenshsniper
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd

=========================================

GRANDS QUIZ ET QUIZ THÉMATIQUES COMPLETS


=========================================

------------------------------------------------------------------------------
(1) GRAND QUIZ GLOBAL (façon DS complet)
------------------------------------------------------------------------------

1) Culture générale (Linux/Unix, distributions, etc.)


------------------------------------------------------
1. (Culture générale)
1. D’où vient le terme « Linux » ? Qu’est-ce que GNU/Linux ?
2. Qu’est-ce qu’une distribution ? Cite-en deux exemples et explique leurs
différences.
3. À quoi correspond le projet GNU et pourquoi associe-t-on souvent GNU et Linux
?

2) Commandes Shell de base


--------------------------
1. Explique la différence entre une commande interne et une commande externe.
2. À quoi sert la commande man ? Donne deux autres moyens d’obtenir de l’aide ou de
la documentation.
3. Que font les caractères spéciaux suivants dans un contexte de commande shell :
- ;
- #
- *
- ?
4. Quel est l’effet de Ctrl+Z et comment reprend-on un processus qui a été ainsi
stoppé ?

3) Système de fichiers & chemins


--------------------------------
1. Quelle est la différence entre chemin absolu et chemin relatif ? Donne un
exemple de chacun.
2. À quoi correspondent les répertoires spéciaux . et .. ?
3. Cite trois répertoires importants de la hiérarchie Linux (/etc, /usr, etc.) et
explique rapidement ce qu’ils contiennent.
4. À quoi sert la commande mount ?

4) Permissions
--------------
1. Dans un listage long (ls -l), on voit un champ comme drwxr-x---. Explique la
signification des 10 caractères (type, classes d’utilisateurs, etc.).
2. Qu’est-ce qu’un bit suid ? Donne un exemple de commande qui utilise ce
mécanisme.
3. Explique ce que fait le sticky bit sur un répertoire. Donne un cas d’usage
concret (ex. /tmp).
4. Quelle est la valeur de umask la plus sécuritaire, et pourquoi ?

5) Processus
------------
1. Décris les différents états possibles d’un processus (actif, endormi, zombie,
etc.).
2. Que signifie lancer une commande en avant-plan (foreground) vs. en arrière-plan
(background) ?
Comment envoie-t-on un processus à l’arrière-plan une fois qu’il est lancé ?
3. Quelle commande permet de lister tous les processus en cours et leurs PID pour
un utilisateur donné ?
6) Redirections
---------------
1. Que signifient les nombres 0, 1, 2 dans un contexte de redirection ?
2. Donne un exemple de commande qui redirige la sortie d’erreur standard vers un
fichier.
3. Comment rediriger simultanément la sortie standard dans sortie.txt et la sortie
d’erreur dans erreur.txt,
en une seule commande ?

7) Environnement utilisateur
---------------------------
1. Quels fichiers lit bash au démarrage pour initialiser l’environnement (shell
interactif, shell de connexion) ?
2. À quoi sert la variable d’environnement PATH ? Comment l’ajuster pour inclure un
répertoire personnel ~/bin ?
3. Explique la différence entre une variable globale (exportée) et une variable
locale.

8) Administration système
------------------------
1. Quel est le rôle des fichiers /etc/passwd et /etc/group ? Donne la structure
générale d’une ligne de /etc/passwd.
2. Comment ajoute-t-on un nouvel utilisateur en ligne de commande ? Un nouveau
groupe ?
3. Comment force-t-on le changement de propriétaire (chown) et de groupe (chgrp)
sur un répertoire ?
4. Donne un exemple d’utilisation de sudo et de su en expliquant la différence
entre ces deux commandes.

9) Compilation en C sous Linux


-----------------------------
1. Quelles sont les 4 étapes principales de la production d’un exécutable en C
(précompilation, compilation,
assemblage, édition de liens) ?
2. À quoi servent les options -I, -L, -l<lib> lors de l’édition de liens ?
3. Quelle commande permet de lister les dépendances dynamiques d’un exécutable (c.-
à-d. les bibliothèques
partagées dont il a besoin) ?

10) Scripting Shell


------------------
1. Explique la différence entre l’exécution d’un script via ./monscript.sh et
source monscript.sh.
2. Donne un exemple de structure if ... then ... elif ... else ... fi et un exemple
de structure case ... esac.
3. Comment récupère-t-on les arguments passés à un script (ex. $1, $2), et que
signifient les variables $#,
$@, $0 ?

------------------------------------------------------------------------------
(2) QUIZ THÉMATIQUES (QCM, vrai/faux, questions ouvertes, exercices)
------------------------------------------------------------------------------

============================
A) Culture Générale & Historique
============================
A.1) Questions rapides (Vrai/Faux)
----------------------------------
1. Vrai ou Faux : Unix est né du projet MULTICS, initié par Ken Thompson et Dennis
Ritchie
dans les années 70.
2. Vrai ou Faux : Linus Torvalds a créé Linux dans le but initial de proposer un
système
d’exploitation commercial.

A.2) QCM
--------
- Quelle norme spécifie les API communes à tous les Unix (compatibilité des appels
systèmes) ?
A. POSIX
B. HTTP
C. IPv6
D. GPT

A.3) Question ouverte


---------------------
- Pourquoi associe-t-on souvent le terme “GNU” à Linux ? Explique la notion de
système
d’exploitation “GNU/Linux”.

A.4) Questions ouvertes


-----------------------
1. Quels sont les grands principes hérités d’UNIX que l’on retrouve dans
GNU/Linux ?
2. Explique pourquoi Linux est considéré comme un système d’exploitation libre (ou
open source)
et quelles implications cela a pour les utilisateurs et les développeurs.

A.5) Exercices / mini-cas


-------------------------
- Exercice “petite chronologie” : place sur une frise les dates suivantes :
* Création d’Unix (années 70)
* Création de Linux (1991)
* Création du projet GNU (années 80)
* Première distribution Debian (années 90)

==================================
B) Commandes Shell de base & Aide en ligne
==================================

B.1) QCM
--------
1. À quoi sert la commande apropos ?
A. Rechercher des chemins d’une commande
B. Rechercher une commande par mot-clé dans les descriptions
C. Afficher l’historique des commandes
D. Afficher la version du shell

2. Quelle est la différence entre man <cmd> et info <cmd> ?


A. Aucune, identiques
B. man est paginé, info non
C. info propose une navigation par hyperliens, man un manuel linéaire
D. info n’existe plus sur les distributions modernes

B.2) Vrai/Faux
--------------
1. V/F : La commande cd est une commande externe stockée dans /bin/cd.
2. V/F : Les raccourcis Ctrl+C et Ctrl+Z ont le même effet sur un processus.

B.3) Questions ouvertes


-----------------------
1. Explique le rôle du PATH dans le fait qu’une commande “externe” puisse être
appelée sans
donner son chemin complet.
2. Quel est l’intérêt de la commande alias pour un utilisateur ? Donne un exemple.

B.4) Exercice pratique


----------------------
1. Montre comment compter le nombre de lignes contenant le mot root dans
/etc/passwd,
sans afficher lesdites lignes.

========================================
C) Système de fichiers avancé et montage
========================================

C.1) Questions ouvertes


-----------------------
1. Explique la notion de partition et pourquoi on peut en définir plusieurs sur un
disque
pour un système Linux.
2. À quoi servent les répertoires /dev, /proc et /tmp ?
3. Pourquoi est-il important de démonter proprement une clé USB (umount) avant de
la débrancher ?

C.2) Petit exercice


-------------------
- Décris brièvement les étapes pour formater une clé USB en FAT32 et la monter
sur /mnt/cle :
quelles commandes utiliser ?

========================
D) Permissions (droits)
========================

D.1) QCM
--------
1. Que signifie chmod 4755 mon_fichier ?
A. Fichier exécutable par tout le monde + sticky bit
B. Fichier appartient à root + bit suid
C. On retire les droits d’exécution
D. Commande invalide

2. Dans -rwsr-xr-x, que représente la lettre s dans la position des droits user ?
A. Bit sgid
B. Bit suid
C. Sticky bit
D. Un bit x mal écrit

D.2) Vrai/Faux
--------------
1. V/F : Un utilisateur peut supprimer un fichier qu’il ne possède pas, s’il a le
droit w
sur le répertoire parent.
2. V/F : Le bit sticky sert à empêcher la suppression ou le renommage d’un fichier
par un autre utilisateur.

D.3) Questions ouvertes


-----------------------
1. Explique le fonctionnement du bit sgid sur un répertoire.
2. Comment utilise-t-on umask pour avoir par défaut des fichiers en rw------- et
des répertoires en rwx--x--x ?

D.4) Exercices
--------------
- Montre comment donner à l’utilisateur tous les droits, au groupe seulement
lecture,
et aucun droit aux autres (notation symbolique, puis notation octale).
- Si la valeur par défaut d’un nouveau fichier est 666, quelle valeur de umask
pour qu’il soit créé en 640 ?

=================
E) Processus
=================

E.1) Vrai/Faux
--------------
1. V/F : L’état zombie d’un processus signifie qu’il est bloqué en mémoire et
consomme CPU.
2. V/F : La commande jobs affiche seulement les processus lancés depuis le shell
courant.

E.2) QCM
--------
1. Comment obtient-on la liste de tous les processus d’un utilisateur toto ?
A. ps -U toto
B. ps -u toto
C. ps -aux | grep toto
D. Les trois (avec nuances)

E.3) Questions ouvertes


-----------------------
1. Donne la séquence d’actions pour faire passer un processus par les états “actif
au 1er plan”,
“stoppé”, “actif en arrière-plan” puis le ramener au premier plan.
2. Explique la différence entre kill -9 <pid> et kill -15 <pid>.

E.4) Exercices
--------------
1. Simule la séquence de commandes pour lancer un éditeur de texte en arrière-plan,
le stopper (Ctrl+Z), le relancer en fg, puis l’arrêter définitivement.
2. Affiche uniquement les processus dont l’utilisateur est root (ex. ps -U root,
etc.).
=================================
F) Redirections & pipelines
=================================

F.1) QCM
--------
1. Si je tape cat file1 > file2, que se passe-t-il ?
A. On fusionne file1 et file2
B. On redirige le contenu de file1 dans file2 (écrasant file2)
C. On envoie le contenu de file2 dans file1
D. Syntaxe invalide

2. Que fait 2>/dev/null ?


A. Redirige la sortie standard dans /dev/null
B. Redirige la sortie d’erreur dans /dev/null
C. Redirige les descripteurs 1 et 2
D. Redirige les processus zombies

F.2) Questions ouvertes


-----------------------
1. Donne un exemple de pipeline (grep, sort, uniq) pour lister, trier, filtrer les
doublons.
2. Comment rediriger uniquement la sortie d’erreur vers /dev/null, en gardant
l’affichage normal ?

F.3) Exercices
--------------
1. Écris une commande qui lit /etc/passwd, filtre “root”, trie alphabétiquement,
élimine doublons.
2. Concaténer deux fichiers (f1, f2) dans f3, et rediriger les erreurs dans
log_erreurs.

=========================================
G) Environnement utilisateur & Variables
=========================================

G.1) Vrai/Faux
--------------
1. V/F : La variable PATH détermine le prompt de commande (PS1).
2. V/F : export VAR=truc rend la variable VAR visible pour les processus fils.

G.2) Questions ouvertes


-----------------------
1. Donne un exemple de création de variable d’environnement depuis uname -r.
2. Quelles différences entre /etc/bashrc, /etc/profile, ~/.bash_profile,
~/.bashrc ?

G.3) Exercices
--------------
1. Crée une variable MONEDITOR=vim puis un alias myedit qui lance $MONEDITOR, rends
persistants.
2. Modifie le prompt (PS1) pour inclure la date et l’heure.
===================================
H) Administration Système & Paquets
===================================

H.1) QCM
--------
1. Quel fichier configure la liste des dépôts (repositories) pour apt-get ?
A. /etc/shadow
B. /etc/profile
C. /etc/fstab
D. /etc/apt/sources.list

2. Que fait la commande dpkg -i monpaquet.deb ?


A. Installe ou met à jour un paquet local
B. Lance un script shell qui supprime le paquet
C. Affiche les dépendances insatisfaites
D. Alias de apt-get install monpaquet.deb

H.2) Questions ouvertes


-----------------------
1. Différence entre dpkg et apt-get sur Debian/Ubuntu ? Cas d’usage où dpkg est
préférable ?
2. Comment planifier une tâche quotidienne via crontab (ex. vider /tmp tous les
lundis minuit) ?

H.3) Exercices
--------------
1. Ajouter un utilisateur bob avec /home/bob, changer mot de passe.
2. Arrêter, puis redémarrer le service apache2.

====================================================
I) Compilation en C sous Linux (Makefiles, bibliothèques)
====================================================

I.1) QCM
--------
1. À quoi sert l’option -c lors de l’appel à gcc ?
A. Arrêter la compilation après l’assemblage
B. Arrêter la compilation après la phase de compilation (pas d’édition de liens)
C. Compiler en mode C++
D. Lancer le programme compilé

2. -I./include dans un Makefile signifie quoi ?


A. Indique le chemin vers les bibliothèques dynamiques
B. Indique où trouver les fichiers d’en-tête
C. Compile en mode interactif
D. Active les optimisations

I.2) Questions ouvertes


-----------------------
1. Explique la différence entre librairie statique (.a) et librairie dynamique
(.so).
2. Donne un mini-exemple de Makefile (3 ou 4 lignes) pour compiler un programme
exemple
à partir de exemple.c.
I.3) Exercices
--------------
1. Créer une librairie statique libhello.a (fichiers hello.c, util.c) puis compiler
main.c
qui l’utilise.
2. Que fait ldd ./monprog ? Que fait nm libhello.a ?

=========================================
J) Scripting (Shell)
=========================================

J.1) QCM
--------
1. Différence entre $* et $@ ?
A. Aucune
B. $* regroupe tous les arguments en une chaîne, $@ les sépare
C. $@ inclut $0
D. $@ regroupe tous les arguments en une chaîne, $* les sépare

2. Que fait la commande read var ?


A. Lit une valeur sur l’entrée standard et la stocke dans var
B. Importe la variable d’environnement var
C. Déclare var comme globale
D. Interrompt l’exécution

J.2) Exercices
--------------
1. Mini-script bonjour.sh : prend un prénom en argument, sinon “Bonjour toi !” +
code d’erreur 1.
2. Boucle for : énumérer tous les fichiers du répertoire courant finissant
par .txt, et afficher un compteur.

------------------------------------------------------------------------------
(3) QCM DE DÉFINITIONS (SANS RÉPONSES)
------------------------------------------------------------------------------

=================================================
A) Culture Générale & Historique -- QCM Définitions
=================================================
--------------------------------------------------------------------------------
QCM DE DEFINITIONS (SANS CORRECTION)
--------------------------------------------------------------------------------

A) Culture Générale & Historique


--------------------------------

1) UNIX
Parmi les propositions suivantes, laquelle décrit le mieux UNIX ?
A. C’est un éditeur de texte inventé par Dennis Ritchie et Brian Kernighan.
B. C’est un système d’exploitation multi-utilisateurs et multitâche développé à
l’origine chez Bell Labs.
C. C’est un langage de programmation procédural qui a servi à réécrire Linux.
D. C’est une distribution Linux gratuite orientée serveur.
2) POSIX
Que désigne POSIX ?
A. Un ensemble de règles fixant les spécifications d’une interface de
programmation pour systèmes de type UNIX.
B. Une distribution Linux spécialisée dans la recherche scientifique.
C. Le noyau Linux inventé par Linus Torvalds en 1991.
D. Un module de kernel permettant la virtualisation.

3) GNU
Parmi ces affirmations, laquelle définit correctement GNU ?
A. Un noyau multitâche écrit entièrement en assembleur.
B. Une suite d’outils et de logiciels libres (compilateurs, bibliothèques…),
dont l’acronyme signifie « GNU’s Not Unix ».
C. Un service d’hébergement pour les dépôts Git.
D. Une version propriétaire du système d’exploitation Unix.

4) Kernel (noyau)
Quelle est la définition la plus juste du noyau (kernel) dans un OS Linux ?
A. C’est l’interface graphique qui permet de lancer des fenêtres et des
applications.
B. C’est la partie logicielle qui gère les ressources matérielles, la mémoire,
les processus, etc.
C. C’est un fichier de configuration stocké dans /etc/kernel.conf.
D. C’est l’ensemble des utilitaires utilisateur comme ls, cat, etc.

5) Distribution
Comment peut-on définir une distribution GNU/Linux ?
A. Un simple exécutable « dist » permettant de lancer Linux.
B. Un ensemble complet (noyau + utilitaires + gestionnaire de paquets +
environnement) fourni par un éditeur ou une communauté.
C. Un outil qui permet de compiler le noyau Linux en un clic.
D. Un script bash rassemblant toutes les bibliothèques du système.

6) Système d’exploitation (OS)


Laquelle de ces définitions décrit un système d’exploitation ?
A. Un paquet qui contient uniquement les pilotes pour carte graphique.
B. Un ensemble de composants logiciels (noyau, utilitaires, etc.) gérant le
matériel et fournissant des services aux applications.
C. Le langage de programmation propriétaire de Microsoft.
D. Un script shell permettant de lancer apt-get et sudo.

B) Commandes Shell de base & Aide en ligne


------------------------------------------

1) Shell
Que désigne le terme Shell sous Linux ?
A. L’environnement graphique (desktop environment) par défaut sur Debian.
B. L’interpréteur de commandes permettant de saisir et d’exécuter des commandes.
C. Un outil réseau pour configurer l’adresse IP.
D. Un langage de programmation orienté objet exclusivement.

2) Prompt
Qu’appelle-t-on le prompt ?
A. Le fichier de configuration principal du shell.
B. Le symbole ou la ligne affichée avant que l’utilisateur ne saisisse une
commande (ex. $, #).
C. Un script qui nettoie l’historique.
D. Un utilitaire pour lancer des processus en arrière-plan.
3) Manuel en ligne (man pages)
Comment définir les pages de manuel (man pages) sous Linux ?
A. Une base de données sur les utilisateurs et groupes.
B. Un ensemble de pages web nécessitant un navigateur.
C. Un système d’aide standard, consultable avec la commande man, décrivant
l’usage et les options des commandes et API.
D. Un outil pour installer et désinstaller des paquets.

4) Commande interne vs commande externe


Laquelle des affirmations suivantes décrit le mieux la différence entre commande
interne et commande externe ?
A. Les commandes internes sont toujours des scripts bash, les commandes externes
sont des exécutables Windows.
B. Les commandes internes sont gérées directement par le shell (ex. cd), tandis
que les commandes externes correspondent à des programmes situés dans un répertoire
du système (ex. /bin/ls).
C. Les commandes internes nécessitent sudo pour s’exécuter, tandis que les
commandes externes sont libres d’accès.
D. Les commandes internes n’existent pas sous Linux, elles n’existent que sous
Windows.

5) Historisation
Qu’est-ce que l’historisation (history) dans un shell ?
A. La liste des utilisateurs ayant été connectés sur la machine.
B. Un fichier de configuration du shell qui récapitule les alias actifs.
C. La fonctionnalité qui stocke les commandes précédemment exécutées afin de
pouvoir les réutiliser.
D. Un annuaire en ligne recensant toutes les distributions Linux.

C) Système de fichiers & Chemins


--------------------------------

1) Chemin absolu
Lequel de ces énoncés caractérise un chemin absolu ?
A. Un chemin qui ne contient aucun slash /.
B. Un chemin débutant à la racine (/) et spécifiant tout l’itinéraire jusqu’au
fichier ou répertoire.
C. Un chemin utilisant ~ ou . comme point de départ.
D. Un chemin sous forme “Windows” (ex. C:\Users\...).

2) Chemin relatif
Un chemin relatif se définit comme :
A. Une URL Internet.
B. Un chemin commençant par / et finissant par .sh.
C. Un chemin spécifié par rapport au répertoire courant (., ..), sans partir de
la racine.
D. Un chemin qui inclut obligatoirement le répertoire home.

3) Répertoire personnel
Qu’appelle-t-on le répertoire personnel d’un utilisateur sous Linux ?
A. Le répertoire /usr/local/home.
B. Le répertoire où sont stockés les services système.
C. Le répertoire assigné à l’utilisateur (ex. /home/toto), qui contient ses
fichiers et préférences.
D. Le répertoire /etc dans lequel l’utilisateur peut enregistrer ses scripts.

4) Répertoire courant (pwd)


Quelle est la définition du répertoire courant ?
A. Le répertoire /current.
B. Le répertoire dans lequel on a démarré la machine.
C. Le répertoire à partir duquel sont interprétés les chemins relatifs et que la
commande pwd affiche.
D. Le répertoire racine /.

5) Répertoire parent (..)


Que représente symboliquement .. dans un chemin ?
A. Un script shell masqué.
B. Le répertoire parent (un niveau au-dessus dans l’arborescence).
C. Un répertoire système réservé aux superutilisateurs.
D. Un raccourci qui mène à /.

D) Permissions
--------------

1) Propriétaire (user)
Lequel de ces énoncés décrit le mieux le propriétaire (user) d’un fichier ?
A. L’utilisateur qui a le plus petit UID dans le système.
B. L’utilisateur qui, par défaut, possède tous les droits sur le fichier et dont
l’UID est stocké dans l’inode du fichier.
C. Un compte racine qui peut gérer tous les répertoires du système.
D. Le groupe root attaché au fichier.

2) Groupe (group)
Quelle est la définition d’un groupe sous Linux ?
A. Une collection d’utilisateurs ayant potentiellement les mêmes droits sur
certains fichiers/répertoires.
B. Un unique utilisateur secondaire dont le nom est nogroup.
C. Un outil permettant de gérer plusieurs machines en réseau.
D. Un script bash qui exécute plusieurs commandes en même temps.

3) Autres (others)
À quoi fait référence la classe others dans les droits d’accès (rwx) d’un
fichier ?
A. Les membres du même groupe que le propriétaire.
B. Tous les utilisateurs qui ne sont ni le propriétaire ni le groupe
propriétaire.
C. Les seuls utilisateurs administrateurs (root).
D. Les comptes “fantômes” qui n’ont pas de shell valide.

4) Bit suid / Bit sgid


Laquelle de ces propositions décrit correctement le bit suid (setuid) ou bit
sgid (setgid) ?
A. Ce sont des bits qui, lorsqu’ils sont activés, suppriment les droits
d’exécution du propriétaire.
B. Le bit suid fait qu’un programme s’exécute toujours avec les droits de
l’utilisateur qui le lance, tandis que le bit sgid s’exécute toujours avec les
droits root.
C. Le bit suid fait qu’un programme s’exécute avec les droits du propriétaire du
fichier, et le bit sgid fait qu’il s’exécute avec les droits du groupe
propriétaire.
D. Ce sont des bits désormais obsolètes, non utilisés en Linux moderne.

5) Sticky bit
Que signifie le sticky bit sur un répertoire (ex. /tmp) ?
A. Il interdit toute création de fichier dans le répertoire.
B. Il force le lancement en mode debug.
C. Il empêche un utilisateur de supprimer ou renommer un fichier qui ne lui
appartient pas, même si le répertoire est en écriture pour tout le monde.
D. Il rend le répertoire invisible pour les autres utilisateurs.

E) Processus
------------

1) Processus
Laquelle de ces définitions décrit un processus ?
A. Un fichier exécutable stocké dans /bin.
B. Un programme en cours d’exécution, avec un état, un PID et un contexte
propre.
C. Une ligne dans le fichier /etc/passwd.
D. Un service réseau écoutant sur le port 80.

2) PID
Qu’est-ce que le PID ?
A. Le mot de passe utilisateur.
B. Le numéro d’erreur d’une commande manquée.
C. L’identifiant unique attribué à chaque processus au lancement.
D. Un script shell permettant de tuer un programme.

3) Zombie (Zombi)
Parmi ces propositions, laquelle décrit correctement un processus zombie ?
A. Un processus qui consomme 100 % de CPU et ne répond plus.
B. Un processus qui a terminé son exécution mais dont l’entrée dans la table des
processus existe encore (pas de wait() fait par le père).
C. Un processus endormi (sleep) durant plus de 24 h.
D. Un processus root qui tourne en tâche de fond.

4) Processus orphelin
Que désigne un processus orphelin ?
A. Un processus qui n’a pas de terminal associé.
B. Un processus dont le parent s’est terminé et qui se retrouve réaffecté au
processus init (ou systemd).
C. Un processus qui a été démarré sans droits suffisants.
D. Un processus qui n’a plus de mémoire disponible.

5) Ordonnancement
Quelle définition correspond à l’ordonnancement (scheduling) ?
A. Un algorithme de cryptage des mots de passe.
B. La gestion de l’utilisation du CPU par les processus, en attribuant des
“quanta de temps” ou priorités.
C. L’activation du sticky bit sur un répertoire.
D. Un mécanisme pour charger les libraries (.so).

F) Redirections & Pipelines


---------------------------

1) `>`
Que fait l’opérateur de redirection `>` ?
A. Redirige la sortie standard (fd 1) d’une commande vers un fichier, en
l’écrasant.
B. Redirige la sortie d’erreur (fd 2) vers un fichier, en mode append.
C. Met en pause l’exécution du shell.
D. Lance la commande en arrière-plan.
2) `<`
Quelle est la fonction de l’opérateur `cmd < fichier` ?
A. Afficher le contenu d’un fichier après l’avoir trié.
B. Brancher le contenu du fichier en entrée standard de la commande cmd.
C. Déplacer un fichier dans /dev/null.
D. Rien, c’est une syntaxe invalide.

3) `2>`
Que redirige `2>` ?
A. La sortie d’erreur standard (fd 2).
B. La sortie standard (fd 1).
C. Les signaux de type “kill -2”.
D. Les processus zombies.

4) `|` (pipe)
Que permet l’opérateur pipe `|` ?
A. Faire un lien symbolique entre deux fichiers.
B. Envoyer la sortie standard d’une commande en tant qu’entrée standard d’une
autre.
C. Mettre la commande en arrière-plan.
D. Rediriger vers /dev/null.

5) `/dev/null`
Quelle est la définition de /dev/null ?
A. Un répertoire où sont stockés tous les logs systèmes.
B. Un périphérique spécial qui supprime tout ce qu’on y écrit (le “trou noir”).
C. Un fichier imposant qui contient la mémoire vive.
D. Un programme qui teste l’état des paquets installés.

G) Environnement utilisateur & Variables


----------------------------------------

1) Variable d’environnement
Qu’est-ce qu’une variable d’environnement dans un shell Linux ?
A. Une variable locale que l’on peut modifier uniquement dans le script courant.
B. Une variable définie et “exportée” pour être visible par le shell et ses
processus fils.
C. Un service dédié au stockage des logs du système.
D. Un alias que l’on crée pour renommer une commande.

2) Variable locale
Quelle définition correspond à une variable locale (non exportée) ?
A. Une variable stockée dans /etc/locale.conf.
B. Une variable valant toujours la même chose pour tous les utilisateurs.
C. Une variable définie dans le shell courant mais qui n’est pas transmise aux
processus fils.
D. Une variable obligatoire pour lancer sudo.

3) `export`
Que fait la commande export VAR=valeur ?
A. Elle détruit la variable locale VAR.
B. Elle rend la variable VAR accessible aux processus fils (c’est-à-dire en fait
une variable d’environnement).
C. Elle stocke la valeur de VAR dans /etc/environment.
D. Elle copie la variable VAR dans un fichier exported.sh.

4) alias
Parmi les propositions suivantes, laquelle définit correctement un alias ?
A. Un utilisateur secondaire dans /etc/passwd.
B. Une configuration de script qui modifie la variable PATH.
C. Un raccourci de commande (ex. alias ll="ls -l") géré par le shell.
D. Un mode de redirection des logs.

5) PS1 (prompt)
Que désigne la variable PS1 dans un shell bash ?
A. La variable qui stocke la langue du système.
B. La variable qui définit l’invite de commande (prompt) affichée pour
l’utilisateur.
C. La variable qui contient l’adresse du dépôt Git.
D. La variable qui limite la taille d’un fichier.

H) Administration système & Paquets


-----------------------------------

1) UID / GID
Que sont UID et GID ?
A. Le nom complet de l’utilisateur et le mot de passe chiffré.
B. Les identifiants numériques de l’utilisateur (User ID) et du groupe (Group
ID).
C. Les noms des services système.
D. Des variables shell indiquant la mémoire libre du système.

2) Démon (service)
Quelle est la meilleure définition d’un démon (service) sous Linux ?
A. Un script stocké dans /bin qu’on appelle en root.
B. Un processus qui s’exécute en arrière-plan, généralement lancé au démarrage
pour fournir un service (ex. SSH, Apache).
C. Un alias dédié au débogage en mode suid.
D. Un sous-répertoire de /dev/null.

3) Paquet .deb / .rpm


Qu’est-ce qu’un paquet .deb ou .rpm ?
A. Un simple fichier texte contenant la liste des utilisateurs.
B. Un format d’archive standard pour installer/désinstaller des logiciels dans
les distributions Debian/RedHat.
C. Un module du kernel chargé uniquement par l’utilisateur root.
D. Un fichier de configuration network.

4) Sources.list
Que contient principalement le fichier /etc/apt/sources.list (Debian/Ubuntu) ?
A. Les informations d’UID et de GID de chaque utilisateur.
B. Les référentiels (adresses) de dépôts de paquets pour apt-get.
C. Les scripts shell appelés au démarrage.
D. L’historique des commandes apt-get.

5) sudo
Que fait la commande sudo ?
A. Lance un script en amont pour vérifier la compatibilité du service.
B. Permet d’exécuter une commande avec les privilèges d’un autre utilisateur
(par défaut root), après authentification.
C. Réinitialise le mot de passe utilisateur sans demander de confirmation.
D. Lance le programme su en mode silencieux.

I) Compilation en C sous Linux (Makefiles, bibliothèques)


---------------------------------------------------------

1) Précompilation
Dans le processus de compilation en C, comment caractérise-t-on la
précompilation ?
A. La phase qui génère l’exécutable final.
B. La phase qui traite les directives #include, #define, supprime les
commentaires, etc.
C. L’assemblage du code en langage machine.
D. L’étape où l’on charge les bibliothèques dynamiques (.so).

2) Assemblage
À quoi correspond la phase d’assemblage dans la compilation ?
A. Transformer le code source C en code assembleur.
B. Fusionner plusieurs bibliothèques statiques pour créer une .so.
C. Convertir le code assembleur en fichier objet (binaire).
D. Créer le script de lancement du programme.

3) Édition de liens (linking)


Laquelle de ces phrases décrit l’édition de liens ?
A. On arrête la compilation avant de produire le fichier objet.
B. On lie les fichiers objets et éventuelles bibliothèques pour produire
l’exécutable.
C. On édite manuellement les sources du programme pour corriger les erreurs.
D. On configure le noyau pour autoriser l’utilisation de ld.

4) Librairie statique vs. dynamique


Parmi ces définitions, laquelle correspond à une librairie statique ?
A. Un ensemble de fichiers objets archivés (.a) qui sont copiés dans
l’exécutable final lors du linking.
B. Un fichier .so qui est chargé en mémoire à l’exécution, partagé entre
plusieurs programmes.
C. Un script shell qui contient toutes les définitions de fonctions.
D. Un code inaccessible au linking.

5) Makefile
Qu’est-ce qu’un Makefile ?
A. Un script bash qui compile directement le noyau Linux.
B. Un fichier texte décrivant les dépendances entre fichiers (sources, objets)
et les commandes nécessaires pour construire un projet (compilation, édition de
liens, etc.).
C. Un module du kernel permettant de monter des volumes.
D. Un service web qui crée des répertoires.

J) Scripting (Shell)
--------------------

1) Script shell
Que désigne un script shell ?
A. Un exécutable binaire intégré dans /bin/.
B. Un fichier texte contenant des commandes et instructions de shell, interprété
par Bash (ou un autre shell).
C. Une liste de paquets à installer via apt-get.
D. Un programme en langage compilé C ou C++.

2) Interpréteur vs. langage compilé


Laquelle de ces affirmations décrit la différence entre langage interprété et
langage compilé ?
A. Les langages interprétés n’ont pas de syntaxe, les langages compilés en ont
une.
B. Un langage interprété est transformé en exécutable binaire à la volée, tandis
qu’un langage compilé l’est avant l’exécution.
C. Les langages interprétés exigent l’accès root, les compilés pas
nécessairement.
D. Les langages interprétés sont tous des shells, les compilés sont tous en
Java.

3) Arguments positionnels ($1, $2, …)


Que sont les arguments positionnels ($1, $2, etc.) dans un script shell ?
A. Les variables d’environnement globales partagées par tous les utilisateurs.
B. Les paramètres passés en ligne de commande au script, correspondant au 1er
argument, 2e argument, etc.
C. Les arguments obligatoires pour lancer sudo.
D. Les logs générés par la commande history.

4) Variables spéciales ($#, $@, $0, $?)


Parmi les définitions suivantes, laquelle est correcte pour $ ? (le point
d’interrogation) ?
A. Le nombre d’arguments passés au script.
B. La liste de tous les arguments.
C. Le code de retour (exit code) de la dernière commande exécutée.
D. Le nom du script en cours d’exécution.

5) Fonctions dans un script shell


Comment définit-on une fonction dans un script shell Bash ?
A. function nom_fonction : do-end
B. def nom_fonction { ... }
C. nom_fonction() { <liste_de_commandes>; }
D. Les fonctions n’existent pas dans le shell.

--------------------------------------------------------------------------------
Fin du fichier .txt
--------------------------------------------------------------------------------

Vous aimerez peut-être aussi