Bashスクリプトを介してユーザーアカウントを追加する正しい方法

Bashスクリプトを介してユーザーアカウントを追加する正しい方法

この質問を他の人に投稿しています。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/bashuseradd

デフォルトのシェルを編集して永久に変更することもできます/etc/default/useradd

編集する:

パスワードを自動的に変更するソリューション(MountainXで発見)は次のとおりです。ここ

おすすめ記事