[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8831: [Ubuntu10.10] Impossible to create an hardlink without write a
From: |
Sven Joachim |
Subject: |
bug#8831: [Ubuntu10.10] Impossible to create an hardlink without write access |
Date: |
Thu, 09 Jun 2011 23:23:35 +0200 |
User-agent: |
Gnus/5.110017 (No Gnus v0.17) Emacs/23.3.50 (gnu/linux) |
On 2011-06-09 22:59 +0200, Bob Proulx wrote:
> Johan Oudinet wrote:
>> GNU coreutils 8.5
>> Ubuntu 10.10 32bits Ext4
>>
>> $ sudo touch f; ln f g
>> ln: creating hard link `g' => `f': Operation not permitted
>
> Thank you for the bug report. However I am unable to recreate this
> problem using 8.5 on my Debian system using ext3.
>
> $ sudo touch f
> $ ln f g
> $ ls -ldog f g
> -rw-r--r-- 2 0 Jun 9 14:55 f
> -rw-r--r-- 2 0 Jun 9 14:55 g
>
> Perhaps this is a problem with ext4? Can you run your test using
> strace so that we can see what the system is saying? Something like
> this following command.
>
> $ strace -e trace=file -o /tmp/ln.strace.out ln f g
>
> On my system I see this output:
>
> ...
> stat("g", 0x7fffa6430f10) = -1 ENOENT (No such file or
> directory)
> lstat("f", {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
> linkat(AT_FDCWD, "f", AT_FDCWD, "g", 0) = 0
>
>> However, the following commands work:
>> $ sudo touch f2; sudo chmod a+w f2; ln f2 g
>>
>> The first call to ln should be permitted too.
>
> As far as I can tell it is permitted. If it isn't then it would be a
> kernel limitation.
This is indeed due to an Ubuntu kernel patch that is present since
10.10. The rationale is given in
https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#Hardlink%20Protection.
I'm taking the liberty to close the bug.
Cheers,
Sven