ここでは、FFFTP FTPクライアントソフトから Solaris 10 へ接続したときにファイルの一覧が見えない場合の対処法を掲載しています。また、root ユーザで FTP サーバに接続できるようにする設定方法および FTP サーバ死活監視サンプルスクリプトもあわせて掲載しています。
スポンサーリンク
FFFTP でFTP サーバのファイルの一覧が見えない
FFFTP で FTP サーバ(Solaris10)のファイルが見えない場合は、日本語環境のサーバーであると思います。ファイル一覧のタイムスタンプ部分に日本語が入っていることにより、FFFTP がうまくファイルリストの処理を行えていない可能性が高いです。
この問題を解消する手段として、FTP サービスの環境変数(LANG)を変更し、タイムスタンプに日本語が入らないようにする方法があります。
# FTP サービス状態の確認 svcs -l ftp fmri svc:/network/ftp:default name FTP server 有効 true 状態 online next_state none state_time 2011年01月10日 21時51分41秒 リスタータ svc:/network/inetd:default contract_id 127 # 環境変数の設定 svccfg -s ftp setenv LANG C # FTP サービスの再起動 svcadm restart ftp
また、環境変数を元に戻す場合には以下のようにします。
# 環境変数 LANG を元に戻す場合 svccfg -s ftp unsetenv LANG
FTP サーバへ root ユーザーからの接続を許可する
root ユーザーからの接続を許可するには、/etc/ftpd/ftpusers で接続を拒絶するユーザーリストから root を除外します。なお、サービスの再起動は不要です。
反対に、ユーザーをリストに追加することで、 そのユーザーからの接続を拒絶することができます。
vi /etc/ftpd/ftpusers # # List of users denied access to the FTP server, see ftpusers(4). # #root # ← 左記のようにコメントアウトすると、接続拒否リストから除外される daemon bin sys adm lp uucp nuucp smmsp listen gdm webservd nobody noaccess nobody4
FTP サーバの死活監視サンプルスクリプト
おまけとして、FTP サーバの死活監視サンプルシェルスクリプトを示します。
なお、下記サンプルは ftp クライアントによっては、異なる出力がされるかもしれませんので、環境に応じて確認および修正する必要があると思われます。サンプルの出力結果は Solaris 10 上での ftp クライアントを使用した結果です。
#!/bin/sh # 接続タイムアウト5秒として FTPサーバへ接続する result=`ftp -in -T 5 << EOS open localhost user username password quit EOS` echo $result
出力結果
[正常に接続・切断が行われた場合] # 何も出力されない [接続(open)タイムアウト時の出力結果] Connection timeout [ユーザーまたはパスワード誤りの場合] Login incorrect. Login failed.