Po zainstalowaniu programu zaleca się to chmod 4555
. Okej, wiem o wartościach, jeśli użyję tylko trzech liczb. Na przykład
chmod 555 test-file
da
-r-xr-xr-x
4 dla zapisu, 2 dla odczytu i 1 dla wykonania. Ale kiedy to robię:
chmod 4555 test-file
to daje mi
-r-sr-xr-x
Więc x
zmieniłem na s
. Co to znaczy?
command-line
chmod
Mas Bagol
źródło
źródło
Odpowiedzi:
W rzeczywistości istnieją 4 zestawy atrybutów, z którymi można pracować za pośrednictwem
chmod
.Special
,User/Owner
,Group
, IOthers
w tym celu, podczas pracy z chmods czterech numerów, z tym pierwsza liczba jest specjalne bity, które można ustawić.chmod 4555
odpowiada następującemu:Set UID
bit - Uruchom plik jako właściciel, niezależnie od tego, który użytkownik go uruchamiaRead, Execute
Read, Execute
Read, Execute
Ciąg
s
„czytelny dla człowieka” dla uprawnień wskazuje, żeSetUID
bit (wyjaśniony poniżej) jest ustawiony.W efekcie możemy rozbić
chmod
argument czterech liczb uprawnień na konkretne deskryptory w następujący sposób, i wykonując matematykę, aby ustalić, co to4
będzie pierwsza sekcja, a5
następna sekcja i tak dalej.Pamiętaj, że
####
jestSpecial
User/Owner
Group
iOthers
w tej kolejności.W przypadku
Special
atrybutów (pierwsza liczba w czterocyfrowymchmod
argumencie):Set UID
- Uruchom plik jako właściciel bez względu na użytkownika, który go uruchomił (pokazuje jaks
w czytelnym dla człowieka łańcuchu uprawnień dlaUser
sekcji) = +4 (--s
poniżejUser/Owner
)Set GID
- Uruchom plik jako grupę niezależnie od uruchomionego użytkownika / grupy (pokazuje jaks
w czytelnym dla człowieka łańcuchu uprawnień dlaGroup
sekcji) = +2 (--s
poniżejGroup
)Sticky Bit
- SKUTECZNY TYLKO DLA KATALOGÓW - Jeśli jest ustawiony, tylko użytkownik kataloguroot
może usunąć katalog i tylko właściciel pliku lubroot
może usunąć pliki w nim zawarte. (pokazuje jakt
w czytelnym dla człowieka ciągu uprawnień dlaOthers
sekcji) = +1 (--t
poniżejOthers
)Na
User/Owner
,Group
iOthers
atrybuty (ostatnie trzy cyfry w czterech liczbchmod
argumentu):Read
= +4 (r--
)Write
= +2 (-w-
)Execute
(dla plików) lub „Enter Into / List Items” (dla katalogów) = +1 (--x
)źródło
To się nazywa
SETUID
bit. jeśli jest ustawione przezchmod 4555 test-file
(w twoim przypadku), totest-file
może być wykonane przez dowolnego użytkownika tak, jakby użytkownik był właścicielem pliku.Gdy
SETUID
bit jest ustawiony, wówczas efektywny identyfikator użytkownika (EUID
) użytkownika, który nie ma uprawnień do wykonania pliku w inny sposób (np. Przy normalnych uprawnieniach0744
), przyjmuje identyfikator EUID właściciela pliku i może wykonać plik.źródło