Zrozumienie uprawnień i własności plików Linuksa

Zrozumienie uprawnień i własności plików Linuksa
System operacyjny Linux, który jest klonem UNIX, jest opracowywany do obsługi wielu użytkowników z wielozadaniowymi funkcjami. Oznacza to, że więcej niż jeden użytkownik może działać w tym działaniu w tym samym czasie, gdy komputer jest podłączony do sieci lub Internetu. Użytkownicy zdalni mogą łączyć się z komputerem zawierającym system operacyjny Linux za pośrednictwem SSH i pracować nad systemem. Bardzo ważne jest utrzymanie bezpieczeństwa, gdy wielu użytkowników pracuje w tym samym systemie operacyjnym w tym samym czasie. W systemie operacyjnym Linux istnieje wiele wbudowanych funkcji bezpieczeństwa, gdy dostęp lokalny lub zdalny jest przyznawany od różnych użytkowników. Użytkownicy Linux muszą zrozumieć koncepcję uprawnień do plików i własność pliku w celu zapewnienia bezpieczeństwa na poziomie systemu plików. Jak użytkownicy Linux mogą przeglądać i modyfikować uprawnienia, a własność pliku i folderów jest pokazana w tym artykule.

Wymagania wstępne:

Użytkownicy muszą znać sposób uruchamiania polecenia z terminala i podstawowej wiedzy na temat tworzenia plików i folderów w systemie operacyjnym Linux do uruchamiania i zrozumienia poleceń użytych w tym artykule.

Treść tego artykułu:

Poniższa koncepcja i zadania związane z zgodą i własnością pliku są omówione w tym artykule.

  1. Rodzaje użytkowników
  2. Typy pozwoleń
  3. Sprawdź uprawnienia
  4. Zmień zgodę za pomocą chmod
  5. Zmień własność za pomocą Chown

Rodzaje użytkowników:

W systemie operacyjnym Linux istnieją trzy typy użytkowników, który jest wspomniany poniżej.

Właściciel:

Użytkownik, który tworzy plik lub folder, jest właścicielem tego pliku lub folderu, a właściciel może zezwolić na inne typy użytkowników na dostęp do tego pliku i folderu. Jest oznaczony przez 'u'.

Grupa:

Każdy użytkownik może należeć do konkretnej grupy w Linux. Tak więc, gdy użytkownik tworzy plik lub folder, wówczas inni członkowie grupy, w których należą użytkownik, mogą uzyskać dostęp do pliku lub folderu. Gdy wielu użytkowników pracuje nad konkretnym folderem, lepiej jest utworzyć grupę z tymi użytkownikami, aby poprawnie uzyskać dostęp do tego folderu. Jest oznaczony przez 'G'.

Inni/wszyscy:

Wskazuje każdego użytkownika, który nie jest właścicielem konkretnego pliku lub folderu i nie należy do grupy właściciela właściciela lub folderu. Jeśli właściciel pliku lub folderu udziela żadnych uprawnień do dostępu innym, wówczas dowolni użytkownicy mogą wykonać ten konkretny dostęp. 'o„służy do oznaczenia innych użytkowników i”A„służy do oznaczenia wszystkich użytkowników.

Rodzaje uprawnień:

W systemie Linux istnieją trzy typy uprawnień, który jest wymieniony.

Czytać:

To uprawnienia służy do odczytu dowolnego pliku lub folderu. Jest oznaczony przez 'R„Gdy jest zdefiniowany przez charakter i jest oznaczony przez 4 Gdy jest zdefiniowany przez liczbę.

Pisać:

To uprawnienia służy do zapisywania, dołączania lub zastępowania dowolnego pliku lub folderu. Jest oznaczony przez 'w„Gdy jest zdefiniowana przez postać i jest oznaczona przez 2 Gdy jest zdefiniowany przez liczbę. Jeśli użytkownik musi napisać zgodę na plik, ale on/ona nie musi pisać uprawnień w folderze, w którym znajduje się plik, użytkownik może zmodyfikować tylko zawartość pliku, ale nie będzie mógł zmienić nazwy , przesuń lub usuń plik.

Wykonać:

To uprawnienia służy do wykonywania tylko dowolnego pliku. Jest oznaczony przez 'X„Gdy jest zdefiniowana przez postać i jest oznaczona przez 1 Gdy jest zdefiniowany przez liczbę.

Sprawdź uprawnienia:

Uruchom następujące polecenie, aby sprawdzić uprawnienia wszystkich plików i pasków bieżącego katalogu.

$ ls -l

Wyjście pokazuje siedem kolumn. Pierwsza kolumna wyświetla uprawnienia konkretnego pliku i folderów. Pierwsza kolumna ma cztery części zawierające 10 bitów. Pierwsza część zawiera 1 bit wskazujący plik lub folder lub łącze symboliczne. Folder jest wskazany przez postaćD„Plik jest wskazany przez„-”, a link jest wskazany przez postać”L'. Druga część zawiera 3 bity zawierające bity uprawnień dla właściciela pliku lub folderu. Trzecia część zawiera 3 bity zawierające bity uprawnień dla użytkowników grupy. Czwarta część zawiera 3 bity, które zawierają bity uprawnień dla innych użytkowników. Bity uprawnień bieżącej listy katalogów będą wyglądać jak pierwsza kolumna następującego obrazu.


Zgodnie z powyższymi bitami uprawnienia pierwszy bit wskazuje, że pokazuje uprawnienia pliku. Następne trzy bity wskazują, że właściciel pliku ma uprawnienia do odczytania, zapisu i dostępu. Następne trzy bity wskazują, że użytkownicy grupy przeczytali i zapisują uprawnienia. Ostatnie trzy bity wskazują, że inni użytkownicy mogą odczytać tylko plik. Jak można zmienić domyślne bity uprawnień za pomocą różnych poleceń Linux, pokazano w następnej części artykułu.

Zmień zgodę za pomocą CHMOD:

chmod Polecenie służy do zmiany bitów uprawnień pliku lub folderu. Pełna forma tego polecenia jest Aby zmienić tryb pliku. Właściciel pliku i użytkownika root może zmienić bity uprawnień pliku i folderu. Wszelkie pozwolenie na dowolnego użytkownika można dać i odwołać dla pliku i folderu za pomocą chmod.

Składnia:

CHMOD [Zezwolenie] [Ścieżka pliku lub folderu]

Bity uprawnień można zdefiniować w odniesieniach wyraźnie i binarnych, które są wyjaśnione w następnej części tego samouczka.

Ustaw uprawnienia w trybie symbolicznym:

'u','G', I 'o„Znaki są używane do typów użytkowników i”R','w', I 'X„Znaki są używane do typów uprawnień w trybie symbolicznym. W jaki sposób można ustawić uprawnienie dla pliku i folderu w następnej części samouczka. Poniższa tabela pokazuje listę symboli matematycznych używanych do ustawiania, resetowania i usuwania bitów uprawnień dla pliku lub folderu.

Operator Zamiar
+ Służy do dodawania lub przypisania uprawnień dla konkretnego pliku lub folderu.
= Służy do ponownego uzyskiwania uprawnień dla konkretnego pliku lub folderu.
- Służy do usuwania uprawnień z określonego pliku lub folderu.

Uprawnienia do pliku:

Niektóre przykłady dodawania i usuwania bitów uprawnień pliku pokazano w następujących przykładach. Uruchom następujące polecenia, aby sprawdzić bieżące bity uprawnień konkretnej ścieżki katalogu, /projekty/bin/ który istnieje w systemie. To polecenie zwraca długą listę plików i folderów w odwrotnej kolejności za pomocą bitów uprawnienia.

$ ls -lr

Dane wyjściowe pokazuje, że Projekty/kosz Katalog zawiera dwa foldery i siedem plików.

Przykład-1: Ustaw uprawnienie do właściciela pliku

Uruchom następujące polecenia, aby ustawić Wykonaj (x) pozwolenie na bit na właściciel (U) pliku, App.py, i sprawdź ponownie bity uprawnień po uruchomieniu chmod Komenda.

$ chmod u+x aplikacja.py
$ ls -lr

Poniższe dane wyjściowe pokazuje, że bity uprawnień dla App.py są zmienione na
- R W X R W - R - -. Wykonaj (x) Zezwolenie jest przypisane właścicielowi.

Przykład-2: Ustaw zapis i wykonaj uprawnienia dla dowolnego użytkownika pliku

Uruchom następujące polecenie, aby ustawić Napisz (w) I Wykonaj (x) uprawnienia dla Wszystko Użytkownicy pliku App2.py i sprawdź ponownie bity uprawnień po uruchomieniu chmod Komenda.

$ chmod a+wx app2.py
$ ls -lr

Poniższe dane wyjściowe pokazuje, że bity uprawnień dla App2.py są zmienione na
- R W x r w x r w x. pisarz) I Wykonaj (x) Uprawnienia są przypisane dla każdego użytkownika dla tego pliku.

Przykład-3: Zresetuj uprawnienia dla użytkowników grupy pliku

Uruchom następujące polecenie, aby zresetować uprawnienia Grupa Użytkownicy pliku App3.py i sprawdź ponownie bity uprawnień po uruchomieniu chmod Komenda. Tutaj Wykonaj (x) Bit uprawnienia zostanie ustawiony tylko dla Grupa użytkownicy i Przeczytaj (r) I pisarz) uprawnienia zostaną cofnięte.

$ chmod g = x app3.py
$ ls -lr

Poniższe dane wyjściowe pokazuje, że bity uprawnień dla App3.py są zmienione na
- r W - - - x r - -. Zezwolenie na wykonanie (x) jest przypisywane tylko dla użytkowników grupy.

Przykład-4: Uprawnienie odczytu jest odwołane od innych

Uruchom następujące polecenie, aby usunąć Przeczytaj (r) Uprawnienie bit na inni dla pliku App4.py i sprawdź ponownie bity uprawnień po uruchomieniu chmod Komenda.

$ CHMOD O-R App4.py
$ ls -lr

Poniższe dane wyjściowe pokazuje, że bity uprawnień dla App4.py są zmienione na
- r W - r w - - - -. Przeczytaj (r) Zezwolenie jest cofnięte dla innych.

Uprawnienia do folderu:

Bity uprawnień można ustawić, zresetować i usuwać dla folder.

Przykład-5: Ustaw, zresetuj i cofnij uprawnienia do folderu

Uruchom następujące polecenia, aby ustawić Napisz (x) Zezwolenie na inni, zresetować zgodę na Grupa użytkownicy, przypisując Przeczytaj (r) tylko pozwolenie i usuń Wykonaj (x) pozwolenie na właściciel folderu, szablony.

$ chmod o+x szablony
$ chmod g = r szablony
szablony $ chmod U-x
$ ls -lr

Poniższe dane wyjściowe pokazuje, że bity uprawnień dla szablony folder jest zmieniany na d r w - r - - r - x. Wykonaj (x) Ustal jest ustalone inni, Przeczytaj (r) Zezwolenie jest zresetowane dla Grupa użytkownicy i Wykonaj (x) Zezwolenie jest cofnięte dla właściciel.

Ustaw uprawnienia w trybie numerycznym:

Bity uprawnień pliku i folderu są ustawiane lub resetowane za pomocą trójcyfrowej liczby ósemkowej. W trybie symbolicznym jeden lub więcej bitów uprawnień można ustawić lub zresetować lub usunąć tylko dla określonego typu użytkownika. W trybie numerycznym bity uprawnień dla wszystkich trzech rodzajów użytkowników są zmieniane przez jedno polecenie. Poniższa tabela pokazuje różne typy uprawnień, które są zdefiniowane przez wartości liczbowe.

Wartość numeryczna Typ uprawnienia
0 Wskazuje to na brak zgody.
1 Wskazuje wyłącznie zgodę na wykonanie (x).
2 Wskazuje tylko pozwolenie na zapis (w).
3 Wskazuje uprawnienia zapisu (w) i wykonania (x).
4 Wskazuje tylko uprawnienia odczytu (r).
5 Wskazuje uprawnienia odczytu (r) i wykonania (x).
6 Wskazuje uprawnienia odczytu (r) i zapisu (w).
7 Wskazuje wszystkie trzy uprawnienia (odczyt (r), zapis (w) i wykonaj (x)).

Zezwolenie na plik:

Niektóre przykłady do ustawiania lub zresetowania bitów uprawnień pliku za pomocą wartości liczbowych są wyjaśnione w następnej części tego artykułu.

Przykład -1: Ustaw ' - r w x r - x - w -' uprawnienia do pliku

$ CHMOD 752 App5.py
$ ls -l

Pokazuje to następujące dane wyjściowe Przeczytaj (r), pisarz) I Wykonaj (x) Uprawnienia są ustalane dla właściciel App5.py. Przeczytaj (r) I Wykonaj (x) uprawnienia są ustalane dla Grupa Użytkownicy App5.py. Napisz (w) Zezwolenie na dowolny użytkownik APP5.py.

Przykład -2: Ustaw ' - r w x r - - - - -' uprawnienia do pliku

$ CHMOD 740 App6.py
$ ls -lr

Pokazuje to następujące dane wyjściowe Przeczytaj (r), pisarz) I Wykonaj (x) Uprawnienia są ustalane dla właściciel App6.py. Przeczytaj (r) Ustal jest ustalone Grupa Użytkownicy App6.py. Nie ustalono żadnego pozwolenia dla żadnego użytkownika APP6.py.

Przykład -3: Set ' - r - - - - - - - -' uprawnienia do pliku

$ CHMOD 400 App5.py
$ ls -lr

Pokazuje to następujące dane wyjściowe Przeczytaj (r) Zezwolenie jest ustawione tylko dla właściciela, a inne uprawnienia innych użytkowników są usuwane dla pliku, App5.py.

Przykład -4: Set ' - r - - r - - r - -' uprawnienia do pliku

$ CHMOD 444 App6.py
$ ls -lr

Pokazuje to następujące dane wyjściowe Przeczytaj (r) Zezwolenie dotyczy wszystkich rodzajów użytkowników, a inne uprawnienia są uchylone dla pliku, App6.py.

Przykład-5: Ustaw „- r w x r w x r w x 'uprawnienia do pliku

$ CHMOD 777 App7.py
$ ls -lr

Pokazuje to następujące dane wyjściowe Przeczytaj (r), pisarz), I Wykonaj (x) Uprawnienia są ustalane dla wszystkich rodzajów użytkowników APP7.py.

Zezwolenie na folder:

$ chmod 442 szablony
$ ls -lr

Pokazuje to następujące dane wyjściowe Przeczytaj (r) Zezwolenie na użytkowników właściciela i grupy oraz Napisz (w) Zezwolenie jest ustawione dla każdego użytkownika folderu, szablony.

Zmień własność za pomocą Chown:

Chown Polecenie służy do zmiany własności użytkownika i grupy dla dowolnego pliku. To polecenie może być używane na różne sposoby do zmiany własności użytkowników.

  • Gdy używany jest tylko właściciel, czyli nazwa użytkownika lub identyfikator tego polecenia, wówczas właściciel pliku zostanie zmieniony, a informacje o grupie pozostaną niezmienione.
  • Kiedy właściciel jest używany z dwukropkiem (:) i nazwą grupy z tym polecenie.
  • Gdy właściciel jest używany z dwukropkiem (:) tylko bez żadnej nazwy grupy z tym poleceniem, wówczas własność pliku zostanie zmieniona przez właściciela i grupę właściciela.
  • Gdy nazwa grupy jest używana z dwukropkiem (:) tylko bez właściciela z tym poleceniem, wówczas własność pliku zostanie zmieniona tylko dla grupy.
  • Kiedy dwukropek (:) jest używany tylko bez żadnego właściciela i nazwy grupy z tym poleceniem, wówczas własność pozostanie niezmieniona.

Składnia:

Chown [opcja] [właściciel] [: [grupa]]

Poniżej podano niektóre opcje tego polecenia, które można użyć do zmiany własności pliku.

Opcja Zamiar
-od = current_owner: current_group Służy do zmiany właściciela i/lub grupy każdego pliku tylko wtedy, gdy obecny właściciel i/lub grupa będą pasować do zdefiniowanego właściciela i grupy.
-C, -NKANGES Tworzy raport, jeśli dokonana jest jakakolwiek zmiana własności.
-f, -silent, -quiet Usunie większość komunikatów o błędach.
-R, -rekusive Będzie działać na plikach i katalogach rekurencyjnie.
-L Przemierzy każdy symboliczny link do katalogu.
-P Nie przemierzy żadnych symbolicznych linków.
-pomoc Wyświetli informacje o pomocy.
-wersja Wyświetla informacje o wersji.

Zostań superuserem:

Musisz zostać superuserem do wykonywania Chown Komenda. Możesz być superuser przez krótki czas, wykonując następujące polecenia, ale musisz znać hasło rootowe dla konkretnego polecenia.

'Su' Komenda:
Pełna forma Su jest zastąpić użytkownika, I to polecenie można użyć do uzyskania uprawnień Superuser do wykonywania niektórych zadań administracyjnych. Musisz podać hasło root po wykonaniu tego polecenia, aby uzyskać uprawnienia root. Po wykonaniu polecenia zostanie utworzona nowa sesja powłoki dla superuser. Sesja superuseru można zakończyć, wpisując Wyjście Komenda.

'sudo' Komenda:
Alternatywa Su polecenie jest sudo Komenda. Jeden lub więcej użytkowników można przyznać przywilej główny za pomocą tego polecenia. Obecny użytkownik może otworzyć powłokę główną Su polecenie za pomocą opcji -i z sudo Komenda. Wyjście Polecenie kończy powłokę root i powraca do powłoki bieżącego użytkownika.
Konto użytkownika root jest domyślnie wyłączone na Ubuntu. Więc, sudo Polecenie jest używane tutaj, aby uzyskać uprawnienia root i uruchomić polecenie Chown, aby ustawić własność pliku.

Przykład-1: użycie chown z właścicielem

$ ls -l
$ sudo chown yesmin c1.py
$ ls -l

Pierwszy LS polecenie pokazuje bieżącą własność plików, które istnieją w kod teczka. Tutaj, Fahmida jest właścicielem pliku C1.py plik przed uruchomieniem Chown Komenda. Kiedy LS Polecenie jest wykonywane po uruchomieniu polecenia Chown, wówczas użytkownik jest przekazywany własność, Tak, A nazwa grupy pozostała niezmieniona.

Przykład-2: użycie Chown z właścicielem i dwukropkiem (:)

$ ls -l
$ sudo chown yesmin: c2.py
$ ls -l

Pierwszy LS polecenie pokazuje obecną własność właściciela i grupę C2.py plik. Tutaj nazwa własności użytkownika i grupy C2.Py jest Fahmida Przed uruchomieniem Chown Komenda. Kiedy LS Polecenie jest wykonywane po uruchomieniu polecenia, wówczas własność użytkownika jest podawana Tak, a własność grupy jest przekazywana grupie właściciela o nazwie Tak.

Przykład-3: Zastosowanie Chown z grupą, a następnie Colon (:)

$ ls -l
$ sudo chown: pygroup c3.py
$ ls -l

Pierwszy LS polecenie pokazuje obecną własność właściciela i grupę C3.py plik. Tutaj nazwa własności użytkownika i grupy C3.py Jest Fahmida Przed uruchomieniem polecenia Chown. Kiedy LS Polecenie jest wykonywane po uruchomieniu polecenia, wówczas własność grupy jest przekazywana grupie właściciela o nazwie Pygroup, a nazwa własności użytkownika pozostaje niezmieniona.

Przykład-4: użycie chown z użytkownikiem i grupą, a następnie dwukropek (:)

$ ls -l
$ sudo chown fahmida: pygroup c2.py
$ ls -l

Pierwszy LS polecenie pokazuje obecną własność właściciela i grupę C2.py plik. Tutaj nazwa własności użytkownika i grupy C2.py Jest Tak Przed uruchomieniem Chown Komenda. Kiedy LS Polecenie jest wykonywane po uruchomieniu polecenia, wówczas własność użytkownika jest podawana Fahmida, a własność grupy jest przekazywana Pygroup.

Przykład-5: użycie chown z dwukropkiem (:)

$ ls -l
$ sudo chown: c3.py
$ ls -l

Pierwszy LS polecenie pokazuje obecną własność właściciela i grupę C3.py plik. Tutaj własność użytkownika jest Fahmida, a własność grupy jest Pygroup z C2.py Przed uruchomieniem Chown Komenda. Kiedy LS Polecenie jest wykonywane po uruchomieniu polecenia, wówczas własność zarówno użytkownika, jak i grupy pozostaje niezmieniona.

Wniosek:

Użytkownicy Linux mogą zmienić zgodę i własność pliku na wiele sposobów, które są wyświetlane przy użyciu różnych poleceń Linux w tym artykule. W Linux istnieje inne polecenie, aby zmienić własność użytkowników grupy tylko dla pliku. Polecenie jest CHGRP To nie jest tutaj wyjaśnione. Zadanie CHGRP polecenie można wykonać łatwo za pomocą Chown Komenda. Mam nadzieję, że koncepcja zgody pliku i własność pliku i folderu w systemie operacyjnym Linux zostanie usunięta po przeczytaniu tego artykułu.