Comprendre les chemin d'accès au dossier

Bonjour,

J’ai un petit soucis de compréhension de ma part.

Sur ce petit test

[quote]root@vks10509:~# cd
root@vks10509:~# pwd
/root
root@vks10509:~# cd home
bash: cd: home: No such file or directory
root@vks10509:~# cd /home
root@vks10509:/home# cd /an16
bash: cd: /an16: No such file or directory
root@vks10509:/home# cd an16
root@vks10509:/home/an16#[/quote]

Je note que pour accéder à home je dois utiliser un / avant le dossier.
Hors pour accéder au user je ne dois pas utiliser de /.

Pourriez-vous sans nécessairement expliquer me dire quand on doit ou ne doit pas placer un / avant un dossier.

Merci

commencer par / signifie que tu donnes un chemin dit “absolu” c’est à dire depuis la racine / :wink:

si tu donnes un chemin sans / c’est un chemin dit “relatif” c’est à dire que c’est un chemin depuis l’endroit où tu es actuellement :wink:

Exemple :

si tu es déjà dans /home , la commande cd /user va re répondre que le répertoire n’existe pas . la commande cd user va te placer dans /home/user.

si tu es dans /home/user et que tu fais ls /var/log , ça va lister le contenu de /var/log , si tu fais ls var/log ça va en fait te chercher /home/user/var/log et donc te donner un message d’erreur si ce répertoire n’existe pas.

Ok c’est tout simple.
J’ai pigé :slightly_smiling:

donc home est une exception ca il est lui même la racine sous root.
C’est pour cela que son chemin ne peut pas être relatif
(grosso modo)

Et ca répond à ma deuxième question que j’ai plus besoin de poser :slightly_smiling:

Merci !

Salut,

Ce lien, Base d’administration pour le superutilisateur répondra à beau nombre des questions légitimes que tu te posera, encore et encore … :wink:

Tout comme l’incontournable … Securing Debian Manual en fr.

[quote=“westernz”]Ok c’est tout simple.
J’ai pigé :slightly_smiling:

donc home est une exception ca il est lui même la racine sous root.
C’est pour cela que son chemin ne peut pas être relatif[/quote]

Ahum je ne crois pas … quand tu es dans un répertoire avec ton user tu es par défaut dans /home/user … si tu passes en root , tu restes dans /home/user :wink:

si tu es sous ton user ça va s’afficher comme ça !

sorrodje@vks10487:~$ ls blabla.zip sorrodje@vks10487:~$ su root Password: root@vks10487:/home/sorrodje# ls blabla.zip root@vks10487:/home/sorrodje#

Tu restes au même endroit :wink:

~ signifie que tu es dans le /home du user que tu utilises.
$ en fin de prompt ( la ligne avant ta zone de saisie de commande ) signifie que tu es en utilisation normale

signifie qu’on est en tant que root.

on peut retrouver des équivalences en fonctionnant avec sudo mais pour le moment reste avec l’utilisation d’un compte root quand tu veux bosser en tant qu’admin … A mes yeux c’est plus pédagogique . un jour peut-être tu préféreras utiliser sudo mais pour le moment ça serait plus de confusion qu’autre chose.

$ => Avec ton user = utilisation normale = peu de risque

=> avec le compter = utilisation admin tout puissant = FAIRE TRES ATTENTION!

sympa pour cette différenciation.
Je me le note.

J’avais bien noté mon emplacement une fois passé en root.
Et j’ai déjà compris que je devais faire "cd " pour retourner au dossier précédent.

Ce devrait être assez complet pour qu’un novice puisse naviguer proprement.

Merci :slightly_smiling:

cd ne retourne pas dans le répertoire* précédent, mais va systématiquement dans le répertoire de l’utilisateur courant (/home/quelquechose pour ton utilisateur normal, /root pour l’utilisateur root).

(*) Juste en passant, même si ça n’a pas grande importance de nos jours : le mot “dossier” est une abstraction liée aux interfaces graphiques. Sur le disque ça s’appelle un répertoire. En fait un dossier est la représentation d’un répertoire dans un environnement graphique (Xorg, Windows, …).

effectivement. JE vais modifier mon info sur "cd "
Pour dossier , oui je sais mais j’ai finit pour oublié le mot répertoire auquel j’étais habitué avec le dos. Pour mieux être compris des novice de windows qui disent tous dossiers. Donc j’en reste à dossier. Et Il y a moins de lettre à taper (mais quel flémard !)

Retourner au $PWD précédent:

$ cd -

Plus long :

$ cd $OLDPWD

Précédent ne veut pas forcément dire point supérieur comme :

$ cd …

Tiens je ne connaissais pas ça. :mrgreen:
Ça sera utile, à n’en pas douter. :slightly_smiling:

Elle est dans le manuel de bash.

SHELL BUILTIN COMMANDS

[code] cd [-L|[-P [-e]]] [dir]
Change the current directory to dir. The variable HOME is the default dir. The variable CDPATH
defines the search path for the directory containing dir. Alternative directory names in CDPATH are
separated by a colon (:). A null directory name in CDPATH is the same as the current directory, i.e.,
``.’’. If dir begins with a slash (/), then CDPATH is not used. The -P option says to use the physical
directory structure instead of following symbolic links (see also the -P option to the set builtin com‐
mand); the -L option forces symbolic links to be followed. If the -e option is supplied with -P, and
the current working directory cannot be successfully determined after a successful directory change, cd
will return an unsuccessful status. An argument of - is equivalent to $OLDPWD. If a non-empty direc‐
tory name from CDPATH is used, or if - is the first argument, and the directory change is successful,
the absolute pathname of the new working directory is written to the standard output. The return value
is true if the directory was successfully changed; false otherwise.

[/code]

Le manuel baroque imbuvable par excellence, chapeau bas à celui qui l’assimilerait et le mettrait intégralement en pratique.

Y a de grands compositeur dans l’époque unix :slightly_smiling:
J’ai conservé l’essentiel pour les novice, je vais pas plus loin.

Merci à tous.

Jean-Sébastien Bash, pas étonnant que le manuel soit baroque …

fr.wikipedia.org/wiki/Bach