タグ

expectに関するatm_09_tdのブックマーク (4)

  • su で expect を使って簡単に root になる方法 | Carpe Diem

    exepct 便利ですよね。expect を使うと、コマンドラインの対話を自動的に行うことが出来ます。 例えば、/home/foo/password に su のパスワードが書かれている場合、次のようなスクリプトを作成して実行すると一発で su することができます。 #!/usr/bin/expect -f set password [exec cat /home/foo/password | head -1 | tr -s " " | cut -d " " -f 2] spawn su - expect "*assword:" { send "$password\r" } interact ポイントは、set で exec を使ってコマンドラインの実行結果をパスワードに入れているところ、上記の例であと /home/foo/password には複数行で各ユーザごとのパスワードがかかれてい

  • Rubyで exptect や ptyを使ってパスワードを自動入力する - それマグで!

    SSHパスワード省略について書くと,公開鍵エントリに埋もれてしまうのですが。。。 Sudoや、SSHを踏み台にしてその先のPCRsyncするときなど、パスワード入力が毎回出てきて煩わしい.公開鍵が使えない業者のサーバーに限って,SSHで多段アクセスだったり頻繁にRsyncが必要だったりする ruby でパスワード入力する方法 #!/usr/bin/env ruby require 'pty' require 'expect' cmd = 'rsync -avz server0:/mnt/test /home/takuya ' PTY.getpty(cmd) do | i,o | o.sync = true i.expect(/password:/,10){|line| ##入力プロンプトくるまでreadline繰り返す puts line o.puts "my_pass" o.flush

    Rubyで exptect や ptyを使ってパスワードを自動入力する - それマグで!
  • expectでssh sudoを自動化する方法

    このドキュメントの内容は、以下の通りです。 はじめに 実現するためのテクニック 解決策 関連項目 はじめに コンピュータを扱っているとこんなことがあるのではないでしょうか。 毎回同じコマンドを叩いている 運用しているサーバが多すぎる ひたすら、似たようなことを毎日やっていて、どうにかしたい、って思われてると思います。 sshでログインしているホストsudo が必要なケースもあるでしょう。 ssh でログインするたびに、sudo のパスワードを聞かれるのは、ウンザリします。 しかも、あと40台もサーバがあるのに、、、とかいうときです。 実現するためのテクニック ssh foo sudo bar を実現するために、いくつかのテクニック(オプション)を必要とします。 [2013-03-15-1] sshコマンドでsudoする方法 sudo は、端末が必要なので、sshに-tオプションをつかう

  • expect. 対話的なコマンド(telnet,ftp,su等)を自動実行したいとき(Kodama's tips page)

    Kodama's home / tips. expect. 対話的なコマンド(ssh, telnet, ftp, su等)を自動実行したいとき ssh, telnet , ftp 等の対話的に使用するように作られたプログラムを スクリプト中に組み込んで定型的な作業を自動実行したい場合には expect を用いる事をお勧めします. また, ruby 言語を使えるなら ruby の expect.rb を使うのも良いでしょう. スクリプト中で su が必要な作業をさせたい場合にも便利です. 複数のマシンでの管理作業に利用した例があります. 複数のマシンでリモ−トでコマンド実行 手作業での実行例 次は telnet して ls する場面です. $ telnet hoge # マシンhoge に telnet した hoge login: foo # ログイン名 foo Password: # パ

  • 1