Jak zmienić uprawnienia do katalogu

9

Korzystam z CentOS i chciałbym wiedzieć, jak zmienić uprawnienia do folderu zawierającego wiele plików.

Użyłem następujących poleceń w folderze jako root (powiedzmy folder = A):

chmod 777 (home / directory / A)

chmod g + r (A)

Jeśli widzę folder jako zwykłego użytkownika, używając menedżera plików, ikona kłódki nie jest widoczna, co wskazuje, że uprawnienia zostały przyznane? jednak wszystkie pliki w folderze A nadal wyświetlają ikonę kłódki wskazującą, że tylko folder A uzyskał uprawnienia i nie ma w nim żadnego podkatalogu.

Uruchomienie wyżej wymienionych poleceń we wszystkich podkatalogach okaże się dość pracochłonnym zadaniem, ponieważ jest ich po prostu zbyt wiele.

Dzięki!

Linux Nowość B.
źródło

Odpowiedzi:

15

Aby ustawić uprawnienia do folderu i wszystkich podfolderów / plików, musisz użyć opcji rekurencyjnej w swoim poleceniu:

chmod 777 -R /path/to/directory

Aby uzyskać więcej informacji za pomocą chmod, zobacz tutaj .

AKTUALIZACJA:

Oświadczenie: użycie chmod 777 sprawi, że Twój folder będzie wykonywalny przez wszystkich. Zobacz poniżej ustawienie

Twoje uprawnienia są ustawione za pomocą trzech liczb.

100 jest dla właściciela pliku
400 odczyt
200 zapisu
100 wykonanie

10 jest dla grupy pliku
40 odczyt
20 zapisu
10 wykonanie

1 są dla wszystkich pozostałych
4 czytaj
2 napisz
1 wykonaj

W swoim przykładzie dajesz właścicielowi, grupie i wszystkim osobom pełne prawa do swojego pliku. Jeśli na przykład chcesz udzielić właścicielowi i grupie pełnych uprawnień, ale wszyscy inni tylko czytają i wykonują uprawnienia, których użyłbyś 775.

Jeśli chcesz użyć reprezentacji liter zamiast cyfr, zobacz tutaj

Matthew Williams
źródło
Dzięki! Matthew za rozwiązanie problemu i podanie linku informacyjnego, który właśnie został
dodany do
Jeśli uznasz to za przydatne, zaznacz jako odpowiedź.
Gaurav Joseph
czy nie spowoduje to, że wszystkie pliki w folderze będą wykonywalne?
stib
Tak, ale z jego pytania wynika, że ​​tego właśnie chce. Link, który podałem, pomoże mu z jego uprawnieniami. Skoro o tym wspominasz, zaktualizuję swoją odpowiedź, aby na to spojrzeć.
Matthew Williams
1

Możesz użyć chmod, aby zmienić bity uprawnień. Opcja -R jest rekursywnie - używana w przypadku katalogów. Bity są wyjaśnione jako rwx, tj. Odczyt, zapis i wykonanie. Jeśli r = 1, w = 1 i x = 1. Binarny 111 oznacza 7 w systemie dziesiętnym. Zatem widzisz 7. Teraz pola są ustalane jako u = użytkownik, grupa i inne. Tak więc, jeśli chcesz dać każdemu pozwolenie, możesz zrobić chmod -R 777 nazwa_katalogu. Możesz także powiedzieć chmod -R a + rwx dir lub jeśli chcesz usunąć jakieś uprawnienia, możesz powiedzieć, że chmod -R ax dir - ma to na celu usunięcie uprawnienia do pliku wykonywalnego.

Możesz także wykonać man na chmod, aby poznać więcej szczegółów.

zręczny
źródło