Proposition_6 linux

Centre National de l'Evaluation et des Examens

 

Examen d’obtention du Brevet de Technicien Supérieur

                Session Mai 2016

 

Page

1

 4

 

Filière:

SYSTEMES ET RESEAUX INFORMATIQUES

 

Durée:

2 Heures

Épreuve:

Système d’exploitation GNU/Linux

 

Coefficient:

20

QCM :

 

  • Soit  un fichier appelé «liste » qui contient un certain nombre de mots, un par ligne. Vous souhaitez produire  une liste numérotée des cinq premiers mots, selon l'ordre alphabétique. Laquelle des lignes de commande suivantes peut être utilisée pour produire cette liste?

  • A. sort liste | nl | head -5

  • B. split -1 liste ; cat xa? | head -5

  • C. nl liste | sort | sed '/^     [^12345]/d'

  • D. nl liste | sort | head -5

 

  • Qui des noms de périphériques suivants indique une partition logique ?

  • A. /dev/sda3

  • B. /dev/fd0

  • C. /dev/hdb7

  • D. /dev/hda4

  • E. /dev/fd7

  • F. /dev/sdc11

 

 

  • Supposons qu'un fichier «noms» contient une liste de noms dans la forme, "prénom nom", un par ligne. Ces noms ne sont pas triés, et que vous souhaitez les trier par nom. Cependant, le format des noms sur chaque ligne devrait rester la même. Dont l'une des commandes suivantes ne seront pas sortie une liste triée de façon appropriée des noms à la console?

  • A. cut -f 2 -d " " names | paste names - | sort -k 3 | cut -f 1

  • B. sort -k 2 names

  • C. sed 's/\(\w*\) \(\w*\)/\2 \1 \2/' names | sort | cut -f 2-3 -d " "

  • D. cut -f 2 -d " " names | sort

  • E. cut -f 2 -d " " names | paste - names | sort | cut -f 2

 

  • Quelle commande Linux peut être utilisée pour limiter l'allocation de l’utilisation de l'espace disque d'un utilisateur particulier? Supposons pour cette question que les quotas sont activées.

  • A. edquota

  • B. setquota

  • C. quotaon

  • D. repquota

 

  • Supposons que vous avez créé une nouvelle application 'myapp', et vous l’avez copié dans le répertoire «/ usr / local / bin '. Vous souhaitez que  tous les utilisateurs du système peuvent exécuter votre application. Laquelle des lignes de commande suivantes permettrait l'accès approprié?

  • A. chmod o+x /usr/local/bin/myapp

  • B. chgrp bin /usr/local/bin/myapp

  • C. umask 0022 /usr/local/bin/myapp

  • D. chown 755 /usr/local/bin/myapp

 

EXERCICE 1 :

  • Créer  les groupes : tennis, football et sports. 

  • Avec une seule commande créer Venus appartenant aux groupes tennis et sport.

  • Renommer le groupe football par le nom foot.

 

EXERCICE 2 :

    • Lister les filesystems reconnus par votre système

    • Créer un filesystem  ext2  sur  une partition de 200Mo.

    • Créer un filesystem  ext3 sur une partition logique de 300Mo.

    • Créer un filesystem ext4  sur une partition de 400Mo.

    • Rendre l’espace réservé pour root du filesystem ext3 0 pourcent.

    • Vérifier votre travail.

 

EXERCICE 3 :

  On considère un partage Windows nommé toto sur le serveur fileserver.info.univ-fcomte.fr accessible à l'utilisateur toto du domaine w2k3. Le mot de passe associé à ce compte est "pw01toto10".
On souhaite monter ce partage en lecture/écriture depuis une machine fonctionnant sous linux équipé d'un client samba, pour l'utilisateur linux titi du groupe linux titi de cette machine. Le point de montage est /mnt/titi.

    • Quelle est la commande permettant de réaliser une telle opération?

    • Exécutée par titi, cette commande est-elle susceptible de fonctionner sur votre poste?

 

EXERCICE 4 :

Créer un volume RAID 1 à partir des disques "sdb" et "sdc". 

Monter ce volume raid sour le répertoire /data.

Contrôler l'état du volume raid avec mdadm et en consultant le fichier /proc/mdstat

Supprimer le volume RAID 1 avant de passer à l'exercice suivant.

 

EXERCICE 5 :

 

Créer un script qui vous propose le menu suivant :

1 - Vérifier l'existence d'un utilisateur

2 - Connaître l'UID d'un utilisateur

q - Quitter

L'utilisateur devra être saisi, à l'aide d'une fonction. Son existence devra être vérifiée à l'aide d'une autre fonction.

 

EXERCICE 6 : Service de partage de fichiers Samba

Séquence 1 : Configuration de Samba pour la connexion des utilisateurs

    • Si nécessaire installer les paquetages samba, samba-common et samba-client et lancer le service smb. Une configuration par défaut est activée. Comment pouvez-vous en observer les détails ?

 

    • Créez un groupe nommé legal auquel appartiennent les utilisateurs elies, anouar, aroua et amine. Ne leur donnez pas de mot de passe ils ne pourront accéder au système que par Samba

 

 

    • Par défaut, Samba est configurer pour recevoir des mots de passe cryptés, mais il n’y a pas encore de mots de passe dans la base de Samba. Pour tester votre serveur vous devez exécuter smbpasswd pour chaque utilisateur qui pourra accéder à votre serveur. Ajoutez les utilisateurs de l’étape 2, root et un autre utilisateur de votre choix

 

    • Notez que le premier volume partagé défini dans /etc/samba/smb.conf, [homes], n’a pas de chemin spécifié. Ce partage est configuré pour partager le répertoire personnel d’un utilisateur s’il se connecte et est authentifié. Transférez un fichier dans le volume partagé du répertoire personnel de l’utilisateur elies.

 

Séquence 2 : Permettre l’accès au répertoire d’un groupe

 Scénario : Il se trouve qu’en plus d’avoir leurs propres privés sur le serveur, nos quatre utilisateurs appartiennent au même département et nécessitent un endroit où stocker leurs fichiers. Nous devons configurer un groupe Linux pour les utilisateurs, créer un répertoire pour qu’ils puissent stocker leur contenu et configurer le serveur Samba pour partager le répertoire.

 

    • Créez le répertoire /home/depts/legal. Définissez les propriétés et les permissions de ce répertoire de telle manière que les personnes dans le groupe legal puissent ajouter/supprimer des fichiers et personne d’autre. Définissez également les permissions SGID et Sticky afin que le propriétaire du groupe sur tous les fichiers créés dans ce répertoire soit le propriétaire du répertoire legal et qu’un utilisateur ne puisse pas supprimer le fichier d’un autre.

 

    • Créez un partage Samba nommé [legal] dans /etc/samba/smb.conf. Seuls les membres du groupe legal devraient avoir accès au partage. En outre, assurez-vous que les fichiers placés dans le partage [legal] soient créés avec les permissions 0660.

 

 


 

 

 

 

 

 

 

 

 

 

Correction

QCM :

 

  • Soit  un fichier appelé «liste » qui contient un certain nombre de mots, un par ligne. Vous souhaitez produire  une liste numérotée des cinq premiers mots, selon l'ordre alphabétique. Laquelle des lignes de commande suivantes peut être utilisée pour produire cette liste?

  • A. sort liste | nl | head -5

  • B. split -1 liste ; cat xa? | head -5

  • C. nl liste | sort | sed '/^     [^12345]/d'

  • D. nl liste | sort | head -5

 

  • Qui des noms de périphériques suivants indique une partition logique ?

  • A. /dev/sda3

  • B. /dev/fd0

  • C. /dev/hdb7

  • D. /dev/hda4

  • E. /dev/fd7

  • F. /dev/sdc11

 

 

  • Supposons qu'un fichier «noms» contient une liste de noms dans la forme, "prénom nom", un par ligne. Ces noms ne sont pas triés, et que vous souhaitez les trier par nom. Cependant, le format des noms sur chaque ligne devrait rester la même. Dont l'une des commandes suivantes ne seront pas sortie une liste triée de façon appropriée des noms à la console?

  • A. cut -f 2 -d " " names | paste names - | sort -k 3 | cut -f 1

  • B. sort -k 2 names

  • C. sed 's/\(\w*\) \(\w*\)/\2 \1 \2/' names | sort | cut -f 2-3 -d " "

  • D. cut -f 2 -d " " names | sort

  • E. cut -f 2 -d " " names | paste - names | sort | cut -f 2

 

  • Quelle commande Linux peut être utilisée pour limiter l'allocation de l’utilisation de l'espace disque d'un utilisateur particulier? Supposons pour cette question que les quotas sont activées.

  • A. edquota

  • B. setquota

  • C. quotaon

  • D. repquota

 

  • Supposons que vous avez créé une nouvelle application 'myapp', et vous l’avez copié dans le répertoire «/ usr / local / bin '. Vous souhaitez que  tous les utilisateurs du système peuvent exécuter votre application. Laquelle des lignes de commande suivantes permettrait l'accès approprié?

  • A. chmod o+x /usr/local/bin/myapp

  • B. chgrp bin /usr/local/bin/myapp

  • C. umask 0022 /usr/local/bin/myapp

  • D. chown 755 /usr/local/bin/myapp

 

EXERCICE 1 :

  • Créer  les groupes : tennis, football et sports. 

groupadd tennis ; groupadd football ; groupadd sports

 

  • Avec une seule commande créer Venus appartenant aux groupes tennis et sport.

usermod –a _G tennis,sports venus

 

  • Renommer le groupe football par le nom foot.

groupmod –n foot football

 

EXERCICE 2 :

    • Lister les filesystems reconnus par votre système

    • Créer un filesystem  ext2  sur  une partition de 200Mo.

    • Créer un filesystem  ext3 sur une partition logique de 300Mo.

    • Créer un filesystem ext4  sur une partition de 400Mo.

    • Rendre l’espace réservé pour root du filesystem ext3 0 pourcent.

    • Vérifier votre travail.

 

EXERCICE 3 :

  On considère un partage Windows nommé toto sur le serveur fileserver.info.univ-fcomte.fr accessible à l'utilisateur toto du domaine w2k3. Le mot de passe associé à ce compte est "pw01toto10".
On souhaite monter ce partage en lecture/écriture depuis une machine fonctionnant sous linux équipé d'un client samba, pour l'utilisateur linux titi du groupe linux titi de cette machine. Le point de montage est /mnt/titi.

    • Quelle est la commande permettant de réaliser une telle opération?

mount -t smbfs -o rw,uid=titi,gid=titi,username=w2k3/toto,password=pw01toto10 //fileserver.info.univ-fcomte.fr/toto /mnt/titi

    • Exécutée par titi, cette commande est-elle susceptible de fonctionner sur votre poste?

non, car la commande mount n'est, par défaut, autorisée qu'à l'utilisateur root.

 

EXERCICE 4 :

Créer un volume RAID 1 à partir des disques "sdb" et "sdc". 

Monter ce volume raid sour le répertoire /data.

Contrôler l'état du volume raid avec mdadm et en consultant le fichier /proc/mdstat

Supprimer le volume RAID 1 

 

# mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc -ayes


# mdadm --detail /dev/md0

/dev/md0:

        Version : 00.90.01

  Creation Time : Fri May  4 08:41:42 2007

     Raid Level : raid1

     Array Size : 524224 (511.94 MiB 536.81 MB)

    Device Size : 524224 (511.94 MiB 536.81 MB)

   Raid Devices : 2

  Total Devices : 2

Preferred Minor : 0

    Persistence : Superblock is persistent


    Update Time : Fri May  4 08:42:04 2007

          State : clean

 Active Devices : 2

Working Devices : 2

 Failed Devices : 0

  Spare Devices : 0



    Number   Major   Minor   RaidDevice State

       0       8       16        0      active sync   /dev/sdb

       1       8       32        1      active sync   /dev/sdc

           UUID : a4072a6e:f0824f88:03dcd16e:f28828b4

         Events : 0.2


# mkfs.ext3 /dev/md0


# mount /dev/md0 /data

 

EXERCICE 5 :

 

Créer un script qui vous propose le menu suivant :

1 - Vérifier l'existence d'un utilisateur

2 - Connaître l'UID d'un utilisateur

q - Quitter

L'utilisateur devra être saisi, à l'aide d'une fonction. Son existence devra être vérifiée à l'aide d'une autre fonction.

 

#!/bin/bash 

 

function pause 

{ 

    echo "Appuyez sur ENTER pour continuer" 

    read 

} 

 

function saisirUser 

{ 

    echo "Saisir l'utilisateur" 

    read util 

} 

 

function verifyUser 

{ 

    if grep "^$util:" /etc/passwd > /dev/null 

    then 

        echo "L'utilisateur existe" 

    else 

        echo "L'utilisateur n'existe pas" 

    fi 

    pause    

} 

 

rep=1 

while [ $rep -eq 1 ] 

do 

    clear 

    printf "menu :\n\n" 

    echo "1. Vérifier l’existence d'un utilisateur" 

    echo "2. Connaître l'UID d'un utilisateur" 

    echo -e "3. Quitter\n" 

    read choix 

    case "$choix" in 

        1) 

            saisirUser 

            verifyUser ;; 

 

        2)     

            saisirUser 

            id $util 

            pause ;; 

 

        q) 

            echo "Au revoir" 

            pause 

            rep=0 ;; 

        *) 

            echo "Erreur de saisie" 

            pause ;; 

    esac 

done


EXERCICE 6 : Service de partage de fichiers Samba

Séquence 1 : Configuration de Samba pour la connexion des utilisateurs

    • Si nécessaire installer les paquetages samba, samba-common et samba-client et lancer le service smb. Une configuration par défaut est activée. Comment pouvez-vous en observer les détails ?

smbclient –L localhost –N

    • Créez un groupe nommé legal auquel appartiennent les utilisateurs elies, anouar, aroua et amine. Ne leur donnez pas de mot de passe ils ne pourront accéder au système que par Samba

groupadd lega

l for user in elies anouar aroua amine ; do

 useradd –G legal –s /sbin/nologin $user

 done

 

    • Par défaut, Samba est configurer pour recevoir des mots de passe cryptés, mais il n’y a pas encore de mots de passe dans la base de Samba. Pour tester votre serveur vous devez exécuter smbpasswd pour chaque utilisateur qui pourra accéder à votre serveur. Ajoutez les utilisateurs de l’étape 2, root et un autre utilisateur de votre choix

smbpasswd –a elies 

smbpasswd –a anouar 

smbpasswd –a aroua 

smbpasswd –a amine

 smbpasswd –a root

 

    • Notez que le premier volume partagé défini dans /etc/samba/smb.conf, [homes], n’a pas de chemin spécifié. Ce partage est configuré pour partager le répertoire personnel d’un utilisateur s’il se connecte et est authentifié. Transférez un fichier dans le volume partagé du répertoire personnel de l’utilisateur elies.

smbclient //localhost/elies -U elies

 Vous devriez voir maintenant l’invite smb:\>

 put /etc/hosts hosts

 

Séquence 2 : Permettre l’accès au répertoire d’un groupe

 Scénario : Il se trouve qu’en plus d’avoir leurs propres privés sur le serveur, nos quatre utilisateurs appartiennent au même département et nécessitent un endroit où stocker leurs fichiers. Nous devons configurer un groupe Linux pour les utilisateurs, créer un répertoire pour qu’ils puissent stocker leur contenu et configurer le serveur Samba pour partager le répertoire.

 

    • Créez le répertoire /home/depts/legal. Définissez les propriétés et les permissions de ce répertoire de telle manière que les personnes dans le groupe legal puissent ajouter/supprimer des fichiers et personne d’autre. Définissez également les permissions SGID et Sticky afin que le propriétaire du groupe sur tous les fichiers créés dans ce répertoire soit le propriétaire du répertoire legal et qu’un utilisateur ne puisse pas supprimer le fichier d’un autre.

mkdir -p /home/depts/legal 

chgrp legal /home/depts/legal

 chmod 3770 /home/depts/legal

 

    • Créez un partage Samba nommé [legal] dans /etc/samba/smb.conf. Seuls les membres du groupe legal devraient avoir accès au partage. En outre, assurez-vous que les fichiers placés dans le partage [legal] soient créés avec les permissions 0660.

[legal]

 comment = fichiers de legal 

path = /home/depts/legal 

publiuc = no 

write list = @legal

 create mask = 0660

 sevice smb restart