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