2013-10-21

Value too large for defined data typeの対処方

某ISPのWEB領域サービスを利用しているのだが、FTPでディレクトリを削除しようにも
550 Can't remove directory: File exists
みたいな感じで怒られて、削除できないという状況に陥ってしまった
どうやら、FTPクライアントからは見えないファイルがあるようだ

試しに
print "Content-type:text/html\n\n";
print `find ./hoge 2>&1`;
みたいな感じで当該ディレクトリの中身のファイルを表示するようにperlのcgiスクリプトを書いて実行してみると
find: stat() error ./hoge/core: Value too large for defined data type
な感じの出力を得ることができた
どうやらcgiがcoreを吐いてしまい、これが変なタイムスタンプを持ってしまっているのが原因のようだ
そこで、タイムスタンプを現在時刻に変更するために次のようなperlのcgiスクリプトを書いて実行してみた
print "Content-type:text/html\n\n";
print `touch ./hoge/core 2>&1`;
すると、FTPクライアントからファイルが見えるようになり削除もできました!
ファイルを削除するとディレクトリも無事に削除できるようになりましたよヾ(*・ω・)シ

0 件のコメント:

コメントを投稿