logo

Polecenie chmod w systemie Linux z przykładami

ThechmodPolecenie (tryb zmiany) w systemie Linux/UNIX służy do ustawiania lub modyfikowania uprawnień do plików i katalogów. Każdy plik w systemie Linux ma właściciela, grupę i powiązane uprawnienia, które określają, kto może czytać, zapisywać i wykonywać plik. Używaniechmod Administratorzy i użytkownicy mogą kontrolować te uprawnienia, aby zapewnić odpowiedni dostęp i bezpieczeństwo. Rozważmy przykład

Użyj polecenia chmod, nadając uprawnienia 745

Rozkaz:

chmod 745 newfile.txt

Wyjście:



chmod' title=

Podział-rwxr--r-x:

  • Właściciel (7):rwx> czytaj, pisz, wykonaj
  • Grupa (4):r--> tylko do odczytu
  • Inni (5):r-x> przeczytaj i wykonaj

Oto plik:

  • W pełni dostępny (odczyt/zapis/wykonanie) przez właściciela
  • Tylko do odczytu dla grupy
  • Przeczytaj i wykonaj dla innych

Składnia polecenia chmod

chmod [options] [mode] [File_name] 

Tutaj

  • Opcje: Opcjonalne flagi modyfikujące zachowaniechmodrozkaz.
  • Tryb: Uprawnienia, które należy ustawić, są reprezentowane przez trzycyfrową liczbę ósemkową lub zapis symboliczny (np. u=rwgo=rx).
  • Nazwa_pliku: Nazwa pliku lub katalogu, dla którego mają zostać zmienione uprawnienia.

Opcje dostępne w poleceniu chmod Linux

Oto kilka przydatnych opcjichmodPolecenie w Linuksie

TrybWłaścicielGrupaInniTypowe zastosowanie skryptów
700 rwx------Skrypt prywatny (tylko Ty możesz uruchomić/edytować).
711 rwx--X--XTylko plik wykonywalny/przejściowy; treść nieczytelna.
744 rwxR--R--Edytujesz i uruchamiasz; inni mogą czytać (nie wykonywać).
750 rwxr-x---Plik wykonywalny tylko dla zespołu; ukryte przed innymi.
754 rwxr-xR--Exec dla grupy tylko do odczytu dla innych.
755 rwxr-xr-xCzęsto: każdy może uruchomić, tylko Ty edytujesz.
775 rwxrwxr-xUdostępnione w grupie (zarówno właściciel, jak i grupa mogą edytować/uruchamiać).

Notatka: Opcje w `chmod` są zasadniczo używane do zbiorczego wprowadzania zmian i modyfikowania uprawnień do wielu plików lub katalogów jednocześnie.

Kluczowe typy uprawnień:

W Linuksie uprawnienia określić, kto ma kontrolę nad plikiem lub katalogiem. Te uprawnienia określają, kto może czytać (uzyskiwać dostęp), pisać (edytować lub usuwać) lub wykonywać (uruchamiać) plik w oparciu o role użytkowników: grupa właścicieli i inne.

  • Czytać ( r ): Umożliwia przeglądanie zawartości pliku.
  • Pisać ( w ): Umożliwia modyfikację pliku lub katalogu.
  • Wykonać ( x ): Umożliwia uruchomienie pliku jako programu lub wejście do katalogu.

Przykłady użycia trybu ósemkowego:

Załóżmy, że udzielimy właścicielowi pliku uprawnień do odczytu i zapisu. Odczytaj uprawnienia do zapisu i wykonywania dla grupy. Uprawnienie tylko do odczytu dla Innego. Taki byłby nasz rozkaz.

chmod 674 [file_name]

Tutaj.

  • 6 reprezentują uprawnienia właściciela pliku, którymi są (rw-).
  • 7 reprezentują pozwolenie Grupy, które są (rwx).
  • 4 reprezentują pozwolenie Innego, którym jest (R--).

Notatka: Możesz przeglądać i obliczać uprawnienia do plików, np. kto może uzyskać dostęp do odczytu, zapisu (usuwania lub modyfikowania) lub wykonywania pliku dla grupy właścicieli i innych (publicznych) za pomocąchmodkalkulator.

kalkulator' loading='lazy' title=

Tutaj używamy kalkulatora, aby wyświetlić uprawnienia. Na przykład właściciel ma uprawnienia do odczytu i zapisu, podczas gdy grupa i inne osoby (publiczne) mają tylko uprawnienia do odczytu i zapisu, ale nie mogą wykonać pliku.

Równoważne zezwolenie numeryczne:

Składnia:

wyrażenie regresji w Javie
chmod 766 filename

Tabela:

Typ użytkownikaUprawnieniaDwójkowyWartość
Właścicielrwx1117
Gruparw-1106
Innirw-1106

Przykład przywracania zmian dokonanych za pomocą polecenia „chmod” w systemie Linux

Aby cofnąć lub przywrócić zmiany wprowadzone poleceniem „chmod” w systemie Linux, możemy użyć metody `chmod` polecenie ponownie, ale tym razem powinniśmy wspomnieć o właściwym pozwoleniu, którego chcemy. 

 Oto kroki, jak cofnąć lub cofnąć zmiany:

  • Określ odpowiednie uprawnienia i ponownie użyj polecenia `chmod`. 
    Na przykład: jeśli chcemy przywrócić zmiany w „rw-r--r--” (prawo odczytu i zapisu dla właściciela, uprawnienia tylko do odczytu dla grupy i innych), zgodnie z tym nasza wartość ósemkowa będzie wynosić „644” (odczyt = 4 zapis = 2).
  • Teraz otwórz katalog i wpisz podane polecenie:
    chmod 644 [file_or_directory_name]   

Tutaj zamiast „[nazwa_pliku_lub_katalogu]” użyj nazwy pliku lub katalogu.

ciąg do tablicy Java

Załóżmy, że nasza nazwa pliku to „a.txt”

Przed przywróceniem lub cofnięciem zmian:

ls -l a.txt' loading='lazy' title=ls -l a.txt   (używany do wyświetlania wszystkich uprawnień, jakie posiada plik a.txt)

Po przywróceniu lub cofnięciu zmian:

cofanie zmian chmod w systemie Linux' loading='lazy' title=Tutaj widzimy, że zmiany zostały dokonane

Praktyczna implementacja sposobu, aby skrypt był wykonywalny w systemie Linux

W systemie Linux skrypty są zwykle pisane w językach takich jak Bash Python lub Perl. Chociaż treść skryptu jest kluczowa, równie ważne jest zapewnienie mu uprawnień do wykonywania. Bez uprawnień do wykonywania Linux nie pozwoli na uruchomienie skryptu.

Krok 1: Przejdź do katalogu skryptu

Otwórz terminal i użyjcdpolecenie, aby przejść do katalogu, w którym znajduje się skrypt.

Na przykład:

cd /path/to/your/script

Krok 2: Sprawdź aktualne uprawnienia

Użyj ` ls` polecenie z ` -l` możliwość wyświetlenia listy plików w katalogu wraz z ich uprawnieniami. Ten krok pomoże Ci zidentyfikować bieżące uprawnienia skryptu:

ls -l
sprawdzenie aktualnego pozwolenia' loading='lazy' title=sprawdzenie aktualnego pozwolenia

Krok 3: Spraw, aby skrypt był wykonywalny

Aby skrypt był wykonywalny, musisz użyć rozszerzenia `chmod`rozkaz. Zakładając, że Twój skrypt ma nazwę `example .sh` możesz uczynić go wykonywalnym za pomocą następującego polecenia:

chmod +x example.sh

To polecenie dodaje do skryptu uprawnienia do wykonywania (+x).

Krok 4: Zweryfikuj zmiany

Uruchom ` ls -l` polecenie ponownie, aby sprawdzić, czy skrypt ma teraz uprawnienia do wykonywania. Powinieneś zobaczyć „x” w polu uprawnień skryptu:

ls -l
weryfikacja zmian po uczynieniu skryptu wykonywalnym' loading='lazy' title=weryfikacja zmian po uczynieniu skryptu wykonywalnym

Krok 5: Wykonaj skrypt

Teraz, gdy Twój skrypt ma uprawnienia do wykonywania, możesz go uruchomić za pomocą rozszerzenia ` ./` notacja, po której następuje nazwa skryptu. Na przykład:

./example.sh
wykonaj skrypt' loading='lazy' title=wykonaj skrypt

Ten zapis mówi Linuksowi, aby szukał w bieżącym katalogu (.) dla skryptu o nazwieexample.sh.

Sugerowany quiz Edytuj quiz 5 pytań

Które uprawnienie liczbowe zapewnia, że ​​tylko właściciel pliku może czytać i zapisywać, podczas gdy grupa i inne osoby mogą tylko czytać plik?

  • A

    chmod 777 plik.txt

  • B

    chmod 664 plik.txt

  • C

    chmod 644 plik.txt

    wystąpienie
  • D

    chmod 600 plik.txt

Wyjaśnienie:

644 > właściciel: rw- grupa: r-- inni: r--.

Które polecenie trybu symbolicznego odbiera uprawnienia do wykonywania tylko inni bez dotykania uprawnień właściciela lub grupy?

  • A

    chmod a-x skrypt.sh

  • B

    chmod o-x skrypt.sh

  • C

    chmod go-x skrypt.sh

  • D

    chmod u-x skrypt.sh

Wyjaśnienie:

o-x usuwa prawa do wykonywania tylko „innym”.

Która konfiguracja chmod poprawnie koduje schemat uprawnień, w którym właściciel ma pełne uprawnienia operacyjne, grupa ma możliwość tylko wywoływania, a inni mogą jedynie sprawdzać bez modyfikacji?

  • A

    chmod 751 aplikacja.sh

  • B

    chmod 754 aplikacja.sh

  • C

    chmod 715 aplikacja.sh

  • D

    chmod 571 aplikacja.sh

Wyjaśnienie:

751 > właściciel: rwx grupa: r-x inni: --x (tylko wykonaj).

Które polecenie stosuje model uprawnień zapewniający, że każdy plik utworzony w katalogu automatycznie dziedziczy grupę katalogu, niezależnie od własności użytkownika?

r w języku c
  • A

    chmod +t katalog_współdzielony/

  • B

    chmod g+s katalog_wspólny/

  • C

    chmod u+s katalog_współdzielony/

  • D

    chmod 777 katalog_współdzielony/

Wyjaśnienie:

g+s (setgid) wymusza na nowych plikach dziedziczenie grupy katalogów.

Skrypt musi być wykonywalny dla wszystkich użytkowników, modyfikowalny tylko przez jego właściciela, a katalog musi uniemożliwiać komukolwiek z wyjątkiem faktycznego właściciela pliku usuwanie plików lub zmianę ich nazw. Która para poleceń spełnia ten model bezpieczeństwa?

  • A

    chmod 777 wdrożenie.sh ; chmod +t /var/skrypty

  • B

    chmod 755 wdrożenie.sh ; chmod +t /var/skrypty

  • C

    chmod 700 wdrożenie.sh ; chmod g+s /var/scripts

  • D

    chmod 755 wdrożenie.sh ; chmod 777 /var/scripts

Wyjaśnienie:

755 > właściciel pisze, że wszystko może zostać wykonane; +t ogranicza usuwanie plików do właścicieli plików.

Polecenie chmod w systemie Linux z przykładamiQuiz ukończony pomyślnie Twój wynik:  2/5Dokładność : 0%Zaloguj się, aby zobaczyć wyjaśnienie 1/5 1/5 < Previous Dalej >