Errno

errno のリストもほしいと書かれていたので調べてみました。
プラットホーム固有のOSのエラー一覧は、Errno.constantsで得ることができます。

require 'pp'

pp Errno.constants

実行結果です。

["EINTR",
 "EMFILE",
 "EILSEQ",
 "ENOBUFS",
 "EADDRINUSE",
 "EDQUOT",
 "EEXIST",
 "ENOLCK",
 ...
 "EPIPE",
 "EAGAIN",
 "EHOSTDOWN"]

値も合わせた表を作ってみましょう。名前でソートします。

Errno.constants.sort.each do |e|
  c = Errno.const_get(e)
  n = c.const_get("Errno")
  printf("%-15s = %d\n", e, n)
end

実行結果です。

E2BIG           = 7
EACCES          = 13
EADDRINUSE      = 10048
EADDRNOTAVAIL   = 10049
EAFNOSUPPORT    = 10047
EAGAIN          = 11
EALREADY        = 10037
...
ESTALE          = 10070
ETIMEDOUT       = 10060
ETOOMANYREFS    = 10059
EUSERS          = 10068
EWOULDBLOCK     = 10035
EXDEV           = 18

詳細はri Errno参照。