Correction_MindsDS_2023_S2.docx

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 9

Devoir Surveillé

Semestre : 1

2
Module : Administration et sécurité des SE UNIX
Enseignant(s) : UP Système
Classe(s) 3A42-->3A54
Documents autorisés : OUI NON Nombre de pages : 6
Date : 12/04/2023 Heure: 11H45 Durée : 1h

N° Carte : …………………………………………………………..........
Nom et Prénom : ………………………………………………………. Classe : …………………..

Exercice 1 : (10 pts)


Choisir la bonne réponse(QCU)

1. Pour créer un fichier 'images' dans le 2. La commande « grep '^r' /etc/passwd » :


répertoire courant contenant les noms de A. Affiche toutes les lignes du fichier /etc/passwd
tous les fichiers d’extension '*.png' se B. N’affiche que les lignes du fichier /etc/passwd
trouvant dans le répertoire /home, on qui commencent par la lettre r
exécute la commande : C. N’affiche que les lignes du fichier /etc/passwd
A. find /home -type f -name '*.png' > images qui contiennent la lettre r
B. ls '.png' >> images D. N’affiche que les lignes du fichier /etc/passwd
C. find /home -type f -name '.png' | qui se terminent par la lettre r ‘$r’
images
D. cp home/'*.png' ./images

3. UEFI stocke les entrées de démarrage dans : 4. Qu'est-ce que « efibootmgr » ?


A. La partition ESP A. Un chargeur de démarrage pour les
B. La carte CMOS ordinateurs EFI
C. La mémoire NVRAM B. Un outil de débogage pour les
D. La mémoire flash systèmes d'exploitation EFI
C. Un outil responsable au stockage des entrées
de démarrage EFI
D. Un utilitaire pour gérer les entrées de
démarrage EFI
5. La commande « update-grub »: 6. Quelle est la commande qui permet d’afficher les
A. Permet l’installation d’un nouveau noyau détails de tous les fichiers du répertoire
B. S’exécute pour réparer des problèmes de personnel dont le nom commence par une lettre
démarrage minuscule ?
C. Responsable à la mise à jour de la A. find ~ -type f -name '[a-z]*' –exec ls –l {}
configuration du fichier B. find ~ -type f -name '[az]*' –exec ls –l
/etc/grub.d/10_linux {} \ ;
D. Permet de mettre à jour le fichier de C. find ~ -type f -name '[a-z]*' –exec ls –l
configuration du chargeur d'amorçage {}\;
GRUB D. find ~ -type f -name '[a-z]*' –exec ls –ld {} \ ;
-exec commande {}\;
find . -type f | cat # la commande cat est exécuter 1
seule fois
find . -type f –exec cat {}\; # la commande cat est
exécuter n fois dépand de la sortie de find
7. Pour déplacer tous les fichiers dont les 8. Dans la partition ESP, quel est le fichier
noms commencent par “file” d’un correspondant au chargeur de démarrage ?
utilisateur 'esprit' dans le répertoire A. shim64.efi
courant, on utilise la commande : démarrage
A. mv /home/esprit/file . sécurisé
B. cp /home/esprit/file . B. grubx64.efi
C. mv /home/esprit/file* . # le point chargeur de
représente le rep courant démarrage
D. mv /home/esprit/file* ~/ # ~/ représente GRUB2
le rep personnel C. BOOTX64.Efi efibootmgr
D. grub2.efi
9. Parmi les propositions suivantes, laquelle 10. Soit la capture suivante
est équivalente à la commande « chmod
431 ~/toto » ? ~ /home/esprit
A. chmod u=rwx,g=rx,o=r ~/toto Que représente le champ contenant la valeur 2 ?
B. chmod ugo=rwx ~/toto A. Le numéro d’inode
C. chmod u=r,g=wx,o=x ~/toto B. Le nombre de liens
D. chmod 431 /home/toto symbolique
C. Le nombre de liens physiques
D. D. La taille en otects
11. Pour afficher le nombre d'arguments 12. Que contient la variable $? en Shell?
passés à un script, on exécute la A. Le nom du script $0
commande : B. Le nombre de paramètres $#
A. echo # C. La liste de tous les paramètres $*
B. echo $# D. Le code de retour de la dernière ligne de commande
C. echo ${#}
D. echo $$#

13. Que fait le script ci-dessous ? 14. Le lancement du script myscript.sh ci-dessous par la
commande
« bash myscript A B C D E F G H I J K L » affiche:

A. Tester si la taille du « var » est nulle puis


l’affiche sur l’écran A. J
B. Affiche le message « Ali » s’il est B. A0
connecté à la machine C. JA
C. Tester si la taille du « var » est non nulle D. A
puis l’affiche sur l’écran
D. Affiche le message « Ali » s’il n’est pas
connecté à la machine
15. Soit le script ci-dessous, laquelle 16. UEFI utilise un schéma de partitionnement :
des propositions suivantes est A. LBA
correcte ? B. MB
R
C. GP
T
D. CHS
A. Le script permet de sommer $1 avec les
chiffres inférieurs ou égal $2
B. Le script affiche la multiplication de $2
par tous les chiffres inférieurs ou égaux à$2
C. Le script permet de multiplier $1 par tous
les chiffres compris entre 0 et $2
D.Le script affiche le message « $V x $1 =
$V * $1 » $2 fois
17. Quelle est la fonction principale de 18. Comment GRUB2 peut-il être utilisé pour
GRUB2 dans la séquence de dépanner les problèmes de démarrage de Linux
démarrage de Linux? ?
A. Charger le noyau Linux A. En utilisant le mode de dépannage de GRUB2
B. Charger les services du système B. En utilisant la commande grub-editenv
(systemd) C. En utilisant la commande grub-reboot
C. Configurer les paramètres de la carte D. En utilisant la commande grub-set-default
graphique
D. Charger le chargeur d'amorçage

19. Sous Linux, quelle est la différence 20. Quelle commande permet de créer un
entre un lien physique et un lien lien symbolique?
symbolique? A. ln -s source destination
A. Un lien physique est un lien symbolique B. ln source -s destination
qui pointe vers un fichier existant. C. ln -p source destination
B. Un lien physique est un nouveau nom de D. ln -f source destination
fichier qui pointe vers le même
emplacement sur le disque que le fichier
original.
C. Un lien symbolique est un nouveau nom
de fichier qui pointe vers le même
emplacement sur le disque que le fichier
original.
D. Un lien symbolique est un lien physique
qui pointe vers un fichier existant.

Capture 1
Exercice 2 : (5 pts)

1. Citer la commande à exécuter qui permettra d’afficher les informations de démarrage cités ci-
dessus. (0.5pts)
……………………………… efibootmgr………………………………………………………………
2. Citer la commande à exécuter pour changer l’ordre du démarrage en mettant l’entrée “Ubuntu”
en dernière position tout en gardant l’ordre des autres entrées. (0.75pts)
efibootmgr –o 0000,0001,0002,0003,0004
3. Donner le chemin complet du fichier contenant les paramètres du menu de GRUB2 ainsi que le
chemin du répertoire contenant les scripts de création du menu GRUB2. (1pts)
/etc/default/grub fichier contenant les paramètres du menu
/etc/grub.d répertoire contenant les scripts de création du menu

4. On vous donne un aperçu du fichier contenant les paramètres du menu de GRUB2: (2.75pts)
Capture 2

A partir des deux captures 1 et 2, écrire un script nommé boot_info.sh qui affichera les informations
suivantes une fois exécuté:

A noter que:
• user: est le nom de l’utilisateur connecté
• nbre: est le nombre des entrées de démarrages
• style: est soit hidden, soit menu selon la configuration
• time: est le timeout du menu GRUB
#!/bin/bash

user=`whoami`
nbre=`efibootmgr | grep '^Boot000*' | wc -l`
style=`grep '^GRUB_TIMEOUT_STYLE' /etc/default/grub | cut -d '=' -f2`
time=`grep '^GRUB_TIMEOUT=' /etc/default/grub | cut -d '=' -f2`

echo "Bonjour $user, vous avez $nbre ....."

Exercice 3 : (5 pts)
Écrire un script Shell qui traite un fichier contenant les notes des étudiants d’une classe.
La structure du fichier des notes est donnée sous la forme ci-dessous où chaque étudiant est décrit
par un paragraphe de 3 lignes : la première ligne contient le nom, la deuxième contient le prénom et
la troisième contient un score entier sur 100 points.
Travail demandé :
1. Le script teste l’existence du fichier des notes dont le nom est saisi s’il n’est pas passé en
argument. Si le fichier n’existe pas, le message d’erreur suivant s’affiche « Fichier
inexistant ». (1.5pts)
2. Il affiche le nombre des étudiants. (1.5pts)
3. Il crée un fichier appelé liste_admis contenant les noms et les prénoms des étudiants admis.
Un étudiant est admis s’il a un score dépassant 50 points. (2pts)
#!/bin/bash
if [ $# -eq 1 ];then
nomfich=$1
else
read -p "donner le nom du fichier des notes " nomfich
fi
if [ -f $nomfich ];then
echo "Bien recu le fichier!"
else
echo "$nomfich : fichier inexistant!"
exit
fi

n1=$(cat $nomfich|wc -l)


n=$(($n1/3))
echo "nombre des etudiants = $n"
echo "Liste des Admis :">liste_admis

cat $nomfich | while read ligne


do

i=`expr $i + 1`
j=`expr $j + 1`
if [ $i -eq 3 ]
then
if [ $ligne -ge 50 ]
then
echo "`tail +$(($j-2)) $nomfich | head -1` `tail +$(($j-1)) $nomfich|head -1` $ligne">>liste_admis
fi
i=0
fi
done
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
Bonne chance

Vous aimerez peut-être aussi