Zarządzanie Uprawnieniami w Unix

Содержание

Слайд 2

Zarządzanie Uprawnieniami w Unix Zmiana właściciela zasobu: Zmiana atrybutów:

Zarządzanie Uprawnieniami w Unix

Zmiana właściciela zasobu:
Zmiana atrybutów:

Слайд 3

Uprawnienia w Unix szczegóły

Uprawnienia w Unix szczegóły

Слайд 4

Uprawnienia w Unix szczegóły Komendy: chmod [-R] [uprawnienia] [nazwa_pliku] gdzie [uprawnienia]

Uprawnienia w Unix szczegóły

Komendy:
chmod [-R] [uprawnienia] [nazwa_pliku] gdzie [uprawnienia] mogą być postaci:
wyrażenia:

a+ (all), u+ (user), g+ (group), o+ (other) oraz a-, u-, g-, o- połączonymi z uprawnieniami rwx,
Trzema (lub czterema) liczbami reprezentującymi binarną postać uprawnień:
777, pierwsza liczba to właściciel, druga grupa, trzecia reszta.
Binarnie: 111 jest równe dziesiętnie 4 + 2 + 1 = 7
Przykłady:
r-x = 101 = 5,
rw- = 110 = 6,
--x = 001 = 1
rw-xr--r-x = 110 100 101 = 645
Слайд 5

Uprawnienia w Unix szczegóły chmod o+t mojplik W katalogu z ustawionym

Uprawnienia w Unix szczegóły

chmod o+t mojplik
W katalogu z ustawionym sticky bit

pliki mogą być usuwane lub przemianowywane tylko przez właściciela pliku lub owego katalogu. Sticky bit często stosowany w katalogu /tmp, do którego dostęp mogą mieć wszyscy użytkownicy systemu. Wyklucza to usuwanie przez użytkowników plików do nich nienależących.
ls -l example
-rwsr-x--- 1 watrous sysprog 21340 Nov 21 10:49 example
Prawo "x" w połączeniu z bitem setuid "s". Każdy członek grupy sysprog może uruchomić program example z prawami właściciela – jako watrous.
Слайд 6

Uprawnienia w Unix szczegóły ls -l example -rwxr-sr-x 1 watrous sysprog

Uprawnienia w Unix szczegóły

ls -l example
-rwxr-sr-x 1 watrous sysprog 21340

Nov 21 10:49 example
W tym przypadku każdy może uruchomić program example, a uruchomiony program posiada prawa do plików wynikające z praw grupy sysprog .
setgid bit w przypadku katalogu
ls –ld sample
drwxr-sr-x 2 watrous staff 2560 Feb 20 11:55 sample
W tym przypadku nowe pliki kreowane w tym katalogu będą należały do tej samej grupy co grupa katalogu (oczywiście jeżeli użytkownik tworzący nowy plik należy do tej grupy)
Слайд 7

Zarządzanie Uprawnieniami w Unix Zmiana właściciela zasobu: Zmiana atrybutów:

Zarządzanie Uprawnieniami w Unix

Zmiana właściciela zasobu:
Zmiana atrybutów:

Слайд 8

Uprawnienia w Unix szczegóły Przykładowe czynności: pozwól zapisyć wszystkim: chmod a+w

Uprawnienia w Unix szczegóły

Przykładowe czynności:
pozwól zapisyć wszystkim: chmod a+w mojplik
Pozwól właścicielowi

uruchamiać: chmod u+x mojplik
Pozwól wszystkim czytać i urucham.: chmod 755 mojplik
Ustaw s-bit dla grupy: chmod g+s mojplik
Przejdź rekursywnie po podkatalogach: chmod -R a+r .
umask – odwrotność chown – zawsze usuwa zaznaczone bity. (Uwaga, nie zmienia bitów nie zaznaczonych).
umask 077 -> powoduje, że plik może mieć rwx --- ---
umask 022 -> odbiera grupie i reszcie prawo pisania czyli odbiera: --- -w- -w-
Слайд 9

Access Control Lists Każdy użytkownik i grupa mogą mieć indywidualne uprawnienia

Access Control Lists

Każdy użytkownik i grupa mogą mieć indywidualne uprawnienia do

danych plików.
W Unix ACL funkcjonują równolegle do standardowych uprawnień i ze względu na skomplikowaną obsługę i kontrolę nie zyskały popularności.
Слайд 10

Blok kontrolny procesu (PCB – Process Control Block) Struktura przechowująca informację

Blok kontrolny procesu (PCB – Process Control Block)

Struktura przechowująca informację o procesie.

Blok kontrolny procesu przechowuje następujące informacje:
Stan procesu
Licznik rozkazów (pozycja aktualnie wykonywanej instrukcji)
Rejestry procesora (akumulatory,rejestry indeksowe,wskaźniki stosu)
Informacje o planowaniu przydziału procesora (np. priorytet procesu)
Informacje o zarządzaniu pamięcią (rejestry graniczne, tablice stron, lub tablice segmentów)
Informacje do rozliczeń (ilość zużytego procesora i czasu rzeczywistego, ograniczenia czasowe,numery kont,numery zadań,numery procesów)
Informacje o stanie wejścia-wyjścia
Слайд 11

Komendy do zarządzania procesami w Unixie Podstawą jest PID – identyfikator

Komendy do zarządzania procesami w Unixie

Podstawą jest PID – identyfikator procesu
Komendy:
monitorowanie:

ps [-aux], pstree, top
uruchamianie w tle: &
zawieszanie CTRL+Z,
przywracanie na wierzchu: fg (od foreground)
przywracanie w tle: bg (od background)
wysyłanie komunikatów: kill
kill -9 [PID]
sprawdzanie otwartych plików: lsof -p [PID]
uruchamianie z niższym priorytetem: nice
śledzenie wywołań systemowych: strace
Слайд 12

Zarządzanie Procesami Windows

Zarządzanie Procesami Windows

Слайд 13

Zarządzanie Procesami Unix

Zarządzanie Procesami Unix

Слайд 14

Zarządzanie Procesami Unix

Zarządzanie Procesami Unix

Слайд 15

Priorytety Procesów Dwie liczby: priorytet, “uprzejmość” (nice). Liczba o mniejszej wartości

Priorytety Procesów

Dwie liczby: priorytet, “uprzejmość” (nice). Liczba o mniejszej wartości ma

wyższy priorytet. Komenda: nice

6 poziomów

Unix

Windows

Слайд 16

Zarządzanie plikami Unix listowanie zawartości katalogu: ls [-l -a -t -r]

Zarządzanie plikami Unix

listowanie zawartości katalogu: ls [-l -a -t -r]
uworzenie katalogu:

mkdir [dir]
usunięcie katalogu: rmdir [dir] lub rm -r [dir]
przejście do katalogu: cd [dir], cd /dir, cd ../dir, cd ./dir
Sprawdzenie aktualnego katalogu (.): pwd
skopiowanie pliku: cp [skadplik] [dokadplik],
skopiowanie rekursywnie katalogu: cp -r [dir] [dokad]
usunięcie pliku: rm [plik]
zmiana nazwy pliku, lub przeniesienie do innego katalogu: mv [skad] [dokad]
wyświetlenie zawartości: cat [plik], more [plik], less [plik]
utworzenie pustego pliku, lub zmiana daty ostatniej modyfikacji na aktualną: touch [plik]
Слайд 17

Pomoc w Unix Pomoc: Dla posiadaczy internetu: www.google.com Podręcznik złożony z

Pomoc w Unix

Pomoc:
Dla posiadaczy internetu: www.google.com
Podręcznik złożony z rozdziałów: man [slowo]

(np.: man man)
Wyszukiwanie haseł: apropos [hasło]
System info
Dokumentacje aplikacji: /usr/share/doc lub /usr/local/share/doc
Wyszukiwanie plików i w plikach:
find . lub find . -name ''nazwa''
find . | grep ''nazwa''
locate (oparte na systemowej bazie danych updatedb, która jest uruchamiana zazwyczaj raz dziennie)
grep [wyrazenie] [gdzie]
whereis [komenda]
Слайд 18

Monitorowanie Stanu Systemu - Unix Obciążenie systemu: top Liczba zajętego obszaru

Monitorowanie Stanu Systemu - Unix

Obciążenie systemu: top
Liczba zajętego obszaru na dyskach:

df
Czas od uruchomienia systemu: uptime
Wyświetlenie wersji systemu: uname -a
Sprawdzenie ile mamy dozwolonego miejsca na dyskach: quota -v
Слайд 19

Konfiguracja środowiska pracy użytkownika Powłoka: sh, zsh, bash Zmienne środowiskowe: env

Konfiguracja środowiska pracy użytkownika

Powłoka: sh, zsh, bash
Zmienne środowiskowe:
env
export EDITOR=pico
echo $zmienna
Pliki konfiguracyjne:
/etc/bashrc
~/.bash_profile
~/.bashrc
Aliasy:
alias

ll='ls -la'
Wyświetlanie plików:
cat (cat /etc/fstab)
more ( ls -l | more)
less (less /etc/dhcpd.conf)

Zmiana znaku zachęty:
export prompt=“%n%\:%m% #“
Przykładowe znaki:
%n nazwa użytkownika,
%m krótka nazwa hosta ,
%M pełna nazwa hosta (np.: apple.cs.byu.edu)
%T aktualny czas w formacie 24h
Katalog domowy:
/home/ziutek
Jak szybko przejść do katalogu domoge nie pamiętając dokładnej lokalizacji?
cd $HOME
cd ~
cd

Слайд 20

Przetwarzanie Potokowe STDIN - Standardowe wejście, STDOUT - standardowe wyjście, STDERR

Przetwarzanie Potokowe

STDIN - Standardowe wejście, STDOUT - standardowe wyjście, STDERR -

standardowe wyjście błędów.
Programowanie strumieni:
przekierowanie do i z plików:
ls -la > do_pliku.txt
ls -la >> do_pliku_dopisujac.txt
grep ala < z_pliku.txt
CTRL+C, CTRL+D
przkierowanie jednego wyjścia na wejście drugiego:
Слайд 21

Przykłady Przetwarzania Potokowego ps -aux | grep ziutek ls -la |

Przykłady Przetwarzania Potokowego

ps -aux | grep ziutek
ls -la | more
find .

| grep txt
make 2>&1 | tee PLIK_LOG
Z ilu różnych hostów zostały zrejestrowane odpytania naszego serwera www: tail -10000 /var/log/www | cut -d ' ' -f 1 | sort | uniq | wc
Wyświetlanie fragmentów plików:
od początku: head -20 /var/log/messages
od końca: tail -20 /var/log/messages
Sortowanie wyników zwracanych przez program:
sort
Слайд 22

Przykłady Przetwarzania Potokowego tail -10000 /var/log/www

Przykłady Przetwarzania Potokowego

tail -10000 /var/log/www

Слайд 23

Przykłady Przetwarzania Potokowego tail -10000 /var/log/www | cut -d ' ' -f 1

Przykłady Przetwarzania Potokowego

tail -10000 /var/log/www | cut -d ' ' -f

1
Слайд 24

Przykłady Przetwarzania Potokowego tail -10000 /var/log/www | cut -d ' '

Przykłady Przetwarzania Potokowego

tail -10000 /var/log/www | cut -d ' ' -f

1 | sort | uniq

tail -10000 /var/log/www | cut -d ' ' -f 1 | sort | uniq | wc

Слайд 25

Dalsze Podstawy Linii Komend Pliki ukryte rozpoczynają się od kropki: .nazwa

Dalsze Podstawy Linii Komend

Pliki ukryte rozpoczynają się od kropki:
.nazwa
Zmienna systemowa PATH

definiuje liste katalogów, które są przeszukiwane w celu znalezienia pliku wykonywalnego.
export PATH=$PATH:.
export PATH=/opt/fx/bin:$PATH
Znaki specjalne:
. - bieżący katalog,
| - strumień
$ - zmienna
', '' - zmienne tekstowe
` - podstawienie komendy

Kontrola zadań:
zawieszenie zadania: CTRL+Z
przerwanie zadania: CTRL+C
przywrócenie na wierzch: fg
przywrócenie w tło: bg
Uruchamianie procesów w tle:
Na końcu komendy dodać znak &.

Слайд 26

Archiwizacja Danych Kompresja pojedynczego pliku: gzip [nazwa.txt] (w wyniku powstanie nazwa.txt.gz)

Archiwizacja Danych

Kompresja pojedynczego pliku:
gzip [nazwa.txt] (w wyniku powstanie nazwa.txt.gz)
bzip2 [nazwa.txt] (w

wyniku powstanie nazwa.txt.bz2)
Dekompresja plików:
gzip -d * lub gzip -d [nazwa.txt.gz]
bzip2 -d nazwa.txt.bz2
Scalanie drzew folderów i plików w jeden plik:
tar -cvf [n_archiwum.tar] [katalog]
Przywracanie drzewa z pliku:
tar -xvf [n_archiwum.tar] [katalog docelowy]
Scalanie i przywracanie z kompresją:
tar -cvzf [n_archiwum.tar] [katalog docelowy] lub tar -cvjf [n_archiwum.tar] [katalog docelowy]
tar -xvzf [n_archiwum.tar]
Слайд 27

Edytory Unix Wszędzie jest edytor vi. Nie wszędzie są: pico, nano,

Edytory Unix

Wszędzie jest edytor vi.
Nie wszędzie są: pico, nano, mcedit, joe.
Podstawowe

informacje o vi:
vi umożliwia pracę w dwóch trybach: edycji i komend. Standardowo po uruchomieniu edytora pracujemy w trybie komend.
a - przejście do trybu edycji (rozpoczęcie dodawania nowego tekstu za znakiem aktualnie zasłoniętym przez kursor).
i - przejście do trybu edycji (rozpoczęcie dodawania nowego tekstu przed znakiem aktualnie zasłoniętym przez kursor).
r - przejście do trybu edycji tylko na jeden znak (Zastąpienie znaku aktualnie zasłoniętego przez kursor).
R - przejście do trybu edycji (rozpoczęcie zastępowania wszystkich znaków).
ESC - przejście do trybu komend.
: - przejście do trybu komend wpisywanych na ekranie.
Слайд 28

Edytory Unix: vi Przykład Utworzenie nowego dokumentu wpisanie jednego zdania, zapisanie

Edytory Unix: vi

Przykład
Utworzenie nowego dokumentu wpisanie jednego zdania, zapisanie zmian i

wyjście:
max# vi nowy.txt
Rozpoczęcie dodawania tekstu:
[Klawisz i]Pisanie w vi jest proste.[ESC][:][w][q]
Objasnienie:
[Klawisz i] - ropoczęcie wstawiania
'Pisanie w vi jest proste.' - wpisane zdanie
[ESC] - powrót do trybu komend
[:] - przejście do trybu komend wpisywanych na ekranie
[w] - zapisanie zmian
[q] - wyjście z vi
Слайд 29

Edytory Unix: vi Jak wyjść z vi? [ESC]:q! - wyjście z

Edytory Unix: vi

Jak wyjść z vi?
[ESC]:q! - wyjście z vi bez

zapisywania zmian
[ESC]:wq - wyjście z vi z zapisaniem zmian (dokument musi mieć przyporządkowaną nazwę)
Jak zapisać dokument pod inną nazwą?
[ESC]:w nowa_nazwa.txt - zapisanie dokumentu pod nową nazwą
Jak skopiować i wkleić fragment dokumentu?
[ESC]yy - skopiowanie linii w której aktualnie znjaduje się kursor
[ESC]dd - wycięcie linii w której aktualnie znjaduje się kursor
[ESC]p - wklejenie skopiowanego tesktu za kursorem
[ESC]P - wklejenie skopiowanego tekstu przed kursorem
Слайд 30

Automatyzacja Zadań Pętle w powłoce: for i in [zbior]; do [komenda];

Automatyzacja Zadań

Pętle w powłoce:
for i in [zbior]; do [komenda]; done
Warunki:
if [

$a -eq ''iles'' ]; then [komenda]; fi
Przykład:
Chcemy pobrać z konkretnego adresu internetowego 100 plików o nazwach różniących się liczbą pod konkretnym numerem:
for i in `seq 1 100`; do wget http://www.adres/com/plik$i.jpg; done
Слайд 31

Automatyzacja Zadań: Skrypty Skrypt w unix: musi mieć uprawnienia do wykonywania

Automatyzacja Zadań: Skrypty

Skrypt w unix:
musi mieć uprawnienia do wykonywania (chmod u+x

skrypt.sh)
pierwsza linijka skryptu musi być postaci: #!sciezka_do_powloki (np: #!/bin/bash)
każda linijka skryptu to po prostu komenda
Слайд 32

Automatyzacja Zadań: cron Zaplanowane zadania: cron /etc/crontab : ustawienia systemowe crontab

Automatyzacja Zadań: cron

Zaplanowane zadania:
cron
/etc/crontab : ustawienia systemowe
crontab -e : zaplanowane zadania

jednego użytkownika.
minuta, godzina, dzień, miesiąc, dzień tygodnia, komenda
Liczba oznacza wartość o której ma być uruchamiana komenda.
Konstrukcja: */5 oznacza: uruchamiaj co 5...