chown(1p)

Från Wiki.linux.se -Linux wikipedia på Svenska.
Hoppa till navigering Hoppa till sök

Prolog

Den här manualsidan är en del av POSIX Programmer's Manual.

Linux-implementationen av detta gränssnitt kan skilja sig åt. Se motsvarande Linux-manualsida för detaljer om Linux-beteende. Gränssnittet kanske inte heller är implementerat på Linux.

Namn

chown – ändra filägarskap.

Synopsis

chown [-h] ägare[:grupp] fil...

chown -R [-H|-L|-P] ägare[:grupp] fil...

Beskrivning

Verktyget chown ska sätta användar-ID:t för filen som anges av varje fil-operand till det användar-ID som anges av operanden ägare.

För varje fil-operand, eller om flaggan -R används, för varje fil som påträffas vid genomgång av katalogträden som anges av fil-operanderna, ska chown utföra åtgärder som motsvarar funktionen chown() enligt POSIX.1-2017, System Interfaces, anropad med följande argument:

  1. fil-operanden ska användas som argumentet path.
  2. Användar-ID:t som anges av ägare-delen av den första operanden ska användas som argumentet owner.
  3. Om grupp-delen av den första operanden anges, ska grupp-ID:t som anges av den användas som argumentet group. Annars ska gruppägarskapet inte ändras.

Om chown inte anropas av en process med lämpliga behörigheter ska set-user-ID- och set-group-ID-bitarna för en vanlig fil rensas vid lyckad körning. Set-user-ID- och set-group-ID-bitarna för andra filtyper kan också rensas.

Flaggor

Verktyget chown ska följa POSIX.1-2017, Base Definitions, avsnitt 12.2, Utility Syntax Guidelines.

Följande flaggor ska stödjas av implementationen:

-h
För varje fil-operand som namnger en symbolisk länk ska chown försöka sätta användar-ID:t för själva den symboliska länken.
Om ett grupp-ID har angetts, ska chown också försöka sätta grupp-ID:t för den symboliska länken.
-H
Om flaggan -R anges och en symbolisk länk som refererar till en katalog anges på kommandoraden, ska chown ändra användar-ID:t, och grupp-ID:t om det har angetts, för katalogen som länken refererar till och alla filer i filhierarkin under den.
-L
Om flaggan -R anges och en symbolisk länk som refererar till en katalog anges på kommandoraden eller påträffas under genomgången av en filhierarki, ska chown ändra användar-ID:t, och grupp-ID:t om det har angetts, för katalogen som länken refererar till och alla filer i filhierarkin under den.
-P
Om flaggan -R anges och en symbolisk länk anges på kommandoraden eller påträffas under genomgången av en filhierarki, ska chown ändra ägar-ID:t, och grupp-ID:t om det har angetts, för den symboliska länken.
Verktyget chown ska inte följa den symboliska länken till någon annan del av filhierarkin.
-R
Ändra filers användar- och grupp-ID rekursivt.
För varje fil-operand som namnger en katalog ska chown ändra användar-ID:t, och grupp-ID:t om det har angetts, för katalogen och alla filer i filhierarkin under den.
Om ingen av flaggorna -H, -L eller -P anges är det ospecificerat vilken av dessa som används som standard.

Att ange mer än en av de ömsesidigt uteslutande flaggorna -H, -L och -P ska inte betraktas som ett fel. Den sist angivna flaggan avgör verktygets beteende.

Operander

Följande operander ska stödjas:

ägare[:grupp]
Ett användar-ID och valfritt grupp-ID som ska tilldelas fil.
ägare-delen av denna operand ska vara ett användarnamn från användardatabasen eller ett numeriskt användar-ID.
Båda formerna anger ett användar-ID som ska ges till varje fil som anges av en fil-operand.
Om en numerisk ägare-operand finns i användardatabasen som ett användarnamn, ska användar-ID-numret som är associerat med det användarnamnet användas som användar-ID.
På motsvarande sätt, om grupp-delen av denna operand finns, ska den vara ett gruppnamn från gruppdatabasen eller ett numeriskt grupp-ID.
Båda formerna anger ett grupp-ID som ska ges till varje fil.
Om en numerisk gruppoperand finns i gruppdatabasen som ett gruppnamn, ska grupp-ID-numret som är associerat med det gruppnamnet användas som grupp-ID.
fil
En sökväg till en fil vars användar-ID ska ändras.

Standardinmatning

Används inte.

Indatafiler

Inga.

Miljövariabler

Följande miljövariabler ska påverka körningen av chown:

LANG
Anger ett standardvärde för internationaliseringsvariabler som är osatta eller tomma.
Se POSIX.1-2017, Base Definitions, avsnitt 8.2, Internationalization Variables, för företrädesordningen för internationaliseringsvariabler som används för att bestämma värden för lokalkategorier.
LC_ALL
Om den är satt till en icke-tom sträng åsidosätter den värdena för alla andra internationaliseringsvariabler.
LC_CTYPE
Bestämmer lokalinställningen för tolkning av byteföljder i textdata som tecken, till exempel enkelbyte- jämfört med multibytetecken i argument.
LC_MESSAGES
Bestämmer lokalinställningen som ska användas för att påverka formatet och innehållet i diagnostiska meddelanden som skrivs till standardfel.
NLSPATH
Bestämmer platsen för meddelandekataloger vid bearbetning av LC_MESSAGES.

Asynkrona händelser

Standardbeteende.

Standardutmatning

Används inte.

Standardfel

Standardfel ska endast användas för diagnostiska meddelanden.

Utdatafiler

Inga.

Utökad beskrivning

Ingen.

Avslutningsstatus

Följande avslutningsvärden ska returneras:

0
Verktyget kördes utan fel och alla begärda ändringar utfördes.
>0
Ett fel inträffade.

Följder av fel

Standardbeteende.

Följande avsnitt är informativa.

Programanvändning

Endast filens ägare eller en användare med lämpliga behörigheter får ändra ägare eller grupp för en fil.

Vissa implementationer begränsar användningen av chown till en användare med lämpliga behörigheter.

Exempel

Inga.

Bakgrund

System V- och BSD-versionerna använder olika avslutningsstatuskoder.

Vissa implementationer använde avslutningsstatus som ett antal fel som inträffade. Denna praxis är olämplig eftersom värdet kan överskrida intervallet för giltiga avslutningsstatusvärden.

Dessa skillnader döljs genom att endast 0 och >0 anges som avslutningsvärden.

Funktionaliteten hos chown beskrivs i stor utsträckning genom hänvisningar till funktioner i POSIX.1-2017, System Interfaces. På så sätt behövs ingen dubbel beskrivning av samspelet mellan behörigheter, flera grupper och liknande.

BSD 4.3-metoden för att ange både ägare och grupp togs med i denna volym av POSIX.1-2017 eftersom:

  • Det finns fall där det önskade slutläget inte kunde uppnås med verktygen chgrp och chown när chown endast ändrade användar-ID.
Om den aktuella ägaren inte är medlem i den önskade gruppen och den önskade ägaren inte är medlem i den aktuella gruppen, kan funktionen chown() misslyckas om inte både ägare och grupp ändras samtidigt.
  • Även om de kunde ändras oberoende av varandra, finns det i fall där båda ändras en prestandaförlust på 100 % eftersom båda verktygen måste anropas.

BSD-syntaxen:

användare[.grupp]

ändrades till:

användare[:grupp]

i denna volym av POSIX.1-2017 eftersom punkttecknet är ett giltigt tecken i inloggningsnamn. Enligt POSIX.1-2017, Base Definitions, består inloggningsnamn av tecken i den portabla filnamnsteckenuppsättningen.

Kolontecknet valdes som ersättning för punkttecknet eftersom det historiskt sett aldrig skulle tillåtas som tecken i ett användarnamn eller gruppnamn.

Flaggan -R betraktas av vissa som ett oönskat avsteg från det historiska UNIX-systemets verktygsfilosofi. Eftersom verktyget find redan finns för att gå igenom kataloger rekursivt, ansågs det av vissa saknas skäl för andra verktyg att duplicera den funktionaliteten.

Flaggan -R ansågs dock vara en viktig bekvämlighet för användaren, är mycket effektivare än att starta en separat process för varje element i kataloghierarkin, och är historiskt mycket spridd.

Framtida riktning

Ingen.

Se även

  • chgrp(1p)
  • chmod(1p)
  • POSIX.1-2017, Base Definitions, kapitel 8, Environment Variables
  • POSIX.1-2017, Base Definitions, avsnitt 12.2, Utility Syntax Guidelines
  • POSIX.1-2017, System Interfaces, chown(3p)

Upphovsrätt

Delar av denna text är återgivna och reproducerade i elektronisk form från:

  • IEEE Std 1003.1-2017, Standard for Information Technology -- Portable Operating System Interface (POSIX)
  • The Open Group Base Specifications Issue 7, 2018 Edition

Copyright © 2018 Institute of Electrical and Electronics Engineers, Inc. och The Open Group.

Vid avvikelse mellan denna version och den ursprungliga IEEE- och The Open Group-standarden gäller den ursprungliga standarden som referensdokument.

Den ursprungliga standarden kan hämtas online från:

Eventuella typografiska fel eller formateringsfel på denna sida har troligen införts vid konverteringen av källfilerna till man-sideformat.

För att rapportera sådana fel, se:

Sidfot

Sidor som hänvisar till denna sida