KWALIFIKACJA INF2 - CZERWIEC 2022 (test 2)

PYTANIE NR 16.
Polecenie
chmod +x test 
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Opcja +x w chmod dodaje prawo wykonywania dla pliku. Gdy nie podano klasy u/g/o, zmiana dotyczy domyślnie a (właściciel, grupa i inni), z uwzględnieniem maski umask. Dlatego plik "test" staje się uruchamialny dla każdego użytkownika.

Pełne wyjaśnienie:

Polecenie chmod +x test używa trybu symbolicznego programu chmod. Symbol +x oznacza "dodaj prawo wykonywania (execute)". W kontekście zwykłego pliku jest to ustawienie bitu wykonywania, dzięki któremu plik może być uruchamiany (np. jako skrypt powłoki lub plik binarny).

Ważny szczegół: jeśli w zapisie symbolicznym nie podasz klasy uprawnień (u – właściciel, g – grupa, o – inni), to zmiana dotyczy domyślnie a (czyli wszystkich klas). W praktyce jest to równoważne chmod a+x test, z zastrzeżeniem, że niektóre systemy uwzględniają również bieżącą maskę umask przy wyliczaniu wyniku operacji.

Dlatego odpowiedź "pozwala na uruchomienie pliku test przez każdego użytkownika" jest poprawna: po dodaniu bitu x dla a każdy (właściciel, członkowie grupy oraz pozostali użytkownicy) otrzymuje możliwość uruchomienia pliku.

Pozostałe odpowiedzi są błędne, bo opisują inne prawa lub inny obiekt działania:

  • Stwierdzenie o "nadaniu prawa do odczytu właścicielowi" dotyczy bitu r, a nie x. Polecenie +x nie dodaje odczytu.
  • Teza o "odebraniu wszystkim prawa do zapisu" wymagałaby modyfikacji bitu w (np. -w), a tutaj zmieniany jest wyłącznie bit wykonywania.
  • Opis "pełnej kontroli nad wszystkimi plikami w katalogu test" sugeruje działanie rekursywne na katalogu (np. opcja -R) i dodatkowo nadanie wielu praw. Samo chmod +x test dotyczy wskazanego obiektu o nazwie test i dodaje tylko wykonywanie.

Wskazówka egzaminacyjna: zawsze rozdziel w głowie trzy elementy zapisu chmod: kto (u/g/o/a), co robi (+/-/=), oraz jakie prawo (r/w/x). Brak "kto" oznacza zwykle "wszyscy".

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Dodaje uprawnienie wykonywania (x) do pliku o nazwie test. W zapisie symbolicznym brak wskazania klasy (u/g/o) oznacza zwykle działanie dla wszystkich (a), więc plik staje się uruchamialny dla właściciela, grupy i innych użytkowników.
Najczęściej używa się ls -l. Zobaczysz ciąg typu -rwxr-xr-x. Literka x w odpowiednich miejscach oznacza możliwość uruchomienia pliku przez właściciela, grupę lub innych. Jeśli x nie ma, plik nie jest wykonywalny.
W trybie symbolicznym chmod ma składnię "kto operator co". Gdy pominiesz "kto" (u, g, o), przyjmowane jest domyślnie a (all). W efekcie chmod +x jest interpretowane jak chmod a+x, czyli zmiana obejmuje wszystkie klasy.
Nie. +x dotyczy wyłącznie bitu wykonywania. Aby dodać odczyt lub zapis, trzeba użyć odpowiednio +r lub +w (np. chmod u+rw). Częsty błąd to zakładanie, że "+" oznacza "pełne uprawnienia".
chmod a+x dodaje wykonywanie dla wszystkich (właściciel, grupa, inni). chmod u+x ogranicza zmianę tylko do właściciela pliku. W praktyce dla skryptów administracyjnych często wystarcza u+x, a dla narzędzi udostępnianych wielu osobom bywa potrzebne a+x.
Używa się operatora -x, np. chmod a-x test (dla wszystkich) albo chmod o-x test (tylko dla innych). Weryfikację wykonasz poleceniem ls -l, gdzie brak x oznacza brak możliwości uruchomienia.
Nie do końca. Dla pliku x oznacza uruchamianie. Dla katalogu x oznacza możliwość "wejścia" do katalogu i przechodzenia przez niego (traverse). Dlatego znaczenie bitu x zależy od typu obiektu, choć składnia chmod jest taka sama.
Do zmian rekurencyjnych stosuje się zwykle opcję -R, np. chmod -R a+x katalog. Trzeba uważać, bo rekurencja obejmie wiele obiektów. Na egzaminie rozpoznaj, że samo chmod +x test bez -R dotyczy tylko jednego wskazanego pliku.
Bit x to warunek konieczny, ale nie zawsze wystarczający. Plik może mieć złą ścieżkę do interpretera (np. brak poprawnego "shebang"), może być uszkodzony albo system może blokować wykonanie (np. brak praw do katalogu). Warto też sprawdzić właściciela i typ pliku.
Najczęstsze pomyłki to: mylenie x z r lub w, zakładanie że "+" daje pełne prawa, ignorowanie klas u/g/o oraz dopisywanie w myślach rekursji mimo braku -R. Pomaga analiza składni: kto +/−/= jakie uprawnienie.
info

Statystycznie 59% uczniów zna prawidłową odpowiedź. średnie

Eksperci podkreślają: "Opcja +x w chmod dodaje prawo wykonywania dla pliku."

Źródła:

  • man7.org, "chmod(1) — Linux manual page" (sekcja o trybie symbolicznym i klasach u/g/o/a): https://man7.org/linux/man-pages/man1/chmod.1.html (dostęp 2026-03-01)
  • GNU Coreutils, "chmod invocation" (opis składni symbolicznej i znaczenia +x): https://www.gnu.org/software/coreutils/manual/html_node/chmod-invocation.html (dostęp 2026-03-01)
  • man7.org, "umask(2) — Linux manual page" (opis maski uprawnień i jej wpływu): https://man7.org/linux/man-pages/man2/umask.2.html (dostęp 2026-03-01)

Materiały:

  • Dokumentacja systemowa: man chmod
  • Dokumentacja: man umask
  • Materiały o uprawnieniach POSIX (rwx, u/g/o, a) w kursach administracji Linux

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego