Polecenie chmod w systemie Linux z przykładami

Polecenie chmod w systemie Linux z przykładami

The chmod Polecenie (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żywanie chmod 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

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 zachowanie chmod rozkaz.
  • 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 opcji chmod Polecenie w Linuksie

Tryb Właściciel Grupa Inni Typowe zastosowanie skryptów
700 rwx --- --- Skrypt prywatny (tylko Ty możesz uruchomić/edytować).
711 rwx --X --X Tylko plik wykonywalny/przejściowy; treść nieczytelna.
744 rwx R-- R-- Edytujesz i uruchamiasz; inni mogą czytać (nie wykonywać).
750 rwx r-x --- Plik wykonywalny tylko dla zespołu; ukryte przed innymi.
754 rwx r-x R-- Exec dla grupy tylko do odczytu dla innych.
755 rwx r-x r-x Często: każdy może uruchomić, tylko Ty edytujesz.
775 rwx rwx r-x Udostę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ą chmod kalkulator.

kalkulator

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:

 chmod 766 filename  

Tabela:

Typ użytkownika Uprawnienia Dwójkowy Wartość
Właściciel rwx 111 7
Grupa rw- 110 6
Inni rw- 110 6

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.

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

Przed przywróceniem lub cofnięciem zmian:

ls -l a.txtls -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 LinuxTutaj 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żyj cd polecenie, 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 pozwoleniasprawdzenie 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 wykonywalnymweryfikacja 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 skryptwykonaj skrypt 

Ten zapis mówi Linuksowi, aby szukał w bieżącym katalogu ( . ) dla skryptu o nazwie example.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

  • 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?

  • 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 /5 Dokładność :  0% Zaloguj się, aby zobaczyć wyjaśnienie 1 /5 1 /5 < Previous Dalej >