Sprzęt komputerowy

Podstawowe uprawnienia systemu Linux: ubuntu / debian with chmod

Spisu treści:

Anonim

Uprawnienia są jednym z najważniejszych aspektów Linuksa (właściwie wszystkich systemów opartych na Uniksie). Są one wykorzystywane do różnych celów, ale służą głównie do ochrony systemu i plików użytkowników, dlatego polecenie CHMOD pozwala nam modyfikować dowolne uprawnienia.

Indeks treści

Zalecamy przeczytanie o naszych przewodnikach:

  • Debian vs Ubuntu. Najlepsze aplikacje do poprawnej poczty e-mail w systemie Linux. Menedżer pakietów Linux: PACMAN, YUM, APT. Lepsze dystrybucje linuksowe. Utwórz bootowalny USB z Ubuntu 16.10.

Podstawowe uprawnienia w systemie Linux, Ubuntu, Debian z CHMOD

Manipulowanie uprawnieniami jest jednocześnie ciekawą, ale złożoną czynnością. Ale takiej złożoności nie należy interpretować jako trudności, ale jako możliwość radzenia sobie z szeroką gamą konfiguracji, która pozwala na tworzenie różnych rodzajów ochrony plików i katalogów.

Jak zapewne już wiesz, tylko superużytkownik (root) ma nieograniczoną liczbę akcji w systemie, właśnie dlatego, że to on jest odpowiedzialny za konfigurację, administrację i utrzymanie Linuksa. Od tego zależy na przykład określenie, co każdy użytkownik może wykonać, utworzyć, zmodyfikować itp.

Oczywiście sposobem określania, co może zrobić każdy użytkownik systemu, jest określanie uprawnień. Dlatego w tym artykule zobaczysz, jak ustawić uprawnienia do plików i katalogów, a także je zmodyfikować.

Opis uprawnień

  • drwx ——- rw-rw-r–

Powyższe wiersze reprezentują dane wyjściowe napisanego polecenia (ls -l), aby wyświetlić katalog i jego uprawnienia. Dwa wyświetlane elementy („drwx——” i „-rw-rw-r–”) to sposób wyświetlania uprawnień do katalogów i plików. To właśnie ten element, zwany łańcuchem, będziemy studiować.

Warto wspomnieć, że Linux traktuje wszystkie katalogi jak pliki, więc uprawnienia dotyczą zarówno obu. Uprawnienia te można podzielić na cztery części, aby wskazać: typ, właściciela, grupę i inne uprawnienia.

Pierwszy znak ciągu wskazuje typ pliku: jeśli jest to „d”, oznacza katalog, jeśli jest „-”, to jest równoważne plikowi. Mogą jednak pojawiać się inne znaki wskazujące na inne typy plików, jak pokazano w poniższej tabeli:

  • d: katalog b: plik bloku c: plik znaków specjalnych p: kanał s: gniazdo -: normalny plik

Zauważ teraz, że w pozostałej części ciągu jest jeszcze 9 znaków. Wiesz, co oznacza pierwszy. Pozostałe są podzielone na trzy grupy po trzy, każda reprezentująca odpowiednio właściciela, grupę i wszystkie pozostałe. Biorąc linię 2 przykładu (-rw-rw-r–), odkładając na bok pierwszy znak i dzieląc pozostały ciąg na 3 części, wyglądałoby to tak:

  • rw-: pierwsza część oznacza uprawnienia właściciela. rw-: druga część oznacza uprawnienia grupy, do której należy użytkownik. r–: trzecia część oznacza uprawnienia dla innych użytkowników.

Rozumiem, co oznaczają te znaki (r, w, x, -). Istnieją w zasadzie trzy rodzaje uprawnień: odczyt, zapis i wykonywanie.

Odczyt pozwala użytkownikowi odczytać zawartość pliku, ale go nie zmieniać. Zapis pozwala użytkownikowi modyfikować plik. Wykonanie, jak sama nazwa wskazuje, pozwala użytkownikowi wykonać plik, jeśli jest wykonywalny.

Ale zdarza się, że uprawnienia nie działają w oderwaniu, to znaczy, że użytkownik ma uprawnienia do odczytu, zapisu lub wykonania. Uprawnienia działają razem. Oznacza to, że każdy plik / katalog ma trzy ustalone uprawnienia, od właściciela zależy, które z tych uprawnień zostaną włączone dla użytkowników, czy nie.

Może się zdarzyć, że pewna liczba użytkowników ma uprawnienia do modyfikowania pliku, ale inni na przykład nie. Stąd potrzeba korzystania z grup. W takim przypadku grupa otrzyma uprawnienia do zapisu tego pliku, aby każdy użytkownik członkowski mógł zmienić plik. Należy pamiętać, że w przypadku uprawnień wymagana jest ostrożność. Na przykład ten, który zgłasza, że użytkownik ma uprawnienia do zapisu, jeśli nie ma włączonych uprawnień do odczytu .

Teraz, gdy znamy znaczenie podziałów łańcucha, zrozummy, co oznaczają litery r, w, x i znak -

  • r: oznacza uprawnienie do odczytu w: oznacza pozwolenie na zapis x: oznacza pozwolenie na wykonanie - oznacza wyłączone uprawnienie.

Kolejność wyświetlania uprawnień to rwx. W ten sposób zrozumiemy łańcuch naszego przykładu, dzieląc go na 4 części:

Wiersz 1:

  • drwx ——– to katalog (d) - właściciel może go czytać, modyfikować i wykonywać (rwx) - grupa nie może go czytać, modyfikować ani wykonywać (-) - inni użytkownicy nie mogą go czytać, modyfikować ani wykonywać (-).

Wiersz 2:

  • -rw-rw-r–– jest plikiem (-) - właściciel może go odczytać i zmodyfikować, ale go nie wykonać. Zauważ, że ten plik nie jest wykonywalny, wydaje się, że uprawnienie do wykonywania jest wyłączone (rw -) - grupa ma identyczne uprawnienia do właściciela (rw -) - inni użytkownicy mają tylko uprawnienia do odczytu pliku, ale nie mogą go modyfikować ani wykonywać (r–).

Poniższa tabela pokazuje najczęstsze uprawnienia:

  • - - -: brak uprawnień–: uprawnienie do odczytu r-x: odczyt i wykonanie r-: odczyt i zapis rwx: odczyt, zapis i wykonanie

Ustawianie uprawnień za pomocą chmod

W poprzednich tematach uzyskałeś przynajmniej pojęcie o uprawnieniach i ich znaczeniu w systemie Linux. Nadszedł czas, aby nauczyć się konfigurować uprawnienia, a odbywa się to za pomocą komendy chmod (zmiana trybu). Ciekawym szczegółem tego polecenia jest to, że możesz skonfigurować uprawnienia na dwa sposoby: symbolicznie i numerycznie. Najpierw przyjrzymy się metodzie symbolicznej.

Aby uzyskać wyraźniejszy widok formy symbolicznej za pomocą chmod, wyobraź sobie, że takie symbole znajdują się na dwóch listach, a ich kombinacja generuje pozwolenie:

Lista 1

u: użytkownik

g: grupa

O (litera „o”): inne

do: wszystkich

Lista 2

r: czytanie

w: pisanie

x: wykonanie

Aby połączyć symbole tych dwóch list, używa się operatorów:

+ (znak plus): dodaj uprawnienie

- (znak minus): usuń pozwolenie

= (znak równości): ustawienie uprawnień

Aby pokazać, jak odbywa się to łączenie, załóżmy, że chcesz dodać uprawnienia zapisu do pliku test.txt dla użytkownika. Wprowadzone zamówienie to:

chmod u + w test.txt

„U” oznacza, że ​​użytkownik otrzymuje uprawnienia, znak plus (+) oznacza, że ​​zezwolenie zostało dodane, a „w” oznacza, że ​​udzielono uprawnienia do zapisu.

W przypadku, gdy chcesz przyznać grupie uprawnienia do odczytu i zapisu, polecenie będzie następujące:

chmod g + rw test.txt

Załóżmy teraz, że plik test.txt powinien mieć wszystkie uprawnienia dostępne dla grupy. Następnie możemy użyć:

chmod g = rwx test.txt

Wskazówka: twórz pliki i katalogi. Następnie spróbuj połączyć uprawnienia z chmod. Pomoże ci to w zrozumieniu tego zasobu.

Używanie chmod z metodą numeryczną

Używanie chmod z wartościami liczbowymi jest dość praktycznym zadaniem. Zamiast używać liter jako symboli dla każdego uprawnienia, używane są cyfry. Jeśli zezwolenie jest włączone, przypisywana jest mu wartość 1, w przeciwnym razie przypisywana jest wartość 0.

POLECAMY Najlepsze aplikacje biurowe dla Ubuntu

Zatem ciąg uprawnień r-xr—– w postaci numerycznej będzie wynosił 101100000. Ta kombinacja 1 i 0 jest liczbą binarną. Ale nadal musimy dodać formę dziesiętną (czyli liczby od 0 do 9). W tym celu należy pamiętać o poniższej tabeli:

Pozwolenie Binarny Dziesiętny
- - - 000
- -x 001 1
-w- 010 2)
-wx 011 3)
r– 100 4
rx 101 5
rw- 110 6
rwx 111 7

Jeśli nie znasz systemu binarnego, musisz się zastanawiać, co ta tabela 0 i 1 ma wspólnego z liczbami od 0 do 7. Ponieważ system binarny działa tylko z liczbami 0 i 1 (liczba dziesiętna działa z liczbami 0 do 9, czyli system numeracji, którego używamy w naszym codziennym życiu), sekwencja reprezentuje wartości. Tak więc w poprzedniej tabeli kolumna „Binarna” pokazuje, jak wyglądają wartości binarne liczb od 0 do 7 w systemie dziesiętnym.

Nadszedł czas, aby wyjaśnić wyjaśnienie poprzedniego akapitu kolumną „Pozwolenie”. Aby to zilustrować, użyjemy uprawnienia rw-, którego wartość binarna wynosi 110, co z kolei w systemie dziesiętnym odpowiada liczbie 6. Zatem zamiast używać rw- lub 110 do utworzenia uprawnienia, po prostu używamy liczba 6. Zauważ, że w metodzie numerycznej używamy tylko jednej cyfry do przedstawienia jednego uprawnienia zamiast trzech. Zatem łańcuch uprawnień r - r - r– może być reprezentowany przez 444, ponieważ r– w systemie dziesiętnym jest równe 4. Spójrz na następujący przykład:

chmod 600 notes.txt

W ten sposób uprawnienia rw ——- są nadawane plikowi notes.txt, ponieważ 6 jest równoważne rw-, a 0 jest równoważne -. Ponieważ zero pojawia się dwukrotnie, wówczas tworzona jest wartość 600.

Inne przykłady:

chmod 755 test.txt

Przypisuj uprawnienia do odczytu, zapisu i wykonywania dla właściciela pliku (7), odczytu i wykonania dla użytkowników tej samej grupy (5), a także dla innych użytkowników (5).

chmod 640 test.txt

Przypisz uprawnienia do odczytu i zapisu (6) dla właściciela, tylko do odczytu dla użytkowników w tej samej grupie (4) i brak uprawnień dla innych użytkowników (0).

Uruchom powyższe polecenie za pomocą pliku testowego, a następnie wpisz ls -l notes.txt, aby zobaczyć, co się pojawi (notes.txt powinien zostać zastąpiony plikiem, którego używasz). Poniższa tabela pokazuje listę najczęściej używanych konfiguracji:

- - - - - - - - - 000
r ——– 400
r - r - r– 444
rw—— 600
rw-r - r– 644
rw-rw-rw- 666
rwx—— 700
rwxr-x— 750
rwxr-xr-x 755
rwxrwxrwx 777

Ostatnie trzy uprawnienia w tabeli są powszechnie używane dla programów i katalogów.

Ostatnie szczegóły

Jak widzieliście, o wiele bardziej praktyczne jest użycie chmod z metodą numeryczną. Ale mogłeś się pomylić z całym tym schematem uprawnień.

Chodzi o to, że w systemach uniksowych uprawnienia są jednym z najbardziej złożonych aspektów. Taka złożoność jest równoważna efektywności wykorzystania pozwoleń. Najlepszym sposobem na zrozumienie uprawnień jest szkolenie. Ćwicz, utwórz uprawnienia i zobacz wyniki.

Sprzęt komputerowy

Wybór redaktorów

Back to top button