Przejdź do głównej treści
eLearner.app
Moduł 4 · Lekcja 1 z 28/11 w kursie~12 min
Lekcje modułu (1/2)

Zarządzanie uprawnieniami (chmod)

W systemie Linux dostęp do plików i katalogów jest regulowany przez system uprawnień. Każdy plik/katalog należy do użytkownika będącego właścicielem oraz do grupy użytkowników.

Uprawnienia dzielą się na trzy kategorie odbiorców:

  1. User (u): Właściciel pliku.
  2. Group (g): Członkowie grupy powiązanej z plikiem.
  3. Others (o): Wszyscy pozostali użytkownicy w systemie.

Dla każdej kategorii istnieją trzy rodzaje dozwolonych lub zabronionych działań:

  • Read (r): Odczyt pliku lub wylistowanie zawartości katalogu.
  • Write (w): Modyfikacja pliku lub tworzenie/usuwanie plików w katalogu.
  • Execute (x): Uruchomienie pliku (np. skryptu) lub wejście do katalogu.

Typowy zapis wyświetlany przez ls -l: -rwxr-xr-x. Pierwszy znak wskazuje typ (np. - dla pliku, d dla katalogu), po którym następują trzy grupy po trzy znaki dla user, group i others.


Modyfikowanie uprawnień: chmod

Polecenie chmod (change mode) umożliwia zmianę uprawnień do pliku. Istnieją dwa główne sposoby ich określania:

1. Tryb symboliczny

Używa liter i operatorów (+, -, =) do dodawania, usuwania lub ustawiania uprawnień:

Bash
chmod u+x script.sh    # Dodaje uprawnienie do uruchamiania (x) dla właściciela (u)
chmod g-w file.txt     # Usuwa uprawnienie do zapisu (w) dla grupy (g)
chmod a+r file.txt     # Sprawia, że plik jest czytelny dla każdego (all: u, g, o)

2. Tryb ósemkowy (numeryczny)

Używa trzech cyfr ósemkowych od 0 do 7, gdzie każda cyfra reprezentuje sumę uprawnień danej kategorii (r=4, w=2, x=1):

  • 7 = rwx (4 + 2 + 1)
  • 6 = rw- (4 + 2)
  • 5 = r-x (4 + 1)
  • 4 = r-- (4)
  • 0 = --- (brak uprawnień)
Bash
chmod 755 script.sh    # Właściciel: rwx (7), Grupa: r-x (5), Inni: r-x (5)
chmod 600 private.key  # Właściciel: rw- (6), Grupa: --- (0), Inni: --- (0)

Spróbuj sam

Ejercicio 1: Imposta permessi standard

Ćwiczenie#linux.m4.l1.e1
Próby: 0Ładowanie...

Ustaw uprawnienia do pliku 'script.sh' tak, aby właściciel mógł czytać, pisać i uruchamiać plik (rwx), podczas gdy grupa i inni mogli go tylko czytać i uruchamiać (r-x). Użyj trybu ósemkowego.

Ładowanie edytora...
Pokaż wskazówkę

Kod ósemkowy dla rwx to 7 (4+2+1), natomiast dla r-x to 5 (4+1). Użyj więc chmod 755.

Rozwiązanie dostępne po 3 próbach

Ejercicio 2: Proteggi una chiave privata

Ćwiczenie#linux.m4.l1.e2
Próby: 0Ładowanie...

Zmień uprawnienia pliku 'private.key', aby był czytelny i modyfikowalny (rw-) tylko dla właściciela, usuwając jakikolwiek dostęp dla grupy i innych (---).

Ładowanie edytora...
Pokaż wskazówkę

Użyj chmod z kodem ósemkowym 600 (właściciel ma 4+2, grupa 0, inni 0).

Rozwiązanie dostępne po 3 próbach

Ejercicio 3: Rendi eseguibile un file per tutti

Ćwiczenie#linux.m4.l1.e3
Próby: 0Ładowanie...

Nadaj plikowi 'runner.sh' uprawnienia do uruchamiania dla wszystkich kategorii użytkowników za pomocą trybu symbolicznego (a+x).

Ładowanie edytora...
Pokaż wskazówkę

Użyj składni chmod a+x, po której podasz nazwę pliku.

Rozwiązanie dostępne po 3 próbach