chatter - chattr

chattr
Originale forfatter (er) Remy -kort
Operativ system Linux
Platform På tværs af platforme
Type Kommando
chflags
Operativ system BSD-lignende systemer , herunder macOS
Platform På tværs af platforme
Type Kommando

chattr er kommandoen i Linux, der giver en bruger mulighed for at angive bestemte filattributter . lsattr er kommandoen, der viser attributterne til en fil.

De fleste BSD-lignende systemer , herunder macOS , har altid haft en analog chflags- kommando til at angive attributterne, men ingen kommando er specifikt beregnet til at vise dem; specifikke muligheder for ls -kommandoen bruges i stedet. Kommandoen chflags dukkede først op i 4.4BSD .

Solaris har ingen kommandoer specifikt beregnet til at manipulere dem. chmod og ls bruges i stedet.

Andre Unixer har generelt ingen analoge kommandoer. De lignende lydende kommandoer chatr (fra HP-UX ) og lsattr (fra AIX ) findes, men har ikke-relaterede funktioner.

Blandt andet er chattr -kommandoen nyttig til at gøre filer uforanderlige, så adgangskodefiler og visse systemfiler ikke kan slettes under softwareopgraderinger.

I Linux -systemer ( chattr og lsattr )

Filsystemsunderstøttelse

Kommandolinjeværktøjerne chattr (til at manipulere attributter) og lsattr (for at liste attributter) var oprindeligt specifikke for den anden udvidede filsystemfamilie ( ext2 , ext3 , ext4 ) og er tilgængelige som en del af e2fsprogs -pakken.

Imidlertid er funktionaliteten siden blevet udvidet, helt eller delvist, til mange andre systemer, herunder XFS , ReiserFS , JFS og OCFS2 . Btrfs-filsystemet inkluderer attributfunktionaliteten, herunder Cflaget, som deaktiverer den indbyggede kopi-på-skriv-funktion (CoW) i btrfs på grund af langsommere ydeevne forbundet med CoW.

chattr beskrivelse

Formen for chattr -kommandoen er:

 chattr [-RVf] [-+=AacDdijsTtSu] [-v version] files...
  • -R ændrer rekursivt attributter for biblioteker og deres indhold
  • -V skal være omfattende og udskrive programversionen
  • -f undertrykker de fleste fejlmeddelelser

lsattr beskrivelse

Formen for lsattr -kommandoen (gnu 1.41.3):

 lsattr [ -RVadv ] [ files...  ]
  • -R lister rekursivt attributter for mapper og deres indhold
  • -V viser programversionen
  • -aviser alle filer i mapper, inklusive dotfiles
  • -d lister mapper som andre filer frem for at angive deres indhold

Egenskaber

Nogle attributter omfatter:

Filattributter på et Linux -filsystem i henhold til chattr(1)Linux -man -siden
Attribut lsattr flag chattr mulighed Semantik og begrundelse
Ingen atimeopdateringer A +Aat indstille for
-Aat rydde
  • Når en fil med Aindstillede attribut er adgang, dens atime rekord er ikke ændret.
  • Dette undgår en vis mængde disk I/O -operationer.
Tilføj kun a +aat indstille for
-aat rydde
  • En fil med aattributsættet kan kun åbnes i tilføjelsestilstand til skrivning.
Komprimeret c +cat indstille for
-cat rydde
  • En fil med cattributsættet komprimeres automatisk på disken af ​​kernen.
  • En læsning fra denne fil returnerer ukomprimerede data.
  • En skrivning til denne fil komprimerer data, før de gemmes på disken.
Ingen Copy-on-Write (CoW) C +Cat indstille for
-Cat rydde
  • En fil med Cattributten er ikke genstand for opdateringer om kopiering på skrive.
  • Opdateringer til disse filer er muligvis ikke genstand for atomiske snapshots og kan mangle nogle pålidelighedsoplysninger om nogle filsystemer og kerner.
Synkron opdateringer af biblioteker D +Dat indstille for
-Dat rydde
  • Når en mappe med Dattributsættet ændres, skrives ændringerne synkront på disken
  • Dette svarer til dirsync monteringsindstillingen , der anvendes på et undersæt af filerne.
Ingen dump d +dat indstille for
-dat rydde
  • En fil med den dindstillede attribut er ikke kandidat til backup når dump programmet køres.
Kompressionsfejl E (ikke tilgængelig)
  • Den Eattribut bruges af de eksperimentelle komprimering patches til at indikere, at en komprimeret fil har en kompression fejl.
Omfattende format e (ikke tilgængelig)
  • Den eattribut angiver, at filen bruger omfang til kortlægning blokkene på disken.
Kæmpe fil h (ikke tilgængelig)
  • Den hattribut angiver filen er lagring af sine blokke i enheder af filsystemet blokstørrelse i stedet for i andele i sektorer.
  • Det betyder, at filen er eller på et tidspunkt var større end 2 TB.
Indekseret bibliotek I (ikke tilgængelig)
  • Den Iattribut benyttes af htree program kode for at indikere, at en mappe bliver indekseret ved hjælp punkterede træer.
Uforanderlig i +iat indstille for
-iat rydde
  • En fil med iattributten kan ikke ændres.
  • Den kan ikke slettes eller omdøbes, der kan ikke oprettes et link til denne fil, og der kan ikke skrives data til filen.
  • Når den er indstillet, forhindrer den, selv ikke superbrugeren , i at slette eller ændre filens indhold.
Dataregistrering j +jat indstille for
-jat rydde
  • En fil med jattributten har alle sine data skrevet til ext3 -journal før den skrives til selve filen, hvis filsystemet er monteret med "data=ordered"eller "data=writeback"-indstillingerne.
  • Når filsystemet er monteret med "data=journal"indstillingen journaliseres alle fildata allerede , så denne attribut har ingen effekt.
Sikker sletning s +sat indstille for
-sat rydde
Synkrone opdateringer S +Sat indstille for
-Sat rydde
  • Når en fil med Sattributsættet ændres, skrives ændringerne synkront på disken; dette svarer til indstillingen 'synkronisering', der anvendes på et undersæt af filerne.
  • Dette svarer til sync monteringsindstillingen , der anvendes på et undersæt af filerne.
Øverst i bibliotekshierarkiet T +Tat indstille for
-Tat rydde
  • Et bibliotek med Tattributten vil blive betragtet som toppen af ​​bibliotekhierarkierne med henblik på Orlov -blokallokatoren .
  • Dette er et tip til blokallokatoren, der bruges af ext3 og ext4 , om at underkatalogerne under denne mappe ikke er relaterede, og derfor bør spredes fra hinanden til fordelingsformål.
  • For eksempel: det er en meget god idé at indstille Tattributten på /homebiblioteket, så /home/johnog /home/maryplaceres i separate blokgrupper.
  • For mapper, hvor denne attribut ikke er angivet, vil Orlov -blokallokatoren forsøge at gruppere underkataloger tættere på hinanden, hvor det er muligt.
Ingen hale-fusion t +tat indstille for
-tat rydde
  • For de filsystemer, der understøtter hale-fusion , vil en fil med tattributten ikke have et delvist blokfragment i slutningen af ​​filen fusioneret med andre filer.
  • Dette er nødvendigt for applikationer som LILO , der læser filsystemet direkte og ikke forstår hale-fusionerede filer.
Kan ikke slettes u +uat indstille for
-uat rydde
  • Når en fil med uattributsættet slettes, gemmes dens indhold.
  • Dette giver brugeren mulighed for at bede om sletning .
Komprimering rå adgang X (ikke tilgængelig)
  • Den Xattribut bruges af de eksperimentelle komprimering patches til at angive, at en rå indholdet af en komprimeret fil kan tilgås direkte.
Komprimeret beskidt fil Z (ikke tilgængelig)
  • Den Zattribut bruges af de eksperimentelle komprimering patches til at indikere en komprimeret fil er "beskidt".
Version / generationsnummer -v -v version
  • Filens version/generationsnummer.

Noter

I BSD-lignende systemer ( chflags )

Filsystemsunderstøttelse

Kommandoen chflags er ikke specifik for bestemte filsystemer. UFS på BSD -systemer og APFS , HFS+ , SMB , AFP og FAT på macOS understøtter mindst nogle flag.

chflags beskrivelse

Formen for chflags -kommandoen er:

 chflags [-R [-H | -L | -P]] flags file ...
  • -HHvis indstillingen -R er angivet, følges symbolske links på kommandolinjen. (Symboliske forbindelser, der opstår i trætraversal, følges ikke.)
  • -L Hvis indstillingen -R er angivet, følges alle symbolske links.
  • -PHvis -R -indstillingen er angivet, følges ingen symbolske links. Dette er standard.
  • -R Skift filflag for filhierarkierne, der er rodfæstet i filerne, i stedet for kun selve filerne.

Viser

BSD-lignende systemer har generelt ingen standardkommando på brugerniveau, der specifikt er beregnet til at vise en fils flag. Den ls kommando vil gøre med enten -lo, eller -lO, afhængigt af systemet, flag bestået.

Egenskaber

Alle traditionelle attributter kan indstilles eller ryddes af superbrugeren; nogle kan også indstilles eller slettes af ejeren af ​​filen. Nogle attributter omfatter:

Filattributter
Attribut ls flag chflags flag Ejer-indstillelig OS support Semantik og begrundelse
Arkiveret bue bue , arkiveret Ingen Alle Filen arkiveres
Uigennemsigtig uigennemsigtig uigennemsigtig Ja Alle Telefonbogen er uigennemsigtig, når den ses gennem en fagforening
Ingen dump nodump nodump Ja Alle Filen kan ikke dumpes
System kun tilføjet sappnd sappnd , sappend Ingen Alle Eksisterende data i filen kan ikke overskrives, og filen kan ikke afkortes
Bruger kun tilføjet uappnd uappnd , uappend Ja Alle Eksisterende data i filen kan ikke overskrives, og filen kan ikke afkortes
System uforanderligt schg schg , schange , simmutable Ingen Alle Filen kan ikke ændres, omdøbes, flyttes eller fjernes
Bruger uforanderlig uchg uchg , uchange , uimmutable Ja Alle Filen kan ikke ændres, omdøbes, flyttes eller fjernes
Systemet fjernes ikke sunlnk sunlnk, sollink Ingen Alle Filen kan ikke fjernes, omdøbes eller monteres på; på macOS skal dette flag indstilles eller slettes fra enkeltbrugerfunktion
Bruger uden tilknytning uunlnk uunlnk, uunlink Ja Nogle Filen kan ikke fjernes, omdøbes eller monteres på; understøttes ikke af macOS
Skjult skjult skjult Ingen FreeBSD Filen er som standard skjult i GUI (men ikke i ls )
Bruger skjult uhidden uhidden Ja FreeBSD Filen er som standard skjult i GUI (men ikke i ls )
Skjult skjult skjult Ja macOS Filen er som standard skjult i GUI (men ikke i ls )
Sporet spores spores Ja macOS Filændringer og sletninger spores
Begrænset begrænset begrænset Ingen macOS Filen er beskyttet af System Integrity Protection ; ledsaget af den udvidede attribut com.apple.rootless ; flag skal indstilles eller slettes fra gendannelsestilstand
Komprimeret komprimeret Ingen macOS Filen er HFS -komprimeret (skrivebeskyttet flag); ikke tilgængelig på APFS -formaterede diskenheder
Data Vault Ingen macOS Skjult privatlivsflag siden macOS Mojave indstillet af kernesystemet for at forbyde enhver adgang uden særlige rettigheder

BSD -systemer tilbyder yderligere flag som offline , snapshot , sparsom og uarkiv ; se Referencer .

Se også

  • ATTRIB -analog kommando i MS-DOS, OS/2 og Microsoft Windows
  • chown - ændre fil/biblioteks ejerskab i et Unix -system
  • chmod - ændre filadgangskontrolattributter i et Unix -system
  • cacls - ændre lister over filadgangskontrol i Microsoft Windows NT

Noter

Referencer