chmod kommando i Linux med exempel

chmod kommando i Linux med exempel

De chmod (change mode) kommandot i Linux/UNIX används för att ställa in eller ändra fil- och katalogbehörigheter. Varje fil i Linux har en ägare en grupp och tillhörande behörigheter som bestämmer vem som kan läsa skriva eller köra filen. Använder chmod Administratörer och användare kan kontrollera dessa behörigheter för att säkerställa korrekt åtkomst och säkerhet. Låt oss överväga exemplet

Använd kommandot chmod genom att ge behörigheten 745

Kommando:

 chmod 745 newfile.txt  

Produktion:

chmod

Uppdelning av -rwxr--r-x :

  • Ägare ( 7 ): rwx > läs skriv kör
  • Grupp ( 4 ): r-- > endast läs
  • Andra ( 5 ): r-x > läs & kör

Här är filen:

  • Fullt tillgänglig (läs/skriv/kör) av ägaren
  • Skrivskyddad för gruppen
  • Läs + exekvera för andra

Syntax för kommandot chmod

 chmod [options] [mode] [File_name]   

Här

  • Alternativ: Valfria flaggor som ändrar beteendet hos chmod kommando.
  • Läge: Behörigheterna som ska ställas in representeras av ett tresiffrigt oktalt tal eller symbolisk notation (t.ex. u=rwgo=rx).
  • Filnamn: Namnet på filen eller katalogen för vilken behörigheterna ska ändras.

Alternativ tillgängliga i chmod Command Linux

Här är några användbara alternativ för chmod Kommando i Linux

Läge Ägare Grupp Andra Vanlig användning för skript
700 rwx --- --- Privat skript (endast du kan köra/redigera).
711 rwx --x --x Endast körbar/traverse; innehållet är inte läsbart.
744 rwx r-- r-- Du redigerar & kör; andra kan läsa (inte exekvera).
750 rwx r-x --- Körbar endast för team; dold för andra.
754 rwx r-x r-- Exec för grupp skrivskyddad för andra.
755 rwx r-x r-x Vanligt: ​​alla kan köra bara du redigerar.
775 rwx rwx r-x Delas inom en grupp (både ägare och grupp kan redigera/köra).

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

Viktiga behörighetstyper:

I Linux behörigheter avgöra vem som har kontroll över en fil eller katalog. Dessa behörigheter anger vem som kan läsa (åtkomst) skriva (redigera eller ta bort) eller köra (köra) en fil baserat på användarroller: ägargrupp och andra.

  • Läs ( r ): Tillåter att visa innehållet i filen.
  • Skriv ( w ): Tillåter ändring av filen eller katalogen.
  • Kör ( x ): Tillåter att filen körs som ett program eller går in i katalogen.

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--).

Notera: Du kan visa och beräkna filbehörigheter som vem som har åtkomst till att läsa skriv (ta bort eller ändra) eller köra en fil för ägargruppen och andra (offentliga) med en chmod kalkylator.

kalkylator

Här använder vi en kalkylator för att se behörigheterna. Till exempel har ägaren läs- och skrivbehörigheter medan gruppen och andra (offentliga) bara har läs- och skrivbehörigheter men inte kan köra filen.

Motsvarande numerisk behörighet:

Syntax:

 chmod 766 filename  

Tabell:

Användartyp Behörigheter Binär Värde
Ägare rwx 111 7
Grupp rw- 110 6
Andra rw- 110 6

Exempel på återställning av ändringar gjorda av kommandot 'chmod' 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 ägarens skrivskyddade 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_eller_katalognamn]' använd ditt fil- eller katalognamn.

Anta att vårt filnamn är 'a.txt'

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

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

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

återställning av chmod-ändringar i LinuxHär kan vi se att förändringar har gjorts

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

I Linux skrivs skript vanligtvis 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änd cd 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örighetkontrollera 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` du kan 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:

 ls -l   verifiera ändringar efter att ha gjort skriptet körbartverifiera ä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 manusets namn. Till exempel:

 ./example.sh   köra skriptetköra skriptet 

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

Förslag på frågesport Redigera frågesport 5 frågor

Vilken numerisk behörighet säkerställer att endast filägaren kan läsa och skriva medan gruppen och andra bara kan läsa filen?

  • A

    chmod 777 file.txt

  • B

    chmod 664 file.txt

  • C

    chmod 644 file.txt

  • D

    chmod 600 file.txt

Förklaring:

644 > ägare: rw- grupp: r-- andra: r--.

Vilket symboliskt lägeskommando återkallar exekveringsbehörighet från endast andra utan att röra ägaren eller gruppens behörigheter?

  • A

    chmod a-x script.sh

  • B

    chmod o-x script.sh

  • C

    chmod go-x script.sh

  • D

    chmod u-x script.sh

Förklaring:

o-x tar endast bort körrättigheter från "andra".

Vilken chmod-konfiguration kodar korrekt ett behörighetsschema där ägaren har full operativ auktoritet, gruppen har enbart anropsförmåga och andra bara kan inspektera utan ändringar?

  • A

    chmod 751 app.sh

  • B

    chmod 754 app.sh

  • C

    chmod 715 app.sh

  • D

    chmod 571 app.sh

Förklaring:

751 > ägare: rwx grupp: r-x andra: --x (endast kör).

Vilket kommando tillämpar en behörighetsmodell som säkerställer att varje fil som skapas i en katalog automatiskt ärver katalogens grupp oavsett användarens ägande?

  • A

    chmod +t shared_dir/

  • B

    chmod g+s shared_dir/

  • C

    chmod u+s shared_dir/

  • D

    chmod 777 shared_dir/

Förklaring:

g+s (setgid) tvingar nya filer att ärva katalogens grupp.

Ett skript måste vara körbart för alla användare som endast kan ändras av dess ägare och katalogen måste förhindra någon förutom filens faktiska ägare från att ta bort eller byta namn på filer. Vilket kommandopar uppfyller denna säkerhetsmodell?

  • A

    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

Förklaring:

755 > ägaren skriver att alla kan köras; +t begränsar filborttagning till filägare.

chmod kommando i Linux med exempelQuiz har slutförts framgångsrikt. Ditt resultat:   2 /5 Noggrannhet:  0 % Logga in för att se förklaring 1 /5 1 /5 < Previous Nästa >