13.4. Changement de répertoire à l'aide de cd

Il est facile de changer de répertoire, pour peu que vous sachiez où vous vous trouvez (votre répertoire courant) et où votre emplacement se situe par rapport à l'endroit où vous désirez aller.

Pour changer de répertoire, utilisez la commande cd. Cette commande seule (sans aucun argument), vous permet de revenir à votre répertoire personnel; afin de vous rendre dans un autre répertoire, vous devez indiquer un chemin d'accès.

Vous pouvez utiliser des chemins d'accès absolus ou relatifs. Les chemins d'accès absolus commencent la recherche du répertoire demandé depuis le répertoire le plus élevé reconnaissable par le symbole / (aussi appelé root) et poursuivent ensuite vers le bas; les chemins d'accès relatifs eux commencent la recherche à partir du répertoire dans lequel vous vous trouvez, quel qu'il soit. L'arborescence suivante présente le fonctionnement de la commande cd.

/
/directory1
/directory1/directory2
/directory1/directory2/directory3

Si vous vous trouvez actuellement dans le répertoire directory3 et que vous voulez passer dans le répertoire directory1, vous devez monter à un niveau supérieur dans l'arborescence des répertoires.

Si vous exécutez la commande

cd directory1 

en vous trouvant dans le répertoire directory3, vous obtiendrez un message d'erreur vous indiquant que ce répertoire n'existe pas. Ceci est dû au fait qu'il n'existe pas de répertoire directory1 au-dessous du répertoire directory3.

Pour remonter à directory1, tapez:

cd /directory1 

Ceci est un exemple de chemin d'accès absolu. Il indique à Linux de commencer la recherche depuis le sommet de l'arborescence (/) et de descendre jusqu'à ce qu'il trouve directory1. Un chemin d'accès est absolu s'il commence par le signe /. Sans cette barre oblique vers l'avant, il s'agit d'un chemin relatif.

Les chemins absolus peuvent vous permettre de passer de n'importe quel répertoire dans n'importe quel autre répertoire. Les chemins relatifs en revanche peuvent seulement vous permettre de passer dans les répertoires supérieurs à celui dans lequel vous vous trouvez.

La commande cd .. indique au système de passer au répertoire se trouvant juste au-dessus de celui dans lequel vous travaillez actuellement. Pour remonter deux répertoires au-dessus, tapez la commande suivante cd ../.. à l'invite du shell.

Grâce à l'exercice suivant, vous pourrez mettre en pratique ce que vous avez appris sur les chemins d'accès absolus et relatifs. Depuis votre répertoire personnel, entrez le chemin d'accès relatif suivant:

cd ../../etc/X11

Suite à l'utilisation de la commande entière de l'exemple, vous devriez vous trouvez dans le répertoire X11, qui est en fait l'endroit où sont situés les fichiers de configuration et les répertoires relatifs au système X Window.

Observez la commande cd que vous venez d'utiliser. Avec cette commande, vous avez donné les instructions suivantes au système:

  1. remonter d'un niveau et aller dans le répertoire parent de votre répertoire de connexion (qui est probablement /home);

  2. passer ensuite au répertoire parent de ce répertoire (qui est le répertoire racine ou root, symbolisé par /);

  3. descendre ensuite au répertoireetc;

  4. aller finalement dans le répertoire X11.

L'utilisation d'un chemin d'accès absolu vous permettrait de vous rendre plus rapidement dans le répertoire /etc/X11. Par exemple:

cd /etc/X11

Les chemins d'accès absolus commencent au répertoire root (/) et descendent jusqu'au répertoire spécifié.

NoteRemarque
 

Assurez-vous toujours de savoir où vous vous trouvez avant d'indiquer le chemin d'accès relatif du répertoire ou du fichier auquel vous souhaitez accéder. Par contre, si vous utilisez un chemin d'accès absolu vers un autre fichier ou répertoire, vous n'avez pas à vous soucier de votre position dans le système de fichiers. Si vous n'êtes pas sûr de votre position, tapez pwd afin d'afficher votre répertoire de travail courant. Cette commande peut vous servir de guide pour vous déplacer dans l'arborescence des répertoires lorsque vous utilisez des chemins d'accès relatifs.

CommandeFonction
cdvous renvoie à votre répertoire de connexion
cd ~vous renvoie également à votre répertoire de connexion
cd /vous conduit au répertoire racine (ou root) du système
cd /rootvous conduit au répertoire personnel du compte super-utilisateur (ou root) créé lors de l'installation; seul l'utilisateur root peut accéder à ce répertoire
cd /homevous mène au répertoire personnel où se trouvent généralement les répertoires de connexion des utilisateurs
cd ..vous fait remonter d'un répertoire
cd ~autre utilisateurvous conduit au répertoire de connexion d'un autre utilisateur, si ce dernier vous en a donné la permission
cd /dir1/subdirfooquel que soit l'endroit où vous vous trouvez, ce chemin d'accès absolu vous conduit directement à subdirfoo, un sous-répertoire de dir1
cd ../../dir3/dir2ce chemin d'accès relatif vous fait remonter de deux répertoires vers le répertoire racine, vous mène ensuite au répertoire dir3 et enfin au répertoire dir2.

Tableau 13-1. Options cd

Maintenant que vous commencez à bien comprendre comment changer de répertoire, voyez ce qui se produit lorsque vous passez au répertoire de connexion du compte root (super-utilisateur). Entrez:

cd /root

Si vous n'êtes pas connecté en tant que super-utilisateur, l'accès à ce répertoire vous est refusé.

Le refus de l'accès au compte root ainsi qu'aux comptes d'autres utilisateurs (ou répertoires de connexion) est l'un des moyens utilisés par votre système Linux pour empêcher toute altération accidentelle ou malveillante. Reportez-vous à la Section 13.14.

Pour passer au répertoire de connexion root et au répertoire root, utilisez la commande su à l'invite.

su

TuyauAstuce
 

La commande su de l'anglais 'substitute user' (utilisateur de substitution) permet de changer l'utilisateur courant et de vous connecter de façon temporaire en tant qu'autre utilisateur. Lorsque vous entrez su sans ajouter d'arguments et appuyez sur la touche [Entrée], vous devenez super-utilisateur (aussi appelé root) alors que vous vous trouvez toujours dans votre shell de connexion (votre répertoire personnel d'utilisateur). En tapant su - vous devenez root avec un shell de connexion de super-utilisateur; en fait, comme si vous vous étiez connecté en tant que root dès le départ.

Dès que vous indiquez votre mot de passe root, les changements apparaissent dans l'invite de commande qui affiche votre nouveau statut de super-utilisateur, la désignation du compte root au début de l'invite et le symbole "#" à la fin.

Une fois que vous avez terminé de travailler en tant que super-utilisateur, tapez exit à l'invite afin de retourner à votre compte utilisateur.