NAVN
- Provided by: manpages-da-dev (Version: 4.31.0-1)
- Source: manpages-l10n
- Report a bug
C-standardbibliotek (libc, -lc)
#include <sys/stat.h>
int chmod(const char *sti, mode_t tilstand); int fchmod(int fd, mode_t tilstand);
#include <fcntl.h> /* Definition af AT_*-konstanter */ #include <sys/stat.h>
int fchmodat(int dirfd, const char *sti, mode_t tilstand, int flag);
fchmod():
Siden glibc 2.24:
_POSIX_C_SOURCE >= 199309L
glibc 2.19 til glibc 2.23
_POSIX_C_SOURCE
glibc 2.16 til glibc 2.19:
_BSD_SOURCE || _POSIX_C_SOURCE
glibc 2.12 til glibc 2.16:
_BSD_SOURCE || _XOPEN_SOURCE >= 500
|| _POSIX_C_SOURCE >= 200809L
glibc 2.11 og tidligere:
_BSD_SOURCE || _XOPEN_SOURCE >= 500
fchmodat():
Siden glibc 2.10:
_POSIX_C_SOURCE >= 200809L
Før glibc 2.10:
_ATFILE_SOURCE
Systemkaldende chmod() og fchmod() ændrer en fils tilstandsdele. (Filtilstanden består af filrettighedsdele samt set-user-ID, set-group-ID og klæbende dele). Disse systemkald er kun forskellige ved hvordan filen er angivet:
Den nye filtilstand er angivet i tilstand, der er en bit-maske oprettet af ORing sammen med nul eller flere af de følgende:
Den effektive UID for den kaldende proces skal matche ejeren af filen, eller processen skal være privilegeret (Linux: skal have funktionaliteten CAP_FOWNER).
Hvis den kaldende proces ikke er privilegeret (Linux: har ikke funktionaliteten CAP_FSETID) og filgruppen ikke matcher det effektive gruppe-id for processen eller en af dennes supplementære gruppe-id'er, så vil delen S_ISGID blive slukket, men der bliver ikke sendt en fejl retur.
Som en sikkerhedsforanstaltning, afhængig af filsystemet, kan afviklingsdelene set-user-ID og set-group-ID slukkes hvis en fil skrives. (På Linux opstår dette hvis skriveprocessen ikke har funktionaliteten CAP_FSETID). På nogle filsystemer kan kun superbrugeren angive sticky bit (klæbende del), der kan have en speciel betydning. For sticky bit og for delene set-user-ID og set-group-ID på mapper, se inode(7).
På NFS-filsystemer, vil begrænsning af rettighederne straks påvirke allerede åbne filer, da adgangskontrollen udføres på serveren, mens åbne filer vedligeholdes af klienten. Udvidelse af rettighederne kan blive forsinket for andre klienter hvis attribut-mellemlagring er aktiveret på dem.
Systemkaldet fchmodat() fungerer på præcis den samme måde som chmod(), undtagen for forskellene beskrevet her.
Hvis sti er relativ, så fortolkes den relativt til mappen refereret til af fildeskriptoren dirfd (frem for relativt til den nuværende arbejdsmappe for den kaldende proces, som gøres af chmod() for et relativt stinavn).
Hvis sti er relativ og dirfd er den specielle værdi AT_FDCWD, så fortolkes sti relativt til den nuværende arbejdsmappe for den kaldende proces (som chmod()).
Hvis sti er forældet, så ignoreres dirfd.
flag kan enten være 0, eller inkludere de følgende flag:
Se openat(2) for en forklaring på behovet for fchmodat().
Ved succes returneres nul. Ved fejl returneres -1 og errno angives for at indikere fejlen.
Afhængig af filsystemet kan fejl, udover dem vist nedenfor, returneres.
De mere generelle fejl for chmod() er vist nedenfor:
Omslagsfunktione for GNU C-biblioteket fchmodat() implementerer den POSIX-angivne grænseflade beskrevet på denne side. Denne grænseflade er forskellig fra det underliggende Linux-systemkald, der ikke har et flag-argument.
På ældre kerner hvor fchmodat() er utilgængelig, falder glibc-omslagsfunktionskaldene tilbage til at bruge chmod(). Når sti er et relativt stinavn konstruerer glibc et stinavn baseret på den symbolske henvisning i /proc/self/fd der svarer til dirfd-argumentet.
POSIX.1-2024.
chmod(1), chown(2), execve(2), open(2), stat(2), inode(7), path_resolution(7), symlink(7)
Oversættere af denne manual til dansk Joe Hansen <joedalton2@yahoo.dk>
Denne oversættelse er gratis dokumentation; læs GNU General Public License version 3 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.