logo

Sådan gør du script eksekverbart i Linux | chmod kommando

I Unix-operativsystemer er chmod kommandoen bruges til at ændre adgangstilstanden for en fil. Navnet er en forkortelse af skifte tilstand . Hvilket siger, at hver fil og mappe har et sæt tilladelser, der styrer tilladelserne, som hvem der kan læse, skrive eller udføre filen. I denne har tilladelserne tre kategorier: læse, skrive og udføre samtidigt repræsenteret af `r`, `w` og `x`. Disse bogstaver kombineres for at danne en specifik tilladelse for en gruppe brugere.

Kommandoen `chmod` bruges til at ændre denne tilladelse, så den kan give eller begrænse adgang til mapper og filer. Lad os se på syntaksen og mulighederne for kommandoen `chmod` i Linux-operativsystemet.



Indholdsfortegnelse

Syntaks af chmod kommando

chmod [options] [mode] [File_name]>

Her,

fordele og ulemper ved teknologi
  • Muligheder: Valgfri flag, der ændrer adfærden forchmod>kommando.
  • Mode: Tilladelserne, der skal indstilles, repræsenteret ved et trecifret oktal tal eller symbolsk notation (f.eks. u=rw,go=rx).
  • Filnavn: Navnet på den fil eller mappe, som tilladelserne skal ændres for.

Tilgængelige indstillinger i chmod Command Linux

Muligheder Beskrivelse
`-R` Anvend tilladelsesændringen rekursivt på alle filer og mapper i den angivne mappe.
`-v` Det vil vise en meddelelse for hver fil, der behandles. mens du angiver den tilladelsesændring, der blev foretaget.
`-c` Det fungerer på samme måde som `-v` men i dette tilfælde viser den kun meddelelser for filer, hvis tilladelse er ændret.
`-f` Det hjælper med at undgå visning af fejlmeddelelser.
`-h` Skift tilladelserne for symbolske links i stedet for de filer, de peger på.

Bemærk: Valgmuligheder i 'chmod' bruges grundlæggende til at foretage ændringer i bulk og ændre tilladelser på tværs af flere filer eller mapper på én gang.



Tilstande i chmod Command i Linux

Tilstanden hjælper med at indstille nye tilladelser, der skal anvendes på filer eller mapper.

Denne tilstand kan specificeres på flere måder, vi vil diskutere to tilstande: Symbolsk og Oktal tilstand.

1) Symbolsk tilstand

Hvis vi taler om symbolsk tilstand, kan vi sige, at det er den mest almindelige metode, der bruges til at specificere gran-tilladelser. I dette skal vi lave en kombination af bogstaver og operatører for at indstille eller fortælle, hvad de skal gøre med tilladelser.



Følgende operatorer kan bruges med den symbolske tilstand:

Operatører Definition
`+` Tilføj tilladelser
`-` Fjern tilladelser
`=` Indstil tilladelserne til de angivne værdier

Følgende bogstaver, der kan bruges i symbolsk tilstand:

Breve Definition
`r` Læsetilladelse
'w' Skrivetilladelse
'x' Udfør tilladelse

Følgende reference, der bruges:

Reference Klasse
i Ejer
g Gruppe
O Andre
-en Alle (ejer, grupper, andre)

Eksempler på brug af symbolsk tilstand:

  • Læs, skriv og udfør tilladelser til filens ejer:
  chmod u+rwx [file_name]>
  • Fjern skrivetilladelse for gruppen og andre:
  chmod go-w [file_name]>
  • Læs og skriv for ejeren og skrivebeskyttet for gruppen og andre:
  chmod u+rw,go+r [file_name]>

2) Oktal tilstand

Det er også en metode til at angive tilladelser. I denne metode angiver vi tilladelse ved hjælp af et trecifret tal. Hvor..

  • Første ciffer angiv tilladelsen for ejeren.
  • Andet ciffer angiv tilladelsen for gruppen.
  • Tredje ciffer angiv tilladelsen for andre. Cifrene

BEMÆRK: Cifrene udregnes ved at tilføje værdierne for de enkelte tilladelser.

Værdi Tilladelse
4 Læs tilladelse
2 Skrivetilladelse
1 Udfør tilladelse

Eksempler på brug af oktal tilstand:

Antag, hvis vi giver læse- og skrivetilladelse til filens ejer. Læse-, 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).

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

Forståelse af scriptudførelse 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 brugcd>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 tilladelse

kontrol af nuværende tilladelse

Trin 3: Gør scriptet eksekverbart

For at gøre et script eksekverbart skal du bruge ` chmod`> kommando. Forudsat at dit script hedder `eksempel .sh`> , kan du 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 eksekverbart

verificering af ændringer efter at have gjort script 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 scriptet

udføre scriptet

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

Ofte stillede spørgsmål om chmod – ofte stillede spørgsmål

Hvordan får jeg vist de aktuelle tilladelser for en fil eller et bibliotek?

ls -l>

alle de tilladelser, som en aktuel mappe har

middel vs gennemsnit

For at se alle de tilladelser, som en bestemt mappe eller fil har.

ls -l example>

listet alle tilladelser denne fil har.

Her er et eksempel et filnavn.

Hvad er de forskellige typer tilladelser i Linux, og hvad betyder de?

Der er tre typer tilladelser i Linux:

Læs (`r`)

skrive (`w`)

udføre (`x`)

De anvendes til:

ejer ('i')

gruppe (`g`)

Andet ('o')

Hvad er chmod 777, chmod 755 og chmod +x eller chmod a+x?

chmod 777 [file_name]>

Denne kommando giver alle tre tilladelser til alle (ejer, gruppe og andet)

chmod a+x [file_name]>

Det gør en fil eksekverbar for alle. Det er den mest brugte kommando efter at vi har installeret en eksekverbar fil, vi skal stadig tilføje en tilladelse for rent faktisk at gøre den til en eksekverbar fil.

chmod 755 [file_name]>

I dette tilfælde kan ejeren skrive, læse og udføre en fil, gruppe og andre kan kun læse og udføre en fil.

Hvordan kan vi gendanne ændringer foretaget af chmod-kommandoen i Linux?

For at fortryde eller fortryde æ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 ejer, skrivebeskyttet tilladelse for gruppe og andre), vil vores oktale værdi ifølge dette være 644 (læs = 4, skriv =2).
  • Åbn nu mappen og skriv den givne kommando:
  chmod 644 [file_or_directory_name]>

Her i stedet for [file_or_directory_name] skal du bruge dit fil- eller mappenavn.

Antag, at vores filnavn er a.txt

    Før du vender tilbage eller fortryder ændringer:

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

    Efter at have vendt tilbage eller fortryd ændringer:

    hvordan man konverterer et heltal til en streng i java

    Her kan vi se, at der er sket ændringer

    Konklusion

    Det 'chmod' kommando i Linux bruges til at ændre tilladelserne og adgangstilstanden for filer og mapper. Det er de tilladelser, der styrer, hvem der kan læse, skrive og udføre filen. Vi har diskuteret to typer tilstande til at specificere tilladelse: symbolsk og oktal tilstand. I symbolsk tilstand bruger man bogstaver og operatorer til at angive tilladelsen. Hvorimod oktal har et trecifret tal til at angive tilladelsen. Det 'chmod' kommandoen giver også nogle muligheder for masseændringer, for eksempel: `-R` for rekursive og `-v` og `-c` for at vise besked. Den overordnede konklusion er det 'chmod' kommando i Linux er et meget vigtigt værktøj til at administrere fil- og mappetilladelser.

    ?list=PLqM7alHXFySFc4KtwEZTANgmyJm3NqS_L