Laboratorium 3 - Politechnika Lubelska
Transkrypt
Laboratorium 3 - Politechnika Lubelska
1. Zarządzanie prawami dostępu (chmod, chgrp, chown) Parametry pojawiające się w kontekście polecenia: u – właściciel pliku g – grupa, do której należy właściciel pliku o – pozostali użytkownicy systemu (nie u i nie g) a – wszyscy użytkownicy systemu r – prawo do odczytu w – prawo do zapisu x – prawo do wykonania s – opcja wykonania SUID; oznacza, że np. wykonywany plik wywołuje proces i oddaje mu kontrolę nad wykonaniem zadania + - dodawanie praw - - zabieranie praw = - ustawienie praw; nadaje tylko te prawa, które znajdują się z prawej strony. Wszystkie nie wymienione prawa są odbierane. Struktura praw dostępu do: pliku: - rwx rwx rwx katalogu: d rwx rwx rwx u g o liczbowo: 7 7 7 Sposób reprezentacji praw dostępu: Oznaczenia typów elementów w systemie plików: Wyznaczanie wartości liczbowych praw dostępu: r-- = 4 rw- = 4+2=6 rwx = 4+2+1=7 -wx = 2+1=3 Zmiana właściciela i grupy odbywa się wg schematu: chown użytkownik pliki_lub_katalogi W przypadku katalogu: r – umożliwia odczytanie (listowanie) zawartości katalogu, © Kamil Żyła, Instytut Informatyki, Politechnika Lubelska 1 w – umożliwia modyfikację wnętrza katalogu (tworzenie nowych elementów i usuwanie istniejących), x – umożliwia wejście do katalogu. Sticky Bit – zazwyczaj nadawany dla katalogu. Powoduje, że tylko właściciele poszczególnych plików mają możliwość usuwania tych plików. np. chmod o+t katalog chmod 1777 katalog SUID – umożliwia wykonanie pliku z uprawnieniami jego właściciela (często właścicielem jest root). np. chmod u+s plik chmod 4777 plik SGID – umożliwia wykonanie pliku z uprawnieniami grupy, do której należy. np. chmod g+s plik chmod 2777 plik Jeśli intencją jest ustawienie praw do wykonania tylko dla katalogów, z pominięciem plików, wtedy zamiast ‘x’ należy użyć ‘X’. np. chmod a+X * a) Do czego służą polecenia chown, chgrp, chmod i umask? b) Wyświetl bieżącą maskę uprawnień w postaci liczbowej i znakowej. c) Tymczasowo zmień maskę (najpierw liczbowo, później przy pomocy znaków) tak, aby nowotworzone pliki otrzymywały domyślnie prawa rw-,r--,--x. d) W katalogu domowym utwórz katalog roboczy. Utwórz w nim kilka pustych plików, w tym plik o nazwie „wynik” oraz „bleh”. e) Wyświetl pełne informacje o prawach dostępu do pliku „wynik”. f) Zabierz (liczbowo) wszystkie uprawnienia do pliku „wynik” (wyświetl prawa do pliku „wynik”). g) Spróbuj edytować i wyświetlić zawartość pliku „wynik”. Po wykonaniu jakich czynności będzie to możliwe? h) Dodaj wszystkim prawo do odczytu pliku „wynik” (wyświetl prawa do pliku „wynik”) i) Zabierz grupie (g) oraz pozostałym użytkownikom (o) prawo do odczytu pliku „wynik” (wyświetl prawa do pliku „wynik”). j) Liczbowo nadaj prawo rwx r-x r-- dla pliku „wynik” (wyświetl prawa do pliku „wynik”). k) Ustaw literkami prawo rwx rw- r-- do pliku „wynik” (wyświetl prawa do pliku „wynik”). l) Jakie prawa dostępu będą efektem polecenia chmod ugo=rw,u+x,o=r ? (można wyświetlić nadane prawa). m) Zabierz prawo do zapisu dla g i o (wyświetl prawa do pliku „wynik”). n) Ustaw prawa r-x r-x –x (liczbowo) dla pliku „wynik” (wyświetl prawa do pliku „wynik”) o) Zabierz (literowo) wszystkim wszystkie uprawnienia do pliku „bleh”. p) Zabierz (liczbowo) uprawnienia do wszystkich plików w katalogu „roboczy” wszystkim użytkownikom, oprócz autora pliku (wyświetl prawa do plików w katalogu roboczy). Napisz, jaki problem zaobserwowałeś. © Kamil Żyła, Instytut Informatyki, Politechnika Lubelska 2 q) Nadaj uprawnienia 762 dla pliku „bleh”. r) Zabierz (literowo) uprawnienia do wszystkich plików w katalogu „roboczy” wszystkim użytkownikom, oprócz autora pliku (wyświetl prawa do plików w katalogu roboczy). Napisz, co zaobserwowałeś? s) Napisz, w jakiej sytuacji wygodniej jest używać literowych oznaczeń praw dostępu. t) Przejdź o jeden poziom do góry (cd ..) i ustaw prawa do katalogu „roboczy” na 740. Wyświetl prawa do katalogu „roboczy” (ls –ld roboczy). Wyświetl prawa do plików w katalogu „roboczy” (ls –l roboczy). Co zaobserwowałeś? u) Zmień prawa dostępu do katalogu „roboczy” na 740 (rwx r-- ---) tak, aby wszystkie pliki znajdujące się w jego wnętrzu otrzymały te same prawa dostępu. Sprawdź prawa dostępu do plików wewnątrz katalogu „roboczy”. v) Zmień uprawnienia do katalogu „roboczy”, tak by właściciel miał prawa odczytu i zapisu, reszta brak praw. Spróbuj wejść do katalogu. Co zaobserwowałeś? w) Zmień właściciela katalogu „roboczy” oraz całej jego zawartości na użytkownika root. x) Zmień grupę (na dowolnie wybraną przez Ciebie) dla plików o nazwach 5-literowych zaczynających się literą ‘w’. 2. Porównywanie zawartości plików a) W pliku „bleh” zapisz informacje o aktualnie zalogowanych użytkownikach. b) W pliku „wynik” umieść zawartość pliku „bleh” oraz bieżącą datę systemową. c) Do pliku „bleh” dodaj nazwę hosta, na którym pracujesz. d) Do czego służy polecenie cmp i diff i jaka jest między nimi różnica? diff plik1 plik2 < - różnice pochodzą z „plik1” > - różnice pochodzą z „plik2” = - linie są wspólne dla obydwu plików e) Wyświetl różnice pomiędzy plikami „wynik” i „bleh” przy pomocy polecenia diff. f) Jakie są rezultaty wywołania polecenia diff z parametrem ‘-y’,’-l’ albo ‘-s’? g) Porównaj pliki „wynik” oraz „bleh” przy pomocy polecenia cmp. © Kamil Żyła, Instytut Informatyki, Politechnika Lubelska 3