symlink(2)

NAVN
symlink, symlinkat - lav et nyt navn for en fil

BIBLIOTEK
C-standardbibliotek (libc, -lc)

SYNOPSIS
#include <unistd.h>

int symlink(const char *target, const char *linkpath);

#include <fcntl.h>           /* Definition af AT_*-konstanter */
#include <unistd.h>

int symlinkat(const char *target, int newdirfd, const char *linkpath);

    Feature Test Macro Requirements for glibc (se feature_test_macros(7)):

symlink():
    _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L
        || /* glibc <= 2.19: */ _BSD_SOURCE

symlinkat():
    Siden glibc 2.10:
        _POSIX_C_SOURCE >= 200809L
    Før glibc 2.10:
        _ATFILE_SOURCE

BESKRIVELSE
symlink() opretter en symbolsk henvisning navngivet linkpath, der indeholder strengen target.

Symbolske henvisninger fortolkes på kørselstidspunktet som om indholdet af henvisningen var erstattet ind i stien der følges for at finde en fil eller en mappe.

Symbolske henvisninger kan indeholde ..-stikomponenter, der (hvis brugt i starten af henvisningen) refererer til overmapperne på det som henvisningen befinder sig i.

En symbolsk henvisning (også kendt som en blød henvisning) kan pege på en eksisterende fil eller til en ikkeeksisterende fil; det sidste tilfælde kaldes en dangling-henvisning.

Rettighederne for en symbolsk henvisning er irrelevante; ejerskabet ignoreres en henvisning følges (undtaget når funktionen protected_symlinks er aktiveret, som forklaret i proc(5)), men tjekkes når fjernelse eller omdøbning af henvisningen er anmodet og henvisningen er i en mappe med det klæbende bit-sæt (S_ISVTX).

Hvis linkpath findes, så vil den ikke blive overskrevet.

  symlinkat()
Systemkaldet symlinkat() fungerer på præcis den samme måde som symlink(), med undtagelse af forskellene beskrevet her.

Hvis stinavnet angivet i linkpath er relativt, så fortolkes det relativt til mappen refereret til af fildeskriptoren newdirfd (frem for relativt til den nuværende arbejdsmappe for den kaldende proces, som gøres af symlink() for et relativt stinavn).

Hvis linkpath er relativt og newdirfd er den specielle værdi AT_FDCWD, så fortolkes linkpath relativt til den nuværende arbejdsmappe for den kaldende proces (som symlink()).

Hvis linkpath er absolut, så ignoreres newdirfd

Se openat(2) for en forklaring af behovet for symlinkat().

RETURVÆRDI
Ved succes returneres nul. Ved fejl returneres -1 og errno angives for at indikere fejlen.

FEJL

EACCES
    Skriveadgang til mappen indeholdende linkpath er nægtet, eller en af mapperne i stipræfikset for linkpath tillod ikke søgerettighed. (Se også path_resolution(7).)

EBADF
    (symlinkat()) linkpath er relativ men newdirfd er hverken AT_FDCWD eller en gyldig fildeskriptor.

EDQUOT
    Brugerens ressourcekvota på filsystemet er brugt op. Ressourcerne kan være iknuder eller diskblokke, afhængig af filsystemimplementeringen.

EEXIST
    linkpath findes allerede.

EFAULT
    target eller linkpath peger udenfor dit tilgængelige adresserum.

EIO Der opstod en I/O-fejl.

ELOOP
    For mange symbolske henvisninger blev mødt, da linkpath blev slået op.

ENAMETOOLONG
    target eller linkpath var for lang.

ENOENT
    En mappekomponent i linkpath findes ikke eller er en symbolsk dangling-henvisning, eller target eller linkpath er en tom streng.

ENOENT
    (symlinkat()) linkpath er et relativt stinavn og newdirfd refererer til en mappe, der er blevet slettet.

ENOMEM
    Utilstrækkelig kernehukommelse var tilgængelig.

ENOSPC
    Enheden indeholdende filen har ikke plads til det nye mappeelement.

ENOTDIR
    En komponent brugt som en mappe i linkpath er ikke, reelt, en mappe.

ENOTDIR
    (symlinkat()) linkpath er relativ og newdirfd er en fildeskriptor der refererer til en fil, der ikke er en mappe.

EPERM
    Filsystemet indeholdende linkpath understøtter ikke oprettelsen af symbolske henvisninger.

EROFS
    linkpath er på et skrivebeskyttet filsystem.

STANDARDER
POSIX.1-2024.

HISTORIK

symlink()
    SVr4, 4.3BSD, POSIX.1-2001.

symlinkat()
    POSIX.1-2008. Linux 2.6.16, glibc 2.4.

  Glibc-noter
På ældre kerner hvor symlinkat() er utilgængelig, falder glibc-omslagsfunktionen tilbage til brugen af symlink(). Når linkpath er et relativt stinavn konstruerer glibc et stinavn baseret på den symbolske henvisning i /proc/self/fd, der svarer til argumentet newdirfd.

NOTER
Ingen kontrol af målet udføres.

Sletning af navnet refereret til af en symbolsk henvisning vil reelt slette filen (med mindre den også har andre kodede henvisninger). Hvis denne opførelse ikke er ønsket, så brug link(2).

SE OGSÅ
ln(1), namei(1), lchown(2), link(2), lstat(2), open(2), readlink(2), rename(2), unlink(2), path_resolution(7), symlink(7)

OVERSÆTTELSE
Oversættere af denne manual til dansk Joe Dalton <joedalton2@yahoo.dk>

Denne oversættelse er gratis dokumentation; læs GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) eller nyere for ophavsretbetingelser. Der er INGEN ANSVAR.

Hvis du støder på fejl i oversættelsen af ​​denne vejledning, skal du sende en besked til debian-l10n-danish@lists.debian.org.