logo

Hur man gör skript körbart i Linux | chmod kommando

I Unix-operativsystem är chmod kommandot används för att ändra åtkomstläge för en fil. Namnet är en förkortning av ändra läge . Som säger att varje fil och katalog har en uppsättning behörigheter som kontrollerar behörigheterna som vem som kan läsa, skriva eller köra filen. I detta har behörigheterna tre kategorier: läsa, skriva och köra samtidigt representerade av `r`, `w` och `x`. Dessa bokstäver kombineras för att bilda en specifik behörighet för en grupp användare.

Kommandot `chmod` används för att ändra denna behörighet så att den kan bevilja eller begränsa åtkomst till kataloger och filer. Låt oss ta en titt på syntaxen och alternativen för kommandot `chmod` i operativsystemet Linux.

Innehållsförteckning



Syntax för kommandot chmod

chmod [options] [mode] [File_name]>

Här,

sträng i char java
  • Alternativ: Valfria flaggor som ändrar beteendet hoschmod>kommando.
  • Läge: Behörigheterna som ska ställas in, representerade av ett tresiffrigt oktalt tal eller symbolisk notation (t.ex. u=rw,go=rx).
  • Filnamn: Namnet på filen eller katalogen för vilken behörigheterna ska ändras.

Alternativ tillgängliga i chmod Command Linux

alternativ Beskrivning
'-R'. Tillämpa behörighetsändringen rekursivt på alla filer och kataloger i den angivna katalogen.
`-v` Det kommer att visa ett meddelande för varje fil som bearbetas. samtidigt som den anger tillståndsändringen som gjordes.
'-c'. Det fungerar på samma sätt som `-v` men i det här fallet visar den bara meddelanden för filer vars behörighet har ändrats.
`-f` Det hjälper till att undvika visning av felmeddelanden.
`-h` Ändra behörigheterna för symboliska länkar istället för filerna de pekar på.

Notera: Alternativ i 'chmod'. används i princip för att göra ändringar i bulk och modifiera behörigheter över flera filer eller kataloger samtidigt.

Lägen i chmod Command i Linux

Läget hjälper till att ställa in nya behörigheter som måste tillämpas på filer eller kataloger.

Detta läge kan specificeras på flera sätt, vi kommer att diskutera två lägen: Symboliskt och Oktalt läge.

1) Symboliskt läge

Om vi ​​talar om symboliskt läge kan vi säga att det är den vanligaste metoden som används för att ange granbehörigheter. I detta måste vi göra en kombination av brev och operatörer för att ställa in eller berätta vad man ska göra med behörigheter.

Följande operatorer kan användas med symbolläget:

Operatörer Definition
`+` Lägg till behörigheter
`-` Ta bort behörigheter
`=` Ställ in behörigheterna till de angivna värdena

Följande bokstäver som kan användas i symboliskt läge:

Brev Definition
`r` Lästillstånd
`w` Skrivtillstånd
'x'. Utför behörighet

Följande referens som används:

Referens Klass
i Ägare
g Grupp
O Andra
a Alla (ägare, grupper, andra)

Exempel på användning av symbolläget:

  • Läs, skriv och kör behörigheter till filägaren:
  chmod u+rwx [file_name]>
  • Ta bort skrivbehörighet för gruppen och andra:
  chmod go-w [file_name]>
  • Läs och skriv för ägaren och skrivskyddad för gruppen och andra:
  chmod u+rw,go+r [file_name]>

2) Oktalt läge

Det är också en metod för att ange behörigheter. I den här metoden anger vi behörighet med tresiffrigt nummer. Var..

  • Första siffran ange tillstånd för ägare.
  • Andra siffran ange behörigheten för gruppen.
  • Tredje siffran ange tillstånd för andra. Siffrorna

NOTERA: Siffrorna beräknas genom att lägga till värdena för de individuella behörigheterna.

Värde Lov
4 Läs tillstånd
2 Skrivtillstånd
1 Utför tillstånd

Exempel på användning av det oktala läget:

Antag att om vi ska ge läs- och skrivtillstånd till filens ägare. Läs-, skriv- och exekverbar behörighet till gruppen. Skrivskyddad behörighet till den andre. De skulle vårt kommando vara.

 chmod 674 [file_name]>

Här.

  • 6 representerar tillstånd av filägare som är (rw).
  • 7 representerar tillstånd från gruppen som är (rwx).
  • 4 representerar tillstånd från annan som är (r).

Praktisk implementering av hur man gör skript körbart i Linux

Förstå skriptkörning i Linux

I Linux är skript vanligtvis skrivna på språk som Bash, Python eller Perl. Även om skriptets innehåll är avgörande, är det lika viktigt att säkerställa att det har körbara behörigheter. Utan körningsbehörigheter tillåter inte Linux att skriptet körs.

Steg 1: Navigera till skriptets katalog

Öppna terminalen och användcd>kommandot för att navigera till katalogen där ditt skript finns.

Till exempel:

cd /path/to/your/script>

Steg 2: Kontrollera aktuella behörigheter

Använd ` ls`> kommandot med ` -l`> alternativet för att lista filerna i katalogen tillsammans med deras behörigheter. Det här steget hjälper dig att identifiera aktuella behörigheter för ditt skript:

ls -l>
kontrollera aktuell behörighet

kontrollera aktuell behörighet

Steg 3: Gör skriptet körbart

För att göra ett skript körbart måste du använda ` chmod`> kommando. Förutsatt att ditt skript heter `exempel .sh`> , kan du göra det körbart med följande kommando:

chmod +x example.sh>

Detta kommando lägger till exekveringsbehörigheten (+x) till skriptet.

Steg 4: Verifiera ändringar

Kör ` ls -l`> kommandot igen för att verifiera att skriptet nu har körrättigheter. Du bör se ett 'x' i behörighetsfältet för skriptet:

full huggorms sanningstabell
ls -l>
verifiera ändringar efter att ha gjort skriptet körbart

verifiera ändringar efter att ha gjort skriptet körbart

Steg 5: Kör skriptet

Nu när ditt skript har körbara behörigheter kan du köra det med ` ./`> notation följt av skriptets namn. Till exempel:

./example.sh>
köra skriptet

köra skriptet

Denna notation talar om för Linux att leta i den aktuella katalogen (.>) för det namngivna skriptetexample.sh>.

Vanliga frågor om chmod – vanliga frågor

Hur visar jag de aktuella behörigheterna för en fil eller katalog?

ls -l>

alla behörigheter som en aktuell katalog har

För att se alla behörigheter som en viss katalog eller fil har.

ls -l example>

listade alla behörigheter som denna fil har.

Här är exemplet ett filnamn.

Vilka är de olika typerna av behörigheter i Linux, och vad betyder de?

Det finns tre typer av behörigheter i Linux:

läsa (`r`)

skriva (`w`)

Kör (`x`)

De tillämpas på:

ägare ('in')

instans av i java

grupp (`g`)

Övrig (`o`)

Vad är chmod 777 , chmod 755 och chmod +x eller chmod a+x?

chmod 777 [file_name]>

Detta kommando ger alla tre behörigheter till alla (ägare, grupp och annat)

chmod a+x [file_name]>

Det gör en fil körbar för alla. Det är det mest använda kommandot efter att vi installerat en körbar fil, vi behöver fortfarande lägga till en behörighet för att faktiskt göra den till en körbar fil.

chmod 755 [file_name]>

I detta fall kan ägaren skriva, läsa och exekvera en fil, grupp och andra kan bara läsa och exekvera en fil.

Hur kan vi återställa ändringar gjorda av chmod-kommandot i Linux?

För att ångra eller återställa ändringar gjorda av chmod-kommandot i Linux kan vi använda 'chmod'. kommandot igen men den här gången bör vi nämna den korrekta behörigheten vi vill ha.

Här är stegen för att ångra eller återställa ändringar:

  • Bestäm rätt behörighet du vill ha och använd kommandot `chmod` igen.
    Till exempel: Om vi ​​vill återställa ändringarna till rw-r–r– (läs- och skrivbehörighet för ägare, skrivskyddad behörighet för grupp och andra), enligt detta skulle vårt oktala värde vara 644 (läs = 4, skriv =2).
  • Öppna nu katalogen och skriv det givna kommandot:
  chmod 644 [file_or_directory_name]>

Här istället för [file_or_directory_name] använd ditt fil- eller katalognamn.

Anta att vårt filnamn är a.txt

    Innan du återställer eller ångrar ändringar:

    ls -l a.txt (används för att visa alla behörigheter a.txt har)

    Efter att ha återställt eller ångrat ändringar:

    Här kan vi se att förändringar har gjorts

    Slutsats

    De 'chmod'. kommando i Linux används för att ändra behörigheter och åtkomstläge för filer och kataloger. Det här är behörigheterna som styr vem som kan läsa, skriva och köra filen. Vi har diskuterat två typer av lägen för att ange tillstånd: symboliskt och oktalt läge. I symboliskt läge använder man bokstäver och operatorer för att specificera behörigheten. Medan oktal har ett tresiffrigt nummer för att ange behörigheten. De 'chmod'. kommandot ger också några alternativ för massändringar, till exempel: '-R'. för rekursiva och `-v` och '-c'. för att visa meddelandet. Den övergripande slutsatsen är den 'chmod'. kommando i Linux är ett mycket viktigt verktyg för att hantera fil- och katalogbehörigheter.

    ?list=PLqM7alHXFySFc4KtwEZTANgmyJm3NqS_L