From: Kless Date: 2008-10-15T23:19:47+09:00 Subject: Re: Permissions at creating directory On 15 oct, 09:37, Brian Candler wrote: > Kless wrote: > > Why a new directory is ignoring my permissions? > > > Dir.mkdir('foo', 711) > > > 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. > -- > Posted viahttp://www.ruby-forum.com/. Thanks! You gave me the idea. The problem is that I'm trying to create a subdirectory, anything as './foo/bar'. If it's tryed in irb, it gives a failure. But I was calling it since a JRuby program where it's created correctly except for the mode.