Oprávnění souborů v Linuxu / Unixu: Jak číst, zapisovat a měnit?
Linux je klon UNIXu, víceuživatelského operačního systému, ke kterému může přistupovat mnoho uživatelů současně. Linux lze také bez jakýchkoli úprav použít v sálových počítačích a serverech. To však vyvolává obavy o bezpečnost, protože nevyžádaný nebo zlomyslný uživatel může poškodit, změnit nebo odstranit důležitá data. Pro efektivní zabezpečení rozděluje Linux autorizaci do 2 úrovní.
- Vlastnictví
- Povolení
Koncept Linux File povolení si vlastnictví je v Linuxu zásadní. Zde vysvětlíme oprávnění a vlastnictví Linuxu a probereme obojí. Začněme s Vlastnictví.
klikněte zde pokud video není přístupné
Vlastnictví souborů Linux
Každý soubor a adresář ve vašem systému Unix/Linux má přiřazeny 3 typy vlastníků, které jsou uvedeny níže.
Uživatel
Vlastníkem souboru je uživatel. Ve výchozím nastavení se vlastníkem souboru stává osoba, která soubor vytvořila. Uživatel je proto také někdy nazýván vlastníkem.
Skupina
Uživatelská skupina může obsahovat více uživatelů. Všichni uživatelé patřící do skupiny budou mít k souboru stejná oprávnění skupiny Linux. Předpokládejme, že máte projekt, kde mnoho lidí vyžaduje přístup k souboru. Namísto ručního přidělování oprávnění každému uživateli můžete přidat všechny uživatele do skupiny a přiřadit skupině oprávnění k souboru tak, aby soubory mohli číst nebo upravovat pouze členové této skupiny a nikdo jiný.
Ostatní
Jakýkoli jiný uživatel, který má přístup k souboru. Tato osoba nevytvořila soubor ani nepatří do uživatelské skupiny, která by mohla soubor vlastnit. Prakticky to znamená všichni ostatní. Když tedy nastavíte oprávnění pro ostatní, označuje se také jako nastavená oprávnění pro svět.
Nyní vyvstává velká otázka, jak Linux rozlišovat mezi těmito třemi typy uživatelů, takže uživatel „A“ nemůže ovlivnit soubor, který obsahuje nějaké další důležité informace/data uživatele „B“. Je to jako byste nechtěli svého kolegu, který na vás pracuje Počítač Linux, chcete-li zobrazit své obrázky. To je kde Oprávnění nastavují a definují chování uživatele.
Pojďme pochopit Systém povolení na Linuxu.
Oprávnění k souborům Linux
Každý soubor a adresář ve vašem systému UNIX/Linux má následující 3 oprávnění definovaná pro všechny 3 vlastníky popsané výše.
- Číst: Toto oprávnění vám dává oprávnění otevřít a číst soubor. Oprávnění ke čtení v adresáři vám dává možnost vypsat jeho obsah.
- Napsat: Oprávnění k zápisu vám dává oprávnění upravovat obsah souboru. Oprávnění k zápisu do adresáře vám dává oprávnění přidávat, odebírat a přejmenovávat soubory uložené v adresáři. Zvažte scénář, kdy musíte do souboru zapisovat, ale nemáte oprávnění k zápisu do adresáře, kde je soubor uložen. Budete moci upravit obsah souboru. Ale nebudete moci přejmenovat, přesunout nebo odstranit soubor z adresáře.
- Provedení: In Windows, spustitelný program má obvykle příponu „.exe“ a můžete jej snadno spustit. V Unixu/Linuxu nemůžete spustit program, pokud není nastaveno oprávnění ke spuštění. Pokud není nastaveno oprávnění ke spuštění, můžete stále vidět/upravovat kód programu (za předpokladu, že jsou nastavena oprávnění ke čtení a zápisu), ale nemůžete jej spustit.
Podívejme se na oprávnění souborů v Linuxu s příklady:
ls – l na terminálu dává
ls - l
Zde jsme zdůraznili '-rw-rw-r–'a tento divně vypadající kód je ten, který nám říká o unixových oprávněních udělených vlastníkovi, skupině uživatelů a celému světu.
Tady, první'-' znamená, že jsme vybrali soubor.p>
Jinak, kdyby to byl adresář, d by bylo ukázáno.
Postavy jsou celkem snadno zapamatovatelné.
r = oprávnění ke čtení
w = povolení k zápisu
x = vykonat povolení
- = žádné povolení
Podívejme se na to takto.
První část kódu je 'rw-'. To naznačuje, že vlastník „Home“ může:
- Přečtěte si soubor
- Napište nebo upravte soubor
- Nemůže spustit soubor, protože prováděcí bit je nastaven na '-'.
Podle návrhu mnoho distribucí Linuxu, jako je Fedora, CentOS, Ubuntu, atd. přidá uživatele do skupiny se stejným názvem skupiny, jako je jméno uživatele. Uživatel 'tom' je tedy přidán do skupiny s názvem 'tom'.
Druhá část je 'rw-'. Pro uživatelskou skupinu „Domů“ a členy skupiny může:
- Přečtěte si soubor
- Napište nebo upravte soubor
Třetí část je pro svět, což znamená jakýkoli uživatel. Říká 'r–'. To znamená, že uživatel může pouze:
- Přečtěte si soubor
Změna oprávnění k souboru/adresáři v Linuxu Pomocí příkazu 'chmod'
Řekněme, že nechcete, aby váš kolega viděl vaše osobní obrázky. Toho lze dosáhnout změnou oprávnění k souboru.
Můžeme použít 'chmod' příkaz, který znamená „změnit režim“. Pomocí příkazu můžeme nastavit oprávnění (čtení, zápis, spouštění) k souboru/adresáři pro vlastníka, skupinu a svět.
Syntaxe:
chmod permissions filename
Existují 2 způsoby použití příkaz -
- Absolutní režim
- Symbolický režim
Absolutní (numerický) režim v Linuxu
V tomto režimu soubor oprávnění nejsou reprezentována jako znaky, ale třímístné osmičkové číslo.
Níže uvedená tabulka uvádí čísla pro všechny typy oprávnění.
Číslo | Typ oprávnění | Symbol |
---|---|---|
0 | Bez povolení | - |
1 | Provést | -X |
2 | Napsat | -V- |
3 | Provést + napsat | -šx |
4 | číst | r– |
5 | Přečíst + Provést | rx |
6 | Číst + psát | rw - |
7 | Číst + Zápis + Spustit | rwx |
Podívejme se na příkaz chmod rights v akci.
Ve výše uvedeném okně terminálu jsme změnili oprávnění souboru 'sample na '764'.
Absolutní kód '764' říká následující:
- Vlastník může číst, zapisovat a spouštět
- Uživatelská skupina může číst a zapisovat
- Svět umí jen číst
Toto je zobrazeno jako '-rwxrw-r–
Takto můžete změnit uživatelská oprávnění v Linuxu v souboru přiřazením absolutního čísla.
Symbolický režim v Linuxu
V absolutním režimu změníte oprávnění pro všechny 3 vlastníky. V symbolickém režimu můžete upravit oprávnění konkrétního vlastníka. Využívá matematické symboly k úpravě oprávnění souborů Unix.
OperaTor | Description |
---|---|
+ |
Přidá oprávnění k souboru nebo adresáři |
- |
Odebere oprávnění |
= |
Nastaví oprávnění a přepíše dříve nastavená oprávnění. |
Různí vlastníci jsou zastoupeni jako –
Uživatelské označení | |
---|---|
u |
uživatel/majitel |
g |
skupina |
o |
ostatní |
a |
všechno |
Nebudeme používat oprávnění v číslech jako 755, ale ve znacích jako rwx. Podívejme se na příklad
Změna vlastnictví a skupiny v Linuxu
Pro změnu vlastnictví souboru/adresáře můžete použít následující příkaz:
chown user filename
V případě, že chcete změnit uživatele i skupinu pro soubor nebo adresář, použijte příkaz
chown user:group filename
Podívejme se na to v akci
V případě, že chcete změnit pouze vlastníka skupiny, použijte příkaz
chgrp group_name filename
"chgrp' znamená skupinu změn.
Tip
- Soubor /etc/group obsahuje všechny skupiny definované v systému
- K vyhledání všech skupin, kterých jste členem, můžete použít příkaz „skupiny“.
- Pomocí příkazu newgrp můžete pracovat jako člen jiné skupiny, než je vaše výchozí skupina
- Nemůžete mít 2 skupiny vlastnící stejný soubor.
- V Linuxu nemáte vnořené skupiny. Jedna skupina nemůže být podskupinou jiné
- x- Provedení adresáře znamená, že vám bude umožněno „vstoupit“ do adresáře a získat možný přístup k podadresářům
- Existují další oprávnění, která můžete nastavit pro soubory a adresáře, která budou popsána v pozdějším pokročilém kurzu
Shrnutí:
- Linux jako systém pro více uživatelů používá oprávnění a vlastnictví pro zabezpečení.
- V systému Linux existují tři typy uživatelů, viz. Uživatel, skupina a další
- Linux rozděluje oprávnění k souborům na čtení, zápis a spouštění označené r,w a x
- Oprávnění k souboru lze změnit příkazem 'chmod', který lze dále rozdělit na absolutní a symbolický režim
- Příkaz 'chown' může změnit vlastnictví souboru/adresáře. Použijte následující příkazy: chown user file nebo chown user:group file
- Příkaz 'chgrp' může změnit vlastnictví skupiny název souboru skupiny chrgrp
- Co znamená x – spuštění adresáře? Odpověď: Povolení „vstoupit“ do adresáře a získat možný přístup do podadresářů.