web-dev-qa-db-ja.com

新しいユーザーに切り替えると、コンソール機能が制限されます

新しいユーザーを作成しています:

groupadd sybase
useradd -g sybase -d /opt/sybase sybase
passwd sybase
chown sybase:sybase /opt/sybase
chown sybase:sybase /var/sybase

次に、このユーザーに切り替えます。

su - sybase

コンソールの動作が変更されたことを理解するよりも、たとえば自動完了の場合、タブはまったく機能しません。

この問題の解決策は何でしょうか?

1
ses

オートコンプリート(および履歴)は、bashシェルの一部です。を使用して、そのユーザーのbashシェルに変更できます。

Sudo chsh -s /bin/bash $USER

または、他の好きなシェルの場合:/bin/bashを変更します。


man useraddから

s、-シェルシェル

ユーザーのログインシェルの名前。デフォルトでは、このフィールドを空白のままにします。これにより、システムは/ etc/default/useraddのShell変数で指定されたデフォルトのログインシェル、またはデフォルトで空の文字列を選択します。

だからあなたは使うことができたでしょう:

useradd -g sybase -d /opt/sybase sybase -s /bin/bash

もっと/ etc/default/useradd

#useradd(8)
#
のデフォルト値#Shell変数は、
#システムのデフォルトのログインシェルを指定します。
#adduserのDHSELLと同様です。ただし、ここでは「sh」を使用します。これは、
#useraddは低レベルのユーティリティであり、できるだけ一般的な
#
 Shell =/bin/sh 
である必要があるためです。
1
Rinzwind