[résolu] Coloration en rouge de l'utilisateur root désactivée ?

Questions concernant les lignes de commandes
bertty
Messages : 9
Enregistré le : lun. 13 févr. 2017 18:41

[résolu] Coloration en rouge de l'utilisateur root désactivée ?

Message par bertty » mer. 11 juil. 2018 00:03

Bonjour,

Je viens d'effectuer l'upgrade de LM 18.3 à LM 19

Tout semble OK à part ce petit détail dans le terminal : quand je tape je me loggue bien en root mais la coloration de l'utilisateur disparaît, y compris d'ailleurs quand je fais un ou tout autre commande qui amène habituellement à une coloration.

Dois-je modifier qqch dans les propriétés du terminal ?

Bonne journée à tous.
Modifié en dernier par bertty le ven. 13 juil. 2018 12:04, modifié 2 fois.
Linux Mint 19 Cinnamon 64 bits

Avatar du membre
arghlub
modérateur
Messages : 4339
Enregistré le : dim. 21 mai 2017 08:19
Localisation : Provence

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par arghlub » mer. 11 juil. 2018 09:03

Salut,

Si tu veux retrouver une invite de commande colorée pour root, une solution (d'autres doivent exister, mais c'est la 1ère qui m'est venue à l'idée, je viens de l'essayer, ça marche) serait de modifier le fichier «.bashrc» de root.

Pour ce faire :
  1. tu passes en root :

    Code : Tout sélectionner

    sudo su
  2. tu te places dans le répertoire de root :
  3. par précaution, copie le fichier .bashrc pour en garder une copie en cas de bêtise :

    Code : Tout sélectionner

    cp .bashrc .bashrc-original
  4. on passe aux choses sérieuses en éditant le fichier .bashrc :

    Code : Tout sélectionner

    xed .bashrc
  5. dans ce fichier, décommente (enlève le # du début) la ligne 39 (ou aux alentours) :

    Code : Tout sélectionner

    force_color_prompt=yes
  6. modifie la variable d'environnement PS1 qui définit la mise en forme du prompt/invite de commandes.
    Dans la ligne contenant la variable PS1 (ligne 53), remplace le code de la couleur verte \[\033[01;32m\] par du rouge \[\033[01;31m\].
  7. Pour finir, enregistre le fichier et quitte «xed». Et pour tester, ferme et réouvre le terminal et passe en root.
Ce qui te donne un fichier .bashrc pour root du genre :

Code : Tout sélectionner

# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# don't put duplicate lines in the history. See bash(1) for more options
# ... or force ignoredups and ignorespace
HISTCONTROL=ignoredups:ignorespace

# append to the history file, don't overwrite it
shopt -s histappend

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
    xterm-color) color_prompt=yes;;
esac

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
	# We have color support; assume it's compliant with Ecma-48
	# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
	# a case would tend to support setf rather than setaf.)
	color_prompt=yes
    else
	color_prompt=
    fi
fi

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
#    . /etc/bash_completion
#fi
Bien sûr, tu peux faire bien d'autres modifs de mise en forme et c'est à ton goût.
Pour les codes couleurs, vas voir par ici : https://memo-linux.com/comment-personna ... -terminal/" onclick="window.open(this.href);return false;

Si jamais tu fais des bêtises, tu pourras toujours revenir en arrière en remettant le fichier original qu'on a sauvegardé avec cette commande (il faut être root dans le répertoire de root évidemment) :

Code : Tout sélectionner

cp .bashrc-original .bashrc
Dernière chose : pour le «ls» coloré, il devrait l'être, cela se fait avec l'alias «alias ls='ls --color=auto'» dans le .bashrc.

Voili ;)
Portable • Lenovo G50-80 “boosté RAM+SSD” | CPU Intel I3-4005U | RAM 8Go | tripleBoot avec “/data” commune : LMint 18.3 Sylvia | MX Linux 17.1 | LMint 19 Tara | XFCE (pour les 3)
Tour (custom)CM MSI Z270 M3 | CPU Intel I7-7700K | CG Nvidia GTX 1080 | RAM 16Go DDR4 3000MHz | tripleBoot : Debian 9 | MX Linux 17.1 | LMint 19 | XFCE
────────────────────────────────────
... pour une informatique libre ! -membre de l'April

bertty
Messages : 9
Enregistré le : lun. 13 févr. 2017 18:41

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par bertty » mer. 11 juil. 2018 17:43

Merci beaucoup pour cette réponse extrêmement précise que je vais me presser d'appliquer 8-)

Un peu étonnant qu'ils aient viré par défaut la coloration quand même, non ?
Linux Mint 19 Cinnamon 64 bits

Avatar du membre
arghlub
modérateur
Messages : 4339
Enregistré le : dim. 21 mai 2017 08:19
Localisation : Provence

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par arghlub » mer. 11 juil. 2018 18:03

Effectivement j'ai vu ça dans LM19, mais bon.... on a toujours la main si on a pas peur d'un peu de cambouis :D
Portable • Lenovo G50-80 “boosté RAM+SSD” | CPU Intel I3-4005U | RAM 8Go | tripleBoot avec “/data” commune : LMint 18.3 Sylvia | MX Linux 17.1 | LMint 19 Tara | XFCE (pour les 3)
Tour (custom)CM MSI Z270 M3 | CPU Intel I7-7700K | CG Nvidia GTX 1080 | RAM 16Go DDR4 3000MHz | tripleBoot : Debian 9 | MX Linux 17.1 | LMint 19 | XFCE
────────────────────────────────────
... pour une informatique libre ! -membre de l'April

bertty
Messages : 9
Enregistré le : lun. 13 févr. 2017 18:41

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par bertty » jeu. 12 juil. 2018 08:54

Bonjour,

J'ai décommenté la ligne contenant force_color_prompt=yes (qui est la ligne 46 pour moi)

Pour la variable PS1 j'ai un doute car mon .bashrc ne semble pas tout à fait la même chose que le tien. Voilà mon .bashrc :

Code : Tout sélectionner

# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return;;
esac

# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth

# append to the history file, don't overwrite it
shopt -s histappend

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
    xterm|xterm-color|*-256color) color_prompt=yes;;
esac

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
	# We have color support; assume it's compliant with Ecma-48
	# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
	# a case would tend to support setf rather than setaf.)
	color_prompt=yes
    else
	color_prompt=
    fi
fi

if [ "$color_prompt" = yes ]; then
    if [[ ${EUID} == 0 ]] ; then
        PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
    else
        PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \$\[\033[00m\] '
    fi
else
    PS1='${debian_chroot:+($debian_chroot)}\u@\h \w \$ '
fi
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h \w\a\]$PS1"
    ;;
*)
    ;;
esac

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

# Add an "alert" alias for long running commands.  Use like so:
#   sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi

if [ -x /usr/bin/mint-fortune ]; then
     /usr/bin/mint-fortune
fi
[ -r /home/bertrand/.byobu/prompt ] && . /home/bertrand/.byobu/prompt   #byobu-prompt#
En tous cas tel quel, pour le moment root n'est toujours pas coloré mais je dois sans doute modifier qqch pour PS1, j'ai essayé de remplacer 32m par 31m dans le if et rien pour le moment.

Ha oui et un truc supplémentaire : l'auto-complétion avec TAB ne semble plus fonctionner non plus (mais seulement en root) ? :(

Bonne journée !
Linux Mint 19 Cinnamon 64 bits

Avatar du membre
arghlub
modérateur
Messages : 4339
Enregistré le : dim. 21 mai 2017 08:19
Localisation : Provence

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par arghlub » jeu. 12 juil. 2018 09:19

Salut,

J'ai l'impression que tu as modifié le .bashrc contenu dans ton /home/bertrand et pas celui de /root :?

Le .bashrc dans /root que je t'ai fourni provient d'une LM19XFCE (installation récente, pas de upgrade de LM18→19) mais aucune raison que cela ne soit pas le même dans Cinnamon.

Verifie donc que c'est bien le fichier «/root/.bashrc» que tu as modifié et pas le fichier «/home/bertrand/.bashrc»
Car si je connais ton prénom c'est que c'est marqué en fin de ton fichier, ce qui ne devrait absolument pas être le cas si c'était le fichier de root !
Portable • Lenovo G50-80 “boosté RAM+SSD” | CPU Intel I3-4005U | RAM 8Go | tripleBoot avec “/data” commune : LMint 18.3 Sylvia | MX Linux 17.1 | LMint 19 Tara | XFCE (pour les 3)
Tour (custom)CM MSI Z270 M3 | CPU Intel I7-7700K | CG Nvidia GTX 1080 | RAM 16Go DDR4 3000MHz | tripleBoot : Debian 9 | MX Linux 17.1 | LMint 19 | XFCE
────────────────────────────────────
... pour une informatique libre ! -membre de l'April

Avatar du membre
arghlub
modérateur
Messages : 4339
Enregistré le : dim. 21 mai 2017 08:19
Localisation : Provence

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par arghlub » jeu. 12 juil. 2018 10:55

Juste pour te montrer que chez moi cela marche parfaitement :
Image
Portable • Lenovo G50-80 “boosté RAM+SSD” | CPU Intel I3-4005U | RAM 8Go | tripleBoot avec “/data” commune : LMint 18.3 Sylvia | MX Linux 17.1 | LMint 19 Tara | XFCE (pour les 3)
Tour (custom)CM MSI Z270 M3 | CPU Intel I7-7700K | CG Nvidia GTX 1080 | RAM 16Go DDR4 3000MHz | tripleBoot : Debian 9 | MX Linux 17.1 | LMint 19 | XFCE
────────────────────────────────────
... pour une informatique libre ! -membre de l'April

Avatar du membre
Lycaon
Messages : 684
Enregistré le : ven. 13 avr. 2018 00:53
Localisation : Belgique

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par Lycaon » jeu. 12 juil. 2018 11:17

Salut Bertty,

Je pense qu'Arghlub a raison. Pour pouvoir te dire exactement quel fichier il convient de modifier, essaye d'aller dans la racine :

Code : Tout sélectionner

cd /
puis exécute :

Code : Tout sélectionner

sudo locate bashrc
et renvoie ici ce que ça te donnera. ;)
CM Gigabyte 970A UD3 // Proc. AMD Phenom™Ⅱ X4 965 // RAM 2×4 Go DDR3 G.Skill Extreme3 Ripjaws 1600MHz-PC12800 // CG Nvidia GK208 (GeForce GT730) 9020MHz 2Go // Écran Philips 240V 24" 1920×1200 // SSD (sda) 120Go // HDD (sdb) 2To // Lecteur-graveur DVD noname // Impr. Brother DCP-J562DW (/USB) // LM 18.3 Cinnamon 64 bits, noyau 4.15.0-38-generic x86_64 (64 bit)

Avatar du membre
arghlub
modérateur
Messages : 4339
Enregistré le : dim. 21 mai 2017 08:19
Localisation : Provence

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par arghlub » jeu. 12 juil. 2018 11:37

en plus des commandes de Lycaon, donne-nous le retour de :

Code : Tout sélectionner

sudo ls -a /root
;)
Portable • Lenovo G50-80 “boosté RAM+SSD” | CPU Intel I3-4005U | RAM 8Go | tripleBoot avec “/data” commune : LMint 18.3 Sylvia | MX Linux 17.1 | LMint 19 Tara | XFCE (pour les 3)
Tour (custom)CM MSI Z270 M3 | CPU Intel I7-7700K | CG Nvidia GTX 1080 | RAM 16Go DDR4 3000MHz | tripleBoot : Debian 9 | MX Linux 17.1 | LMint 19 | XFCE
────────────────────────────────────
... pour une informatique libre ! -membre de l'April

bertty
Messages : 9
Enregistré le : lun. 13 févr. 2017 18:41

Re: Coloration en rouge de l'utilisateur root désactivée ?

Message par bertty » jeu. 12 juil. 2018 13:50

Ho le boulet :l
En effet j'ai oublié de me mettre dans le bashrc de root :?
Je corrige ça dès que je rentre :oops:
Linux Mint 19 Cinnamon 64 bits

Répondre