web-dev-qa-db-ja.com

ターミナルを開くとき、またはコンソールモードでbashシェルを自動的に起動する方法

「useradd」コマンドを使用してubuntuで通常のユーザーアカウントを作成しますが、問題は「bash」と入力してこのユーザーアカウントのbashシェルを両方のコンソールモード(tty、ctrl + alt + Fn)およびリモートモード(ssh経由)。私にとってbashシェルの最も重要な部分は自動補完機能です。したがって、私の質問は、アカウントにログインしたときにbashシェルを自動的に起動させる方法です。

私はubuntu 13.04 32ビット版を使用しています。アドバイスをお願いします!

7
mikegao88

まず、useraddShellのデフォルト値を示しているかどうかを確認します。それを行うには、次を発行します。

useradd -D

これは次のようなものを出力します:

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

これらの値は、/etc/default/useraddから取得されます。現在、2つのソリューションがあります。

  1. /etc/default/useraddを編集し、Shellの値を変更します。または
  2. useradd -D -s /bin/bashでユーザーを追加するときにシェルの値をオーバーライドします

詳細については、man useraddを参照してください。

7
Frantique

おそらく、bashを新しいユーザーのログインシェルとして設定する必要があります。そのユーザーとしてログインしている場合:

chsh -s /bin/bash

別のユーザー用に変更するには

Sudo chsh -s /bin/bash username

将来的には、低レベルのadduserの代わりにuseraddを使用することができます。これは、デフォルトで新しいログインシェルとしてbashを設定するためです。

/ etc/passwdファイルを見るか、または

getent passwd username
16
steeldriver