ユーザから「ftpでファイル見えないぞゴルァ」というクレームが。
普段ftpを使ってない(sftpオンリー)なので気が付かなかった。
とりあえず仮ユーザを作成し、コマンドラインのftpで確認。普通に繋がる。
次に手持ちのNextFTPで確認。あれ、見える…
次にffftpで確認。ファイルが見えない。
あれぇ…

とりあえずお約束のPASVモードを確認。PASV有効、無効共にファイルは見えず。
ぐぐってみると(と言うかffftpのQ&Aによると)、「LISTコマンドでファイル一覧を取得」をチェックしろと出ている。
試したがやはり見えず。うーん。
ffftpで同様の現象は多数見つかるのだが、ほとんどがLISTで解決している。
その中で、ffftpではなくDreamWeaverでの現象だが、ロケールがC以外だとタイムスタンプのフォーマットが違うためDreamWeaverのftp機能が正常に動作しない、というのがあった(AdobeのFAQ)。もしやこれか?
ロケール関連の情報を探したところ、さらに決定的な情報を発見。これか…

まとめると、原因は以下のようなものだった。

・以前、一般ユーザからsuして/etc/rc.d/inetd restartを行った際、ユーザのロケール(LANG=ja_JP.eucJP)がinetdに引き継がれていた
・inetdから起動されるftpにもロケール(LANG=ja_JP.eucJP)が引き継がれていた
・ffftpはLANG=C以外のタイムフォーマットに対応していない→ファイルが見えなくなる

と言うわけでもっかいsuして、export LANG=Cしてから/etc/rc.d/inetd restartしたら治りました。
ffftpだけなんだよなぁこれ。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>