Re: date hashlist

Manfred Hollstein <[email protected]> Sat, 9 Apr 2011 17:41:56 +0200
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
Moin,

On Sat, 09 Apr 2011, 17:30:49 +0200, Thomas Moritz wrote:
> Am Samstag, 9. April 2011 16:44:12 schrieb Bernhard Walle:
> > * Thomas Moritz <[email protected]> [2011-04-09 16:32]:
> > > Scheinbar nein :-(
> > >=20
> > > There may be no way to change the timestamps of a symbolic link
> > > with a compiled C program. :-)
> > >=20
> > > The operating system kernel supplies an interface to change the
> > > ownership of a symbolic link with lchown(2) but does not supply
> > > any interface to change the timestamp of a symbolic link (no
> > > lutime(2) or lutimes(2) exists) and therefore what you are
> > > asking for is not supported by the operating system kernel.  The
> > > only way I know to do this on BSD like systems is to remove and
> > > recreate the symlink.
> >=20
> > Linux ist aber nicht BSD. Die lutimes()-Funktion gibt es seit glibc
> > 2.6 und Kernel 2.6.22 und touch scheint es mit der Option -h auch
> > zu k=C3=B6nnen. Wie immer ungetestet.
>=20
> touch: Ung=C3=BCltige Option -- h
> =E2=80=9Etouch --help=E2=80=9C gibt weitere Informationen.
>=20
> 2.6.34.7-0.7-desktop #1 SMP PREEMPT 2010-12-13 11:13:53 +0100 x86_64=20
> x86_64 x86_64 GNU/Linux
>=20
> Ich teste nachher mal mit Kernel-2.6.38.2. Da kann ich aber gerade=20
> nicht ran.

Hat nichts mit dem Kernel zu tun. Das wurde mit coreutils-8.1 (immerhin
schon am 18 Nov 2009) eingefuehrt:

  ** New features
  ...
    touch now accepts the option --no-dereference (-h), as a means to
    change symlink timestamps on platforms with enough support.

Mit Erschrecken habe ich gerade festgestellt, dass auf einem SLE{D,S} 11
SP1 nur coreutils-6.12 vorhanden ist...

> MfG Th. Moritz

HTH, cheers.

l8er
manfred