1 / 78

Zarządzanie zasobami komputera.

Zarządzanie zasobami komputera. Zestaw programów pozwalających człowiekowi i programom użytkowym na dostęp do zasobów komputera w wygodny i bezpieczny , efektywny i abstrakcyjny sposób.

frye
Download Presentation

Zarządzanie zasobami komputera.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Zarządzanie zasobami komputera. Zestaw programów pozwalających człowiekowi i programom użytkowym na dostęp do zasobów komputera w wygodny i bezpieczny, efektywny i abstrakcyjny sposób. Wygodny i bezpieczny – dane do drukarki są wysyłane przez jeden program, pozwalając na bezpieczne drukowanie przez wielu użytkowników równocześnie Abstrakcyjny – system operacyjny oferuje abstrakcyjne pojęcie pliku zwalniając programy i użytkowników z potrzeby znajomości fizycznego położenia danych na dysku (głowice, cylindry, sektory, rozkazy sterownika) Efektywny – system operacyjny zawiesza działanie programów czekających na ukończenie wejścia/wyjścia, oszczędzając czas procesora

  2. Lata 50 – początki systemów operacyjnych, programy batch, minimalizacja przestojów między kolejnymi programami Lata 60 – pierwsze systemy operacyjne interaktywne. Kilku użytkowników korzystało z tego samego komputera równocześnie. Podział czasu Wiele różnych zespołów, wiele projektów, jednym z nich był Multics, koniec lat 60, general Electric, MIT, Bell Labs

  3. Bell Labs opuścił zespół pracujący nad systemem Multics i stworzył własny system operacyjny, Unix. Początkowo rozprowadzany za darmo, zdobył dużą popularność w uniwersytetach Lata 90 – pozycja Unixa stała się mocna, ale został produktem komercyjnym i drogim. Tani, podobny do Unixa system Minix był ubogi, napisany w celach dydaktycznych. 386BSD, prekursor systemów NetBSD, FreeBSD, OpenBSD był niedojrzały i potrzebował mocnego sprzętu

  4. UNICS 1969 Piąta edycja 1973 Szósta edycja 1976 Siódma edycja 1978 SYSV (5) 1983 BSD 1979 Solaris/SUNOS 5.x (SUN) AIX (IBM) IRIX (SGI) HP-UX (HP) Digital Unix (DEC) SCO UNIX (SCO) SUNOS 4.x (SUN) NextStep (NeXT) FreeBSD (Open Source) OpenBSD (Open Source) NetBSD (Open Source) Linux (Open Source) 1991

  5. Użytkownicy Shell, GUI Programy systemowe Aplikacje Biblioteki systemowe Jądro (kernel) Sprzęt (procesor, pamięć, dyski itp.)

  6. Jądro systemu – tworzy wirtualny komputer dla procesów użytkowych Interfejs do sprzętu (kart sieciowych, pamięci RAM, dysków itp) Ładowalne moduły do obsługi urządzeń, sieci, systemu plików itp. Pracuje w trybie uprzywilejowanym Cały kod i struktury danych w jednej przestrzeni adresowej Interfejs do bibliotek systemowych (system libraries)

  7. Procesy użytkowe chcąc skorzystać z jadra wywołują funkcje bibliotek systemowych. Biblioteki systemowe nie działają w trybie uprzywilejowanym, wykonują te funkcje systemu, które tego trybu nie wymagają, na przykład buforowanie wejścia/wyjścia Pełnią też zadania, które nie mają odpowiedników w funkcjach jądra, np. sortowanie, operacje matematyczne Zapewniają zgodność ze standardami – POSIX, UNIX itp.

  8. Aplikacje – np. Arkusz kalkulacyjny, edytor tekstu, przeglądarka internetowa Programy systemowe – dostarczane wraz z systemem operacyjnym, np. wyszukiwanie wzorca w plikach, konwersja formatu pliku, sortowanie Shell – tekstowy interfejs między człowiekiem a programami systemowymi i aplikacjami GUI (Graphical User Interface) graficzny interfejs między człowiekiem a programami systemowymi i aplikacjami

  9. shell – sh, ksh, csh, tcsh, bash... • Programy obsługujące zewnętrzne polecenia systemowe – ls, ps, netstat, grep .... • Programy działające w tle – daemony • Kompilatory i biblioteki • Aplikacje użytkowników

  10. Podajemy nazwę użytkownika • Podajemy hasło • System sprawdza poprawność nazwy i hasła (rozróżnia duże i małe litery!) • Wyświetla 'prompt” (interfejs tekstowy) lub uruchamia windows manager (interfejs graficzny) • Koniec pracy – exit (logout, ctrl-d) – interfejs znakowy, lub pozycja w menu (ikona) – interfejs graficzny

  11. Po pierwszym zalogowaniu się, a potem okresowo, lub w miarę potrzeb zmieniamy swoje hasło: [test@kempny ~]$ passwd Changing password for user test. Changing password for test (current) UNIX password: New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully. [test@kempny ~]$

  12. Ogólna postać komend UNIX nazwa_komendy opcje cel_komendy Nazwa_komendy(zwykle krótka, ze względów historycznych) to polecenie wbudowane w shell, nazwa aplikacji lub nazwa programu systemowego opcjemodyfikują działanie komendy cel – obiekt, którego komenda dotyczy Przykład: ls -l /etc

  13. Ćwiczenia • Zalogować się do systemu, zmienić hasło • Wydać poniższe komendy i zinterpretować ich wynik: cal 2000 cal 9 1752 echo Dzien dobry uname uname -a date pwd dmesg|more man dmesg ls /etc ls -l /etc uptime who whoami history id last w arch echo $SHELL echo ala\ ma\ {kota,psa} clear echo 5+4 echo 5+4|bc

  14. System plików • Jedno drzewo zawierające pliki na wszystkich urządzeniach • Urządzenia (dyski, partycje, pamięci flash) dołączane do filesystemu w punktach montowania • Punkt montowania to kartoteka, z chwila zamontowania urządzenia dotychczasowa zawartość jest przesłaniana

  15. System plików • Kartoteki • Zwykłe pliki • Link symboliczny, zwykły • Pipe • Pliki urządzeń – znakowych i blokowych

  16. Filesystem Hierarchy Standard (FHS) 2.3 29 stycznia 2004

  17. System plików - / (Root) • Musi zawierać wszystko, co potrzebne do uruchomienia systemu, jego odtworzenia lub naprawienia • Nie powinien być duży • Musi umożliwić zamontowanie pozostałych systemów plików

  18. System plików - /bin • Zawiera podstawowe polecenia używane przez administratora i wszystkich użytkowników • Musi zawierać polecenia niezbędne do zamontowania filesytemów

  19. System plików - /boot • Zawiera wszystko, co niezbędne do uruchomienia systemu, dane potrzebne zanim jądro systemu rozpocznie działanie • Jadro systemu może być w kartotece /boot lub w kartotece /

  20. System plików - /dev • Zawiera pliki specjalne lub pliki urządzeń • Jeśli w kartotece /dev możliwe jest tworzenie nowych plików urządzeń, musi zawierać polecenie MAKEDEV do ich tworzenia

  21. System plików - /etc • Zawiera pliki konfiguracyjne • Nie może zawierać programów binarnych • Zawiera podkartoteki na konfiguracje aplikacji

  22. System plików - /home • Zawiera pliki użytkowników • Nie musi występować w systemie

  23. System plików - /lib • Zawiera podstawowe biblioteki systemu • Musi występować w systemie • Musi zawierać zbiory: • libc.so.* podstawowa biblioteka C • ln (linker/loader)

  24. System plików - /media • Zawiera punkty montowania dla mediów wymiennych, CDROM, dyskietki, taśmy itp. System plików - /mnt • Zawiera punkty montowania dla filesystemów montowanych tymczasowo

  25. System plików - /sbin • Programy używane przez administratora systemu • Inne lokalizacje tych programów - /usr/sbin, /usr/local/sbin

  26. System plików - /tmp • Kartoteka na zbiory tymczasowe • Dostępna do zapisu dla wszystkich użytkowników • Podczas przeładowania systemu jej zawartość może i powinna być usunięta • Alternatywnym miejscem dla zbiorów tymczasowych jest /var/tmp – zawartość tej kartoteki nie jest kasowana przy przeładowaniu systemu

  27. System plików - /usr • Kartoteka na pozostałe zbiory systemu • Nie powinna być używana do zapisu przez użytkowników i aplikacje • Podkartoteki bin, sbin, share, lib, include, local • Może zawierać inne podkartoteki, np, X11R6, src

  28. System plików - /var • Kartoteka na zmieniające się pliki, np. logi systemowe, kolejki drukarek, kolejki poczty • Zawiera podkartoteki cache, lib, local, lock, log, opt, run, spool, tmp • Może zawierać opcjonalnie np. mail, games

  29. System plików - /proc • Opcjonalny, lecz często występujący w systemach Unix • Zawiera informacje o stanie systemu – procesach, urządzeniach, pamięci, przerwaniach itp. • Wirtualny, tworzony podczas pracy systemu. • Poprzez modyfikację zbiorów w tym systemie plików można zmienić działanie systemu, np. włączyć routing

  30. pwd - podaj bieżącą kartotekę ls - wyświetl zawartość kartoteki ls ścieżka - wyświetl zawartość wskazanej kartoteki ls -a -l – wszystkie pliki, ze szczegółami cd scieżka – zmień kartotekę (bez ścieżki – do kartoteki 'home') mkdir nazwa – utwórz kartotekę rmdir nazwa – usuń kartotekę (pustą) cp co gdzie – kopiuj plik(i) kartotekę(i) mv co gdzie – przenieś lub zmień nazwę pliku (kartoteki)

  31. rm plik(i) – usuń plik(i) (Uwaga! Nie da się odzyskać!) rm -i pliki – usuń pliki pytając przy każdym, czy na pewno rm -rf pliki – usuń pliki i kartoteki z podkartotekami, nie pytaj o nic touch nazwa – utwórz pusty plik o podanej nazwie (jeśli istnieje, zmień czas dostępu i modyfikacji na bieżący) pushd ścieżka - przejdź do wskazanej kartoteki, powrót komendą popd (nie każdy shell) df – wyświetla zajętość filesystemów du – wyświetla wielkość podkartotek

  32. ln plik nazwa_linku – tworzy twardy link do wskazanego pliku ln -s plik nazwa_linku – tworzy miękki link do wskazanego pliku Twardy link tworzy nowy wpis w kartotece wskazujący na zbiór, musi wskazywać na istniejący plik w tym samym filesystemie, usunięcie oryginału nie spowoduje usunięcia linku

  33. ? * - zastępują jeden i wiele znaków w nazwie [abxeo3-8] zastępuje pojedynczy znak jednym z wymienionych w nawiasach(znak '-' podaje przedział znaków) {ala,ola}.txt – iloczyn kartezjański łańcuchów w nawiasach . .. - bieżąca kartoteka, nadrzędna kartoteka

  34. Pewne znaki mają znaczenia specjalne. Aby to znaczenie specjalne wyłączyć, należy: poprzedzić go znakiem \ ująć tekst w pojedynczych apostrofach ' ' - wyłącza specjalne znaczenie wszystkich znaków ująć tekst w podwójnych apostrofach ” ” - wyłącza specjalne znaczenie większości znaków Uwaga, apostrofy ` ` działają inaczej!

  35. Ćwiczenia. Wykonaj i zaobserwuj działanie: [kempny@kempny ~]$ cat -> akuku to jest zawartosc zbioru akuku [kempny@kempny ~]$ cat akuku [kempny@kempny ~]$ cd tmp [kempny@kempny tmp]$ ln ../akuku kopia [kempny@kempny tmp]$ ls -l ../akuku kopia [kempny@kempny tmp]$ cat kopia [kempny@kempny tmp]$ cat ->> kopia a to dopisane do kopia

  36. [kempny@kempny tmp]$ cat kopia [kempny@kempny tmp]$ cat ../akuku [kempny@kempny tmp]$ ls -l ../akuku kopia [kempny@kempny tmp]$ rm ../akuku [kempny@kempny tmp]$ ls -l [kempny@kempny tmp]$ cat kopia [kempny@kempny tmp]$ Wykonaj to samo dla linku miękkiego

  37. [kempny@kempny tmp]$ cp /etc/passwd . [kempny@kempny tmp]$ ls [kempny@kempny tmp]$ mv passwd .. [kempny@kempny tmp]$ ls [kempny@kempny tmp]$ ls .. [kempny@kempny tmp]$ mv ../passwd . [kempny@kempny tmp]$ mv passwd haselka [kempny@kempny tmp]$ ls [kempny@kempny tmp]$rm haselka

  38. Utwórz dwie kartoteki o nazwach kot i pies W kartotece kot utwórz pusty plik o nazwie mysz Skopiuj kartotekę kot z jej zawartością do wnętrza kartoteki pies Komendą ls -laR wyświetl zawartości wszystkich podkartotek Usuń utworzone kartoteki z ich zawartością Utwórz zbiór o nazwie #gwiazdy, następnie usuń go Korzystając z komendy man wypróbuj działanie różnych opcji komendy ls

  39. [kempny@kempny tmp]$ touch ala{1,2,3,4} [kempny@kempny tmp]$ ls [kempny@kempny tmp]$ touch ala{1,2,3,4}nowe [kempny@kempny tmp]$ ls [kempny@kempny tmp]$ ls ala[12] [kempny@kempny tmp]$ ls ala? [kempny@kempny tmp]$ ls ala?n* [kempny@kempny tmp]$ ls ala[23]n* [kempny@kempny tmp]$ ls ala[1-3] [kempny@kempny tmp]$ ls ala[1-24]

  40. System plików - prawa do plików • Prawo do zapisu, odczytu, wykonania • Grupy praw dla właściciela, grupy i pozostałych użytkowników • Zapisywane często ósemkowo, kolejne bity oznaczają kolejno czytanie, zapis, wykonanie. Kolejne cyfry ósemkowe odnoszą się do właściciela, grupy i pozostałych. Na przykład754 oznacza:7 – czytanie, zapis i wykonanie dla właściciela5 – czytanie i wykonanie dla grupy4 – czytanie dla pozostałych

  41. Sticky bit • Dla plików dawniej nakazywał przechowywanie w swap, obecnie w Linuxie ignorowany • Dla kartotek – kasować i zmieniać nazwę zbiorów w nich może tylko root lub właściciel. Używane np. w kartotece /tmp

  42. set-UID set-GID • uruchomienie pliku przez zwykłego użytkownika spowoduje nadanie procesowi praw jego właściciela (grupy) • Niezbędne dla niektórych programów, np. passwd – modyfikuje shadow • Niebezpieczne, jeśli użytkownik podstawi własny program (np. shell) z set-UID

  43. Kolejne bity: 4 set-UID 2 set-GID 1 sticky bit 4 odczyt – właściciel 2 zapis – właściciel 1 wykonywanie – właściciel 4 odczyt – grupa 2 zapis – grupa 1 wykonywanie – grupa 4 odczyt – wszyscy 2 zapis – wszyscy 1 wykonywanie - wszyscy

  44. Chmod maska plik(i) Inny zapis: chmod [ugoa...][[+-=][rwx] u – user – właściciel g- group – grupa o, a other, all – pozostali r, w, x – odczyt, zapis, wykonywanie (dostęp do kartoteki) + dodaj - usuń = usuń wszystkie i pozostaw tylko te podane

  45. file nazwa –wyświetla informacje o pliku head, tail plik – wyświetla poczatek/koniec pliku tail -f plik – wyświetla ciągle koniec pliku (dodawane linie) more plik – wyświetla zawartość zbioru tekstowego ekran po ekranie cat plik plik plik - wyświetla cały zbiór(y)(również binarne, może sklejać zbiory) od plik – wyświetla ósemkowo (-x – szesnastkowo, -c znakowo) zawartość pliku binarnego

  46. find kartoteka -name nazwa –wyszukuje plik o podanej nazwie począwszy od wskazanej kartoteki Na przykład: find /home/kempny/ -name "*pdf" -exec ls -l {} \; which plik – wyszukuje położenie pliku komendy whereis komenda – wyszukuje położenie pliku binarnego, źródłowego i strony man komendy

  47. grep wzorzec plik –wyszukuje w pliku (plikach wskazany wzorzec Na przykład: grep kot *txt wyszuka słowo kot we wszystkich plikach o nazwach kończących się literami txt Pożyteczne opcje: -v – działanie odwrotne, znajdzie linie nie zawierające wzorca -i – ignoruj duże/małe litery -c – wyświetli tylko liczbę wystąpień wzorca

  48. wc – oblicz liczbę wierszy, wyrazów i znaków w zbiorze uniq – pomiń powtarzające się wiersze uniq -c – jak wyżej, ale podaj liczbę wystąpień sort -k pos1[pos2] sortuje linie według klucza od znaku pos1 do pos2 włącznie (liczone od 1) Na przykład: sort input.txt | uniq > output.txt sort input.txt | uniq | wc

  49. expand – zamień znaki tab na spacje colrm [startcol [endcol]] – usuń znaki w zbiorze od kolumny startcol do endcol, liczone od 1 ed – edytor liniowy, np. do zamiany łańcuchów vi – edytor ekranowy, makropolecenia do modyfikowania zawartości zbioru

  50. Kopie bezpieczeństwa systemu Dump – składuje filesystem lub jego część na taśmę (opcjonalnie do zbioru lub pipe) Poziomy 0-9. 0 - składuj wszystkie pliki, n<>0 składuj tylko te pliki, które zostały utworzone lub zmienione od ostatniego dump niższego poziomu Zbiór /etc/dumpdates zawiera informacje które filesystemy, kiedy i z jakim poziomem były składowane Typowe użycie dump -0u -f /dev/st0 /usr

More Related