chmod kommando i Linux med eksempler

chmod kommando i Linux med eksempler

De chmod (change mode) kommando i Linux/UNIX bruges til at indstille eller ændre fil- og mappetilladelser. Hver fil i Linux har en ejer en gruppe og tilhørende tilladelser, der bestemmer, hvem der kan læse, skrive eller udføre filen. Bruger chmod Administratorer og brugere kan kontrollere disse tilladelser for at sikre korrekt adgang og sikkerhed. Lad os overveje eksemplet

Brug chmod-kommandoen ved at give tilladelsen 745

Kommando:

 chmod 745 newfile.txt  

Produktion:

chmod

Opdeling af -rwxr--r-x :

  • Ejer ( 7 ): rwx > læs skriv udfør
  • Gruppe ( 4 ): r-- > kun læse
  • andre ( 5 ): r-x > læs og udfør

Her er filen:

  • Fuldt tilgængelig (læs/skriv/udfør) af ejeren
  • Skrivebeskyttet for gruppen
  • Læs + udfør for andre

Syntaks for chmod-kommandoen

 chmod [options] [mode] [File_name]   

Her

  • Valgmuligheder: Valgfri flag, der ændrer adfærden for chmod kommando.
  • Mode: Tilladelserne, der skal angives, repræsenteret af et trecifret oktalt tal eller symbolsk notation (f.eks. u=rwgo=rx).
  • Filnavn: Navnet på den fil eller mappe, som tilladelserne skal ændres for.

Tilgængelige indstillinger i chmod Command Linux

Her er nogle nyttige muligheder for chmod Kommando i Linux

Mode Ejer Gruppe Andre Typisk brug til scripts
700 rwx --- --- Privat script (kun du kan køre/redigere).
711 rwx --x --x Kun eksekverbar/traverse; indholdet ikke kan læses.
744 rwx r-- r-- Du redigerer & kører; andre kan læse (ikke udføre).
750 rwx r-x --- Eksekverbar kun for team; skjult for andre.
754 rwx r-x r-- Exec for gruppe skrivebeskyttet for andre.
755 rwx r-x r-x Fælles: alle kan køre kun du redigerer.
775 rwx rwx r-x Delt i en gruppe (både ejer og gruppe kan redigere/køre).

Note: Indstillinger i `chmod` bruges grundlæggende til at lave ændringer i bulk og ændre tilladelser på tværs af flere filer eller mapper på én gang.

Nøgletilladelsestyper:

I Linux tilladelser bestemme, hvem der har kontrol over en fil eller mappe. Disse tilladelser angiver, hvem der kan læse (få adgang til) skrive (redigere eller slette) eller udføre (køre) en fil baseret på brugerroller: ejergruppe og andre.

  • Læs ( r ): Giver mulighed for at se indholdet af filen.
  • Skriv ( w ): Tillader ændring af filen eller mappen.
  • Udfør ( x ): Tillader at køre filen som et program eller gå ind i mappen.

Eksempler på brug af oktal tilstand:

Antag, hvis vi giver læse- og skrivetilladelse til filens ejer. Læs skrive- og eksekverbar tilladelse til gruppen. Skrivebeskyttet tilladelse til den Anden. De ville vores kommando være.

 chmod 674 [file_name]  

Her.

  • 6 repræsentere tilladelse fra filejer, som er (rw-).
  • 7 repræsentere tilladelse fra Gruppen, som er (rwx).
  • 4 repræsentere tilladelse fra Anden, hvilket er (r--).

Note: Du kan se og beregne filtilladelser, såsom hvem der har adgang til at læse skriv (slette eller ændre) eller udføre en fil for ejergruppen og andre (offentlige) ved hjælp af en chmod kalkulator.

kalkulator

Her bruger vi en lommeregner til at se tilladelserne. Ejeren har f.eks. læse-skrive- og udførelsestilladelser, mens gruppen og andre (offentlige) kun har læse- og skrivetilladelser, men ikke kan eksekvere filen.

Tilsvarende numerisk tilladelse:

Syntaks:

 chmod 766 filename  

Tabel:

Brugertype Tilladelser Binær Værdi
Ejer rwx 111 7
Gruppe rw- 110 6
Andre rw- 110 6

Eksempel på tilbageføring af ændringer foretaget af 'chmod'-kommando i Linux

For at fortryde eller gendanne ændringer foretaget af 'chmod'-kommandoen i Linux kan vi bruge 'chmod' kommando igen, men denne gang skal vi nævne den korrekte tilladelse, vi ønsker. 

 Her er trinene til at fortryde eller fortryde ændringer:

  • Bestem den korrekte tilladelse, du ønsker, og brug kommandoen `chmod` igen. 
    For eksempel: Hvis vi ønsker at gendanne ændringerne til 'rw-r--r--' (læse- og skrivetilladelse for ejerens skrivebeskyttede tilladelse for gruppe og andre) ifølge dette ville vores oktale værdi være '644' (læs = 4 skrive=2).
  • Åbn nu mappen og skriv den givne kommando:
    chmod 644 [file_or_directory_name]    

Her i stedet for '[fil_eller_mappenavn]' skal du bruge dit fil- eller biblioteksnavn.

Antag, at vores filnavn er 'a.txt'

Før du vender tilbage eller fortryder ændringer:

ls -l a.txtls -l a.txt   (bruges til at vise alle de tilladelser, a.txt har)

Efter at have vendt tilbage eller fortryd ændringer:

tilbageføring af chmod-ændringer i LinuxHer kan vi se, at der er sket ændringer

Praktisk implementering af hvordan man gør script eksekverbart i Linux

I Linux er scripts typisk skrevet på sprog som Bash Python eller Perl. Selvom scriptets indhold er afgørende, er det lige så vigtigt at sikre, at det har eksekverbare tilladelser. Uden udførelsestilladelser tillader Linux ikke, at scriptet kører.

Trin 1: Naviger til scriptets bibliotek

Åbn terminalen og brug cd kommando for at navigere til den mappe, hvor dit script er placeret.

For eksempel:

 cd /path/to/your/script  

Trin 2: Tjek aktuelle tilladelser

Brug ` ls` kommandoen med ` -l` mulighed for at liste filerne i mappen sammen med deres tilladelser. Dette trin hjælper dig med at identificere de aktuelle tilladelser for dit script:

 ls -l   kontrol af nuværende tilladelsekontrol af nuværende tilladelse 

Trin 3: Gør scriptet eksekverbart

For at lave et script eksekverbart skal du bruge ` chmod` kommando. Forudsat at dit script hedder `eksempel .sh` du kan gøre det eksekverbart med følgende kommando:

 chmod +x example.sh  

Denne kommando tilføjer execute (+x) tilladelsen til scriptet.

Trin 4: Bekræft ændringer

Kør ` ls -l` kommandoen igen for at bekræfte, at scriptet nu har udførelsestilladelser. Du bør se et 'x' i tilladelsesfeltet for scriptet:

 ls -l   verificering af ændringer efter at have gjort scriptet eksekverbartverificering af ændringer efter at have gjort scriptet eksekverbart 

Trin 5: Udfør scriptet

Nu hvor dit script har eksekverbare tilladelser, kan du køre det ved at bruge ` ./` notation efterfulgt af scriptets navn. For eksempel:

 ./example.sh   udføre scriptetudføre scriptet 

Denne notation fortæller Linux at kigge i den aktuelle mappe ( . ) for det navngivne script example.sh .

Foreslået quiz Rediger quiz 5 spørgsmål

Hvilken numerisk tilladelse sikrer, at kun filejeren kan læse og skrive, mens gruppen og andre kun må læse filen?

  • EN

    chmod 777 file.txt

  • B

    chmod 664 file.txt

  • C

    chmod 644 file.txt

  • D

    chmod 600 file.txt

Forklaring:

644 > ejer: rw- gruppe: r-- andre: r--.

Hvilken symbolsk-mode-kommando tilbagekalder eksekveringstilladelse fra kun andre uden at røre ejer- eller gruppetilladelser?

  • EN

    chmod a-x script.sh

  • B

    chmod o-x script.sh

  • C

    chmod go-x script.sh

  • D

    chmod u-x script.sh

Forklaring:

o-x fjerner kun eksekveringsrettigheder fra 'andre'.

Hvilken chmod-konfiguration koder korrekt for et tilladelsesskema, hvor ejeren har fuld operationel autoritet, gruppen kun har invokationskapacitet, og andre kan blot inspicere uden ændringer?

  • EN

    chmod 751 app.sh

  • B

    chmod 754 app.sh

  • C

    chmod 715 app.sh

  • D

    chmod 571 app.sh

Forklaring:

751 > ejer: rwx gruppe: r-x andre: --x (kun udfør).

Hvilken kommando anvender en tilladelsesmodel, der sikrer, at hver fil, der oprettes i en mappe, automatisk arver mappens gruppe uanset brugerejerskab?

  • EN

    chmod +t shared_dir/

  • B

    chmod g+s shared_dir/

  • C

    chmod u+s shared_dir/

  • D

    chmod 777 shared_dir/

Forklaring:

g+s (setgid) tvinger nye filer til at arve mappens gruppe.

Et script skal være eksekverbart for alle brugere, som kun kan ændres af dets ejer, og mappen skal forhindre andre end en fils faktiske ejer i at slette eller omdøbe filer. Hvilket par kommandoer opfylder denne sikkerhedsmodel?

  • EN

    chmod 777 deploy.sh ; chmod +t /var/scripts

  • B

    chmod 755 deploy.sh ; chmod +t /var/scripts

  • C

    chmod 700 deploy.sh; chmod g+s /var/scripts

  • D

    chmod 755 deploy.sh ; chmod 777 /var/scripts

Forklaring:

755 > ejer skriver alle kan udføre; +t begrænser filsletning til filejere.

chmod kommando i Linux med eksemplerQuiz gennemførte med succes Din score:   2 /5 Nøjagtighed:  0 % Log ind for at se forklaring 1 /5 1 /5 < Previous Næste >