Kless said:
Why a new directory is ignoring my permissions?
It's created with 755, the permissions by deafult of my system. My
umask is to 0022.
So what's "your system"? (i.e. OS and Ruby version)
It Works For Me [TM]. This is Ubuntu Dapper with its default Ruby:
irb(main):001:0> RUBY_VERSION
=> "1.8.4"
irb(main):002:0> "%o" % File.umask
=> "22"
irb(main):003:0> Dir.mkdir "foo1"
=> 0
irb(main):004:0> `ls -ld foo1`
=> "drwxr-xr-x 2 candlerb candlerb 4096 2008-10-15 09:31 foo1\n"
irb(main):005:0> Dir.mkdir "foo2", 0700
=> 0
irb(main):006:0> `ls -ld foo2`
=> "drwx------ 2 candlerb candlerb 4096 2008-10-15 09:31 foo2\n"
irb(main):007:0>
but I get the same with 1.8.6p114 built from source under Ubuntu Hardy.
What happens if you try to chmod the directory after creating it? What
filesystem are you trying to create this directory in?
If you have a Linux box but are creating files in a mounted MS-DOS
filesystem (typically the case for a memory stick) then you'll get the
same Unix mode bits for everything, as the filesystem doesn't store
them.
HTH,
Brian.