![Ubuntu - 新しく作成されたユーザーにはコマンド履歴が利用できません](https://rvso.com/image/1157158/Ubuntu%20-%20%E6%96%B0%E3%81%97%E3%81%8F%E4%BD%9C%E6%88%90%E3%81%95%E3%82%8C%E3%81%9F%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%AB%E3%81%AF%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E5%B1%A5%E6%AD%B4%E3%81%8C%E5%88%A9%E7%94%A8%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93.png)
新しいユーザーを作成しました
useradd -d / -G www-data dsweb
sudo passwd dsweb
usermod -aG sudo dsweb
このユーザーとして正常にログインしましたが、上矢印キーを押そうとすると、^[[A
ほんの数分前に入力したコマンドではなく、次のようなものが表示されます。ルート ユーザーとしてログインすると、すべて正常に動作します。
どうすれば動作させることができますか?
答え1
開発者たちgit
は語る配管(低レベル)と磁器(高レベルの) コマンドです。 配管です。代わりに (=porcelain)useradd
を使用するべきでした。adduser
ユーザー追加は、ユーザーを追加するための低レベルのユーティリティです。Debian では、管理者は通常、代わりに adduser(8) を使用する必要があります。
を使用する場合、useradd
ホーム ディレクトリやログイン シェルなど、文字通りすべてを指定する必要があります。adduser
一方、 には適切なデフォルトがあります。@steeldriver がコメントで指摘したように、/
ホーム ディレクトリ (書き込み権限なし) および/またはログイン シェルが間違っているadduser
ために、このような状況になった可能性があります。はこれらすべてを処理します。つまり、次のようになります。
adduser dsweb # create user with default settings (like $HOME, $SHELL)
adduser dsweb www-data # add him to group www-data
adduser dsweb sudo # ... and sudo
adduser
そして、確かに、2つのコマンドとがあるというのは本当に厄介ですuseradd
。私自身いつもどちらがどちらか調べる必要があります。
以前に作成したdsweb
ユーザーを削除するには、を使用しますdeluser dsweb
。ない--remove-home
$HOMEとして作成したので/
、削除したくないので、スイッチを指定します。