web-dev-qa-db-fra.com

Comment lancer automatiquement bash Shell à l’ouverture du terminal ou en mode console?

Je crée un compte utilisateur normal dans Ubuntu en utilisant la commande "useradd", mais le problème est que je dois taper "bash" pour lancer le shell bash pour ce compte utilisateur en mode console (dans un tty, via ctrl + alt + Fn) et le mode distant (via ssh). La partie la plus importante de bash Shell pour moi est la fonction d’auto-complétion. Ma question est donc de savoir comment faire en sorte que le bash Shell se lance automatiquement lors de la connexion au compte.

J'utilise la version 32.04 ubuntu 13.04. J'apprécie pour tout conseil!

7
mikegao88

Tout d’abord, vérifiez si useradd affiche une valeur par défaut pour Shell. Pour ce faire, lancez:

useradd -D

Cela produira quelque chose comme:

GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
Shell=/bin/sh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=no

Ces valeurs proviennent de /etc/default/useradd. Maintenant, vous avez 2 solutions:

  1. Éditez /etc/default/useradd et changez la valeur de Shell, ou
  2. Remplacez la valeur du shell lors de l'ajout d'un utilisateur avec: useradd -D -s /bin/bash

Pour plus d'informations, voir man useradd.

7
Frantique

Vous devrez probablement définir bash comme shell de connexion de vos nouveaux utilisateurs. Si vous êtes connecté en tant que cet utilisateur:

chsh -s /bin/bash

Pour le changer pour un autre utilisateur

Sudo chsh -s /bin/bash username

À l'avenir, vous voudrez peut-être utiliser adduserau lieu de useraddde bas niveau, car il définit par défaut bash comme nouveau shell de connexion.

Vous pouvez vérifier le shell de connexion (entre autres détails) en consultant le fichier/etc/passwd ou en utilisant

getent passwd username
16
steeldriver