cpanにNetAppモジュールがあったのを発見したので。さっそく使おうとしたけど、たぶんNetApp::Filer がおかしい?くてtelnet loginできない。まぁtelnetやめてsshにしろっていう話でもあるけど。
perldoc -m NetApp::Filerしてsource見たら、
if ( $ENV{NETAPP_TELNET_DEBUG} ) { $session->input_log('/var/tmp/netapp-telnet-debug.log'); }
とあったので
$ export NETAPP_TELNET_DEBUG=1 $ perl netapp.pl $ tail -f /var/tmp/netapp-telnet-debug.log
とかしてみた。するとPassword入力するプロンプトで止まったままだ。
さらにsourceを見ると、どうやらNet::Telnetでpassword入力するところがうまくいってない様子。
netappにtelnet接続するとusernameを聞かれないで、Passwordのみを聞かれるはず。(もしかしたらoptionsの設定でusernameも設定できるかもしんないけど)
ところがNetApp::Filerは通常のtelnetのように、usernameのプロンプトまで書いてる様子。
$session->open( $hostname ); $session->waitfor('/login:/'); $session->print( $username ); $session->waitfor('/Password:/'); $session->print( $password );
というわけでとりあえず'/login: /'のプロンプトを待たないように書き換えたら動いた。
# diff Filer.pm.org Filer.pm 218,219d217 < $session->waitfor('/login:/'); < $session->print( $username );
ただ、NetApp::Qtree、NetApp::Snaphot等はあったけど、自分が求めていたquota関係のモジュールがなくてちょっとしょんぼり。