Uprawnienia do dowiązań symbolicznych nie zmieniają się wraz z chmod

12

Mam dostęp do zdalnego komputera z systemem Linux, gdzie za każdym razem, gdy tworzę dowiązanie symboliczne, jest ono tworzone domyślnie z następującymi uprawnieniami: lrwxrwxrwx

Jeśli spróbuję zmienić uprawnienia do dowiązania symbolicznego (tj. Nie ścieżki, którą wskazuje), używając na przykład:

chmod g-w my_symbolic_link

chmoddziała poprawnie (komunikat o błędzie nie jest drukowany), ale kiedy ponownie sprawdzę uprawnienia, są one nadal takie same ( lrwxrwxrwx).

Czekam na wiadomość od administratora maszyny, ale zastanawiałem się, czy jest to normalne zachowanie, czy może jest to coś specyficznego dla tego urządzenia.

Amelio Vazquez-Reina
źródło

Odpowiedzi:

16

To normalne zachowanie. To, co się stanie, może się różnić w zależności od systemu operacyjnego (Solaris przynajmniej służy do zmiany uprawnień do łącza); ale ponieważ dowiązanie symboliczne nie jest normalnym plikiem, uprawnienia tak naprawdę do niczego się nie przyzwyczajają. (Uprawnienia do plików są częścią i-węzła pliku, więc dowiązanie symboliczne nie może na nie wpływać).

geekozaur
źródło
Rozumiem dzięki. Chcę tylko, aby nikt nie usunął dowiązania symbolicznego. Z tego, co rozumiem, nie mogę zmienić uprawnień do tego łącza bez pomocy administratora, prawda?
Amelio Vazquez-Reina
4
Nawet z pomocą administratora. Usunięcie pliku zależy od uprawnień zawartych w katalogu, a nie od uprawnień do pliku. ( rmkonkretnie sprawdza, czy plik jest tylko do odczytu, chyba że przejdziesz -f, ponieważ zwykle nie zamierza się usuwać pliku tylko do odczytu, ale go unlink()to nie obchodzi. Spróbuj go kiedyś w Perlu lub Pythonie).
geekosaur