Linux chmod Przykład

W tym szybkim tutorialu, zobaczymy, jak możemy użyć polecenia chmod w Ubuntu maszyny, aby znaleźć, modyfikować i usuwać uprawnienia użytkownika z określonych plików, które istnieją w systemie plików użytkownika. Zagrajmy przez różne warunki tak, że możemy opanować podstawowe polecenia chmod, które mogą uczynić nasze codzienne życie łatwiejsze z Ubuntu.

Uprawnienia linuksowe

Uprawnienia linuksowe są wielki zestaw zasad, które są proste do zrozumienia, jeśli uchwycić prawa podstaw. Trzy główne punkty, które musimy zrozumieć, aby wiedzieć, jak działa Linux Uprawnienia są:

  • Element, dla którego uprawnienia zostały zdefiniowane
  • Jakie działania mogą być wykonywane z uprawnienia
  • Kto może wykonywać jakie działania

W systemie plików Linux są dwa podstawowe elementy:

  1. Katalogi
  2. Pliki

Istnieją trzy akcje, które można wykonać:

  1. Read
  2. Write
  3. Execute. Oprócz wykonywania skryptów, te same działania są potrzebne do tworzenia plików i innych folderów wewnątrz niego

Użytkownikami, którzy mogą wykonywać te działania są:

  1. Właściciel pliku
  2. Grupa właściciela pliku
  3. Użytkownicy, którzy nie są związani z grupą właściciela lub samym właścicielem

Aby zobaczyć uprawnienia związane z plikiem, wykonaj następujące polecenie:

ls -l

Oto co otrzymujemy z powrotem za pomocą tego polecenia:

Znajdź uprawnienia dla plików

Znajdź uprawnienia dla plików

W wyjściu, pierwsze 10 znaków przedstawia uprawnienia dla pliku:

  • Pierwszy znak, którym jest ’-’ w tym przypadku oznacza, że jest to plik. Dla katalogu, to byłoby 'd’.
  • Następnych dziewięć znaków reprezentują uprawnienia dla właściciela, grupy właściciela i innych, odpowiednio.

Zmiana uprawnień

Syntaktyka modyfikacji uprawnień pliku wygląda następująco:

chmod permissions file …

Oktalna reprezentacja uprawnień

Możemy przedstawić uprawnienia jako liczbę ósemkową. Na przykład, aby ustawić uprawnienia read, write & execute dla właściciela, uprawnienia read & write dla jego grupy i brak uprawnień dla innych, do pliku hello.txt, wykonamy następujące polecenie:

sudo chmod 760 hello.txt

Po wykonaniu powyższego polecenia i próbie odczytania pliku za pomocą konta niebędącego właścicielem przy użyciu następującego polecenia:

sudo -u notowner-user more hello.txt

Otrzymamy następujący błąd:

hello.txt: Permission denied

Ale skąd się wzięła ta liczba? Każda cyfra tej liczby reprezentuje zestaw uprawnień. Zobaczmy, jak je uzyskano:

  • 0: Oznacza brak uprawnień
  • 1: Oznacza uprawnienia do wykonywania
  • 2: Oznacza uprawnienia do zapisu
  • 4: Oznacza uprawnienia do odczytu

Dla przypisania uprawnień do odczytu, zapisu & i wykonywania dla właściciela przypisaliśmy mu liczbę 7(= 4 + 2 + 1). Zrozumiejmy to lepiej na przykładzie tabeli cyfr:

.

.

Number Binary Read Write Execute
0 000 NO NO NO
1 001 NIE NIE TAK
2 010 NIE NIE TAK NIE
3 011 NIE TAK TAK
4 100 TAK NIE NIE
5 101 TAK NIE TAK
6 110 TAK YES NO
7 111 YES YES YES

Powyższa tabela jest bardzo przejrzysta w tym, co każdy z nich reprezentuje w zakresie uprawnień do plików.

Odwzorowanie znaków dla uprawnień

Możemy przedstawić uprawnienia jako liczbę ósemkową. Na przykład, aby ustawić uprawnienia read, write & execute dla właściciela, uprawnienia read & write dla jego grupy oraz brak uprawnień dla innych, do pliku hello.txt, wykonamy następujące polecenie:

sudo chmod u=rwe,g=rw,o-rwx hello.txt

Aby dodać uprawnienia do istniejącego użytkownika, możemy również wykonać:

sudo chmod g+w hello.txt

W tym przypadku uprawnienia do zapisu były przypisane do grupy użytkownika właściciela pliku.

Recursywne zmiany uprawnień

Możemy również zmienić uprawnienia do pliku znajdującego się w określonym katalogu za pomocą jednego polecenia. Aby zmodyfikować uprawnienia każdego pliku i folderu w podanym katalogu na raz, użyj sudo chmod z -R:

sudo chmod 777 Katalog/*

Możemy zobaczyć następujące wyjście, które wyraźnie odzwierciedla zmianę uprawnień do plików:

Rekursywna zmiana uprawnień do plików

Rekursywna zmiana uprawnień do plików

Podsumowanie

W tej lekcji przyjrzeliśmy się, jak możemy zmodyfikować uprawnienia do plików i jeśli zajdzie taka potrzeba, zrobić to rekurencyjnie. Zrozumieliśmy podstawowe pojęcia związane z uprawnieniami w Linuksie, które mogą nam bardzo pomóc w naszej codziennej pracy.

Dodaj komentarz