*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->HP-UX 11i man pages -> symlink (2)              


 symlink(2)                                                       symlink(2)

 NAME    [Toc]    [Back]
      symlink - make symbolic link to a file

 SYNOPSIS    [Toc]    [Back]
      #include <unistd.h>

      int symlink(const char *path1, const char *path2);

 DESCRIPTION    [Toc]    [Back]
      The symlink() function creates a symbolic link. Its name is the
      pathname pointed to by path2, which must be a pathname that does not
      name an existing file or symbolic link. The contents of the symbolic
      link are the string pointed to by path1.

 RETURN VALUE    [Toc]    [Back]
      Upon successful completion, symlink() returns 0. Otherwise, it returns
      -1 and sets errno to indicate the error.

 ERRORS    [Toc]    [Back]
      If symlink() fails, errno is set to one of the following values:

           [EACCES]                 Write permission is denied in the
                                    directory where the symbolic link is
                                    being created, or search permission is
                                    denied for a component of the path
                                    prefix of path2.

           [EEXIST]                 The path2 argument names an existing
                                    file or symbolic link.

           [EFAULT]                 path1 or path2 points outside the
                                    process's allocated address space.  The
                                    reliable detection of this error is

           [EIO]                    An I/O error occurred while reading from
                                    path1, making the directory entry for
                                    path2, allocating the inode for path2,
                                    or writing out the link contents of

           [ELOOP]                  Too many symbolic links were encountered
                                    in resolving path2.

           [ENAMETOOLONG]           The length of the path2 argument exceeds
                                    {PATH_MAX}, or pathname resolution of a
                                    symbolic link produced an intermediate
                                    result that exceeds {PATH_MAX}, or a
                                    pathname component is longer than

 Hewlett-Packard Company            - 1 -   HP-UX 11i Version 2: August 2003

 symlink(2)                                                       symlink(2)

           [ENOENT]                 A component of path2 does not name an
                                    existing file or path2 is an empty

           [ENOSPC]                 The directory in which the entry for the
                                    new symbolic link is being placed cannot
                                    be extended because no space is left on
                                    the file system containing the
                                    directory, or the new symbolic link
                                    cannot be created because no space is
                                    left on the file system which will
                                    contain the link, or the file system is
                                    out of file-allocation resources.

           [ENOTDIR]                A component of the path prefix of path2
                                    is not a directory.

           [EROFS]                  The new symbolic link would reside on a
                                    read-only file system.

 APPLICATION USAGE    [Toc]    [Back]
      Like a hard link, a symbolic link allows a file  to have multiple
      logical names. The presence of a hard link guarantees the existence of
      a file, even after the original name has been removed. A symbolic link
      provides no such assurance; in fact, the file named by the path1
      argument need not exist when the link is created. A symbolic link can
      cross  file  system boundaries.

      Normal permission checks are made on each component of the symbolic
      link pathname during its resolution.

 AUTHOR    [Toc]    [Back]
      symlink() was developed by the University of California, Berkeley.

 SEE ALSO    [Toc]    [Back]
      chown(2), cp(1), link(2), lstat(2), open(2), readlink(2), symlink(4),
      unlink(2), <unistd.h>.

      symlink(): AES, SVID3

 CHANGE HISTORY    [Toc]    [Back]
      First released in Issue 4, Version 2.

 Hewlett-Packard Company            - 2 -   HP-UX 11i Version 2: August 2003
[ Back ]
 Similar pages
Name OS Title
ln Tru64 Make a hard link or a symbolic link to a file
symlink Tru64 Make a symbolic link to a file
symlink IRIX make a symbolic link to a file
mkcdsl Tru64 Make a context-dependent symbolic link (CDSL)
resymlink IRIX force a recreation of a symbolic link file
link FreeBSD make a hard file link
link OpenBSD make a hard file link
link NetBSD make a hard file link
symlink HP-UX symbolic link
symlink FreeBSD symbolic link handling
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service