• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:バッチ処理からのユーザ登録+パスワード設定)

バッチ処理からのユーザ登録+パスワード設定

ita3の回答

  • ベストアンサー
  • ita3
  • ベストアンサー率67% (25/37)
回答No.1

パスワードを自動で更新するだけなら、expect が使えます。 RedHat4.2で入って居なければ、rpmで探せば見つかると思 います。 例えば、UIDとパスワードを ------ userpass ------- user1,password1 user2,password2 . . . ----------------------- というファイルで作成しておいて、 次のexpectスクリプトを作成します。 ----- chgpass.ep #!/usr/local/bin/expect set password [lindex $argv 1] spawn passwd [lindex $argv 0] expect "*password:" send "$password\r" expect "*password:" send "$password\r" expect eof --------------------- 次に、実際に動かすためのスクリプトを こんな感じで作成します。 ---------- chgpass.sh ---- #!/bin/sh for i in `cat $1` do USER=`echo $i | cut -f 1 -d,` PASS=`echo $i | cut -f 2 -d,` ./chgpass.ep $USER $PASS done --------------------------- chgpass.ep と chpass.sh を chmod 755 しておいて スーパユーザになったあとに # ./chpass.sh userpass とすればいいでしょう。 ただし、パスワードが短いとか不正なやつは、エラーで 止まってしまいますので気をつけてください。 この方法だと、RedHatに限らず、FreeBSDでも、Solaris でも対応可能です。Expect入れとく必要があるんですが...

noname#1261
質問者

お礼

詳細な回答ありがとうございました。m(。_)m

関連するQ&A

  • パスワードを期限切れにしたい

    RedHat Enterprise Linux ES2.1を使用しています。 新しいユーザーを作成し、そのユーザーにすぐパスワードを変更してもらうため、 新しいユーザーを作成し、最初ののパスワードを設定した時点で、期限切れにしたいのです。 色々調べて、「passwd -e ユーザー名」のコマンドでできると書いてあるページを見つけましたが、 やってみたところ、unknown optionとなり、ダメでした。 UNIXではできるようですが、Linuxでできる方法はないのでしょうか。

  • パスワード設定していないユーザーのログイン

    いつもお世話になっております。 linuxで、useraddした後、passwdコマンドでパスワードを設定していないユーザーがいます。ここでは、postgresとします。 このユーザーに一般ユーザーからなるときに、 $su - postgres としますが、パスワードがきかれて、何も入力しないと、 invalidになります。(centos5) パスワードを設定しないと、一般ユーザーからログインできないのでしょうか。 ちなみに、rootからpostgresですと、ログインできます。 $su - $su - postgres お手数をおかけしますが、なにとぞご教授お願いいたします。

  • ドメインユーザーの一括登録・詳細設定

    今回、業務で2000アカウントほどドメインに新規で登録することになったのですが、とても手作業で登録できる量ではないので、adduserかnet userでのバッチファイルでの一括登録を考えています。 ですが、上記コマンドだと詳細な設定がちょっと難しい?ように思えます。 今回設定したいのは ・ユーザーのアカウントとパスワード ・特定のユーザーはパスワード期限がなく、ある特定のユーザーはパスワードの有効期限を設定したい。 ・特定のユーザーは初回ログオン時にパスワードの変更が必要だが、特定のユーザーは特に変更しなくてよい(ダイアログを出さない) ・・・というユーザーごとにアカウント&パスワードのポリシーが違うのですが、これらの設定をコマンドから行うことは可能でしょうか?

  • サーバ移行のユーザ移動&パスワード

    初心者ですいません。 現在Turbolinux6を使っています。 最近PCを購入してTurbolinux7をインストールしたパソコンがあります。 Turbolinux6の方には100個ぐらいのアカウントを作っていますが、これをTurbolinux7にユーザ、パスワードを移動させたいのですがまともにadduserしてpasswdを設定しなければならないのでしょうか? もし良い方法がございましたらご教授頂けると大変助かります。

  • Bシェルでのユーザパスワード変更

    Bシェルのスクリプトを実行しユーザパスワードの変更を自動で 行いたいと思っています。 #!/bin/sh passwd 変更したいユーザ名 abcd ・・・(変更したい人のパスワードです[新しいパスワード用]) abcd ・・・(変更したい人のパスワードです[新しいパスワードの聞きなおし用]) このようにシェルを組み実行したところ コマンドプロンプトにてパスワードの入力 を聞かれてしまい、シェルにパスワードを 指定しているのですが認識してくれません。 この問題を解決するにはどのような シェルの記述方法があるのでしょうか。 ご回答よろしくお願いします。

  • PuppyLinux 既存ユーザのパスワードは?

    LINUX初心者です. PppyLinux 4.3.1を使用しています./etc/passwd を見ると,インストール直後でも いくつもの既存ユーザが登録されています. これらのユーザのパスワードはどこかで公開されているのでしょうか? (rootは,woofwoofと,どこかで見たことがありますが?) それとも,利用者が変更の必要がなければ知る必要がないので,公開されていないのでしょうか?

  • Linuxでuseraddコマンドでユーザを作成

    したときにそのユーザのパスワードは何になるのでしょうか? すぐにpasswdコマンドでパスワードを登録するのが普通ですが もしpasswdコマンドしなければ そのユーザのパスワードは何になるのでしょうか?

  • 現在MySQLの特権ユーザー(root)にパスワードが設定されているかどうか知る方法。

    シェルの超初心者です。 現在MySQLの特権ユーザー(root)にパスワードが設定されているかどうか知るには、どのようなコマンド(方法)を使えばよいのですか? サーバは、レンタルサーバです。 CentOS 5.3(Red Hat Enterprise Linux 5と別コマンドになる場合は、Redhatのコマンドも教えて下さい。) PHP 5.1.x MySQLの特権ユーザー(root)にパスワードを設定する方法は、下記サイトでわかりました。 http://y-kit.jp/saba/xp/mysqlsetup.htm#root よろしくお願いします。

  • MySQLにユーザを登録したい

    のですがLinuxではどのようなコマンドで登録するのでしょうか? パスワードを設定するのは mysqladmin -u root password 'xyz' -p でできることは分かるのですが 最初から存在するroot以外のユーザを作る方法がわかりません

    • ベストアンサー
    • MySQL
  • パスワードの変更

    RedHat7.2Jを利用しております。 あるユーザ(rootではありません)のパスワードをpasswdコマンドで変更しようとしたのですが、新パスワードを入力すると it is based on a dictionary word と出てきてしまい受け付けてくれません。 何度かトライすると最後は passwd:Authentication toke manipulation error となって終了してしまいます。 新パスワードはある固有名詞なので一般的な名詞ではないですし、以前使っていたものでもないはずなのですが、いずれにせよ強制的に新パスワードを受け付けさせる方法は無いものでしょうか?