Changement de répertoire au moyen de cd

Il est facile de changer de répertoire, pour peu que vous sachiez où vous êtes (répertoire courant) et où vous vous situez par rapport à l'endroit où vous désirez aller. Le répertoire recherché est-il au-dessus ou en-dessous du répertoire courant ?

Pour changer de répertoire, utilisez la commande cd. Cette commande, utilisée sans arguments, vous permet de revenir à votre répertoire personnel ; pour vous rendre dans un autre répertoire, vous devez indiquer le chemin d'accès.

Vous pouvez utiliser des chemins d'accès relatifs ou absolus. Les chemins d'accès absolus commencent la recherche du répertoire demandé depuis le répertoire / le plus élevé (aussi appelé root) et poursuivent ensuite vers le bas. Les chemins d'accès relatifs recherchent également le répertoire demandé vers le bas, mais depuis le répertoire courant, peu importe où il se trouve. L'arborescence suivante n'est qu'un exemple afin de vous illustrer la commande cd.

/
directory1
directory2
directory3

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

Si vous entrez

cd directory1 

alors que vous vous trouvez dans le directory3, vous obtenez un message qui vous indique que ce répertoire n'existe pas car il n'y a pas de directory1 sous directory3.

Pour pouvoir monter au directory1, vous devriez entrer :

cd /directory1 

Il s'agit dans ce cas d'un chemin d'accès absolu. Celui-ci indique à Linux de commencer la recherche depuis le sommet de l'arborescence et de poursuivre vers le bas jusqu'à ce qu'il trouve directory1.

Vous n'avez qu'à retenir qu'un chemin d'accès absolu vous conduit à n'importe quel répertoire et ce, depuis n'importe quel répertoire, alors qu'un chemin d'accès relatif ne vous mène qu'aux répertoires se trouvant sous le répertoire courant.

Figure 10-3. Les chemins d'accès absolus indiquent le chemin d'accès complet

TuyauLe chemin d'accès est-il absolu ou relatif ?
 

Un chemin d'accès est absolu si le premier caractère est /;, autrement il est relatif.

Figure 10-4. Les chemins d'accès relatifs sont relatifs à la position courante

Voici un exercice 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

cd .. indique au système de monter au répertoire se trouvant juste au-dessus du répertoire dans lequel vous travaillez actuellement. Evidemment, cd ../.. lui indique de monter de deux répertoires.

Après avoir utilisé la commande complète de l'exemple, vous devriez vous trouver dans le répertoire /X11, 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. Vous avez indiqué au système de :

  1. monter d'un niveau et d'aller au répertoire parent de votre répertoire de connexion (qui est probablement /home),

  2. de monter ensuite au répertoire parent de ce répertoire (qui est le répertoire /),

  3. de descendre au répertoire etc

  4. et, enfin, d'aller au répertoire /X11.

Un chemin d'accès absolu vous permettrait de vous rendre au répertoire /X11 rapidement. Entrez

cd /etc/X11

et vous y voilà.

NoteSachez où vous êtes
 

Assurez-vous toujours de savoir où vous vous trouvez avant d'entrer le chemin d'accès relatif du répertoire ou du fichier auquel vous désirez accéder. Toutefois, vous n'avez pas à vous soucier de votre position dans le système de fichiers lorsque vous utilisez un chemin d'accès absolu. Si vous n'êtes pas certain de votre position, entrez pwd.

Tableau 10-1. Options cd

CommandeFonction
cdVous renvoie au répertoire de connexion.
cd ~Vous renvoie également au répertoire de connexion.
cd /Vous conduit au répertoire racine du système.
cd /rootVous conduit au répertoire personnel du compte superutilisateur (ou root) créé lors de l'installation.
cd /homeVous mène au répertoire personnel, où les répertoires de connexion sont généralement stockés.
cd ..Vous fait monter d'un répertoire.
cd ~otheruser Vous conduit au répertoire de connexion d'un autre utilisateur, si cet autre utilisateur vous en a donné la permission.
cd /dir1/subdirfooPeu importe où vous vous trouvez, ce chemin d'accès absolu vous conduit directement à subdirfoo, un sous-répertoire de dir1.
cd ../../dir3/X11Ce chemin d'accès relatif vous fait monter de deux répertoires, vous mène au répertoire dir3 et, enfin, au répertoire X11.

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

cd /root

Vous n'êtes pas connecté en tant que superutilisateur, alors l'accès à ce répertoire vous est refusé.

L'une des façons utilisées par votre système Linux pour prévenir tout endommagement accidentel ou hostile est de refuser l'accès au compte root et aux comptes d'autres utilisateurs (ou répertoires de connexion). Reportez-vous à la la section intitulée Propriété et autorisations.

Pour passer au répertoire de connexion root, utilisez la commande su. Entrez la liste de commandes suivante :

[newuser@localhost newuser]$ su 
Password: votre-mot-de-passe-root 
[root@localhost newuser]# cd /root 
[root@localhost /root]#

Dès que vous avez indiqué votre mot de passe root, vous pouvez voir les changements dans l'invite de commande qui affiche votre nouveau statut de superutilisateur, soit la désignation du compte root au début de l'invite et le symbole "#" à la fin (tel que montré dans la Figure 10-5).

Figure 10-5. Devenir superutilisateur

Lorsque vous utilisez cd pour accéder au répertoire de connexion root, l'accès vous est accordé.

Après avoir terminé de travailler comme superutilisateur, vous n'avez qu'à entrer exit à l'invite.

[root@localhost /root]# exit
exit
[newuser@localhost newuser]$