Coloriser le Shell #

Salut à tous,
je sais pas si ça a déjà été posté mais je suis souvent confronté avec un problème lorsqu’on a plusieurs machines et on ne sait pas toujours sur la quelle on travail alors il y a un petit script bash à copier dans .bashrc qui donnera des couleurs suivant la machine sur laquelle on est connecté:

[code]# couleurs
C_RED="[\e[1;31m]“
C_BLUE=”[\e[1;34m]“
C_GRAY=”[\e[1;30m]“
C_WHITE=”[\e[1;37m]“
C_YELLOW=”[\e[1;33m]“
C_DEF=”[\033[0m]"

mUID=id -u
MACHINE="hostname"
IP=“IP”

if [ “$mUID” = “0” ] ; then
PS1="${C_YELLOW}>${C_DEF} ${C_RED}\u${C_DEF}@${MACHINE}${C_YELLOW}[${C_DEF}$IP${C_YELLOW}]${C_DEF}:\w${C_RED}#${C_DEF} “
PS2=”${C_RED}>${C_DEF} “
else
PS1=”${C_YELLOW}>${C_DEF} ${C_BLUE}\u${C_DEF}@${MACHINE}${C_YELLOW}[${C_DEF}$IP${C_YELLOW}]${C_DEF}:\w${C_BLUE}$ ${C_DEF}“
PS2=”${C_BLUE}>${C_DEF} "
fi

export PS2
export PS1[/code]

Remplacé la variable MACHINE=“server1” par votre machine et la variable IP=“192.168.0.10” par l’ip de votre machine et ça devrait donner un truc du genre :

et quand on pratique le chroot avec dchroot sur une debian64, un petit:

if [ -z "$debian_chroot" -a -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' fica ne mange pas de pain non plus.
Il faut penser à créer le fichier /etc/debian_chroot dans le chroot.
(J’ai pas mis de couleurs, mais ça peut se rajouter)

Salut mattotop,
tu pourrais éclairer ma lanterne a propos du chroot car c intéressant.
Tu pourrais me donner un exemple d’utilisation ? car j’avoue que j’ai déjà vu cette ligne de commande dans le .bashrc mais je n’ai pas compris a quoi elle servait.

ben si tu as une autre install linux, mettons avec son root sur /mnt/gentoo, par exemple, tu peux te “mettre sur” ta gentoo en faisant

chroot /mnt/gentooc’est un peu raccourcis, mais aprés, le shell qui s’ouvre tourne en croyant que le root commence la ou est /mnt/gentoo sur ta debian. Il ne voit que la gentoo, pas ce qu’il y a en dehors du chroot.
Pour le 64bits, comme certains programmes n’existent qu’en 32bits, on est obligé parfois de créer une deuxiême install minimale, et d’y installer les programmes 32 bits dans une “pseudo install” avec des lib 32 pour que les programmes 32bits tournent.
dchroot est une variante de chroot faite pour simplifier ce type d’install (on peut faire des liens dans l’arbo 64 qui tournent directement dans le chroot).

Merci,
en cherchant un peu sur le net j’ai trouvé ceci mais je c pas si ça correspond bien a ce que tu as dit sur le chroot :
howto.landure.fr/gnu-linux/debia … son-chroot

[edit] j’ ai compris ! si on fait un chroot pour admin dans /home/chroot/admin_jail
il suffit de créer un fichier nommé /etc/debian_chroot avec comme donnée admin_jail et lorsque admin se connecte il est chrooté ! lol

ouais, toutes facons c’est un outil avancé, et il faut lire plusieurs trucs pour comprendre ce qu’on fait:
debian.org/releases/stable/i … 04.html.fr
dmoiron.free.fr/fiche?ref=debianamd64howto
ubuntuforums.org/showthread.php?t=24575

dexmon: tu peux regarder le fil «faire tourner openoffice sur AMD64» pour voir un exemple de configuration. Sinon, je rajouterais comme utilisation l’installation de paquets sid sur une machine sensible qu’on veut absolument laisser en stable (Vous ai-je dit que j’étais prudent sur ce point?), tu te fais un debootstrap sid, tu fais un chroot,

apt-get install paquet_mega_experimental

et si il plante, pas grave, rien n’a été touché dans ta machine, à la limite tu effaces le répertoire et hop, ta machine est comme avant: le beurre et l’argent du beurre :slightly_smiling:

bonsoir,
je sais pas si je fais bien de poser la question ici (mais comme le titre du post me parait vaste assez …), comment faire disparaître momentanément le curseur et / ou son clignotement en console ?

EDIT :
je comprend pas comment ça se fait que bon nombre de posts que j’ai lu sur le net n’apporte pas la solution, simplissime :

Pas mal l’astuce.

salut,
est-ce quele script de dexmon, concernant la couleur dans le shell est valable aussi dans le cas d’une seule machine: chaque terme, en fonction de ce a quoi il réfère (lien symbolique, commande, rep…) a sa propre couleur, comme c’est le cas sous gentoo par exemple ? je suppose qu’il y a juste qques p’tites modif à réalaiser ?
[edit] A tout hazard je viens de rajouter

[code]

couleurs

C_RED="[\e[1;31m]“
C_BLUE=”[\e[1;34m]“
C_GRAY=”[\e[1;30m]“
C_WHITE=”[\e[1;37m]“
C_YELLOW=”[\e[1;33m]“
C_DEF=”[\033[0m]"

PS1="${C_YELLOW}>${C_DEF} ${C_RED}\u${C_DEF}@${MACHINE}${C_YELLOW}[${C_DEF}$IP${C_YELLOW}]${C_DEF}:\w${C_RED}#${C_DEF} “
PS2=”${C_RED}>${C_DEF} "
export PS2
export PS1
[/code]dans /etc/bash.bashrc, mais ça n’a rien changé…