[#36686] 1.1 < 61.1 - 60.0 — Shin-ichiro HARA <sinara@...>

原です。

19 messages 2002/12/06

[#36770] www.ruby-lang.orgリニューアル準備のお知らせ — TADA Tadashi <sho@...>

ruby-lang.orgのwebmasterチームでは、タイムリーな情報提供と使いやすい

11 messages 2002/12/16

[ruby-list:36784] Re: 2GB超のファイルにアクセスするとErrno::EOVERFLOWが発生してしまう

From: HOSONO Hidetomo <h12o@...12o.org>
Date: 2002-12-16 08:08:17 UTC
List: ruby-list #36784
  To: ruby-list@ruby-lang.org (ruby mailing list)
  From: HOSONO Hidetomo <h12o@h12o.org>
  Subject: [ruby-list:36781] Re: 2GB超のファイルにアクセスするとErrno::EOVERFLOWが発生してしまう
  Date: Mon, 16 Dec 2002 17:00:03 +0900
  
  > ほそのひでともと申します。
  > 
  >   To: ruby-list@ruby-lang.org (ruby mailing list)
  >   From: oka@rd.secom.co.jp
  >   Subject: [ruby-list:36780] 2GB超のファイルにアクセスするとErrno::EOVERFLOWが発生してしまう
  >   Date: Mon, 16 Dec 2002 16:56:57 +0900
  >   
  >   > Rubyでバックアップのツールを作っているのですが、
  >   > 2GBを超える巨大なファイルにアクセスしたところで
  >   > エラーになってしまいます。
  >   > 
  >   > stat = File.stat('large.dat')
  >   > Errno::EOVERFLOW: Value too large for defined data type - "large.dat"
  >   > 
  >   > ファイルのタイムスタンプを調べて、ある日付より新しいなら、
  >   > cpコマンドに渡すというような処理をしたいのです。
  >   > 
  >   > この問題を回避する方法はあるでしょうか。
  >   > Rubyは以下のバージョンを使っています。
  >   > ruby 1.6.7 (2002-03-01) [i686-linux]
  > 
  > 問題のファイルがあるファイルシステムは何ですか?
  > 
  > ## mountコマンドを使った結果で判断するといいでしょう。

ではありませんね。失礼しました。

linux kernelやlibcのバージョン、
そしてrubyが-D_FILE_OFFSET_BITS=64付きでコンパイルされているかを
チェックしましょう。

  $ nm `which ruby` | fgrep 64

で何もひっかからない場合は、rubyが2GB以上のファイルを扱えないと思います。

--
ほそのひでとも

In This Thread

Prev Next