Copyright ©
Table des matières
Liste des exemples
Table des matières
Le bâtiment informatique comporte 4 salles (F001, F101, F005 et F202/203) équipées dans lesquelles se trouvent à peu prés 60 postes. Tous les ordinateurs de chaque salle sont reliés à un même commutateur (switch) par des câbles réseau. Les commutateurs de chaque salle sont eux-mêmes connectés en cascades sur un commutateur de tête, placé dans la salle des serveurs : le bocal Les serveurs sont reliés aussi au commutateur.
Ainsi physiquement, tous les appareils sont reliés entre eux. On dispose aussi d'un modem adsl permettant de relier le réseau local à internet. Cette connexion est gérée par un serveur.
En gros, vous utiliserez plus précisément (sans toujours le savoir) deux des serveurs du BTS : BigServ et Sirac.
Les postes clients sont des ordinateurs personnels équipés de deux systèmes d'exploitation : le système windows généralement version XP Service Pack 2 ou 3, et un système linux minimal ou plus complet selon les salles, permettant
Selon la salle dans laquelle vous travaillez, l'environnement peut varier, pour répondre aux besoins des cours que vous y suivez.
Ainsi, en F001 et F005, les ordinateurs démarrent avec une distribution basique Mandriva, permettant de basculer en mode client léger XDMCP. Une fois logués, vous travaillez sur le système installé sur le serveur XDMCP choisi. Sirac et Sialouze tournent sous Gentoo avec environenemnt graphique Xfce.
La salle F101, également nommée laboratoire réseau est réservée exclusivement aux étudiants de seconde année, qui suivent l'option Administrateur de Réseaux Locaux d'Entreprise.
Les ordinateurs de la salle F202/203 travaillent avec une distribution Ubuntu 8.04 LTS Hardy Heron. Chaque étudiant possède son propre système, qu'il est amené à configurer et administrer. Deux systèmes sont donc installés par ordinateurs : un pour un étudiant du groupe A et un pour un étudiant du groupe B. Chaque étudiant doit donc gérer son compte d'administrateur du système, mais peut se loguer sur n'importe quelle machine à partir de son compte global, à savoir celui géré par Sirac. Il est également possible, en ouvant les options, situées en bas à gauche de la fenêtre de connexion, de se connecter en mode client léger (ou mode passif) sur les serveur XDMCP de la section : Sirac et Sialouze.
Lorsque vous allumez votre ordinateur client, un écran vous est proposé, sur lequel sont demandés un login et un mot de passe. Chaque utilisateur du système dispose d'un compte. Le login est formé de la première lettre du prénom suivi immédiatement de la totalité du nom de famille. Par exemples, un étudiant nommé Louis Dupond a pour login : ldupond. Un étudiant nommé Hubert Godefroy de Montmirail a pour login hgodefroydemontmirail. Remarquez que toutes les lettres sont en minuscules.
Lorsqu'un utilisateur rentre son login et son mot de passe, on dit qu'il se loggue.
Pour pouvoir travailler, il est nécessaire de se logguer. Le mot de passe est et doit rester strictement confidentiel. Il garantit l'identité de la personne qui se connecte. Il ne doit en aucun cas être trivial (facile à retrouver) et ne doit être divulgué. Vous êtes pénalement et civilement responsables des actions commises sous votre identité.
Une fois identifié, vous obtenez un environnement graphique (Gnome, KDe ou Xfce) qui vous permet de travailler.
Par opposition au mode graphique, on peut utiliser le système en mode texte. Obtenir l'interface en mode texte quand on est en mode graphique nécessite le lancement d'une application émulant le mode texte s'appelant konsole. Sous Ubuntu, cette application peut être démarrée ainsi : Menu Application >> Accessoire >> Terminal.
Table des matières
L'arborescence des fichiers est quasiment systématiquement la même sous les différentes distributions linux :
/ |-- bin |-- boot |-- dev |-- etc |-- home | |-- gdupond | | |-- Documents | | |-- coursS3 | | |-- coursS2 | | | '--vim | | '-- Projets | |-- pduval | '-- sdurand |-- initrd |-- lib |-- media |-- mnt |-- opt |-- proc |-- root |-- sbin |-- sys |-- tmp |-- usr `-- var
Le système de fichier peut être assimilé au réseau de racines d'un arbre. / slash est appelée racine du système de fichier. Les conteneurs de l'arborescence sont appelés des répertoires. Un répertoire peut contenir lui-même des répertoires mais aussi des fichiers.
Le système de fichier de Linux est basé sur des noeuds (node in english). Un noeud, grossièrement, représente un fichier. Un noeud contient des informations telles que l'emplacement du fichier, le noeud père du noeud (autrement dit, le répertoire dans lequel se trouve le fichier), le noeud lui-même, les noeuds fils si le fichier est un répertoire, car en UNIX et Linux, les répertoires sont considérés comme des fichiers ayant des noeuds fils.
A un instant donné, on se trouve dans un répertoire que l'on appelle répertoire courant ou répertoire de travail. Par défaut, lorsque l'on ouvre la console, le répertoire courant est notre répertoire personnel. Il est possible de savoir à tout instant quel est notre répertoire courant.
La commande pwd, pour Print Working Directory, nous affiche le nom absolu du répertoire courant.
Travail à faire : testez la commande pwd. Quel résultat obtenez-vous ?
Il est possible de changer de répertoire de travail et donc de se déplacer dans l'arborescence du système de fichiers. On utilise pour cela la commmande "change directory": cd nomDeRépertoire
Pour nommer un répertoire, on peut utiliser deux types de noms : noms absolus ou noms relatifs.
Un nom absolu est formé de la concaténation des noms des répertoires par lesquels on doit passer pour arriver au répertoire que l'on souhaite atteindre, en partant de la racine /. Le nom absolu commence donc toujours par /. Il reste le même pour un noeud quel que soit le répertoire courant.
ex: /home/gdupond/coursS3/
la commande cd / permet donc de se rendre sur la racine
Exercice : : donnez le nom absolu du répertoire Documents de l'utilisateur gdupond
Travail à faire :
Alors que les noms absolus partent de la racine, les noms relatifs partent du répertoire courant.
Ainsi, si le pwd nous donne /home,
le nom relatif "pdupond/public_html" désigne le répertoire dont le nom absolu est: "/home/pdupond/public_html".
Pour former le nom absolu le système concatène le répertoire courant avec le nom relatif fourni.
A contrario des noms absolus, les noms relatifs ne commencent pas par "/".
Exercice : si le pwd donne : /home,quel est le nom relatif du répertoire /home/gdupond/sql ?
Travail à faire :
Le nom absolu est sûr : quel que soit le répertoire courant, il fonctionne toujours.
Le nom relatif est souple : même si on déplace une sous arborescence. Un sous-répertoire, un répertoire frère (voisin), ..., sont toujours placés identiquement les uns par rapport aux autres. Par exemple, un site web se doit d'utiliser un chemin relatif pour lier les images stockées dans un répertoire précis. En effet, une fois le site hébergé sur le serveur web désiré, il est probable que les noms absolus ne soient plus opérationnels.
"./" désigne le répertoire courant. "../" désigne le parent du répertoire courant. Celui qui le contient.
Grâce au ../ il est donc possible de désigner relativement un répertoire situé plus haut dans l'arborescence, voire de redescendre ensuite dans une autre branche.
Alors, si pwd nous donne /home/gdeniere/public_html/
../ désigne /home/gdeniere/../coursS3/ désigne /home/gdeniere/coursS3/../../ désigne /home/
Travail à faire :
02_projetVariables/home/
Chaque utilisateur est propriétaire d'un sous répertoire de /home. On appelle ce répertoire : le home directory de l'utilisateur. Il a généralement pour nom le login de l'utilisateur.
~ est un raccourci désignant son propre répertoire personnel. ~pduval désigne le home directory de l'utilisateur "pduval".
cd ~ permet de revenir dans le home directory de l'utilisateur connecté. cd sans argument produit le même effet.
La commande "list" ls permet de voir ce qu'il y a dans un répertoire désigné de façon absolue ou relative.
syntaxe : ls nomDuRepertoire
ls sans argument liste fichiers et répertoire du répertoire courant.
Travail à faire : testez les commandes suivantes :
On remarque une différence entre ls et ls -a.
ls -a affiche un certain nombre de fichiers et répertoire en plus.
ces fichiers ou répertoires ont tous un nom qui commence par le caractère . et cette caractéristique fait qu'ils ne sont pas affichés lors d'un ls normal.
On dit que ce sont des fichiers ou répertoires cachés.
Travail à faire : essayez dans votre home directory :
essayez aussi ls -al.
Pour désigner répertoires ou fichiers on peut utiliser les caractères génériques ? ou *.
Ainsi ls /etc/*.conf donne le listing de tous les fichiers finissant par .conf.
ls v?m* me donne tous les fichiers commençant par v ayant n'importe quel caractère ensuite puis un m suivi de n'importe quoi.
on verra donc:
vim vimtutor vemx vampire
???t désigne les noms de 4 caractères avec un t en dernière position exemple: pist dept
Table des matières
commande: make directory
syntaxe: mkdir nomDuRepertoire
Le nom de répertoire peut être donné en absolu ou relatif
Travail à faire :
~
|-----S1
|-----S2
| |-----vim
| |-----se
|
|-----S3
| |-----procedural
| |-----evt
| |-----objet
| |-----sql
|
|-----S4
| |-----compta
| |-----edi
|
|-----S5
|-----ploum
|-----clic
La suppression de répertoire se fait grâce à la commande rmdir
commande : remove directory
syntaxe: rmdir nomDuRepertoire
Travail à faire : supprimez le répertoire ploum
Travail à faire : supprimez le répertoire S5
Que ce passe-t-il ?
Il semblerait qu'on ne peut pas supprimer un répertoire qui contient quelque chose.
En d'autres mot rmdir semble ne supprimer que des répertoires vides.
Pour supprimer S5 avec rmdir il faudrait d'abord supprimer son répertoire clic.
rmdir ne permet donc que la suppression de répertoires vides.
commande remove
syntaxe rm -r nomDuRépertoire
La commande rm accepte une option r récursif qui signifie qu'elle va vider tous les sous-répertoires avant de vider le répertoire demandé.
Travail à faire :
commande: copy
syntaxe cp nomDuSource nomDeLaCible
Dans cet exemple, le nom du fichier cible n'est pas entièrement spécifié. C'est le nom d'origine qui est alors repris: tutor.fr
Si on veut donner un autre nom au fichier copié, il suffit d'indiquer le nouveau nom dans la destination :
Travail à faire : A l'aide de vim, créez un fichier : ~/S2/essais.txt
essais.bak~/S2/vim/~/S2/se/ sous le nom essais.bak
commande: copy
syntaxe: cp -r nomDuRépertoireACopier nomDuRépertoireCible
Travail à faire :
commande: remove
syntaxe rm nomDuFichier
Travail à faire : Supprimez ~/S2/essais.txt
vérifiez que le fichier a bien disparu.
commande: move
syntaxe: mv ancienNom nouveauNom
Travail à faire :
~/S2/se/essais.bak en ~/S2/se/essais.txtS3 en s3sqldans S2Travail à faire : Quelle différence y a-t-il entre mv ~/s3/objet ~/S1 et mv ~/s3/objet ~/s1 ?
Table des matières
Lorsque l'on tape le début d'une commande, votre shell (interpréteur de commande) peut essayer de deviner ce qu'il doit mettre pour la compléter. Ainsi si vous tapez cd /ho<tab>, le système de complète automatiquement en ajoutant "me".
Supposons que nous souhaitions aller dans le home directory de unNomADormirDebout
cd unN<tab>
vous rendra grand service.
[raoul@bigserv s2]# cd /home/e eamoros ecezanne echabrier evaluationsG1 evaluationsG2 [raoul@bigserv s2]# cd /home/e
L'historique est constitué de l'ensemble des commandes tapées par un utilisateur. Sous bash il suffit d'utiliser les flêches haut et bas du clavier pour naviguer dans l'historique.
Mais l'intégralité de l'historique peut être affiché grâce à la commande history.
Pour sauver son historique: history > sauvHistorique.txt
Pour rechercher dans l'historique: history | grep "chaîne recherchée"
Pour naviguer dans l'historique: history | less
Pour imprimer l'historique: history | lpr -P <nomImprimante>
Pour rappeler une commande récente, il est possible :
Pour effacer l'historique: history -c
Le copier s'effectue en sélectionnant la partie à copier
Le coller est effectué par un clic simultané sur les deux boutons de la souris, ou par un clic sur le bouton central, lorsque la souris en dispose.
commande clear syntaxe: clear
A noter: on peut dans un programme c/c++ faire exécuter une commande du système grâce à l'instruction: system("commande à exécuter");
On pourra donc effacer l'écran par la commande : system("clear");
La commande clear efface l'écran, mais ne vide pas l'historique. Il ets même possible d'utiliser la barre de schrolling de la console pour consulter ce qui a été traité précédemment.
commande calendar syntaxe: cal
La commande
La commande clear efface l'écran, mais ne vide pas l'historique. Il ets même possible d'utiliser la barre de schrolling de la console pour consulter ce qui a été traité précédemment.
Historiquement, les mots de passe des utilisateurs ont tout d'abord été stockés dans le fichier /etc/passwd. Puis, pour des raisons de sécurités, ils en ont été retirés. En effet ce fichier est lisible par tout le monde. Ce fichier contient toujours la liste des utilisateurs du système, mais plus les mots de passe. Les mots de passe de chaque utilisateur sont enregistrés maintenant sous forme cryptée dans un fichier qui s'appelle /etc/shadow.
La commande courante pour changer son mot de passe est la commande passwd.
syntaxe: passwd
Le super utilisateur peut s'affranchier de cette stratégie de mots de passe. Ainsi sur Ubuntu, et d'autres systèmes, il est possible de changer son mot de passe en mode SU : sudo passwd <login>.
commande : manuel
syntaxe: man <nomDeLaCommande>
man accepte les instructions suivantes, une fois les pages de manuels ouvertes :
Par défaut, les pages du manuel sont en anglais. Pour les obtenir en français, dans la mesure où elles existent, il faut installer les paquets manpages-fr et manpages-fr-extra.
Travail à faire : A l'aide de la commande man, obtenez pour chacune des commandes suivantes, leur rôle et un exemple d'utilisation.
cat
A l'aide de cette commande :
less
Trouver les principales commandes de ce programme et les expérimenter sur le fichier userAndGroup. On cherchera en particulier, les commandes permettant
tail
Trouver les principales commandes de ce programme et les expérimenter sur le fichier userAndGroup. On cherchera en particuluer à
Le résultat n'est pas affichable en entier à l'écran. Il est alors possible d'utiliser un filtre pour tout voir, grace à un tube ou pipe, en suffixant la commande de : | <filtre>.
Travail à faire :
A l'aide des pages manuel, trouvez les options du filtre sort permettant de trier les commandes de l'historique par ordre numérique décroissant.
Sur toutes les machines clientes, (les postes des salles) un linux de base est installé. Il est évidemment possible de s'en servir. Les systèmes linux disposent de différentes consoles virtuelles. Certaines sont en mode texte et d'autres en mode graphique.
Les consoles en mode texte sont au nombre de 6. Elles sont accessibles par ctrl alt <F1>, ctrl alt <F2>, ... . Sur chaque console, un utilisateur différent peut se loguer. Les consoles graphiques elles aussi sont au nombre de 6. Evidemment, elles sont plus gourmandes en mémoire que les consoles en mode texte, c'est pourquoi il ne faudra les utiliser qu'avec parcimonie. Actuellement une seule console graphique est activée et elle donne accés à une fenêtre permettant de se loguer sur le serveur Sirac en XDMCP.
Pour ouvrir une seconde console en mode graphique, on lancera la commande suivante : startx -- :1. Le premier serveur X est :0 le second : :1 etc ... la console lancée ici est accessible sur ctrl alt <F8>
Sous Mandriva, le bureau à lancer par le startx est inscrit dans le fichier "caché" .desktop situé dans votre home directory. Le fichier .desktop contenu dans le home directory de chaque utilisateur contient son bureau préféré. Il est facile de le modifier à l'aide d'un simple éditeur. On y écrira l'un des noms d'environnement suivants: gnome, kde, xfce4 ou tout bureau à votre convenance.
Table des matières
L'archivage conduit à la recopie fidèle d'une partie de l'arborescence d'un système de fichier.
L'archivage conserve les attributs des fichiers et répertoire avec les permissions d'origine.
La commande pour archiver ou restaurer se nomme "tape archiver" puisque dans bien des systèmes, la sauvegarde se fait sur bande magnétiques (tape) appelées aussi unités de sauvegardes.
syntaxe: tar -cvzf nomDeLArchive nomDesFichiersOuRepertoires
Exemple 7. Archivage d'un répertoire
[jlegrand@localhost:~$ tar -cvzf exosC++.tar.gz ./IG1_C++ IG1_C++/ IG1_C++/01_projetHello/ IG1_C++/01_projetHello/hello.cpp IG1_C++/01_projetHello/coucou IG1_C++/01_projetHello/exo1.cpp IG1_C++/01_projetHello/gpl ... IG1_C++/04_projetRepetitive/ IG1_C++/04_projetRepetitive/compareIntLong.cpp IG1_C++/04_projetRepetitive/compareIntLong IG1_C++/04_projetRepetitive/valeursIntExtremes.cpp IG1_C++/04_projetRepetitive/valeursIntExtremes [jlegrand@localhost:~$ ls exosC++.tar.gz IG1_C++ Bureau Image [jlegrand@localhost:~$
Le ls nous montre que l'archive: exosC++.tar.gz a bien été créée.
Travail à faire : A l'aide de la commande man, déterminer à quoi correspondent les options c v z f.
Travail à faire : Exéxutez la commande présentée en exemple ci-dessus.
Restaurer une archive consiste à extraire les répertoires et fichiers d'origine qu'elle contient.
Syntaxe: tar -xvzf nomDeLArchive
Dans l'exemple suivant, on supprime le répertoire précédemment archivé, puis on restaure la sauvegarde
Exemple 8. Restauration d'une archive
[jlegrand@localhost:~$ rm -Rf IG1_C++ [jlegrand@localhost:~$ ls exosC++.tar.gz Bureau Image [jlegrand@localhost:~$ tar -xvzf exosC++.tar.gz IG1_C++/ IG1_C++/01_projetHello/ IG1_C++/01_projetHello/hello.cpp IG1_C++/01_projetHello/coucou IG1_C++/01_projetHello/exo1.cpp IG1_C++/01_projetHello/gpl ... IG1_C++/04_projetRepetitive/ IG1_C++/04_projetRepetitive/compareIntLong.cpp IG1_C++/04_projetRepetitive/compareIntLong IG1_C++/04_projetRepetitive/valeursIntExtremes.cpp IG1_C++/04_projetRepetitive/valeursIntExtremes [jlegrand@localhost:~$ ls exosC++.tar.gz IG1_C++ Bureau Image [jlegrand@localhost:~$
On voit qu'après restauration, on retrouve le système de fichier dans l'état ou il était lors de la sauvegarde.
Travail à faire :
Archivage/restauration
exosRepetitives.tar.gz de votre dossier IG1_C++/04_projetRepetitive.~/sauvegardes/ répertoire que vous aurez préalablement créé.Sauvegarde de windows
Pour travailler sur un ordinateur distant on utilise le protocole ssh qui établi un tunnel crypté entre les deux machines. Le cryptage consiste à transformer l'information qui circule de façon à ce que seuls l'emetteur et le destinataire puissent la comprendre. Le cryptage assure la confidentialité et l'intégrité de l'information.
Obtention d'un terminal en mode texte: ssh <adresseDuServeur>. Le login utilisé sur l'ordinateur distant est alors le même que le login local.
Obtention d'un terminal en mode texte avec précision du login distant : ssh <loginDistant>@<adresseDuServeur>.
Si c'est la première fois que la connexion est établie entre les deux machines, il faut acceptée la clé de cryptage asymétrique RSA proposée.
Bien entendu, à chaque connexion, il faut saisir son mot de passe.
Comme il est possible de se perdre, c'est-à-dire de ne plus savoir sur quel poste on est en train de travailler, la commande hostname nous affiche le nom de la machine sur laquelle le shell est lancé. De même, quand on est vraiment perdu la commande whoami nous indique notre login.
Pour fermer une session SSH, tapez exit.
Travail à faire :
Pour travailler sur un ordinateur au lycée alors que vous êtes chez vous, on utilise également le protocole ssh.
Obtention d'un terminal en mode texte : ssh <loginDistant>@<adresseDuServeur>. Les conditions d'utilsiation sont les mêmes qu'en réseau local, si ce n'est qu'il faut donner une adresse stable pour le serveur. Soit une adresse IP, si elle est fixe et que vous la connaissez, soit un nom de domaine qui pointe sur le serveur. Pour notre section, il est conseillé d'utiliser l'adresse www.btsinfogap.org, qui est l'URL de bigserv aux yeux d'Internet.
Il est également possible dans notre section de se connecter directement sur sirac ou sialouze depuis Internet, même si ces serveurs l'ont pas d'adresse publique. C'est le firewall de bigserv qui va s'occuper de leur envoyer les paquets SSH qui leur sont destinés. Ainsi, pour se connecter en SSH sur sialouze ou sirac, il faut ajouter respectivement l'option -p 2022 et -p 2222 à la commande de connexion SSH.
Travail à faire depuis chez vous :
Un outil utilisant le protocole ssh permet de transférer des fichiers entre deux ordinateurs. Cet outil se nomme scp pour Secure CoPy. Il s'utilise ainsi: scp <nomNoeudSource> <loginDistant>@<adresseDuServeur>
Par défaut, le fichier ou le dossier est transféré à la racine de votre répertoire personnel. Il est toutefois possible de préciser où stocker le fichier ou le dossier sur la machine distante ainsi : scp <nomNoeudSource> <loginDistant>@<adresseDuServeur>:<nomNoeudDestination>
Il est possible de transférer toute une arborescence en utilisant l'option récursive -r.
Le trafic résultant de la communication entre les deux machines peut être réduit en compressant l'information avant de la transférer ceci est fait en activant l'option -C lorsqu'on établit le tunnel.
Cette commande fonctionne aussi bien en réseau local que par Internet. Il faut juste choisir la bonne adresse pour le serveur, comme précisé précédemment.
Comme pour SSH, il est possible de transférer des fichiers ou dossiers directement sur sialouze ou sirac, en ajoutant respectivement l'option -P 2022 et -P 2222.
Travail à faire :
Travail à faire depuis chez vous :
scp permet également de rappatrier des ficvhiers ou dossiers depuis une serveur SSH. Il s'utilise ainsi : scp <loginDistant>@<adresseDuServeur>:<nomNoeudSource> <nomNoeudDestination>
Le fonctionnement est similaire au transfert vers le serveur, décrit plus haut.
Travail à faire :Table des matières
A chaque application lancée correspond au moins un processus.
Un processus porte un numéro PID, a un nom et un propriétaire.
La liste des processus en cours d'exécution peut être obtenue par la commande ps.
Exemple 9. sortie d'un ps
[gthom@localhost tp]$ ps PID TTY TIME CMD 13206 pts/2 00:00:00 bash 15867 pts/2 00:00:01 konqueror 16151 pts/2 00:00:00 ps
Lorsque l'on souhaite lister tous ses processus ps -u nomDuUser
Exemple 10. ps -u
jlegrand@localhost:~$ ps -u jlegrand PID TTY TIME CMD 5165 ? 00:00:05 gconfd-2 5167 ? 00:00:00 gnome-keyring-d 5169 ? 00:00:01 x-session-manag 5224 ? 00:00:00 seahorse-agent 5228 ? 00:00:00 dbus-daemon 5229 ? 00:00:08 gnome-settings- 5233 ? 00:00:16 pulseaudio 5238 ? 00:00:00 gconf-helper 5251 ? 00:00:56 gnome-screensav 5252 ? 00:01:09 metacity ...
La commande top donne une vision rafraîchie des processus en cours d'exécution triés par leur taux d'utilisation du processeur.
Lorsque l'on souhaite mettre fin à un processus et que l'on connait son pid on utilise la commande kill pid
Travail à faire : déterminez le pid de firefox et tuez le processus.
Lorsque l'on connait le nom du processus exemple gvim, il est possible de le tuer en le désignant par son nom
killall nomDuProcessus
Travail à faire : relancez firefox, puis repérez son nom de processus et tuez-le à partir de ce nom.
Lorsque le processus est récalcitrant et ne peut se tuer tout seul, l'option -9 appliquée aux commandes killall ou kill permet de forcer la disparition du processus.
On peut aussi tuer le processus associé à une application X11 en utilisant xkill on obtient un curseur spécial et il suffit de cliquer sur une des fenêtres de l'application concernée pour mettre fin à cette dernière.
Travail à faire : relancez firefox, puis tuez-le graphiquement.
Lorsqu'on lance depuis un terminal, un exécutable qui boucle ou qui prend trop de temps à s'exécuter, il est possible d'y mettre fin en utilisant la combinaison de touche suivante: ctrl c.
Enfin, il est possible de tuer un serveur X entier en cours de visualisation, dans ce cas, on utilise la combinaison de touches : ctrl alt backspace La touche backspace est la touche effacement de caractère.
Travail à faire : enregistrez tout travail en cours, puis tuez votre serveur X.
la commande ls -l permet de voir les informations détaillées sur les fichiers et dossiers contenus dans le dossier courant.
Exemple 11. l'affichage des droits et propriétaires : ls -l
julien@ubuntu:~/xml$ ls -l total 3072 -rw-r--r-- 1 julien julien 12450 2008-09-05 10:58 c++2emeAnnee.xml -rw-r--r-- 1 julien julien 69158 2009-02-03 20:19 coursc++.html -rw-r--r-- 1 julien julien 53273 2009-02-03 20:19 coursc++.xml -rw-r--r-- 1 julien julien 68833 2009-01-20 20:16 coursSystemeLinux.html -rw-r--r-- 1 julien julien 50691 2009-02-08 16:12 coursSystemeLinux.xml -rw-r--r-- 1 julien julien 1221462 2009-01-12 09:06 docbook1.68.tar.gz -rw-r--r-- 1 julien julien 13396 2008-09-27 20:59 docbook.css -rwxr-xr-x 1 julien julien 403 2008-09-27 14:29 docbook_multi.xsl -rwxr-xr-x 1 julien julien 331 2008-09-05 10:58 docbook_unique.xsl drwxr-xr-x 2 julien julien 853 2008-11-09 23:58 evaluations -rwxr-xr-x 1 julien julien 47 2009-01-12 09:24 parse1 -rwxr-xr-x 1 julien julien 65 2009-01-05 15:11 parse2 -rwxr-xr-x 1 julien julien 53 2008-09-05 10:58 recode -rwxr-xr-x 1 julien julien 53 2008-09-05 10:58 urecode -rwxr-xr-x 1 julien julien 647 2008-09-05 10:58 xml2html
On constate ici que les informations sur les noeuds (fichiers ou dossiers) sont rangées ainsi :
Une coloration syntaxique permet de distinguer les fichiers de données, des fichiers exécutables, des dossiers.
Il peut s'avérer important de modifier le nom du propriétaire ou du groupe propriétaire d'un noeud.
Pour modifier le propriétaire d'un noeud, il faut utiliser la commande CHange OWNer : chown <nomNouveauPropriétaire> <nomDuNoeud>
Pour modifier le groupe propriétaire d'un noeud, il faut utiliser la commande CHange GRouP : chgrp <nomNouveauGroupePropriétaire> <nomDuNoeud>
Pour modifier le propriétaire et le groupe propriétaire d'un noeud, il faut utiliser la commande CHange OWNer : chown <nomNouveauPropriétaire>:<nomNouveauGroupePropriétaire> <nomDuNoeud>
Travail à faire :
Les fichiers ont des permissions visant 3 types d'utilisateurs :
Pour chaque type de personnes visées, il y a trois types de droits :
Ainsi, les droit sont regroupés en 9 caractères représentant successivement les droits du propriétaire, du groupe du propriétaire et des autres utilisateurs. Si un droit est accordé, la lettre correspondant est affichée. Dans le cas contraire, un tiret remplace la lettre correspondant.
Lorsqu'un fichier est créé dans un dossier, il hérite des droits de ce dossier.
Pour changer les droits sur un noeud, il faut utiliser la commande CHange acces MODe : chmod <nouveauxDroits> <nomNoeud>
l'option -R permet un changement de droit récursif, c'est-à-dire appliqué à tous les fichiers et sous dossiers du dossier.
Il est possible d'exprimer les nouveaux droits de façon numérique (octale), ou de façon symbolique.
Les droits octaux. Pour exprimer ces droits il faut calculer séparément le code octal des droits de chaque groupe d'utilisateur (propriétaire, groupe et autres) à partir du code binaire de chaque droit. Pour cela, il faut comprendre que l'on associe le 0 à un non droit et le 1 à un droit. En remettant la combinaison binaire correspondant aux droits rwx, on obtient un nombre binaire à 3 chiffres, pouvant facilement être converti en nombre octal.
Travail à faire : Déterminez les droits octaux de chaque combinaison suivante :
Travail à faire : Dans une console, connectez-vous sur sirac par ssh et
Dans un second temps, accédez au répertoire d'un caramade pour visiter son dossier echange. Une fois dans le dossier, essayez de :
Les droits symboliques. Lorque peu de droits doivent changer, il est possible d'exprimer non pas les nouveaux droits, mais seulement ceux qui changent, en exprimant ce changment sous la forme [ugoa][+-][rwx]. il faut donc préciser, dans l'ordre :
Travail à faire : Déterminez la commande à appliquer pour passer des droits proposés en premier aux droits proposés en second :
Travail à faire : Tous les changements de droits se font avec des droits symboliques. Dans votre console connectée à sirac par ssh