logo

chmod komanda „Linux“ su pavyzdžiais

Thechmod(pakeisti režimą) komanda Linux / UNIX naudojama failų ir katalogų leidimams nustatyti arba modifikuoti. Kiekvienas Linux failas turi savininką grupę ir susijusius leidimus, kurie nustato, kas gali skaityti, rašyti ar vykdyti failą. Naudojantchmod Administratoriai ir vartotojai gali valdyti šiuos leidimus, kad užtikrintų tinkamą prieigą ir saugumą. Panagrinėkime pavyzdį

Naudokite komandą chmod suteikdami leidimą 745

Komanda:

chmod 745 newfile.txt

Išvestis:



chmod' title=

Suskirstymas-rwxr--r-x:

  • Savininkas (7):rwx> skaityti rašyti vykdyti
  • Grupė (4):r--> tik skaityti
  • Kiti (5):r-x> skaityti ir vykdyti

Štai failas:

  • Visiškai prieinama (skaityti / rašyti / vykdyti) savininko
  • Tik skaitoma grupei
  • Skaityti + vykdyti kitiems

Komandos chmod sintaksė

chmod [options] [mode] [File_name] 

Čia

  • Parinktys: Pasirenkamos vėliavėlės, pakeičiančios elgsenąchmodkomandą.
  • Režimas: Leidimai, kuriuos reikia nustatyti, pavaizduoti trijų skaitmenų aštuntainiu skaičiumi arba simboline žyma (pvz., u=rwgo=rx).
  • Failo_pavadinimas: Failo arba katalogo, kurio teises reikia keisti, pavadinimas.

Galimos parinktys „chmod Command Linux“.

Štai keletas naudingų parinkčiųchmodKomanda Linux

RežimasSavininkasGrupėKitiĮprastas scenarijų naudojimas
700 rwx------Privatus scenarijus (paleisti / redaguoti galite tik jūs).
711 rwx--x--xTik vykdomas/traversas; turinys neįskaitomas.
744 rwxr--r--Jūs redaguojate ir paleidžiate; kiti gali skaityti (nevykdyti).
750 rwxr-x---Vykdomasis tik komandai; paslėpta nuo kitų.
754 rwxr-xr--Vykdyti grupėje, tik skaitoma kitiems.
755 rwxr-xr-xDažnas: visi gali paleisti tik jūs redaguojate.
775 rwxrwxr-xBendrinama grupėje (ir savininkas, ir grupė gali redaguoti / paleisti).

Pastaba: „chmod“ parinktys iš esmės naudojamos norint atlikti masinius pakeitimus ir keisti kelių failų ar katalogų leidimus vienu metu.

Pagrindiniai leidimų tipai:

Linux sistemoje leidimai nustatyti, kas valdo failą ar katalogą. Šie leidimai nurodo, kas gali skaityti (prieiti) rašyti (redaguoti arba ištrinti) arba vykdyti (paleisti) failą pagal vartotojo vaidmenis: savininkų grupė ir kiti.

  • Skaityti ( r ): Leidžia peržiūrėti failo turinį.
  • Rašyti ( w ): Leidžia keisti failą arba katalogą.
  • Vykdyti ( x ): Leidžia paleisti failą kaip programą arba įeiti į katalogą.

Aštuontainio režimo naudojimo pavyzdžiai:

Tarkime, jei suteikiame failo savininkui skaitymo ir rašymo leidimą. Skaityti grupės rašymo ir vykdymo leidimą. Tik skaitymo leidimas kitam. Jie būtų mūsų įsakymas.

chmod 674 [file_name]

Čia.

  • 6 reiškia failo savininko leidimą, kuris yra (rw-).
  • 7 atstovauja grupės leidimui, kurie yra (rwx).
  • 4 atstovauja Kito leidimui, kuris yra (r--).

Pastaba: Galite peržiūrėti ir apskaičiuoti failų leidimus, pvz., kas gali pasiekti skaitymo ir rašymo (ištrinti arba keisti) arba vykdyti failą savininkų grupei ir kitiems (viešai)chmodskaičiuotuvas.

skaičiuotuvas' loading='lazy' title=

Čia mes naudojame skaičiuotuvą, kad peržiūrėtume leidimus. Pavyzdžiui, savininkas turi skaitymo rašymo ir vykdymo teises, o grupė ir kiti (viešieji) turi tik skaitymo ir rašymo teises, bet negali vykdyti failo.

Lygiavertis skaitinis leidimas:

Sintaksė:

chmod 766 filename

Lentelė:

Vartotojo tipasLeidimaiDvejetainisVertė
Savininkasrwx1117
Grupėrw-1106
Kitirw-1106

„Linux“ komandos „chmod“ atliktų pakeitimų grąžinimo pavyzdys

Norėdami anuliuoti arba grąžinti „chmod“ komandos pakeitimus sistemoje „Linux“, galime naudoti `chmod' komandą dar kartą, bet šį kartą turėtume paminėti teisingą norimą leidimą. 

 Štai žingsniai, kaip anuliuoti arba grąžinti pakeitimus:

  • Nustatykite tinkamą norimą leidimą ir dar kartą naudokite komandą „chmod“. 
    Pavyzdžiui: jei norime grąžinti pakeitimus į „rw-r--r--“ (skaitymo ir rašymo leidimas, skirtas savininko tik skaitymo leidimui grupei ir kitiems), pagal tai mūsų aštuntainė vertė būtų „644“ (skaityti = 4 rašyti = 2).
  • Dabar atidarykite katalogą ir parašykite nurodytą komandą:
    chmod 644 [file_or_directory_name]   

Čia vietoj „[failo_arba_katalogo_pavadinimas]“ naudokite failo arba katalogo pavadinimą.

Tarkime, kad mūsų failo pavadinimas yra „a.txt“

Prieš grąžindami arba anuliuodami pakeitimus:

ls -l a.txt' loading='lazy' title=ls -l a.txt   (naudojamas rodyti visus a.txt turimus leidimus)

Grąžinus arba anuliavus pakeitimus:

chmod pakeitimų grąžinimas Linux sistemoje' loading='lazy' title=Čia matome, kad pakeitimai buvo padaryti

Praktinis kaip padaryti scenarijų vykdomą Linux sistemoje įgyvendinimas

Linux scenarijai paprastai rašomi tokiomis kalbomis kaip Bash Python arba Perl. Nors scenarijaus turinys yra labai svarbus, taip pat svarbu užtikrinti, kad jis turi vykdomuosius leidimus. Be vykdymo leidimo „Linux“ neleis scenarijaus paleisti.

1 veiksmas: eikite į scenarijaus katalogą

Atidarykite terminalą ir naudokitecdkomanda, kad pereitumėte į katalogą, kuriame yra jūsų scenarijus.

Pavyzdžiui:

cd /path/to/your/script

2 veiksmas: patikrinkite esamus leidimus

Naudokite ` ls` komandą su ` -l` parinktis įtraukti failus į katalogą kartu su jų leidimais. Šis veiksmas padeda nustatyti esamus scenarijaus leidimus:

ls -l
patikrinti esamą leidimą' loading='lazy' title=patikrinti esamą leidimą

3 veiksmas: padarykite scenarijų vykdomąjį

Norėdami sukurti scenarijų vykdomąjį, turite naudoti `chmod`komandą. Darant prielaidą, kad jūsų scenarijus pavadintas „pavyzdys“. .sh` galite padaryti jį vykdomą naudodami šią komandą:

chmod +x example.sh

Ši komanda prideda scenarijų vykdymo (+x) leidimą.

regresijos išraiška java

4 veiksmas: patikrinkite pakeitimus

Paleiskite ` ls -l` komandą dar kartą, kad patikrintumėte, ar scenarijus dabar turi vykdymo teises. Scenarijaus leidimo lauke turėtumėte matyti „x“:

ls -l
tikrinti pakeitimus po to, kai scenarijus yra vykdomas' loading='lazy' title=tikrinti pakeitimus po to, kai scenarijus yra vykdomas

5 veiksmas: paleiskite scenarijų

Dabar, kai jūsų scenarijus turi vykdymo leidimus, galite jį paleisti naudodami ` ./` užrašas, po kurio rašomas scenarijaus pavadinimas. Pavyzdžiui:

./example.sh
vykdyti scenarijų' loading='lazy' title=vykdyti scenarijų

Šis žymėjimas nurodo Linux ieškoti dabartiniame kataloge (.) pavadintam scenarijuiexample.sh.

Siūloma viktorina Redaguoti viktoriną 5 klausimai

Kuris skaitmeninis leidimas užtikrina, kad tik failo savininkas gali skaityti ir rašyti, o grupė ir kiti gali tik skaityti failą?

  • A

    chmod 777 failas.txt

  • B

    chmod 664 failas.txt

  • C

    chmod 644 failas.txt

  • D

    chmod 600 failas.txt

Paaiškinimas:

644 > savininkas: rw- grupė: r-- kiti: r--.

Kuri simbolinio režimo komanda atšaukia vykdymo leidimą tik kiti neliesdami savininko ar grupės leidimų?

  • A

    chmod a-x script.sh

  • B

    chmod o-x script.sh

  • C

    chmod go-x script.sh

  • D

    chmod u-x script.sh

Paaiškinimas:

o-x pašalina vykdymo teises tik iš „kitų“.

Kuri chmod konfigūracija teisingai užkoduoja leidimų schemą, kai savininkas turi visas veiklos teises, grupė turi tik iškvietimo galimybę, o kiti gali tik patikrinti be pakeitimų?

  • A

    chmod 751 app.sh

  • B

    chmod 754 app.sh

  • C

    chmod 715 app.sh

  • D

    chmod 571 app.sh

Paaiškinimas:

751 > savininkas: rwx grupė: r-x kiti: --x (tik vykdyti).

Kuri komanda taiko leidimo modelį, užtikrinantį, kad kiekvienas kataloge sukurtas failas automatiškai paveldės katalogo grupę, nepaisant vartotojo nuosavybės?

  • A

    chmod +t share_dir/

  • B

    chmod g+s shared_dir/

  • C

    chmod u+s shared_dir/

  • D

    chmod 777 shared_dir/

Paaiškinimas:

g+s (setgid) priverčia naujus failus paveldėti katalogo grupę.

Scenarijus turi būti vykdomas visiems vartotojams, kuriuos gali keisti tik jo savininkas, o katalogas turi neleisti niekam, išskyrus tikrąjį failo savininką, ištrinti ar pervardyti failų. Kuri komandų pora atitinka šį saugos modelį?

  • A

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

    kajal aggarwal
  • 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

Paaiškinimas:

755 > savininkas rašo all can execute; +t apriboja failų ištrynimą tik failų savininkams.

chmod komanda „Linux“ su pavyzdžiaisViktorina sėkmingai atlikta jūsų balas:  2/5Tikslumas: 0 %Prisijunkite, kad pamatytumėte paaiškinimą 1/5 1/5 < Previous Kitas >