Pages : 1
#1 Le 29/04/2011, à 05:23
- orAGe
Qu'est-ce que /bin/bash ?
hello ,
juste pour savoir a quoi sert cette commande, et que fait elle exactement :
chroot /mnt/bt/ /bin/bash
qu'est ce que /bin/bash exactement ? un logiciel ? c'est le logiciel du terminal ?
merci
Hors ligne
#2 Le 29/04/2011, à 10:13
- tshirtman
Re : Qu'est-ce que /bin/bash ?
"c'est le logiciel du terminal" c'est pas loin de la vérité, ton terminal est grosso modo un afficheur, et il appelle un 'invite de commande' (shell en anglais) pour que tu puisse taper des commandes. Bash est un shell (bourn again shell) très complet et très bien pour l'utilisation pour controler son OS, il y à d'autres shell, avec plus ou moins de fonctionnalités et des syntaxes différentes.
la commande chroot permet de lancer un système gnu monté quelque part (ici /mnt/bt) en utilisant le linux de ta distribution actuelle, c'est pratique quand on a un système qui ne démarre pas… ici on passe bash en argument pour dire que le shell a lancer est bash, le comportement par défaut étant de lancer le shell de l'utilisateur root sur la distro lancé, qui devrait être bash sauf cas particulier (donc ça ne devrait rien changer dans la plupart des cas).
il y a un tuto chroot dans la doc, il me semble, qui indique les bonnes choses à savoir pour l'utiliser (il est bon de monter certains points comme /sys /dev et /proc dans la distribution hote avant de lancer le chroot par exemple).
Dernière modification par tshirtman (Le 29/04/2011, à 10:14)
Hors ligne
#3 Le 03/05/2011, à 19:09
- orAGe
Re : Qu'est-ce que /bin/bash ?
ici on passe bash en argument pour dire que le shell a lancer est bash
je ne comprends pas l'intérêt de mettre /bin/bash
ils ne parlent pas d'arguments ici
qu'est ce qu'un argument ?
Dernière modification par orAGe (Le 03/05/2011, à 19:12)
Hors ligne
#4 Le 03/05/2011, à 20:29
- tshirtman
Re : Qu'est-ce que /bin/bash ?
un argument, ou parametre, c'est une indication que tu donne au programme appelé sur ce qu'il doit faire, ici c'est le programme qui sera lancé… la page de doc n'indique en effet pas qu'on peut utiliser ça, par ce que c'est plus une indication sur le cas général d'utilisation, pour savoir tout sur un programme, les arguments et les options qu'il accepte, "man" sera ton meilleurs amis (si un peu austère :])
man chroot
edit: je ne vois pas trop l'intérêt de mettre cet argument ici non plus, sauf… si l'utilisateur root utilise un shell différent de bash dans la distro qu'on veux lancer en chroot…
Dernière modification par tshirtman (Le 03/05/2011, à 20:30)
Hors ligne
#5 Le 03/05/2011, à 21:40
- orAGe
Re : Qu'est-ce que /bin/bash ?
en fait , en faisant
chroot /mnt/bt
on utilise le bash de bt ,alors que si on fait
chroot /mnt/bt/ /bin/bash
on utilise le bash du système duquel on a démarré . c'est ça ?
le man de chroot ne me renseigne pas non plus j'ai l'impression, a moins que ce soit parce que j'ai installé manpages-fr et manpages-fr-extra
Dernière modification par orAGe (Le 03/05/2011, à 21:41)
Hors ligne
#6 Le 03/05/2011, à 22:51
- tshirtman
Re : Qu'est-ce que /bin/bash ?
ah, c'est un de ceux qu'il faut utiliser "info" au lieu de "man" (c'est marqué en bas de la page de man), les gens de GNU n'aiment pas le format des pages de man, ils préfèrent écrire des textinfo, c'est un peu la même chose.
Ordinarily, file names are looked up starting at the root of the
directory structure, i.e., `/'. `chroot' changes the root to the
directory NEWROOT (which must exist) and then runs COMMAND with
optional ARGS. If COMMAND is not specified, the default is the value
of the `SHELL' environment variable or `/bin/sh' if not set, invoked
with the `-i' option. COMMAND must not be a special built-in utility
(*note Special built-in utilities::).
Et non pour ce que tu suppose, ça fait strictement la même chose c'est bien un executable du système qu'on lance en chroot qui est appelé, pas du système hote.
Hors ligne
#7 Le 04/05/2011, à 07:12
- orAGe
Re : Qu'est-ce que /bin/bash ?
ok , merci
Hors ligne
Pages : 1