Les commandes de base de Linux
Crédit [1]
✎ Travail n° 1 Apport de connaissances
-
Consulter le document Introduction à Linux pour une présentation succinte de Linux afin de pouvoir poursuivre l’atelier.
💻 Travail n° 2 : Créer son compte personnel
Après s’être authentifié, Linux sauvegarde tous les éléments de profil utilisateur (préférences etc…) dans le répertoire /home/<user> où <user> désigne le login de l’utilisateur c.-à-d. son nom de connexion à Linux. Ce répertoire est appelé le home directory ou, en français, le répertoire d’accueil.
La création d’un compte utilisateur implique de :
-
créer le répertoire d’accueil pour cet utilisateur (→
/home/<utilisateur>) dans lequel seront stockés tous les éléments de son profil -
créer l’utilisateur en spécifiant :
-
son login c.-à-d. son nom de session/connexion
-
le chemin de son répertoire d’accueil
-
son mot de passe
-
L’objectif de ce travail est de vous faire créer votre propre compte utilisateur sur OpenSUSE.
-
En étant connecté en tant qu’administrateur (→
root), créez le répertoire de votre compte selon les exigences suivantes :-
il doit se trouver dans le répertoire
/home -
il portera votre nom de login (→ votre nom de famille)
-
le propriétaire (
rootpour l’instant) aura tous les droits dessus. -
les membres du groupe par défaut (
rootpour l’instant) pourront le lire et parcourir mais pas écrire dedans. -
tous les autres n’auront aucun droit.
Solution
localhost:~ # mkdir /home/skywalker localhost:~ # chmod 0750 /home/skywalker localhost:~ # ls -l /home total 0 drwxr-x--- 1 root root 0 Sep 24 10:20 skywalker localhost:~ #
-
-
En étant connecté an tant qu’administrateur (→
root), créer l’utilisateur associé à votre compte avec la commandeuseradd. Pour ce faire, consulter préalablement la page de manuel de cette commande (→man useradd) afin de trouver les options qui permettent de spécifier le mot de passe et le chemin du répertoire d’accueil.En cas d’erreur dans la création de l’utilisateur avec la commande
useradd, on peut utiliser la commandeusermodpour modifier les caractéristiques du compte ou simplement le détruire avec la commandeuserdel -rf <user>.Solution
localhost:~ # useradd -M -d /home/skywalker -N -g users -c "Luc Skywalker" skywalker (1) localhost:~ # passwd skywalker (2) New password: Retype new password: passwd: password updated successfully1 Crée l’utilisateur skywalkerdont le nom complet est Luc Skywalker (→ option-c). Son répertoire d’accueil est/home/skywalker(→ option-d) mais n’est pas créé (→ option-M) puisque cela a été fait à la question précédente. Enfin, son groupe par défaut serausers(→ option-g) et aucun groupe portant son nom ne sera créé (→ option-N)2 Attribue un mot de passe à l’utilisateur skywalker -
Modifier enfin le propriétaire (→
chown) et le groupe (→chgrp) de votre répertoire personnel afin qu’il vous appartienne et qu’il soit affecté au groupeusers(→ groupe prédéfini dans OpenSUSE)Résultat attendu pour l’utilisateur Luc Skywalkerlocalhost:~ # ls -ld /home/skywalker/ drwxr-x--- 1 skywalker users 158 Sep 22 12:26 /home/skywalker/Solution
localhost:~ # chown skywalker /home/skywalker/ (1) localhost:~ # chgrp users /home/skywalker/ (2) localhost:~ # chown skywalker:users /home/skywalker/ (3) localhost:~ # ls -ld /home/skywalker/ drwxr-x--- 1 skywalker users 0 Sep 24 10:20 /home/skywalker/ localhost:~ #1 On change le propriétaire du répertoire 2 On change le groupe affecté au répertoire 3 On peut changer à la fois le propriétaire et le groupe du répertoire avec le commande chown(→ voir la syntaxe dans la page de manuel :chown [OPTION]… [OWNER][:[GROUP]] FILE…) -
Après avoir exécuté ce travail, s’assurer de pouvoir se connecter à Linux sous son nom.
Pour faire cette vérification, on peut :
-
soit quitter la session graphique en cours pour se reconnecter ensuite sur son compte
-
soit utiliser le terminal :
localhost:~ # sudo su --login skywalker (1) skywalker@localhost:~> pwd (2) /home/skywalker skywalker@localhost:~> exit (3) logout localhost:~ #1 On prend provisoirement l’identité de l’utilisateur skywalker2 on affiche le chemin absolu de son répertoire d’accueil (→ raccourci ~)3 On reprend son identité d’origine (→ rootdans ce cas là)Avec cette 2ème alternative on ne vérifie cependant pas le mot de passe
-
💻 Travail n° 3 : Créer une arborescence de répertoires pour un projet
On souhaite créer une arborescence de répertoires permettant à un groupe de travail de s’échanger des données.
-
Créez l’arborescence de répertoires pour le projet selon les conditions suivantes :
-
Le groupe de travail se nomme
grtrav.Le créer avec la commande
groupaddavec l’option-f. -
Les membres du groupe
grtravse nommentutil1,util2,util3.Les créer avec les commandes
useraddetpasswdde façon à ce que :-
ils appartiennent au groupe
grtravpar défaut (→ option-g) -
leurs répertoires personnels soit créés automatiquement (→ option
-m) -
leurs mots de passe soient leurs propres noms d’utilisateur
-
-
Le répertoire de tête s’appelle
projet. Il se trouve à la racine du système de fichiers (→ dans/) et son propriétaire estroot -
Seuls les membres du groupe auront le droit de lire et parcourir
/projet. L’administrateur aura tous les droits. -
Chaque membre du groupe
grtravdispose d’un sous répertoire de travail personnel qui porte son nom préfixé parwrk-(→wrk-util1,wrk-util2…) et dans lequel il peut tout faire mais que les membres degrtravne peuvent que traverser. -
Les membres du groupe
grtravauront un accès en lecture seule dans le sous répertoirepublicde chacun d’eux. Le propriétaire aura tous les droits. -
Le répertoire
projetcomportera un répertoire nommécommun— propriété deroot— sur lequel lui et tous les membres du groupegrtravauront tous les droits.
Résultat attendu :localhost:~ # ls -ld /projet (1) drwxr-x--- 1 root grtrav 0 Sep 24 11:58 /projet localhost:~ # tree -pug /projet (2) /projet ├── [drwxrwx--- root grtrav ] commun ├── [drwx--x--- util1 grtrav ] wrk-util1 │ └── [drwxr-x--- util1 grtrav ] public ├── [drwx--x--- util2 grtrav ] wrk-util2 │ └── [drwxr-x--- util2 grtrav ] public └── [drwx--x--- util3 grtrav ] wrk-util3 └── [drwxr-x--- util3 grtrav ] public 7 directories, 0 files1 On affiche les caractérisitiques de /projet2 On affiche l’arborescence des sous-répertoires présents sous /projetSolution
localhost:~ # groupadd -f grtrav localhost:~ # useradd -N -g grtrav -m util1 localhost:~ # passwd util1 localhost:~ # useradd -N -g grtrav -m util2 localhost:~ # passwd util2 localhost:~ # useradd -N -g grtrav -m util3 localhost:~ # passwd util3 localhost:~ # mkdir /projet localhost:~ # chmod 0750 /projet localhost:~ # chgrp grtrav /projet localhost:~ # cd /projet localhost:/projet # mkdir commun/ wrk-util1/ wrk-util1/public wrk-util2/ wrk-util2/public wrk-util3/ wrk-util3/public localhost:/projet # chgrp grtrav commun/ wrk-util1/ wrk-util1/public wrk-util2/ wrk-util2/public wrk-util3/ wrk-util3/public localhost:/projet # chown util1 wrk-util1/ wrk-util1/public/ localhost:/projet # chown util2 wrk-util2/ wrk-util2/public/ localhost:/projet # chown util3 wrk-util3/ wrk-util3/public/ localhost:/projet # chmod 0770 commun/ localhost:/projet # chmod 0710 wrk-util1/ localhost:/projet # chmod 0750 wrk-util1/public/ localhost:/projet # chmod 0710 wrk-util2/ localhost:/projet # chmod 0750 wrk-util2/public/ localhost:/projet # chmod 0710 wrk-util3/ localhost:/projet # chmod 0750 wrk-util3/public/ -
-
Prendre l’identité de
util1avec la commandesu - util1On peut savoir le nom du compte sur lequel on est connecté grâce :
-
à l’analyse de l’invite de commande :
util1@localhost:~> (1)1 util1est le nom du compte courant et le ‘>’ indique que c’est un compte standard (le ‘#’ indique un compte administrateur) -
à la commande
whoami:util1@localhost:~> whoami util1
-
-
Vérifier les droits pour cet utilisateur :
-
impossibilité de créer/détruire un répertoire/fichier dans
/projet -
possibilité de se rendre dans tous les répertoires et sous-répertoires de
/projet/(ex. :/projet/wrk-util2,/projet/wrk-util2/public,projet/commun, …) -
impossibilité de lister le contenu des répertoires
/projet/wrk-util2/et/projet/wrk-util3 -
impossibilité de créer/supprimer un fichier/répertoire ailleurs que dans
/projet/util1et les répertoires/projet/wrk-utilN/public/,/projet/commun
-
-
Faire valider votre travail par le professeur.
💻 Travail n° 4 Chemins absolus et relatifs
-
Donner les commandes à saisir par
util1pour se déplacer dans le répertoire cible depuis le répertoire courant indiqué en utilisant le type de chemin spécifiéRépertoire courant Répertoire cible Type chemin /home/util1//home/util1/bin/relatif
/home/util1/bin//projet/communabsolu
/projet/commun//home/util1/binabsolu avec ‘~’
/home/util1//projetrelatif
/projet/~util2absolu
/home/util2//projet/wrk-util3/publicabsolu
/projet/wrk-util3/public/projet/wrk-util1relatif
-
Parcourir la page de manuel
(1p)de la commandecdpuis :-
Donner la signification de la commande
cd - -
Dans quel répertoire se déplace-t-on si on exécute cette commande suite à celles exécutées pour répondre à la question 1) ?
-
🞄 🞄 🞄
