Linuxシステムで何千人ものユーザーを作成する必要があります。現在、newusers
すべてのユーザーのソースとしてファイルと共にコマンドを使用します。ファイルには約10,000人のユーザーが含まれています。走る
$ newusers /tmp/users.txt
動作し、ユーザーを作成しますが、完了するのに時間がかかります。ユーザーにはシェル、ホームディレクトリ、パスワードは必要ありません。ログインする必要もありません。 SSHトンネルにはユーザーが必要です。
これをより速く行う方法はありますか?
ベストアンサー1
どちらもローカルアカウントなので、実行方法は次のとおりです。
userID 範囲の決定
ユーザーのグループIDの確認
以下を実行するスクリプトを作成します
。必要な情報を含む一時パスワードファイルを作成します。${username}:x:${userid}:${groupid}::${homedir}:/bin/false
b。必要な情報を含む一時シャドウファイルを作成します。
${username}:!!:1:0:99999:7:::
一時シャドウファイルを/etc/shadowに追加し、一時パスワードファイルを/etc/passwdに追加します。
${homedir}
NB1:空かもしれない/dev/null
し、何か他のものがあるかもしれません。
NB2:未使用の場合は/etc/shadow
passwd:x:
を次のように置き換えます。:!!:
これは(一時ファイルを作成するのにかかる時間にかかわらず)かなり高速でなければならず、追加のパスワードハッシュ、UID検索などなしでパスワードとシャドウファイルをすばやく更新する必要があります。