Ubuntu 18.04.01で次のように新しいユーザーを作成しました。
Sudo useradd svn
Sudo passwd svn
Sudo mkhomedir_helper svn
Sudo usermod -d /home/svn -m svn
問題は、su svn
でユーザーに切り替えると、標準のプロンプトコマンドが表示されないことです。標準のプロンプトの代わりに:
svn@svn-server:/srv/svn/$
私だけが見る:
$
ファイル/home/svn/.bashrc
の内容にもかかわらず。この「不自由な」プロンプトでは、TABキーを使用してパスをオートコンプリートすることもできません。
echo $PS1
をsvn
ユーザーとして実行すると、空の結果が得られます。
このユーザーを修正するにはどうすればよいですか?
割り当てたシェルを確認します。 Ubuntu 18でuseradd
コマンドを使用した場合、デフォルトのログインシェルは/bin/sh
になり、前述のような出力が得られます。次のコマンドを実行して、ログインシェルを変更できます。
Sudo usermod -s /bin/bash svn
すべての新しいユーザーが同じシェルを使用するようにしたい場合は、/etc/default/useradd
を使用して設定できます。 Shell
設定を変更して、使用するシェルバイナリへのパスを反映します。たとえば、私のようになります:
HOME=/home
Shell=/bin/zsh
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
また、注目に値するのは、SKEL
設定で指定されたディレクトリを使用して、デフォルトで新しいユーザーのホームディレクトリにコピーするファイルを定義することです。私の場合、すべての新規ユーザーに必要なzsh構成を含む.zshrc
ファイルがあります。
これら2つのファイルを使用して、すべての新規ユーザーのデフォルトを設定します。
新しいユーザーとしてシェルを変更できます。
$ chsh svnのシェルを変更します。 新しいシェル[/ bin/sh]:/bin/bash パスワード:**** シェルが変更されました。
アカウントに予期される「スケルトン」コンテンツの一部が欠落している場合など、他のモップアップ作業が必要になる場合があります。あなたは~/.bashrc
、多分それはここでは問題ではありません。