Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

link(1M)

unlink(2)

LINK(2)  —  UNIX 3.0

NAME

link − link to a file

SYNOPSIS

int link (path1, path2)
char ∗path1, ∗path2;

DESCRIPTION

Path1 points to a path name naming an existing file.  Path2 points to a path name naming the new directory entry to be created.  Link creates a new link (directory entry) for the existing file. 

Link will fail and no link will be created if one or more of the following are true:

A component of either path prefix is not a directory.  ­[ENOTDIR]

A component of either path prefix does not exist.  ­[ENOENT]

A component of either path prefix denies search permission.  ­[EACCES]

The file named by path1 does not exist.  ­[ENOENT]

The link named by path2 exists.  ­[EEXIST]

The file named by path1 is a directory and the effective user ID is not super-user.  ­[EPERM]

The link named by path2 and the file named by path1 are on different logical devices (file systems).  ­[EXDEV]

Path2 points to a null path name.  ­[ENOENT]

The requested link requires writing in a directory with a mode that denies write permission.  ­[EACCES]

The requested link requires writing in a directory on a read-only file system.  ­[EROFS]

Path points outside the process’s allocated address space.  ­[EFAULT]

RETURN VALUE

Upon successful completion, a value of 0 is returned.  Otherwise, a value of −1 is returned and errno is set to indicate the error. 

SEE ALSO

link(1M), unlink(2). 

May 16, 1980

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026