Forum: Ruby Permissions at creating directory

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
125aa997aecefa6ebd4431f9b89e0bed?d=identicon&s=25 Kless (Guest)
on 2008-10-14 18:06
(Received via mailing list)
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.
4a728bc64ea78b9b5dca98a4e81bb76e?d=identicon&s=25 Michael Monaghan (Guest)
on 2008-10-14 20:15
(Received via mailing list)
Instead of 711, try 0711.

~mm
125aa997aecefa6ebd4431f9b89e0bed?d=identicon&s=25 Kless (Guest)
on 2008-10-14 20:51
(Received via mailing list)
On 14 oct, 19:14, Michael Monaghan <mick...@gmail.com> wrote:
> Instead of 711, try 0711.
I had tried too as with 0700 but nothing.
753dcb78b3a3651127665da4bed3c782?d=identicon&s=25 Brian Candler (candlerb)
on 2008-10-15 10:36
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.
125aa997aecefa6ebd4431f9b89e0bed?d=identicon&s=25 Kless (Guest)
on 2008-10-15 16:20
(Received via mailing list)
On 15 oct, 09:37, Brian Candler <b.cand...@pobox.com> wrote:
> It Works For Me [TM]. This is Ubuntu Dapper with its default Ruby:
> => 0
> 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.
This topic is locked and can not be replied to.