Thechmod(change mode) příkaz v Linux/UNIX se používá k nastavení nebo úpravě oprávnění k souborům a adresářům. Každý soubor v Linuxu má vlastníka, skupinu a přidružená oprávnění, která určují, kdo může číst, zapisovat nebo spouštět soubor. Použitíchmod Správci a uživatelé mohou tato oprávnění ovládat, aby zajistili správný přístup a zabezpečení. Podívejme se na příklad
Použijte příkaz chmod udělením oprávnění 745
Příkaz:
chmod 745 newfile.txtvýstup:
Rozdělení na-rwxr--r-x:
- Majitel (
7):rwx> čtení zápis spustit - Skupina (
4):r--> pouze pro čtení - Ostatní (
5):r-x> číst a provádět
Zde je soubor:
- Plně přístupné (čtení/zápis/spouštění) vlastníkem
- Pouze pro čtení pro skupinu
- Přečíst + spustit pro ostatní
Syntaxe příkazu chmod
chmod [options] [mode] [File_name] Zde
- Možnosti: Volitelné příznaky, které upravují chování souboru
chmodpříkaz. - režim: Oprávnění, která mají být nastavena, reprezentovaná třímístným osmičkovým číslem nebo symbolickým zápisem (např. u=rwgo=rx).
- File_name: Název souboru nebo adresáře, pro který se mají změnit oprávnění.
Možnosti dostupné v chmod Command Linux
Zde jsou některé užitečné možnostichmodPříkaz v Linuxu
| Režim | Majitel | Skupina | Ostatní | Typické použití pro skripty |
|---|---|---|---|---|
| 700 | rwx | --- | --- | Soukromý skript (pouze vy můžete spustit/upravit). |
| 711 | rwx | --x | --x | Pouze spustitelný soubor/přechod; obsah nečitelný. |
| 744 | rwx | r-- | r-- | Můžete upravit a spustit; ostatní mohou číst (ne provádět). |
| 750 | rwx | r-x | --- | Spustitelný pouze pro tým; skryté před ostatními. |
| 754 | rwx | r-x | r-- | Exec pro skupinu jen pro čtení pro ostatní. |
| 755 | rwx | r-x | r-x | Běžné: všichni mohou spustit úpravy pouze vy. |
| 775 | rwx | rwx | r-x | Sdíleno ve skupině (upravovat/spouštět může vlastník i skupina). |
Poznámka: Možnosti v `chmod` se v podstatě používají k provádění hromadných změn a úpravě oprávnění ve více souborech nebo adresářích najednou.
Klíčové typy oprávnění:
V Linuxu oprávnění určit, kdo má kontrolu nad souborem nebo adresářem. Tato oprávnění určují, kdo může číst (přístup), zapisovat (upravovat nebo mazat) nebo spouštět (spouštět) soubor na základě uživatelských rolí: skupina vlastníků a další.
- Přečtěte si (
r): Umožňuje prohlížení obsahu souboru. - Napište (
w): Umožňuje úpravu souboru nebo adresáře. - Provést (
x): Umožňuje spuštění souboru jako programu nebo vstup do adresáře.
Příklady použití osmičkového režimu:
Předpokládejme, že udělíme oprávnění ke čtení a zápisu vlastníkovi souboru. Oprávnění ke čtení a zápisu do skupiny. Oprávnění pouze ke čtení pro ostatní. Oni by byli naším velením.
chmod 674 [file_name]Zde.
- 6 představují povolení vlastníka souboru, které jsou (rw-).
- 7 představují povolení skupiny, které jsou (rwx).
- 4 představují povolení Jiného, což je (r--).
Poznámka: Pomocíchmodkalkulačka.
řetězec a podřetězec
Zde používáme kalkulačku k zobrazení oprávnění. Například vlastník má oprávnění ke čtení, zápisu a spouštění, zatímco skupina a ostatní (veřejní) mají oprávnění pouze ke čtení a zápisu, ale nemohou soubor spustit.
Ekvivalentní číselné oprávnění:
Syntax:
chmod 766 filenameTabulka:
| Typ uživatele | Oprávnění | Binární | Hodnota |
|---|---|---|---|
| Majitel | rwx | 111 | 7 |
| Skupina | rw- | 110 | 6 |
| Ostatní | rw- | 110 | 6 |
Příklad vrácení změn provedených příkazem 'chmod' v Linuxu
Chcete-li vrátit zpět nebo vrátit změny provedené příkazem 'chmod' v Linuxu, můžeme použít "chmod". příkaz znovu, ale tentokrát bychom měli uvést správné oprávnění, které chceme.
Zde jsou kroky, jak vrátit zpět nebo vrátit změny:
- Určete správné oprávnění, které chcete, a znovu použijte příkaz `chmod`.
Například: Pokud chceme vrátit změny na 'rw-r--r--' (oprávnění ke čtení a zápisu pro vlastníka oprávnění pouze ke čtení pro skupinu a další), podle toho by naše osmičková hodnota byla '644' (čtení = 4 zápis=2). - Nyní otevřete adresář a napište zadaný příkaz:
chmod 644 [file_or_directory_name]
Zde místo '[file_or_directory_name]' použijte název vašeho souboru nebo adresáře.
Předpokládejme, že název našeho souboru je 'a.txt'
Před vrácením nebo vrácením změn:
ls -l a.txt (používá se k zobrazení všech oprávnění, která a.txt má)Po vrácení nebo vrácení změn:
Zde vidíme, že došlo ke změnámPraktická implementace Jak udělat skript spustitelný v Linuxu
V Linuxu jsou skripty obvykle psány v jazycích jako Bash Python nebo Perl. Zatímco obsah skriptu je zásadní, zajištění toho, že má spustitelná oprávnění, je stejně důležité. Bez oprávnění ke spuštění Linux nepovolí spuštění skriptu.
Krok 1: Přejděte do adresáře skriptu
Otevřete terminál a použijtecdpřejděte do adresáře, kde se nachází váš skript.
Například:
cd /path/to/your/scriptKrok 2: Zkontrolujte aktuální oprávnění
Použijte ` ls` příkaz s ` -l` možnost vypsat soubory v adresáři spolu s jejich oprávněními. Tento krok vám pomůže identifikovat aktuální oprávnění vašeho skriptu:
ls -l
kontrola aktuálního oprávněníKrok 3: Vytvořte spustitelný skript
Chcete-li, aby byl skript spustitelný, musíte použít `chmod`příkaz. Za předpokladu, že se váš skript jmenuje `example .sh` můžete jej učinit spustitelným pomocí následujícího příkazu:
chmod +x example.shTento příkaz přidá do skriptu oprávnění ke spuštění (+x).
Krok 4: Ověřte změny
Spusťte ` ls -l` znovu, abyste ověřili, že skript má nyní oprávnění ke spuštění. V poli oprávnění pro skript byste měli vidět „x“:
ls -l
ověření změn po vytvoření spustitelného skriptuKrok 5: Spusťte skript
Nyní, když má váš skript oprávnění ke spuštění, můžete jej spustit pomocí ` ./` zápis následovaný názvem skriptu. Například:
./example.sh
spustit skriptTento zápis říká Linuxu, aby se podíval do aktuálního adresáře (.) pro pojmenovaný skriptexample.sh.
Které číselné oprávnění zajišťuje, že pouze vlastník souboru může číst a zapisovat, zatímco skupina a ostatní mohou soubor pouze číst?
- A
chmod 777 soubor.txt
- B
chmod 664 soubor.txt
- C
chmod 644 soubor.txt
- D
chmod 600 soubor.txt
644 > vlastník: rw- skupina: r-- ostatní: r--.
Který příkaz v symbolickém režimu zruší oprávnění ke spuštění pouze ostatní aniž byste se dotkli oprávnění vlastníka nebo skupiny?
- A
chmod a-x skript.sh
- B
chmod o-x skript.sh
- C
chmod go-x skript.sh
- D
chmod u-x script.sh
jarní mvc
o-x odebere spouštěcí práva pouze od „ostatních“.
Která konfigurace chmod správně kóduje schéma oprávnění, kde vlastník má plné provozní oprávnění, skupina má schopnost pouze vyvolání a ostatní mohou pouze kontrolovat bez úprav?
- A
chmod 751 app.sh
- B
chmod 754 app.sh
- C
chmod 715 app.sh
- D
chmod 571 app.sh
751 > vlastník: rwx skupina: r-x ostatní: --x (pouze spustit).
Který příkaz použije model oprávnění, který zajistí, že každý soubor vytvořený v adresáři automaticky zdědí skupinu adresáře bez ohledu na vlastnictví uživatele?
- A
chmod +t sdílený_adresář/
- B
chmod g+s shared_dir/
- C
chmod u+s shared_dir/
- D
chmod 777 shared_dir/
g+s (setgid) nutí nové soubory zdědit skupinu adresáře.
Skript musí být spustitelný pro všechny uživatele, který může upravit pouze jeho vlastník, a adresář musí zabránit komukoli kromě skutečného vlastníka souboru ve mazání nebo přejmenování souborů. Která dvojice příkazů vyhovuje tomuto bezpečnostnímu modelu?
- 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
755 > vlastník píše, že vše může spustit; +t omezuje mazání souborů na vlastníky souborů.
Kvíz úspěšně dokončen Vaše skóre: 2/5Přesnost: 0 %Pro zobrazení vysvětlení se přihlaste 1/5 1/5 < Previous Další >