「pw」や「passwd」はパスワードの入力時に対話モードになり、この間はリダイレクトを受け付けない状態になります。
システムに多数のユーザを追加したり、一括でパスワードを変更したい場合は多いですが、この対話モードの為に、普通にシェルスクリプトを書いても、ユーザ作成やパスワード変更をバッチ処理することはできません。
このページでは、上記の対話モードを回避して、ユーザ作成やパスワード変更をシェルスクリプトでバッチ処理する方法について説明します。
ユーザの追加/削除およびパスワードの変更等を行う為のコマンド「pw」には、「-h」というパラメータがあり、標準入力(STDIN)からパスワードを取得することが可能です。
予めパスワードが格納されたファイルを用意し、以下のようにすることでシェルスクリプトからユーザのパスワードを変更することができます。
hogehoge
$ pw usermod root -h 0 < ./password.txt
尚、新規ユーザにランダムなパスワードを割り当てたい場合には、わざわざ上記のようなやり方をしなくても、「-w random」のパラメータで実現可能です。
このパラメータを付与すると、標準出力に生のパスワードが出力されますので、これをファイルにリダイレクトして保存し、ユーザへの周知等に利用してください。
・頂いたメッセージは管理者のチェックの後、公開されます。
・メッセージの公開を希望されない場合には、「このメッセージを非公開にする」にチェックを入れてください。
・管理者が不適切と判断したメッセージは公開しませんので、予めご了承ください。
まだ評価がありません |
表示できるメッセージはありません。