Rozumiem chmod
i chown
jak działają bity uprawnień, ale w Linuksie jest inny system uprawnień ACL
z setfacl
i getfacl
, więc zastanawiam się.
Jaka jest różnica między tymi dwoma systemami kontroli uprawnień? Czy kolidują ze sobą?
Rozumiem chmod
i chown
jak działają bity uprawnień, ale w Linuksie jest inny system uprawnień ACL
z setfacl
i getfacl
, więc zastanawiam się.
Jaka jest różnica między tymi dwoma systemami kontroli uprawnień? Czy kolidują ze sobą?
Odpowiedzi:
Jedno nie jest lepsze od drugiego, to tylko inne metody i sposób myślenia.
Możesz używać obu systemów uprawnień na tej samej ścieżce bez problemów.
Zakłócają się nawzajem podczas modyfikowania uprawnień właściciela, grupy i innych: podczas ustawiania bieżącej wartości dla tych z setfacl, faktycznie ustawi uprawnienia POSIX, a nie ACL.
Uprawnienia Posix zezwalają tylko właścicielowi, właścicielowi grupy i uprawnieniu „wszyscy”, podczas gdy ACL pozwala wielu „właścicielom” użytkowników i grupy. ACL umożliwia także ustawienie domyślnych uprawnień dla nowych plików w folderze.
Możesz dodać więcej zarządzania uprawnieniami w dodatku do apparmor lub selinux, aby ściślej kontrolować.
ls -l
umieszcza +
na końcu znaków uprawnień, aby wskazać, że ACL są obecne. Jeśli listy ACL są obecne, podstawowe uprawnienia nie mówią pełnej historii: ACL zastępuje uprawnienia POSIX.
+
przynajmniej powstrzymuje mnie przed
Klasyczne uprawnienia Unix ustawione przez chmod (odczyt / zapis / wykonanie, użytkownik / grupa / inny) istniały znacznie dłużej niż ACL. Gdyby ACL istniało od samego początku, nie byłoby chmod, jaki znamy. Ponieważ jednak chmod istnieje od bardzo dawna, wiele aplikacji go nazywa, wiele formatów archiwów obsługuje klasyczne uprawnienia itp. Możesz wyrazić uprawnienia chmod za pomocą ACL; działają one jako punkt wyjścia do ACL.
Zobacz Pierwszeństwo użytkownika i właściciela grupy w uprawnieniach do plików oraz Pierwszeństwo ACLS, gdy użytkownik należy do wielu grup, aby uzyskać bardziej szczegółowe informacje na temat działania kontroli dostępu w obecności ACL.
chmod
Komenda kontroluje również niektóre flagi, które tak naprawdę nie są uprawnienia, ale są często nazywane uprawnieniami mimo: setuid, setgid i lepki bit . Nie są to tak naprawdę uprawnienia, ponieważ nie wpływają one na to, które dostępu są autoryzowane w pliku, ale jak działają pewne operacje na pliku po ich autoryzacji. Z ACL nie ma nic takiego.
ls -l
?
ls
mają dodatkowe +
na końcu, lub uruchom getfacl
polecenie, aby wyświetlić wszystkie uprawnienia, w tym ACL.
getfacl myFile
?
ls -l
, zobaczę tylko uprawnienia posix i uprawnienia ACL, które dalej ograniczają plik, nie będą wyświetlane? A może niezależnie od tego będą przestrzegane uprawnienia do posix?