tigtools

Kalkulator chmod

Zamieniaj uprawnienia plików Unix między polami wyboru, wartościami ósemkowymi i notacją rwx, w tym setuid, setgid i sticky bit.

Działa w przeglądarce Bez rejestracji

Uprawnienia właściciela, grupy i pozostałych
KtoOdczytZapisWykonywanieWartość
Właściciel (u)7
Grupa (g)5
Pozostali (o)5
Bity specjalne

Typowe wartości

Polecenie (ósemkowe)

chmod 755 file

Polecenie (symboliczne)

chmod u=rwx,g=rx,o=rx file

ls -l pokazuje zwykły plik z tymi uprawnieniami jako -rwxr-xr-x.

Jak używać

  1. Zaznacz pola odczytu, zapisu i wykonywania dla właściciela, grupy i pozostałych użytkowników.
  2. Albo wpisz wartość ósemkową, np. 640, lub ciąg symboliczny, np. rw-r----- lub -rw-r----- skopiowany z ls -l.
  3. W razie potrzeby dodaj setuid, setgid lub sticky bit albo wybierz typową wartość.
  4. Wpisz nazwę pliku i skopiuj polecenie chmod.

Jak to działa

Każda z trzech klas (właściciel, grupa, pozostali) ma trzy uprawnienia. Odczyt ma wartość 4, zapis 2, a wykonanie 1; ich suma to jedna cyfra ósemkowa, więc rwx = 7, r-x = 5, a r-- = 4. Trzy cyfry tworzą tryb: 755 oznacza rwx dla właściciela oraz r-x dla grupy i pozostałych.

Opcjonalna czwarta cyfra na początku zawiera bity specjalne: 4 dla setuid, 2 dla setgid i 1 dla sticky. W formie symbolicznej zastępują one pozycję wykonania: s dla setuid lub setgid, t dla sticky. Wielka litera S lub T oznacza, że bit specjalny jest ustawiony, ale wykonanie nie jest — co zwykle jest błędem.

Pole symboliczne akceptuje dziewięć znaków (rwxr-xr-x) lub dziesięcioznakową formę wypisywaną przez ls -l, w której pierwszy znak to typ pliku (- dla pliku, d dla katalogu) i jest tutaj ignorowany. Akceptowana jest również końcowa kropka . lub plus + z SELinux lub ACL.

Wyświetlane są dwa polecenia: forma ósemkowa, która ustawia wszystkie bity naraz, oraz równoważna forma symboliczna, np. u=rwx,g=rx,o=rx. Nazwy plików ze spacjami lub innymi znakami specjalnymi są cytowane dla powłoki; początkowe ~/ oraz symbole wieloznaczne * i ? pozostają niecytowane, aby powłoka mogła je rozwinąć. W GNU chmod tryb ósemkowy dla katalogu nie czyści już ustawionych bitów setuid ani setgid; użyj formy symbolicznej lub trybu pięciocyfrowego, np. 00755, jeśli chcesz je usunąć.

Przykłady

Pliki i katalogi WWW

Pliki, które serwer WWW tylko odczytuje, mają zwykle tryb 644 (rw-r--r--), a katalogi 755 (rwxr-xr-x), aby można było do nich wchodzić i wyświetlać ich zawartość.

Prywatny klucz SSH

SSH odrzuca klucze, które mogą odczytać inni. Zaznacz dla właściciela tylko odczyt i zapis, aby uzyskać 600 i polecenie chmod 600 ~/.ssh/id_ed25519 (jako nazwę pliku wpisz ścieżkę).

Współdzielony katalog do wgrywania plików

Katalogi takie jak /tmp używają trybu 1777 (rwxrwxrwt): każdy może tworzyć pliki, ale sticky bit uniemożliwia użytkownikom usuwanie cudzych plików.

Często zadawane pytania

Jaka jest różnica między 755 a 775?

Przy 775 grupa może również zapisywać pliki (tworzyć, zmieniać i usuwać pliki w katalogu). Przy 755 tylko właściciel może zapisywać; grupa i pozostali mogą odczytywać i wykonywać.

Dlaczego unikać 777?

Uprawnienia 777 pozwalają każdemu użytkownikowi systemu zmieniać lub zastępować plik. Na serwerze WWW może to umożliwić innemu kontu lub przejętemu procesowi wstrzyknięcie kodu. Przyznaj prawo zapisu tylko właścicielowi lub określonej grupie.

Co oznacza prawo wykonywania dla katalogu?

W przypadku katalogu prawo wykonywania (x) oznacza możliwość wejścia do katalogu i dostępu do plików wewnątrz. Sam odczyt pozwala wyświetlić nazwy, ale nie otworzyć plików.

Czy to narzędzie zmienia uprawnienia na moim komputerze?

Nie. Narzędzie tylko oblicza wartości i tworzy treść polecenia. Polecenie uruchamiasz samodzielnie w terminalu.

Prywatność

Wszystko jest obliczane w Twojej przeglądarce. Wpisywana nazwa pliku nie jest nigdzie wysyłana, zapisywana ani uwzględniana w analityce.