Linuxiarze.pl Forum

Dystrybucje Linux => Ubuntu, Kubuntu, Xubuntu, Lubuntu => Wątek zaczęty przez: Qloda w Listopad 08, 2017, 10:44:54 AM

Tytuł: Prawa dostępu
Wiadomość wysłana przez: Qloda w Listopad 08, 2017, 10:44:54 AM
Witam,
Mam pytanie odnośnie praw dostępu dla plików i katalogów.
Jakie prawa są konieczne (minimalny zestaw), aby wykonać operację: cp, mv i rm na pliku?
Czy dobrze myślę?





Operacja   Katalog źródłowy   Katalog docelowy   Plik
rwxrwx-wxr--
rwxrw-rw-r--
rwxr-xr-xr--

I jakie uprawnienia potrzebuję do usunięcia całej gałęzi? Czyli katalogu wraz z zawartymi plikami i podkatalogami.
Tytuł: Odp: Prawa dostępu
Wiadomość wysłana przez: pavroo w Listopad 08, 2017, 10:43:24 PM
Jeśli chcesz wykonywać działania jako zwykły użytkownik to:
pliki chmod 644:
-rw-r--r--
katalogi chmod 755:
drwxr-xr-x
Tytuł: Odp: Prawa dostępu
Wiadomość wysłana przez: lesio w Listopad 09, 2017, 01:31:27 AM
Tabelka chyba się nieco "rozjechała", szczególnie w rubryce "operacja".
Przy poleceniu "cp" nie zmieniamy zawartości katalogu źródłowego, w związku z czym nie musimy mieć prawa do zapisu w katalogu - "w". Przy poleceniu "mv" i "rm" już tak, bo zmieniamy zawartość katalogu źródłowego. Ciekawie jest w wypadku pliku. Jeśli do pliku nie mamy żadnych uprawnień, to i tak możemy go skasować, jeśli mamy uprawnienia do zamiany zawartości katalogu, chociaż system dla pewności spyta się nas, czy na pewno chcemy to zrobić. Żeby usunąć całe drzewko katalogów, to zasadniczo musimy mieć prawa do pisania i przechodzenia przez katalog (czyli wx), bo usuwanie odbywa się od najniższych gałęzi. Nie pamiętam, czy konieczne jest "r". Jeśli pracujemy indywidualnie na swoich danych i nie musimy tych danych współdzielić, to w zupełności wystarczające są uprawnienia tylko dla nas (czyli rwx------). Wtedy inni członkowie grupy oraz "inni" użytkownicy nie mają do nich dostępu.
Tytuł: Odp: Prawa dostępu
Wiadomość wysłana przez: Qloda w Listopad 09, 2017, 07:59:52 AM
Rzeczywiście trochę się "rozwaliła" tabelka.
Czyli tabelka teraz po waszych poradach wyglądała by następująco.






Operacja    Katalog źródłowy    Katalog docelowy    Plik
rm    -wx    -wx   ---
mv    rwx    rwx   ---
cp    r-x    r-x    -w-

Czy jednak się mylę?
Tytuł: Odp: Prawa dostępu
Wiadomość wysłana przez: lesio w Listopad 09, 2017, 09:18:11 AM
Następujące założenia początkowe dla każdej operacji:
- mam 2 podkatalogi: źródłowy "z" i docelowy "d"
- plik "p" znajduje się w podkatalogu "z"

Minimalne uprawnienia dla każdej operacji wychodzą mi następujące:

operacja                    katalog źródłowy              katalog docelowy               plik w katalogu źródłowym
cp z/p d                    d--x------ z/                     d-wx------ d/                     -r-------- z/p
mv z/p d                   d-wx------ z/                    d-wx------ d/                     ---------- z/p
rm z/p                      d-wx------ z/                                                            ---------- z/p

Kopiowanie odbywa się poprzez odczytanie pliku, więc musi być prawo czytania dla pliku.
Żeby cokolwiek zrobić w katalogu, trzeba do niego wejść (czyli "wykonać" - prawo wykonywania).
Żeby utworzyć w katalogu plik lub skasować plik, trzeba zmienić zawartość katalogu, stąd prawo pisania.
To są oczywiście PRAWA MINIMALNE DLA TRZECH WYMIENIONYCH OPERACJI PRZY ZAŁOŻENIACH POCZĄTKOWYCH PODANYCH NA WSTĘPIE. Mało wygodne jest przechowywanie pliku, którego nie możemy chociażby czytać, a także operowanie na katalogach, których zawartości nie możemy przeglądnąć poleceniem "ls"  :-)
Tytuł: Odp: Prawa dostępu
Wiadomość wysłana przez: Qloda w Listopad 09, 2017, 02:59:04 PM
Dzięki wielkie.
Wszystko bardzo fajnie mi opisałeś i już wiem co i jak :)

Temat można zamknąć
Tytuł: Odp: Prawa dostępu
Wiadomość wysłana przez: lesio w Listopad 09, 2017, 08:44:28 PM
Pozwolę sobie dodać jedną ciekawostkę. Jeżeli do katalogu docelowego chcemy skopiować (lub przenieść) plik o nazwie, która już występuje w katalogu docelowym, to oprócz uprawnień d-wx dla katalogu docelowego potrzebne jest także uprawnienie "r" (a więc ostatecznie drwx------). Dzieje się tak dlatego, że w tym wypadku nie chodzi jedynie o dodanie nowego wpisu w katalogu (do tego wystarcza "w"), ale o uaktualnienie istniejącego wpisu w katalogu (a więc jego modyfikację, czyli odczytanie i zapisanie - a więc potrzebne jest "rw").