Reklama
Takže ste našiel chuť Linuxu, ktorá sa ti páči, ale teraz ste zmätení, pretože nemáte najmenšie potuchy o príkazoch terminálov a súborových povoleniach systému Linux?
Alebo máte webovú stránku hostenú na serveri Linux a narazili ste na problémy s povolením súborov, ktoré je možné vyriešiť iba pomocou mágie príkazového riadku.
Bez ohľadu na to, jeden z najpodstatnejšie Linuxové príkazy, ktoré sa treba naučiť A-Z Linuxu - 40 základných príkazov, ktoré by ste mali vedieťLinux je často ignorovaným tretím kolesom pre Windows a Mac. Áno, za posledných desať rokov si operačný systém s otvoreným zdrojovým kódom získal veľkú trakciu, ale ešte stále je ďaleko od zváženia ... Čítaj viac je malý, ale mocný príkaz chmod. Ale predtým, ako vysvetlíme, čo príkaz robí, musíme najprv pochopiť trochu o tom, ako Linux spracováva bezpečnosť súborov.
Základy oprávnení pre Linux
Operačné systémy Linux sú v skutočnosti systémy podobné Unixu (porozumenie systému Linux verzus unix) a systémy podobné Unixu pristupujú k súborovým oprávneniam takto:
Každý súbor má vlastník, ktorá určuje „triedu používateľa“ súboru. Každý súbor má tiež skupina, ktorá určuje „skupinovú triedu“ súboru. Každý používateľ systému, ktorý nie je vlastníkom a nepatrí do tej istej skupiny, sa rozhodne, že je ostatné.
Všetky súbory v systémoch podobných Unixu majú povolenia priradené všetkým trom triedam a tieto určujú, ktoré akcie môžu dané triedy vykonať pre daný súbor.
Tri akcie dostupné v systéme podobnom Unixu sú: čítať (možnosť otvoriť a zobraziť obsah súboru), write (schopnosť otvárať a upravovať obsah súboru) a popraviť (možnosť spustiť súbor ako spustiteľný program).
Inými slovami, povolenia súboru určujú, či:
- Vlastník môže súbor čítať, zapisovať a spúšťať.
- Skupina môže súbor čítať, zapisovať a spúšťať.
- Súbor môže čítať, zapisovať a spúšťať ktokoľvek iný.
Povolenia pre súbory systému Linux je možné zobraziť v dvoch formátoch.
Volá sa prvý formát symbolický zápis, čo je reťazec 10 znakov: jeden znak, ktorý predstavuje typ súboru, potom deväť znakov ktoré predstavujú súborové práva na čítanie (r), zápis (w) a vykonávanie (x) povolení v poradí podľa vlastníka, skupiny a iní. Ak to nie je povolené, používa sa pomlčka (-).
Napríklad:
-rwxr-xr--
To znamená, že ide o bežný súbor s oprávneniami na čítanie, zápis a vykonávanie vlastníka; čítať a spúšťať povolenia pre skupinu; a oprávnenia na čítanie iba pre všetkých ostatných.
Volá sa druhý formát číselný zápis, čo je reťazec pozostávajúci z troch číslic, z ktorých každý predstavuje oprávnenie používateľa, skupiny a ďalšie povolenia. Každá číslica sa môže pohybovať od 0 do 7 a hodnota každej číslice sa získa súčtom povolení triedy:
- 0 znamená, že nie sú povolené žiadne povolenia.
- +1, ak trieda dokáže spustiť súbor.
- +2, ak trieda môže zapisovať do súboru.
- +4, ak trieda dokáže prečítať súbor.
Inými slovami, význam každej číslicovej hodnoty končí takto:
- 0: Žiadne povolenie
- 1: Vykonať
- 2: Napíšte
- 3: Napíšte a vykonajte
- 4: Čítaj
- 5: Čítanie a vykonávanie
- 6: Čítanie a zápis
- 7: Čítanie, písanie a vykonávanie
Takže vyššie uvedený príklad (-rwxr-xr--
) by bolo v číselnom zápise 754.
Toto sú stručné povolenia súborov pre systém Linux.
Čo je Chmod?
Na systémoch podobných Unixu chmod je príkaz na úrovni systému, ktorý znamená „režim zmeny“ a umožňuje vám manuálne zmeniť nastavenia povolení súboru.
Nesmie sa zamieňať chown, čo je ďalší príkaz na úrovni systému v systémoch podobných Unixu, ktorý znamená „zmena vlastníka“ a umožňuje vám priradiť vlastníctvo súboru inému používateľovi, alebo chgrp, čo znamená „zmena skupiny“ a priraďuje súbor inej skupine. To je dôležité vedieť, ale nie tak často ako chmod.
Čo znamená Chmod 644?
Ak nastavíte oprávnenie súboru na 644, bude k nemu mať prístup a upravovať ho iba vlastník Chceme, aby ktokoľvek iný mal prístup iba bez úpravy a nikto nemôže vykonať súbor - ani vlastníka. Toto je ideálne nastavenie pre súbory, ktoré sú verejne prístupné, pretože vyvažuje flexibilitu so zabezpečením.
Čo znamená Chmod 755?
Nastavenie povolení súboru na 755 je v podstate to isté ako 644 s tým, že každý má tiež oprávnenie na vykonávanie. Používa sa hlavne pre verejne prístupné adresáre, pretože na vykonanie zmeny v adresári je potrebné povolenie na vykonanie.
Čo znamená Chmod 555?
Ak nastavíte povolenia súboru na 555, bude to tak, že súbor nebude môcť zmeniť nikto okrem superužívateľa systému (dozvedieť sa viac o superužívateľovi Linuxu Čo je SU a prečo je dôležité efektívne používať Linux?Používateľské konto systému Linux SU alebo root je výkonným nástrojom, ktorý môže byť užitočný pri správnom používaní alebo zničujúcom, ak sa používa bezohľadne. Pozrime sa, prečo by ste mali byť pri používaní SU zodpovední. Čítaj viac ). Toto sa nepoužíva tak často ako 644, ale je dôležité to vedieť, pretože nastavenie iba na čítanie zabraňuje náhodným zmenám a / alebo neoprávneným zásahom.
Čo znamená Chmod 777?
Ak nastavíte povolenia súboru na 777, bude to tak, aby s týmto súborom mohol robiť každý, čo chce. Toto je obrovské bezpečnostné riziko, najmä na webových serveroch! Doslova ktokoľvek má prístup k súboru, upravovať ho, ako chce, a spustiť ho v systéme. Možné poškodenie si viete predstaviť, ak sa na neho dostane nečestný užívateľ.
Ako používať Chmod v systéme Linux
Príkaz chmod má jednoduchý formát:
chmod [oprávnenie] [súbor]
Povolenia možno udeliť číselným zápisom, ktorý je najlepším formátom, ktorý sa použije, keď chcete priradiť konkrétne povolenia pre všetky triedy:
chmod 644 example.txt
Povolenia môžu byť udelené aj v symbolickom zápise, čo je užitočné, keď chcete iba zmeniť oprávnenia určitej triedy. Napríklad:
chmod u = rwx example.txt. chmod g = rw example.txt. chmod o = rw example.txt
Môžete upravovať povolenia pre viaceré triedy, ako napríklad tento príklad, ktorý nastavuje vlastníka na čítanie / zápis / vykonanie, ale skupina a ďalšie na čítanie / vykonanie:
chmod u = rwx, g = rw, o = rw example.txt
Pri prideľovaní rovnakých povolení viacerým triedam ich môžete kombinovať:
chmod u = rwx, go = rw example.txt
Krása použitia symbolického zápisu však svieti, keď chcete iba pridať alebo odobrať povolenie na konkrétnu akciu pre určitú triedu.
Napríklad toto pridáva povolenie na spustenie pre vlastníka súboru:
chmod u + x example.txt
A to odstraňuje oprávnenia na zápis a vykonávanie pre ostatných používateľov:
chmod o-wx example.txt
Nakoniec, ak chcete použiť konkrétnu skupinu povolení na všetky súbory a priečinky v konkrétnom adresári (t. J. Rekurzívny chmod), použite voľbu -R a zacieľte na adresár:
chmod -R 755 example_directory
Aj keď príkaz chmod vyzerá na prvý pohľad trochu šialene, v skutočnosti je celkom jednoduchý a úplne logický. Ak ste pochopili vyššie uvedené, ste v podstate zvládli chmod!
Ďalšie informácie o zvládnutí systému Linux
Príkazy ako chmod, chown a chgrp sú iba špičkou ľadovca Linuxu. Ak ste pre operačný systém úplne nový, odporúčame vám vyskúšať si ich elegantné triky pre nováčikov Linuxu ako aj tieto Príkazy systému Linux, ktoré by ste nikdy nemali spúšťať.
A čo je najdôležitejšie, najlepšie by ste mali, keby ste vyskúšali naše komplexný sprievodca začiatočníkov pre Ubuntu a Linux Ubuntu: Príručka pre začiatočníkovZaujíma vás Ubuntu, ale nie ste si istí, kde začať? Všetko, čo by ste mohli potrebovať, aby ste mohli začať s najnovšou verziou Ubuntu, je tu, napísané ľahko zrozumiteľnou jednoduchou angličtinou. Čítaj viac , ktorá vás naučí všetko, čo potrebujete vedieť, aby ste mohli začať a dostatočne sa zoznámiť, aby ste sa cítili pohodlne.
Joel Lee má titul B.S. v odbore informatiky a viac ako šesť rokov odbornej praxe v písaní. Je šéfredaktorom organizácie MakeUseOf.