Code Search for Developers
 
 
  

003.html from Gulus at Krugle


Show 003.html syntax highlighted

<HTML><HEAD><TITLE>Linux-Mandrake: Guide de l'utilisateur et Manuel de référence</TITLE>
<LINK REV=MADE HREF="mailto:info@mandrakesoft.com"></HEAD>
<BODY BGCOLOR="#ffffff"><center><font size="+5"><STRONG><table border="0"><tr><td><STRONG>Linux-Mandrake</STRONG>:</td></tr><tr><td>Guide de l'utilisateur</td></tr><tr><td>et Manuel de référence</td></tr></table></STRONG></font>

<p><font size="+2"><STRONG><table border="0"><tr><td><STRONG>MandrakeSoft</STRONG></td></tr></table></STRONG></font>

<p><STRONG><table border="0"><tr><td>&nbsp;</td></tr><tr><td>&nbsp;</td></tr><tr><td>Janvier 2000</td></tr><tr><td><CODE>http://www.linux-mandrake.com</CODE></td></tr><tr><td></td></tr></table></STRONG></center>
<hr><a href="004.html">Suivant&nbsp;: Utilisation de <STRONG>KDE</STRONG></a><br><a href="002.html">Précédent&nbsp;: Introduction</a><br><a href="../">Retour</a><br><hr><a href="000.html#toc"><font size="-1">(Retour à la table des matières)</font></a>


<H1><font size="+1"><a name="16">Chapitre 1&nbsp;: Quelques concepts de base d'<STRONG>Unix</STRONG></a></font></H1><hr><p>Le nom «&nbsp;<STRONG>Unix</STRONG>&nbsp;» dira quelque chose à certains d'entre
vous.  Peut-être même utilisez-vous un système <STRONG>Unix</STRONG> dans le
cadre de votre travail, auquel cas la lecture de ce chapitre ne vous
apprendra pas grand-chose.

<p>Pour ceux d'entre vous qui ne l'ont jamais utilisé, une lecture de ce
chapitre est absolument nécessaire. La connaissance des concepts que
nous allons présenter ici répond à un nombre surprenant de questions que
se posent les débutants dans le monde <STRONG>Linux</STRONG>. De même, il est
fort probable que ces seuls concepts vous donnent des pistes de
recherche sur les causes d'un problème que vous pourriez rencontrer.


<H1><a name="17">Utilisateurs et groupes</a></H1>

<p>Cette notion est sans doute la plus importante, car elle a une influence
directe sur tous les autres concepts que nous allons introduire dans ce
chapitre.

<p><STRONG>Linux</STRONG> est un véritable système multi-utilisateurs, et pour
pouvoir se connecter à un système <STRONG>Linux</STRONG>, il faut avoir un
<STRONG>compte</STRONG> sur ce système.  Quand vous avez créé des utilisateurs
lors de l'installation, vous avez en fait ajouté des comptes
utilisateurs. Vous vous souvenez sans doute que la création d'un compte
a requis que vous entriez, entre autres, les éléments suivants:


<ul><li>le «&nbsp;vrai nom&nbsp;» de l'utilisateur (en fait, ce que vous
voulez),
<li>un nom de connexion,
<li>un mot de passe (vous en avez mis un, n'est-ce pas? <CODE>:)</CODE> ).</ul>

<p>Les deux paramètres importants ici sont le nom de connexion (très
souvent appelé nom de <STRONG>login</STRONG>) et le mot de passe. Ce sont en
effet eux que vous devrez utiliser pour vous connecter au système.

<p>Une autre action qui a été effectuée à l'ajout d'un utilisateur est la
création d'un groupe. Par défaut, la procédure d'installation aura créé
un groupe pour chaque utilisateur. Comme nous le verrons plus loin, les
groupes sont utiles dans le cadre de partage de fichiers entre
différentes personnes. Un groupe peut ainsi regrouper autant
d'utilisateurs que vous le voulez, et dans les grands systèmes il n'est
pas rare de voir une telle séparation. Dans une université, par exemple,
il peut très bien exister un groupe par type d'études (maths, physique,
etc.), un autre pour les professeurs et ainsi de suite.  L'inverse est
vrai également: un utilisateur peut faire partie d'un ou plusieurs
groupes.  Ainsi un professeur de mathématiques fera-t-il à la fois
partie du groupe des professeurs et de celui de ses chers étudiants en
mathématiques.

<p>Cela ne vous dit toujours pas comment vous connecter. On y arrive.

<p>Si vous avez choisi d'avoir l'interface graphique au démarrage, votre
fenêtre de connexion sera identique à la figure&nbsp;8.1.

<p><center><img src="images/kdm2.gif" alt="Connexion en mode graphique" width="800" height="600"></center>
<center>Figure 8.1 Connexion en mode graphique</center>

<p>Pour vous connecter, vous devez entrer le nom de connexion dans la zone
de texte intitulée <EM><STRONG>Utilisateur:</STRONG></EM>, puis votre mot de passe dans la
zone de texte du même nom. Notez que vous devrez taper ce mot de passe à
l'aveugle: il n'y aura aucun <STRONG>écho</STRONG> dans la zone de texte.

<p>Si vous êtes en mode console, vous aurez l'image montrée
figure&nbsp;4.2.

<p><center><img src="images/console2.gif" alt="Connexion en mode console" width="720" height="400"></center>
<center>Figure 4.2 Connexion en mode console</center>

<p>Vous devez alors taper votre nom de connexion à l'invite
<EM><STRONG>Login:</STRONG></EM>, suivi d'une pression sur la touche entrée, à la
suite de quoi le programme de connexion (appelé, comme par hasard,
<STRONG>login</STRONG>) vous présentera une invite <EM><STRONG>Password:</STRONG></EM>, et
vous vous exécuterez en entrant le mot de passe de ce compte ---
toujours à l'aveugle!

<p>Notez que vous pouvez vous connecter plusieurs fois sous le même nom
d'utilisateur, par exemple sur une console et sous <STRONG>X</STRONG>. Chaque
session que vous ouvrirez sera indépendante, et il est même possible
d'avoir plusieurs sessions <STRONG>X</STRONG>. Par défaut, <STRONG>Linux-Mandrake</STRONG>
dispose de six <STRONG>consoles virtuelles</STRONG> en plus de celle réservée à
l'interface graphique, et vous pouvez basculer sur l'une d'entre elles
en pressant la séquence de touches <CODE>Ctrl-Alt-F&lt;n&gt;</CODE>, où <CODE>&lt;n&gt;</CODE>
représente le numéro de la console sur laquelle vous voulez vous rendre.
En général, l'interface graphique est sur la console numéro 7.

<p>Outre la création de comptes utilisateurs, vous aurez aussi remarqué
lors de l'installation que <STRONG>DrakX</STRONG> (ou le programme que vous avez
utilisé) vous a demandé d'entrer un mot de passe pour un utilisateur
bien particulier: <CODE>root</CODE>. Cet utilisateur est particulier pour
une raison bien simple: c'est l'administrateur du système. Donc c'est
vous. Pour votre sécurité, observez toujours un principe: <STRONG>ne
vous connectez <EM>jamais, au grand jamais</EM> en tant que
<CODE>root</CODE>, sauf si vous devez effectuer des tâches d'administration
système!</STRONG> Il est très important également que le compte <CODE>root</CODE>
soit toujours protégé par un mot de passe.

<p>Si vous vous connectez régulièrement en tant que <CODE>root</CODE>, il est
fort probable qu'un jour ou l'autre, même sans le faire exprès, vous
rendiez votre système inutilisable.  Une seule mauvaise manipulation
peut suffire. En particulier, si vous n'avez pas mis de mot de passe à
ce compte, le premier venu aura tout pouvoir sur votre système.  Cela
veut dire qu'il pourra effacer tous les autres systèmes d'exploitation
que vous pouvez avoir sur votre machine, en plus de <STRONG>Linux</STRONG>, et
réduire le rôle de votre ordinateur à celui d'un presse-papier. Ce n'est
pas une blague!

<p>Enfin, il est bon de mentionner qu'en interne, le système ne vous
identifie pas par votre nom de connexion, mais par un numéro unique
associé à votre nom de connexion: un <EM>UID</EM>
(<EM>User ID</EM>, soit, en français,
<EM>identifiant utilisateur</EM>). De même, chaque groupe
est identifié par son «&nbsp;identifiant de groupe&nbsp;» ou
<EM>GID</EM> (<EM>Group ID</EM>).


<H1><a name="18">Notions de base sur les fichiers</a></H1>

<p>Les fichiers sont un autre domaine où <STRONG>Linux</STRONG> diffère totalement
de <STRONG>Windows</STRONG>. Nous ne verrons ici que les différences
immédiatement visibles. Si vous le souhaitez, vous pouvez lire le
chapitre&nbsp;13.0 dans le <EM>Manuel de référence</EM>, qui va
beaucoup plus en profondeur sur ce sujet.

<p>La première différence, et sans doute la plus importante, est justement
liée à la présence d'utilisateurs. Nous aurions pu dire en transition
que chaque utilisateur possède son propre répertoire (appelé
<STRONG>répertoire personnel</STRONG>, ou <EM>home</EM> en anglais), mais cela
n'explicite qu'une partie de ce qui se passe <EM>vraiment</EM>, à savoir
que tout fichier, sur un système <STRONG>Unix</STRONG>, est la propriété
exclusive d'un utilisateur et d'un groupe.  Ainsi, chaque utilisateur a
bien son répertoire personnel, mais il est de plus le
<STRONG>propriétaire</STRONG> de ses fichiers au sens propre du terme.

<p>De plus, des droits sont associés à chaque fichier, que seul
l'utilisateur propriétaire peut modifier. Ces droits distinguent trois
catégories d'utilisateurs: le propriétaire même du fichier, tous les
utilisateurs membres du groupe auquel ce fichier est associé (on dit
aussi le <STRONG>groupe propriétaire</STRONG>) mais qui n'est pas l'utilisateur
propriétaire, et enfin les <STRONG>autres</STRONG>, c'est-à-dire tout utilisateur
qui n'est ni le propriétaire du fichier ni membre du groupe
propriétaire. Ces droits sont au nombre de trois:


<ul><li><STRONG>Droit de lecture (<CODE>r</CODE> pour <EM>Read</EM>,
«&nbsp;lire&nbsp;»)</STRONG>:  Pour un fichier, cela autorise à en lire le
contenu. Pour un répertoire, cela autorise à lister les fichiers
contenus dans ce répertoire, si et seulement si le droit d'exécution sur
ce répertoire est positionné également;
<li><STRONG>Droit d'écriture (<CODE>w</CODE> pour <EM>Write</EM>,
«&nbsp;écrire&nbsp;»)</STRONG>:  Pour un fichier, cela autorise à en modifier
le contenu. Pour un répertoire, cela autorise à créer des fichiers et à
en effacer, même si l'on n'est pas le propriétaire de ces fichiers;
<li><STRONG>Droit d'exécution (<CODE>x</CODE> pour <EM>eXecute</EM>,
«&nbsp;exécuter&nbsp;»)</STRONG>:  Pour un fichier, cela en autorise
l'exécution (par conséquent, seuls les fichiers exécutables ont
normalement ce droit positionné). Pour un répertoire, cela autorise
l'utilisateur à le <STRONG>traverser</STRONG> (c'est-à-dire de s'y rendre ou de
se rendre dans l'un de ses répertoires fils).</ul>

<p>Toutes les combinaisons de ces droits sont possibles: vous pouvez par
exemple autoriser la lecture du fichier à vous seul et l'interdire à
tous les autres, et interdire toute autre utilisation du fichier. Vous
pouvez même faire l'inverse, même si ce n'est pas très logique à
première vue <CODE>:)</CODE> En tant que propriétaire du fichier, vous pouvez
même changer le groupe propriétaire (si et seulement si vous êtes aussi
membre du nouveau groupe), voire vous en déposséder (changer
l'utilisateur propriétaire). Bien sûr, si vous vous en dépossédez, vous
perdrez tous vos droits dessus...

<p>Prenons l'exemple d'un fichier et d'un répertoire. L'affichage
ci-dessous correspond à la frappe de la commande <CODE>ls -l</CODE> depuis
une <STRONG>ligne de commande</STRONG>:

<p><font size="-4"><PRE>
$ ls -l
total 1
-rw-r-----   1 francis  users           0 jui  8 14:11 un_fichier
drwxr-xr--   2 gael     users        1024 jui  8 14:11 un_répertoire/
$
</PRE></font>

<p>Les différents champs de sortie de la commande <CODE>ls -l</CODE> sont les
suivants (de gauche à droite):


<ul><li>les dix premiers caractères désignent successivement le type du
fichier et les droits qui lui sont associés; le premier désigne le
type du fichier: il ne contient rien (<CODE>-</CODE>) s'il s'agit d'un
fichier régulier, <CODE>d</CODE> si le fichier est un répertoire. Il existe
d'autres types de fichiers, qui seront abordés dans le
<EM>Manuel de référence</EM>. Les neuf traits qui suivent représentent les
droits associés au fichier. Vous pouvez voir ici la séparation qui est
faite entre les différents types d'utilisateurs pour un même fichier:
les trois premiers représentent les droits associés à l'utilisateur
propriétaire, les trois suivants s'appliquent à tout utilisateur du
groupe qui n'est pas le propriétaire, et les trois derniers s'appliquent
aux autres; un trait (<CODE>-</CODE>) signifie que le droit n'est pas
positionné;
<li>vient ensuite le nombre de liens du fichier: nous verrons en effet
dans le <EM>Manuel de référence</EM> que les fichiers sont identifiés de
façon unique non pas par leur nom, mais par un numéro (leur
<STRONG>numéro d'i-noeud</STRONG>), et par conséquent il est possible sous
<STRONG>Unix</STRONG> qu'un seul et même fichier sur disque possède plusieurs
noms.  Pour un répertoire, le nombre de liens a une signification
particulière, que nous aborderons également dans le
<EM>Manuel de référence</EM>;
<li>viennent ensuite le nom de l'utilisateur propriétaire du fichier
et le nom du groupe propriétaire;
<li>enfin sont affichés la taille du fichier (en <STRONG>octets</STRONG>) ainsi
que sa date de dernière modification.</ul>

<p>Observons maintenant en détail les droits associés à chacun de ces
fichiers: il faut tout d'abord enlever le premier caractère, qui désigne
le type, et ainsi pour le fichier <CODE>un_fichier</CODE> nous nous retrouvons
avec les droits: <CODE>rw-r-----</CODE>. L'interprétation de ces
droits est la suivante:


<ul><li>les trois premiers (<CODE>rw-</CODE>) sont les droits de
l'utilisateur propriétaire de ce fichier, en l'occurrence
<CODE>francis</CODE>. L'utilisateur <CODE>francis</CODE> a donc le droit de lire
le fichier (<CODE>r</CODE>), de le modifier (<CODE>w</CODE>) mais pas de
l'exécuter (<CODE>-</CODE>);
<li>les trois suivants (<CODE>r--</CODE>) s'appliquent à tout utilisateur
qui n'est pas <CODE>francis</CODE> mais qui appartient au groupe
<CODE>users</CODE>: il pourra lire le fichier (<CODE>r</CODE>), mais ne pourra
ni écrire dedans ni l'exécuter (<CODE>--</CODE>);
<li>les trois derniers (<CODE>---</CODE>) s'appliquent à tout utilisateur
qui n'est pas <CODE>francis</CODE> et qui n'appartient pas au groupe
<CODE>users</CODE>: un tel utilisateur n'a tout simplement aucun droit sur ce
fichier.</ul>

<p>Pour le répertoire <CODE>un_répertoire</CODE>, les droits sont
<CODE>rwxr-xr--</CODE>, et donc:


<ul><li><CODE>gael</CODE>, en tant que propriétaire du répertoire, peut en
lister le contenu (<CODE>r</CODE>), peut ajouter des fichiers dans ce
répertoire ou en ôter (<CODE>w</CODE>), et il peut traverser ce
répertoire (<CODE>x</CODE>);
<li>tout utilisateur qui n'est pas <CODE>gael</CODE> mais appartient au
groupe <CODE>users</CODE> pourra lister le contenu de ce répertoire
(<CODE>r</CODE>) mais ne pourra pas y rajouter des fichiers (<CODE>-</CODE>),
et il aura le droit de le traverser (<CODE>x</CODE>);
<li>tout autre utilisateur n'aura en fin de compte aucun droit sur le
répertoire: nous avons vu que le droit de lecture seule sur un
répertoire n'autorisait même pas à en lister le contenu, car bien que le
droit de lecture soit positionné, le droit d'exécution ne l'est pas
(<CODE>r--</CODE>).</ul>

<p>Attention! Il existe une exception à la règle, et de taille:
<CODE>root</CODE>, encore lui, peut changer les attributs (droits,
utilisateur et groupe propriétaires) de tous les fichiers, même s'il
n'en est pas le propriétaire.  Ce qui veut dire qu'il peut aussi s'en
donner la propriété. Il peut lire des fichiers sur lesquels il n'a pas le
droit de lecture, traverser des répertoires qui ne lui sont normalement
pas accessibles, et ainsi de suite. Et si un droit lui manque vraiment,
il lui suffit de se l'offrir...

<p>Pour finir, il est bon de mentionner une autre différence, qui n'est pas
négligeable: elle se situe au niveau des noms des fichiers. En effet,
ils sont beaucoup moins limités que sous <STRONG>Windows</STRONG>:


<ul><li>ils peuvent contenir n'importe quel caractère (sauf le
<STRONG>caractère nul</STRONG> et <CODE>'/'</CODE>) , même des caractères non imprimables.
Une conséquence est qu'il faut faire attention à la
<STRONG>capitalisation</STRONG> (ou <STRONG>casse</STRONG>) des noms de fichiers: dans un
même répertoire, <CODE>readme</CODE> et <CODE>Readme</CODE> sont deux fichiers
différents, car <CODE>r</CODE> et <CODE>R</CODE> sont deux <EM>caractères</EM>
différents;
<li>comme vous aurez pu le remarquer également, un nom de fichier ne
comporte pas d'extension, si ce n'est par convention; une extension ne
caractérise pas (et n'a jamais caractérisé) le contenu d'un fichier, et
c'est aussi le cas sous <STRONG>Windows</STRONG>: essayez de changer l'extension
d'un fichier et observez...</ul>


<H1><a name="19">Les processus</a></H1>

<p>On désigne par le terme de <STRONG>processus</STRONG> une instance de programme
en cours d'exécution et son <STRONG>environnement</STRONG>. De même que pour les
fichiers, nous ne mentionnerons ici que les différences les plus
importantes, et vous vous reporterez au <EM>Manuel de référence</EM> pour
une discussion plus complète sur ce sujet. Les points discutés dans
cette section ont surtout pour objectif de mettre en lumière les
paramètres de l'environnement qui ont une influence directe sur
l'utilisation de votre distribution <STRONG>Linux-Mandrake</STRONG> au quotidien.

<p>La différence la plus importante est, encore une fois, liée au concept
d'utilisateurs : en effet, chaque processus s'exécute avec les droits de
l'utilisateur qui l'a lancé. Ainsi, si nous reprenons l'exemple du
fichier <CODE>un_fichier</CODE> mentionné ci-dessus, un processus lancé par
l'utilisateur <CODE>gael</CODE> pourra ouvrir ce fichier en <STRONG>lecture
seule</STRONG>, mais pas en <STRONG>lecture/écriture</STRONG>, puisque les droits
associés au fichier ne le lui permettent pas.  Encore une fois,
l'exception qui confirme la règle est <CODE>root</CODE>...

<p>Vous aurez deviné, grâce au paragraphe ci-dessus, que l'un des
paramètres de l'environnement d'un processus est l'<EM>UID</EM> et le <EM>GID</EM>
de l'utilisateur qui l'a <STRONG>lancé</STRONG>. Cela autorise le système à
savoir si ce que lui demande le processus est «&nbsp;légal&nbsp;»
(autorisé) ou non.

<p>Une conséquence est que <STRONG>Linux</STRONG> est en grande partie immunisé
aux virus: pour pouvoir opérer, les virus ont besoin d'infecter des
fichiers exécutables, et en tant qu'utilisateur, c'est impossible de
modifier les fichiers du système.  Ajoutez à ceci que les virus sont
très rares dans le monde <STRONG>Unix</STRONG> en général: jusque là, il n'existe
que trois virus connus pour <STRONG>Linux</STRONG>, et ils sont complètement
inoffensifs quand ils sont lancés par un utilisateur normal. Seul un
utilisateur peut endommager le système en activant ces virus, et encore
une fois, c'est...  <CODE>root</CODE>!

<p>Paradoxalement, il existe bien des logiciels antivirus sous
<STRONG>Linux</STRONG>, mais pour les fichiers <STRONG>DOS</STRONG>/<STRONG>Windows</STRONG>... En
effet, on voit de plus en plus des serveurs de fichiers
<STRONG>Linux</STRONG> servir des machines <STRONG>Windows</STRONG>, avec l'aide du
paquetage logiciel <STRONG>Samba</STRONG> (voir le chapitre&nbsp;28.0 dans
le <EM>Manuel de référence</EM>).

<p>En interne, le système identifie les processus de façon unique par,
encore une fois, un numéro. Ce numéro est appelé le <EM>PID</EM>,
pour <EM>Process ID</EM>, soit en français
«&nbsp;identifiant de processus&nbsp;». De plus, tous les processus
peuvent aussi recevoir des signaux, ce qui vous autorise à les contrôler
(enfin, uniquement les processus que vous avez lancés, pas ceux d'un
autre utilisateur, l'exception à la règle étant, devinez qui...): vous
pouvez stopper un processus, le tuer s'il pose trop de problèmes et
ainsi de suite.  Dans un prochain chapitre, vous apprendrez comment
traquer ce fameux <EM>PID</EM> et, muni de la connaissance de ce <EM>PID</EM>, à
lui envoyer des signaux, le poussant à se terminer, à suspendre son
exécution ou autre.


<H1><a name="20">Une petite introduction à la ligne de commande</a></H1>

<p>La ligne de commande est le moyen le plus direct de parler à la machine.
Si vous commencez à l'utiliser, vous remarquerez rapidement qu'elle a
une capacité d'expression bien plus puissante que les invites que vous
avez peut-être utilisées sous d'autres systèmes d'exploitation, plus,
même, que toute interface graphique existante.  En effet
vous avez un accès direct, non seulement à toutes les applications
<STRONG>X</STRONG>, mais aussi à des milliers d'utilitaires en <STRONG>mode
console</STRONG> (à opposer au <STRONG>mode graphique</STRONG>) qui n'ont pas leur
équivalent graphique, ou dont les nombreuses options et combinaisons
potentielles ne pourront jamais être représentées par des boutons et des
menus.

<p>Mais, il faut bien l'admettre, elle requiert un peu d'aide pour débuter.
C'est le but de ce chapitre. La première chose à faire, si vous utilisez
<STRONG>KDE</STRONG>, est de lancer un émulateur de terminal. Vous avez une icône
qui l'identifie clairement dans le panneau (figure&nbsp;4.3).

<p><center><img src="images/konsole.gif" alt="L'icône de l'émulateur de terminal dans le panneau de
KDE" width="48" height="48"></center>
<center>Figure 4.3 L'icône de l'émulateur de terminal dans le panneau de
<STRONG>KDE</STRONG></center>

<p>Le <EM>shell</EM> est le nom du programme avec lequel pour interagissez.
Vous vous trouvez en face de l'invite («&nbsp;prompt&nbsp;» en anglais):

<p><font size="+2"><PRE>
[jean@localhost] ~ $
</PRE></font>

<p>Ceci suppose que votre nom d'utilisateur est <CODE>jean</CODE> et que votre
nom de machine est <STRONG><STRONG>localhost</STRONG></STRONG> (ce qui est le cas si votre
machine ne fait pas partie d'un réseau existant). Tout ce qui apparaît
après l'invite est ce que vous aurez à taper. Notez que quand vous êtes
<CODE>root</CODE>, le <CODE>$</CODE> de l'invite devient un <CODE>#</CODE>. (Tout
ce qui précède n'est juste que dans la configuration par défaut, chacun
de ces éléments pouvant être personnalisé). La commande pour
«&nbsp;devenir&nbsp;» <CODE>root</CODE> quand vous avez lancé un <EM>shell</EM>
en tant qu'utilisateur est <CODE>su</CODE>:

<p><font size="-2"><PRE>
# Entrez le mot de passe root; il n'apparaîtra pas à l'écran
[jean@localhost] ~ $ su
Password:
# exit vous fera revenir à votre compte utilisateur normal
[root@localhost] jean # exit
[jean@localhost] ~ $
</PRE></font>

<p>Partout ailleurs dans cette documentation, l'invite sera représentée
symboliquement par un <CODE>$</CODE>, que vous soyiez un utilisateur normal
ou <CODE>root</CODE>. Il vous sera indiqué quand vous devez être
<CODE>root</CODE>, alors n'oubliez pas <CODE>su :)</CODE> Un <CODE>#</CODE>
en début de ligne de code représentera un commentaire.

<p>Quand vous lancez le <EM>shell</EM> la première fois, vous vous trouvez
normalement dans votre répertoire personnel. Pour savoir dans quel
répertoire vous vous trouvez à un moment donné, la commande est
<CODE>pwd</CODE> (pour <EM>Print Working Directory</EM>,
«&nbsp;afficher le répertoire de travail&nbsp;»):

<p><font size="+2"><PRE>
$ pwd
/home/jean
</PRE></font>

<p>Il y a certaines commandes de base que nous allons voir, qui vous seront
indispensables.


<H2><a name="21"><CODE>cd</CODE>: <EM>Change Directory</EM> «&nbsp;changer de répertoire&nbsp;»</a></H2>

<p>La commande <CODE>cd</CODE> est exactement la même que celle de
<STRONG>DOS</STRONG>, avec quelques fonctionnalités en plus. Elle fait juste ce
que dicte son acronyme, elle change le répertoire de travail. Vous
pouvez utiliser <CODE>.</CODE> et <CODE>..</CODE>, qui sont respectivement le
répertoire courant et son répertoire parent. Taper seulement
<CODE>cd</CODE> vous ramènera à votre répertoire personnel. Taper
<CODE>cd -</CODE> vous renverra dans le dernier répertoire visité. Et
enfin, vous pouvez spécifier le répertoire d'un utilisateur <CODE>toto</CODE>
en tapant <CODE>&nbsp;toto</CODE> (<CODE>'&nbsp;'</CODE> seul ou suivi de <CODE>'/'</CODE> signifie
votre propre répertoire personnel). Notez qu'en tant qu'utilisateur
normal, vous ne pouvez normalement pas accéder au répertoire d'un autre
utilisateur (à moins qu'il ne l'ait explicitement autorisé ou que tel
soit le réglage de la configuration par défaut sur le système), sauf si
vous êtes... <CODE>root</CODE>, donc soyons <CODE>root</CODE> et entraînons-nous:

<p><font size="+2"><PRE>
$ pwd
/root
$ cd /usr/doc/HOWTO
$ pwd
/usr/doc/HOWTO
$ cd ../FAQ
$ pwd
/usr/doc/FAQ
$ cd ../../lib
$ pwd
/usr/lib
$ cd ~jean
$ pwd
/home/jean
$ cd
$ pwd
/root
</PRE></font>

<p>Maintenant, redevenez un utilisateur normal <CODE>:)</CODE>


<H2><a name="22">Quelques variables d'environnement et la commande <CODE>echo</CODE></a></H2>

<p>En fait, tous les processus ont leurs <STRONG>variables d'environnement</STRONG>,
et quelquefois ils agissent différemment en fonction des valeurs de
certaines d'entre elles. Toutefois, le <EM>shell</EM> vous autorise à les
consulter directement, avec la commande <CODE>echo</CODE>. Quelques
variables intéressantes sont:


<ul><li><STRONG><CODE>'HOME'</CODE></STRONG>:  Cette variable d'environnement contient une
chaîne de caractères désignant votre répertoire personnel.
<li><STRONG><CODE>'PATH'</CODE></STRONG>:  Cette variable contient la liste de tous les
répertoires dans lesquels le <EM>shell</EM> doit chercher des exécutables
quand vous tapez une commande. Notez que contrairement à <STRONG>DOS</STRONG>,
par défaut, le <EM>shell</EM> ne cherchera pas de commandes dans le
répertoire courant!
<li><STRONG><CODE>'USERNAME'</CODE></STRONG>:  Cette variable contient votre nom de
connexion.
<li><STRONG><CODE>'UID'</CODE></STRONG>:  Contient votre identifiant utilisateur.
<li><STRONG><CODE>'PS1'</CODE></STRONG>:  Contient la valeur de votre invite. C'est souvent
une combinaison de séquences spéciales, et vous pouvez lire la
<STRONG>page de manuel</STRONG> de <CODE>bash(1)</CODE> pour mieux les
comprendre (voyez le chapitre&nbsp;10.0).</ul>

<p>Pour que le <EM>shell</EM> affiche la valeur d'une variable, vous devez
mettre un <CODE>$</CODE> devant son nom. Ici, <CODE>echo</CODE> va vous être
utile:

<p><font size="+2"><PRE>
$ echo Bonjour
Bonjour
$ echo $HOME
/home/jean
$ echo $USERNAME
jean
$ echo Bonjour $USERNAME
Bonjour jean
$ cd /usr
$ pwd
/usr
$ cd $HOME
$ pwd
/home/jean
</PRE></font>

<p>Comme vous pouvez le voir, le <EM>shell</EM> substitue la valeur de la
variable avant d'exécuter la commande, autrement notre <CODE>cd
$HOME</CODE> n'aurait pas fonctionné ici. En fait, le <EM>shell</EM> a en
premier lieu remplacé <CODE>$HOME</CODE> par sa valeur,
<CODE>/home/jean</CODE>, donc la ligne est devenue <CODE>cd /home/jean</CODE>,
qui est ce que nous voulions. C'est la même chose pour <CODE>echo
$USERNAME</CODE> et ainsi de suite.


<H2><a name="23"><CODE>cat</CODE>: afficher le contenu d'un ou plusieurs fichiers à l'écran</a></H2>

<p>Pas grand'chose à dire, si ce n'est que cette commande fait simplement
cela: afficher le contenu d'un ou plusieurs fichiers à l'écran!

<p><font size="-3"><PRE>
$ cat /etc/fstab
/dev/hda5 / ext2 defaults 1 1
/dev/hda6 /home ext2 defaults 1 2
/dev/hda7 swap swap defaults 0 0
/dev/hda8 /usr ext2 defaults 1 2
/dev/fd0 /mnt/floppy auto sync,user,noauto,nosuid,nodev 0 0
none /proc proc defaults 0 0
none /dev/pts devpts mode=0620 0 0
/dev/cdrom /mnt/cdrom auto user,noauto,nosuid,exec,nodev,ro 0 0
$ cd /etc
$ cat conf.modules shells
alias parport_lowlevel parport_pc
pre-install plip modprobe parport_pc ; echo 7 &gt; /proc/parport/0/irq
#pre-install pcmcia_core /etc/rc.d/init.d/pcmcia start
#alias car-major-14 sound
alias sound esssolo1
keep
/bin/zsh
/bin/bash
/bin/sh
/bin/tcsh
/bin/csh
/bin/ash
/bin/bsh
/usr/bin/zsh
</PRE></font>


<H2><a name="24"><CODE>less</CODE>: un <EM>pager</EM></a></H2>

<p>Son nom est un jeu de mots sur le premier <EM>pager</EM> existant sous
<STRONG>Unix</STRONG>, qui se nommait <CODE>more</CODE><a name="bodynote1" href="026.html#note1">[1]</a>. Un <EM>pager</EM> est un programme dont le but
est d'autoriser la visualisation de longs fichiers page par page (plus
précisément, écran par écran). Nous parlons de <CODE>less</CODE> plutôt que
de <CODE>more</CODE> car son utilisation est beaucoup plus intuitive.
Utilisez <CODE>less</CODE> pour voir des gros fichiers, qui ne rentrent pas
sur un écran. Par exemple:

<p><CODE>less /usr/doc/HOWTO/PCMCIA-HOWTO</CODE>

<p>Pour naviguer dans le fichier, utilisez simplement les touches fléchées
haut et bas. Utilisez <CODE>'q'</CODE> pour quitter. En fait, <CODE>less</CODE> peut
faire bien plus: tapez simplement <CODE>'h'</CODE> pour de l'aide (en anglais),
et lisez. Mais de toutes façons, l'objectif de cette section est
de vous rendre capable de lire de longs fichiers, et cet objectif est
maintenant atteint <CODE>:)</CODE>


<H2><a name="25"><CODE>ls</CODE>: faire une liste de fichiers (<EM>LiSt</EM>, «&nbsp;liste&nbsp;»)</a></H2>

<p>Cette commande est équivalente au <CODE>dir</CODE> de <STRONG>DOS</STRONG>, mais
elle peut faire beaucoup plus. En fait, c'est largement dû au fait que
les fichiers peuvent aussi faire nettement plus <CODE>:)</CODE> La syntaxe de
la commande <CODE>ls</CODE> est comme suit:

<p><font size="-2"><PRE>
ls [options] [fichier|répertoire] [fichier|répertoire...]
</PRE></font>

<p>Si aucun fichier ou répertoire n'est mentionné sur la ligne de commande,
<CODE>ls</CODE> fera la liste des fichiers du répertoire courant. Ses
options sont très nombreuses, et nous n'en citerons que quelques-unes:


<ul><li><STRONG><CODE>-a</CODE></STRONG>:  Faire une liste de tous les fichiers, y compris les
<STRONG>fichiers cachés</STRONG> (sous <STRONG>Unix</STRONG>, les fichiers cachés sont
ceux dont le nom commence par un <CODE>.</CODE>); l'option <CODE>-A</CODE> fait
une liste de «&nbsp;presque&nbsp;» tous les fichiers, ce qui signifie tous
les fichiers qu'afficherait l'option <CODE>-a</CODE> sauf «&nbsp;.&nbsp;» et
«&nbsp;..&nbsp;»;
<li><STRONG><CODE>-R</CODE></STRONG>:  Faire une liste récursivement, i.e. tous les
fichiers et sous-répertoires des répertoires mentionnés dans la ligne de
commande;
<li><STRONG><CODE>-s</CODE></STRONG>:  Affiche la taille de chaque fichiers en kilo-octets;
<li><STRONG><CODE>-l</CODE></STRONG>:  Affiche des informations supplémentaires sur les
fichiers;
<li><STRONG><CODE>-i</CODE></STRONG>:  Affiche le <STRONG>numéro d'i-noeud</STRONG> (le numéro
unique du fichier sur un système de fichiers, voyez le
chapitre&nbsp;13.0) en face de chaque fichier;
<li><STRONG><CODE>-d</CODE></STRONG>:  Affiche les répertoires comme des fichiers normaux
au lieu d'afficher la liste de leurs contenus.</ul>

<p>Quelques exemples:


<ul><li><STRONG><CODE>ls -R</CODE></STRONG>:  fait une liste récursive des fichiers du
répertoire en cours;
<li><STRONG><CODE>ls -is images/ ..</CODE></STRONG>:  fait une liste des fichiers du
répertoire <CODE>images/</CODE> et du répertoire parent, avec pour chaque
fichier son numéro d'i-noeud et sa taille en kilo-octets;
<li><STRONG><CODE>ls -al images/*.gif</CODE></STRONG>:  fait une liste de tous les
fichiers (y compris les fichiers cachés) du répertoire <CODE>images/</CODE>
dont le nom se termine par <CODE>.gif</CODE>. Notez que cela comprend aussi
le fichier <CODE>.gif</CODE> si celui-ci existe.</ul>


<H2><a name="26">Raccourcis clavier utiles</a></H2>

<p>Beaucoup de séquences de touches sont disponibles et peuvent vous faire
gagner du temps, et cette section fera une liste des plus
nécessaires. Cette section suppose que vous utilisez le <EM>shell</EM>
par défaut de <STRONG>Linux-Mandrake</STRONG>, <STRONG>Bash</STRONG>, mais ces séquences de
touches devraient aussi fonctionner avec d'autres <EM>shells</EM>. Dans
cette section, <CODE>C-&lt;x&gt;</CODE> signifie <CODE>Ctrl</CODE>+<CODE>&lt;x&gt;</CODE> (appuyez sur
la touche <CODE>Ctrl</CODE> et maintenez-la enfoncée, appuyez sur <CODE>&lt;x&gt;</CODE>,
relâchez les deux touches).

<p>D'abord les touches fléchées: <STRONG>Bash</STRONG> maintient un historique des
commandes que vous tapez, dans lequel vous pouvez vous balader avec les
flèches haut et bas. Vous pouvez remonter jusqu'à un nombre de lignes
définies dans la variable d'environnement <CODE>'HISTSIZE'</CODE>. De plus,
l'historique est persistant d'une session à l'autre, donc vous ne
perdrez pas les commandes que vous avez tapées dans une session
précédente.

<p>Les flèches gauche et droite déplacent le curseur sur la gauche et sur
la droite, donc vous pouvez éditer vos lignes de cette façon. Mais il y
a plus en matière d'édition: <CODE>C-a</CODE> et <CODE>C-e</CODE>, par exemple, vous
améneront respectivement au début et à la fin de la ligne courante. Les
touches <CODE>Backspace</CODE> et <CODE>Suppr</CODE> fonctionneront comme on s'y attend.
Un équivalent de <CODE>Backspace</CODE> est <CODE>C-h</CODE> et un équivalent de
<CODE>Del</CODE> est <CODE>C-d</CODE>. <CODE>C-k</CODE> effacera toute la ligne depuis la
position du curseur jusqu'à la fin de la ligne, et <CODE>C-w</CODE> effacera le
mot avant le curseur.

<p>Taper <CODE>C-d</CODE> sur une ligne vide vous fera fermer la session courante,
ce qui est nettement plus court que d'avoir à taper <CODE>exit</CODE>.
<CODE>C-c</CODE> interrompra la commande en cours de fonctionnement, sauf si vous
éditez une ligne, auquel cas cela interrompra l'édition en cours et vous
raménera à l'invite.  <CODE>C-l</CODE> nettoie l'écran.

<p>Finalement, il y a <CODE>C-s</CODE> et <CODE>C-q</CODE>: ces séquences de touches
servent respectivement à suspendre et restaurer le <STRONG>flux de
caractères</STRONG> sur un terminal.  Elles sont très peu utilisées, mais il
peut arriver que vous tapiez <CODE>C-s</CODE> par inadvertance. Donc, si vous
appuyez sur des touches mais que vous ne voyez rien apparaître à
l'écran, essayez <CODE>C-q</CODE> d'abord et faites attention: tous les
caractères que vous avez tapés entre le <CODE>C-s</CODE> non désiré et le
<CODE>C-q</CODE> apparaîtront tout d'un coup sur l'écran.
<hr><a href="004.html">Suivant&nbsp;: Utilisation de <STRONG>KDE</STRONG></a><br><a href="002.html">Précédent&nbsp;: Introduction</a><br><a href="../">Retour</a><br><hr>Copyright © 2000 <a href="http://www.mandrakesoft.com/">MandrakeSoft</a></BODY></HTML>



See more files for this project here

Gulus

Groupe d\'Utilisateurs de Linux de l\'Universit? de Sherbrooke. http://www.gulus.org/

Project homepage: http://sourceforge.net/projects/gulus
Programming language(s): PHP,Shell Script
License: other

  images/
    LMDK520x200.gif
    aftermount.gif
    beforemount.gif
    console2.gif
    emacs_1.gif
    emacs_2.gif
    emacs_3.gif
    kde_app_add.gif
    kde_app_app.gif
    kde_app_exec.gif
    kde_apps_list.gif
    kde_controlcenter.gif
    kde_desk.gif
    kde_desk_conf1.gif
    kde_disknav.gif
    kde_menu_K.gif
    kde_mime_edit.gif
    kde_mime_edit2.gif
    kde_mime_jpeg.gif
    kde_mimetypelist.gif
    kde_openwith.gif
    kde_openwith_sample.gif
    kde_pager.gif
    kde_screensavercfg.gif
    kde_stylecfg.gif
    kdm2.gif
    kfm_ftp.gif
    kfm_icon_home.gif
    kfm_menu_display.gif
    kfm_navig_conf.gif
    kfm_sample_window.gif
    kfm_url_http.gif
    kfm_web.gif
    konsole.gif
    kpackage_all.gif
    kpackage_info.gif
    kppp_compte.gif
    kppp_main.gif
    kppp_start.gif
    lothar.gif
    lothar_ethercfg.gif
    lothar_sndcfg.gif
    netconf_ppp.gif
    passwd_err.gif
    reseau.gif
    samba_swat.gif
    samba_swat_auth.gif
    tinst_authconf.gif
    tinst_bootdsk.gif
    tinst_fmt_ext2.gif
    tinst_fmt_swap.gif
    tinst_hd_dummy.gif
    tinst_hd_mnt.gif
    tinst_hd_slash.gif
    tinst_insclass.gif
    tinst_intro.gif
    tinst_iou.gif
    tinst_keyb.gif
    tinst_lang.gif
    tinst_lilo.gif
    tinst_lilo_options.gif
    tinst_media.gif
    tinst_mouse_detect.gif
    tinst_mouse_type.gif
    tinst_net_ipdns.gif
    tinst_net_ipstatic.gif
    tinst_net_iptype.gif
    tinst_pack_indiv.gif
    tinst_packs.gif
    tinst_pre.gif
    tinst_printer.gif
    tinst_rootpass.gif
    tinst_scsi.gif
    tinst_scsi_pilot.gif
    tinst_services.gif
    tinst_timezone.gif
    tinst_useradd.gif
    tinst_x_monitor.gif
    top.gif
    user_add.gif
    userconf.gif
    vi_1.gif
    vi_2.gif
    vi_3.gif
    xkill.gif
  000.html
  001.html
  002.html
  003.html
  004.html
  005.html
  006.html
  007.html
  008.html
  009.html
  010.html
  011.html
  012.html
  013.html
  014.html
  015.html
  016.html
  017.html
  018.html
  019.html
  020.html
  021.html
  022.html
  023.html
  024.html
  025.html
  026.html
  index.html