この質問を他の人に投稿しています。Ubuntuに尋ねる私の問題はDebian / Ubuntuで最悪のようだったので、誰かがここに尋ねることを提案しました。この問題に対する提案された解決策が何であれ、ほとんどのディストリビューション(たとえば、openSuseやUbuntu)で動作します。今使用しているスクリプトコードは次のとおりです。
getent group $MYGROUP
if [ $? -ne 0 ] ; then
sudo su -c "groupadd $MYGROUP"
fi
sudo su -c "useradd mynewuser -p mypassword -m -g $PRIMARYGRP -G $MYGROUP"
Ubuntuで作成されたユーザーアカウントにはいくつかの問題があります。
- 端末プロンプトが設定されていません(
echo $PS1
何も返されません) - 端末では、矢印キーとTabキーが正しく機能しません。
- パスワードがうまくいかないようです(まったく問題が何であるかはまだわかりませんが)。
- 新しいユーザーに設定された/etc/sudoers権限を尊重しないでください。
useraddの代わりに手動でユーザーを作成しても、adduser
これらの問題は発生しません。ただし、Debianではなく、独自のスクリプトまたはbashスクリプトを介してユーザーアカウントを追加する方法が必要です。
私も一つ持っている前の質問トピックについては、この質問とは関係がないほど異なります。
答え1
/bin/sh
問題は、Debianの新しいユーザーのためのデフォルトシェルにはよく知られている機能のほとんどがないことです。コマンドにbash
追加してみてください。-s /bin/bash
useradd
デフォルトのシェルを編集して永久に変更することもできます/etc/default/useradd
。
編集する:
パスワードを自動的に変更するソリューション(MountainXで発見)は次のとおりです。ここ
答え2
カーソルキーとプロンプトの問題は、スケルトンファイルが正しくコピーされないように聞こえます。新しいユーザーのホームディレクトリはありますか.bashrc
?
パスワードはman useradd
Slackで教えてくれました。
-p、--password PASSWORD暗号化されたパスワード、crypt(3)によって返されます。デフォルトはパスワードを無効にすることです。
したがって、プレーンテキストのパスワードを入力しないでください。しかし、現時点では、cryptを手動で呼び出す便利な方法が見つからないため、追加で呼び出す必要があるかもしれませんsudo passwd $mynewuser
。