Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Trochę historii Lata 50 – początki systemów operacyjnych, programy batch, minimalizacja przestojów między kolejnymi programami Lata 60 – pierwsze systemy.

Podobne prezentacje


Prezentacja na temat: "Trochę historii Lata 50 – początki systemów operacyjnych, programy batch, minimalizacja przestojów między kolejnymi programami Lata 60 – pierwsze systemy."— Zapis prezentacji:

1 Trochę historii 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 1

2 Trochę historii 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 2

3 Trochę historii Październik 1991 Linus Torvalds używał Unixa na uniwersytecie w Helsinkach, chciał mieć podobny system w domu. Próbował systemu Minix, ale chciał coś lepszego. Rozpoczął pisanie własnego systemu operacyjnego Po opublikowaniu pierwszej działającej wersji system przyciągnął uwagę innych programistów. Zaczął się dynamicznie rozwijać 3

4 Trochę historii Linux to tylko jądro systemu (zarządzanie pamięcią, drivery urządzeń, zarządzanie wielozadaniowością itp). Pozostałe oprogramowanie systemowe, w tym najaważniejszy – kompilator C pochodziły z Free Software Foundation's GNU project. Free Software Foundation's GNU project rozpoczął sie w 1984 roku, ma za cel stworzenie kompletnego farmowego wzorowanego na Unixie systemu operacyjnego. Linux czasami jest nazywany GNU/Linux. 4

5 Trochę historii Lata 92 i 93 – Linux wzbogacił się o protokół TCP/IP i środowisko graficzne (X Window), mogł zastąpić w stacjach roboczych Unixa. Wiele małych firm zajęło się rozwojem i dystrybucją Linuxa, pojawiły się grupy użytkowników Początek 1994 – rozpoczęto wydawanie Linux Magazine Marzec 1994 – jądro rok – Netscape udostępniło swoje oprogramowanie bezpłatnie. Powstał model oprogramowania typu open source 5

6 Co to takiego Linux to wzorowany na systemie Unix wielozadaniowy i wielodostępny system operacyjny dla 32 i 64 bitowych procesorów, działający na wielu platformach. Programy pisane dla UNIX działają na Linux po rekompilacji Linux, podobnie jak Unix był od początku projektowany jako wielozadaniowy. Wielozadaniowość musi być brana pod uwagę w całym systemie operacyjnym, systemy do których dodano ja później, robią to gorzej (przykład: win95 – win NT) 6

7 Co to takiego Dobra ochrona pamięci, program użytkowy nie może zniszczyć innego Linux był pisany na Intel 386, teraz działa na Sun SPARC i UltraSPARC, Motorola 68000, PowerPC, PowerPC64, ARM, Hitachi SuperH, IBM S/390, MIPS, HP PA-RISC, Intel IA-64, DEC VAX, AMD x86-64 and CRIS – procesory 32 i 64 bitowe 7

8 Co to takiego Skalowalność – działa w komputerach wbudowanych, telefonach komórkowych, mainframe,.... Dzięki technologii cluster np. Beowulf działa na superkomputerach 8

9 Co to takiego Pierwsze aplikacje to oprogramowanie naukowe, bazy danych, sieci komputerowe. Interfejs z linii komend. Pierwsze poważne zastosowania – jako serwery plików, poczty, baz danych Środowisko graficzne - KDE, Gnome pozwoliło na powstanie aplikacji dla zwykłych użytkowników, na przykład Open Office. 9

10 Dystrybucje Linux i jego oprogramowanie rozwijane jest przez wiele zespołów Możliwe jest samodzielne zebranie oprogramowania i jego zainstalowanie Wygodniej jest skorzystać z gotowego zestawu, dystrybucji 10

11 Dystrybucje Dystrybucja to jądro systemu, program instalacyjny i zestaw programów użytkowych Istnieją setki dystrybucji, ogólnego przeznaczenia i wyspecjalizowane. Różnią się programem instalacyjnym, konfiguracją jądra, zestawem programów użytkowych i ich wersją Najważniejsze dystrybucje ogólnego przeznaczenia - Red Hat, SuSE, Debian

12 UNICS 1969 Siódma edycja 1978 Szósta edycja 1976 Piąta edycja 1973 BSD 1979SYSV (5) 1983 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

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

14 Budowa systemu - jądro 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) 14

15 Budowa systemu - jądro Pięć głównych podsystemów: PSHED(process sheduler) odpowiada za dostęp do CPU MM (memory manager) odpowiada za bezpieczne użycie pamięci przez wiele procesów, obsługuje pamięć wirtualną NET (network interface) zapewnia dostęp do urządzeń sieciowych w różnych standardach 15

16 Budowa systemu - jądro Pięć głównych podsystemów: VFS (virtual filesystem) ukrywa dla procesów szczegóły fizycznego dostępu do urządzeń pamięci zewnętrznej. Obsługuje wiele formatów, kompatybilnych z innymi systemami operacyjnymi (vfat, cdfs, ntfs itp.) IPC (inter process communication) dostarcza mechanizmów do komunikacji między różnymi procesami na tej samej maszynie 16

17 Budowa systemu – biblioteki systemowe 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. 17

18 Budowa systemu – programy użytkowe Interpretatory poleceń – sh, 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 18

19 System plików 19 FHS 2.3.1

20 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 20

21 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 21

22 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 / 22

23 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 23

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

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

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

27 System plików - /media Zawiera punkty montowania dla mediów wymiennych, CDROM, dyskietki, taśmy itp. 27

28 System plików - /mnt Zawiera punkty montowania dla filesystemów montowanych tymczasowo 28

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

30 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 30

31 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 31

32 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 32

33 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 33

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

35 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ład 754 oznacza: 7 – czytanie, zapis i wykonanie dla właściciela 5 – czytanie i wykonanie dla grupy 4 – czytanie dla pozostałych użytkowników 35

36 System plików - prawa do plików 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 36

37 System plików - prawa do plików 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 37

38 System plików - prawa do plików Kolejne bity: 4set-UID 2set-GID 1sticky bit 4odczyt – właściciel 2zapis – właściciel 1wykonywanie – właściciel 4odczyt – grupa 2zapis – grupa 1wykonywanie – grupa 4odczyt – wszyscy 2zapis – wszyscy 1wykonywanie - wszyscy 38

39 System plików - prawa do plików 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 39

40 System plików – montowanie i odmontowanie 40 W dowolnym miejscu hierarchii systemu plików dołączyć możemy kolejny system plików miejsce, gdzie nowy system plików dołączymy nazywa się punktem montowania. Punkt montowania musi być kartoteką, po zamontowaniu jej ewentualna zawartość zostanie przesłonięta nową zawartością. Zamontować można dyskietkę, partycję dysku, cdrom, dysk udostępniany przez sieć itp

41 System plików – montowanie i odmontowanie 41 Do zamontowana systemu plików służy komenda mount, do odmontowania - umount Typowe użycie: mount -t typ urzadzenie punkt_montowania umount urzadzenie umount punkt montowania urzadzenie to plik specjalny w /dev punkt to kartoteka, w której chcemy zamontować system plików

42 System plików – montowanie i odmontowanie 42 typ określa fizyczny format zapisu na montowanym nośniku, może to być fat, vfat, cdfs, ntfs, ufs, ext2, ext3, nfs.... Odmontować system plików można podając urządzenie lub punkt jego zamontowania. Nie można odmontować systemu plików, jeśli jest używany

43 System plików – montowanie i odmontowanie 43 Podczas startu systemu automatycznie montowane są systemy wskazane w zbiorze /etc/fstab: LABEL=/1 / ext3 defaults 1 1 none /dev/pts devpts gid=5,mode= none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0 LABEL=/usr1 /usr ext3 defaults 1 2 LABEL=/var1 /var ext3 defaults 1 2 /dev/hda2 swap swap defaults 0 0 /dev/hda7 /home ext3 defaults 1 2

44 System plików – tworzenie filesystemu 44 fdisk – program do podziału dysku na partycje fdisk urządzenie (np. /dev/hda) p – wyświetla istniejącą tablicę partycji n – tworzy nową partycję d - kasuje partycję l – wyświetla listę znanych typów partycji m – wyświetla help t – zmienia typ partycji w- zapisuje tablicę partycji na dysku q – wyjście bez zapisania zmian

45 System plików – tworzenie filesystemu 45 mke2fs – program do tworzenia w partycji filesystemu ext2/ext3 mkfs – program do tworzenia w partycji filesystemu. Jeśli nie podamy typu, utworzy ext2. Potrafi utworzyć filesystemy msdos, vfat, reiserfs, jfs... Wszystkie, dla których zainstalowano programy mkfs.typ Użycie: mke2fs urzadzenie (np. /dev/hda0) mkfs -t typ urzadzenie

46 System plików – tworzenie filesystemu 46 fdformat – program do formatowania dyskietki w formacie dos fdformat [-n] urzadzenie urzadzenie to /dev/fd0 (/dev/fd1) lub /dev/fd0d360 (minor = 4) /dev/fd0h1200 (minor = 8). /dev/fd0H1440 (minor = 28) n – bez weryfikacji w niektórych systemach urządzenia inne niż fd0 trzeba utworzyć przez MAKEDEV

47 System plików – użyteczne polecenia 47 ls – wyświetla zawartość kartoteki cp – kopiuje pliki i kartoteki mv – przenosi plik w inne miejsce lub zmienia nazwę pliku more – wyświetla zawartość pliku znakowego od – wyświetla zawartość pliku ósemkowo, dziesiętnie, szesnastkowo lub znakowo df – wyświetla zajętość systemu plików du – wyświetla wielkość podkartotek mount – (bez parametrów) wyświetla zamontowane systemy plików

48 System plików – użyteczne polecenia 48 touch – tworzy nowy, pusty zbiór cat - wyświetla zawartość pliku lub plików, umożliwia łączenie plików grep – wyszukuje wzorcowy łańcuch w plikach tail – wyświetla koniec pliku rm – usuwa plik lub kartotekę rmdir – usuwa kartotekę mkdir – tworzy kartotekę ln – tworzy symboliczny link mkfifo – tworzy pipe chmod – zmienia prawa pliku chown – zmienia właściciela pliku

49 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 49

50 ? * - 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 50

51 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! 51

52 Postawy języków shell 52 Jeden z podstawowych programów systemu Unix Interpreter języka poleceń wydawanych w linii komend lub ze zbioru Klasyczna wersja – sh, odmiany csh, tcsh, bash, ksh W systemach Linux używany jest jako podstawowy bash - GNU Bourne-Again Shell, kompatybilny z SH Tworzy interfejs użytkownika do systemu Unix, do jego jądra, dlatego nazywany często powłoką

53 Postawy języków shell - bash 53 Separator (blank) – jedna lub więcej spacji lub znaków tabulacji Potok (pipeline) – znak | kieruje wyjście z jednego polecenia do wejścia następnego, na przykład: cat moj_list | grep Ania wyświetli te linie w zbiorze moj_list w których występuje wyraz Ania Lista (lists) – jeden lub więcej potoków oddzielonych operatorem ; & && lub ||, zakończonych opcjonalnie przez ; & lub nową linię

54 Postawy języków shell - bash 54 Potoki oddzielone operatorem ; wykonywane są sekwencyjnie – po skończeniu jednego wykonuje się kolejny Potoki oddzielone operatorem & wykonywane są równolegle – po uruchomieniu pierwszego wykonuje się kolejny. Będą pracowały równocześnie pipeline1 && pipeline2 – pipeline2 wykona się tylko wtedy, jeśli pipeline1 zakończy działanie bez błędu (status 0) pipeline1 || pipeline2 – pipeline2 wykona się tylko wtedy, jeśli pipeline1 zakończy działanie błędem (status <>0)

55 Postawy języków shell – bash. Polecenia złożone 55 for name [ in word ] ; do list ; done Lista word jest rozwijana, każde wystąpienie przypisywane jest zmiennej name i wykonywana jest lista list Przykład: >$ for I in a* ; do file $I ; done aaa: ASCII text aaa.zip: Zip archive data, at least v2.0 to extract aplik: directory

56 Postawy języków shell – bash. Polecenia złożone 56 if list; then list; [ elif list; then list; ]... [ else list; ] fi Wykonywana jest lista po if. Jeśli zakończy się sukcesem, wykonywana jest lista po then, w przeciwnym wypadku wykonywane są kolejne elif. Jeśli żadna lista po if i elif nie zakończy się sukcesem, wykonywana jest lista po else. Przykład: >$ if ls | grep -q zip; then echo "jest"; else echo "brak"; fi brak >$ touch aaa.zip >$ if ls | grep -q zip; then echo "jest"; else echo "brak"; fi jest

57 Postawy języków shell – bash. Quoting 57 Pewne znaki i wyrazy mają specjalne znaczenie dla bash. Aby to zmienić, należy użyć 'quoting': znak \ wyłącza specjalne znaczenie następnego znaku. Jeśli następnym znakiem jest nowa linia, to sekwencja taka oznacza kontynuację linii. Dwa kolejne znaki \ oznaczają pojedynczy \ Ujęcie sekwencji znaków w parę ' wyłącza specjalne znaczenie wszystkich znaków w tej sekwencji Ujęcie sekwencji znaków w parę wyłącza specjalne znaczenie wszystkich znaków w tej sekwencji za wyjątkiem $, ` i \. Znaki * uzyskują nowe znaczenie

58 Postawy języków shell – bash. Parameters 58 Parameter służy do przechowywania wartości. Może być to nazwa, liczba albo znak specjalny. Zmienna to parameter który jest nazwą. Tworzymy ją: nazwa=[wartosc] Jesli wartosc nie wystąpi, to tworzona jest zmienna, której wartością jest zerowy łańcuch Przykład: >$Imie=Ewa >$echo $Imie Ewa

59 Postawy języków shell – bash. Parameters 59 Positional parameter – określony jedną cyfrą różną od 0 lub kilkoma cyframi. Ich wartościami są kolejne parametry wywołania komendy. Przykład: >$cat -> aaa echo $1:$2:$3 >$chmod 777 aaa >$./aaa Nic nie rozumiem Nic:nie:rozumiem

60 Postawy języków shell – bash. Special Parameters 60 ? - status ostatnio wykonanego potoku $ - nasz numer procesu 0 – nazwa programu, który uruchomił nasz proces Przykład: >$cat -> aaa echo $0__$1:$2:$3 >$chmod 777 aaa >$./aaa Nic nie rozumiem./aaa__Nic:nie:rozumiem

61 Postawy języków shell – bash. Expansion 61 mkdir /tmp/{kart1,kart2,kart3} tworzy trzy kartoteki o nazwach kart1, kart2, kart3 w kartotece /tmp echo ~uzytkownik wyświetla domyślną kartotekę użytkownika. Bez podania nazwy użytkownika wyświetla domyślną kartotekę aktualnego użytkownika ${parameter} – zostaje rozwinięte jako wartość parameter. Nawiasy są konieczne, jeśli po nazwie są znaki, które do niej nie należą, na przykład: >$Imie=Ewa >$echo ${Imie}12 Ewa12

62 Postawy języków shell – bash. Expansion 62 `polecenie` lub $(polecenie) – wykonywane jest polecenie, a to, co wyświetli, staje się częścią linii polecenie, w której konstrukcja została użyta. Na przykład: >$touch /tmp/{a,b,c,akuku} >$ls /tmp a b c akuku >$cat -> aaa a b c >$rm `cat aaa` >$la /tmp akuku

63 Postawy języków shell – bash. Przekierowanie wejścia i wyjscia 63 Każdy proces w unixie, jeśli tego nie zmienimy, pobiera dane ze standardowego wejścia ( stdin ), wysyła na standardowe wyjście ( stdout ). Ewentualne komunikaty o błędach kierowane są na standardowe wyjście błędów ( stderr ). W interaktywnym shell stdin to klawiatura, a stdout i stderr to ekran. Te trzy strumienie w sh można przekierować: > przekierowuje stdout < przekierowuje stdin stdin, stdout i stderr mają odpowiednio file descriptor 0, 1 i 2

64 Postawy języków shell – bash. Przekierowanie wejścia 64 [n]

65 Postawy języków shell – bash. Przekierowanie wyjścia 65 [n]>word Użycie >> spowoduje dopisanie wyjścia do istniejącej zawartości zbioru. Wyjście do file descriptor n zostaje przekierowane do pliku word. Jeśli n zostanie pominięte, zostanie przyjęte 1, czyli stdout. Na przykład: ps ax >aaa 2>/dev/null spowoduje wyświetlenie stanu wszystkich procesów i zapisanie tego wydruku w zbiorze aaa. Ewentualne komunikaty o błędach zostaną zniszczone.

66 Postawy języków shell – bash. Alias 66 Pozwala na zastąpienie słowa ciągiem znaków. Słowo to użyte jako pierwsze w poleceniu zostanie zastąpione tym ciągiem znaków. Używane tylko w trybie interaktywnym. alias ll='ls -l' unalias ll alias bez parametrów wyświetla listę zdefiniowanych aliasów.

67 Postawy języków shell – bash. Operatory arytmetyczne i logiczne 67 i++ i-- ++i –i zwiększenie/zmniejszenie zmiennej i po/przed operacją o znak (unary + -) ! ~ negacja logiczna i bitowa ** potęgowanie +- dodawanie, odejmowanie > przesunięcie bitowe w lewo i prawo = porównanie == != równość i nierówność

68 Postawy języków shell – bash. Operatory arytmetyczne i logiczne 68 = *= /= %= += -= >= &= ^= |= przyporządkowanie wartości & ^ | bitowe and, xor, or && || logiczne and, or expr1?expr2:expr3 obliczenie warunkowe – jeśli expr1 = 1, to wykonywane expr2, jeśli 0, to expr3 expr1, expr2 wyrażenie przecinkowe – wykonywane kolejno expr1, expr2, ale pozostaje tylko wynik expr2

69 Postawy języków shell – bash. Zadania (jobs) 69 Wykonując potok shell uruchamia zadanie. Może ono byś wykonywane w pierwszym planie (foreground) lub w tle (background). ^z przeniesienie zadania do background (jego wykonywanie zostanie wstrzymane) jobs – wyświetlenie zadań w background fg – przeniesienie zadania do foreground bg %n – uruchomienie wstrzymanego zadania w background kill %n – usunięcie zadania z background

70 Postawy języków shell – bash. Historia poleceń 70 Bash pamięta historię wydawanych poleceń (domyślnie 1000) w zbiorze ~/.bash_history !n !-n, !! – powtórz linię n, bieżącą minus n, poprzednią !lancuch – powtórz linię zaczynającą się od łańcucha !?lancuch[?] - powtórz linię zawierającą łańcuch ^lancuch1^lancuch2^ powtórz ostatnią linię, zastąp lańcuch1 łańcuchem2 klawisze starzałek w górę i w dół wyświetlają kolejne polecenia

71 Postawy języków shell – bash. Funkcje wbudowane 71 break [n] opuść pętlę for, while, until, select (lub n poziomów) cd dir – zmień kartotekę continue n – kontynuuj wykonywanie for, while, until (n – który poziom w górę) echo [arg...] wyświetl argumenty oddzielone spacjami, zakończone nową linią exit [n] zakończenie pracy shell z kodem n help [wzór] – podpowiedź. history – wyświetla historię poleceń pwd – wyświetl bieżącą ścieżkę

72 Postawy języków shell – bash. Funkcje wbudowane 72 test expr lub [ expr ] - wylicza wyrażenie expr i zwraca wartość 0 lub 1 ! expr - negacja wyrazenie1 -a wyrazenie2 – and (-o - or) lancuch1 = lancuch2 łańcuchy równe (!= - nierówne) stala1 -eq stala2 – stałe równe (-ge, -gt, -le, -lt, -ne) plik1 -ef plik2 – plik1 nowszy (-ot – starszy) niż plik2 -c plik – istnieje plik i jest znakowy (-d – kartoteka, -e – po prostu istnieje) -r plik – istnieje i jest do odczytu (-w – do zapisu)

73 Postawy języków shell – bash. Przykład 73 #!/bin/sh echo "*******************************************" echo -e "Poczatek archiwizacji `date`" cd /home/automaty/kopie # usun stare kopie, zostanie jeden zestaw, z # ostatniego przebiegu rm *.gz NAME=fksa`date +%d%m%y` echo $NAME tar -cf $NAME /reszta1/fkdbfsa/*.dbf /reszta1/fkdbfsa/*.mem 2>/dev/null gzip $NAME

74 Postawy języków shell – bash. Przykład 74 echo Skladowanie na tasme: tar -cvf /dev/nst0 *.gz 2>/dev/null mt -f /dev/nst0 rewoffl # przeslij ftp do innego komputera ftp alpha.huta echo -e "Koniec archiwizacji `date`"

75 Uruchamianie i zatrzymywanie systemu 75 Pierwszy uruchamiany program - manager bootowania (boot loader). Lilo, GNU Grub – używane w Linuxie Przekazują sterowanie do jądra systemu (lub innego systemu operacyjnego) zbiory konfiguracyjne - /etc/lilo.conf, /etc/grub.conf zmiany w lilo.conf trzeba zapisać poleceniem /sbin/lilo Grub jest nowszy, ma większe możliwości

76 Uruchamianie i zatrzymywanie systemu 76 Pierwszym procesem uruchamianym po załadowaniu jądra jest init. Jest on ojcem wszystkich innych procesów Odczytuje plik /etc/inittab opisujący jakie procesy uruchomić Linia zawierająca initdefault podaje, w jakim trybie uruchomić system, np: id:5:initdefault:

77 Uruchamianie i zatrzymywanie systemu 77 0 – halt (zatrzymanie systemu, nie używac w inittab) 1 – single user – tryb jednoużytkownikowy 2 – wieloużytkownikowy, bez NFS 3 – wieloużytkownikowy 4 – nie używany 5 – X11 6 – reboot (przeładowanie systemu) tryby 7 – 9 są poprawne, ale nie używane Zmiana trybu pracy – tellinit n n = 0, 1, 2, 3, 5 lub 6 – przełączenie do innego trybu n= s lub S – do trybu 1 n = Q lub q - ponowne odczytanie inittab

78 Uruchamianie i zatrzymywanie systemu 78 W linuxie skrypty startowe są w kartotece /etc/rc.d Pierwszym uruchamianym skryptem jest rc.sysinit. Inicjuje on nazwę komputera, urządzenia, parametry jądra, ustawia czas systemowy, montuje swap i filesystemy, łąduje moduły jądra itp. Po jego skończeniu uruchamiane są skrypty w kartotece /etc/rc.d/rcn.d (n to numer poziomu). Uruchamiane są tylko te, których nazwa zaczyna się od litery S. Skrypty te to linki do plików w kartotece /etc/rc.d/init.d

79 Uruchamianie i zatrzymywanie systemu 79 Skrypty w kartotece /etc/rc.d/init.d pozwalają na zatrzymanie, uruchomienie, restart, sprawdzenie stanu zainstalowanych w systemie składników oprogramowania: #./syslog stop Shutting down kernel logger: [ OK ] Shutting down system logger: [ OK ] #./syslog start Starting system logger: [ OK ] Starting kernel logger: [ OK ] #./syslog status syslogd (pid 571) is running... klogd (pid 575) is running..

80 Uruchamianie i zatrzymywanie systemu 80 Skrypty startowe systemu czytają konfigurację ze zbiorów w /etc/sysconfig. Są tam informacje o strefie czasowej, języku, układzie klawiatury, wyglądzie konsoli, ustawieniach sieci itp. Są tam również skrypty do konfigurowania urządzeń, na przykład interfejsów sieciowych

81 Uruchamianie i zatrzymywanie systemu 81 Procesy uruchamiane podczas startu systemu mogą zakończyć swoje działanie po wykonaniu swojego zadania, albo pracować przez cały czas. Procesy które działają ciągle, świadcząc pewne usługi nazywamy daemonami. Niektóre procesy obsługujące usługi internetowe, które są potrzebne czasami uruchamiane są na żądanie przez superdaemon xinetd (inetd)

82 Monitorowanie stanu systemu 82 ps – procesy w systemie w – aktywni użytkownicy top – najaktywniejsze procesy vmstat – pamięć wirtualna, plik wymiany, obciążenie we/wy, procesora lsof – otwarte pliki df – zamontowane filesystemy i ich zajętość du – rozmiar podkartotek last – historia logowania użytkowników (zbiór wtmp)

83 Monitorowanie stanu systemu 83 dmesg - komunikaty jądra systemu lsmod – załadowane moduły jądra lspci – sprzęt przyłączony do szyny PCI lsusb – urządzenia przyłączone do USB filesystem /proc – informacje o procesach, zajętych zasobach, sprzęcie itp.

84 Monitorowanie stanu systemu 84 find – wyszukuje pliki o wskazanej nazwie, wielkości, czasie utworzenia, właścicielu (grupie), bez właściciela (grupy), prawach. Umożliwia dla znalezionych plików wykonanie dodatkowych operacji, na przykład: find. -mtime +14 -name "*.gz" -exec rm -f {} \; wyszukaj w bieżącej kartotece pliki modyfikowane (utworzone) dawniej niż 14 dni, z nazwą *.gz i usuń je.

85 Funkcje sieciowe 85 Sterowniki urządzeń sieciowych ładowane jako moduły jądra, przez skrypt: /etc/rc.d/rc.sysinit Sterowniki użytkownika zdefiniowane w: /etc/sysconfig/modules

86 Funkcje sieciowe 86 /etc/sysconfig/network uruchamiany przez /etc/rc.d/rc.sysinit, ustawia zmienne środowiskowe, czytane później przez skrypty startowe /etc/rc.d/init.d/network i skrypty w /etc/sysconfig/network-scripts NETWORKING=yes HOSTNAME=kempny GATEWAY= GATEWAYDEV=eth0 FORWARD_IPV4="yes"

87 Funkcje sieciowe 87 /etc/sysconfig/network-scripts skrypty startowe i konfiguracja interfejsów sieciowych $>more ifcfg-eth0 # Broadcom Corporation|BCM Base-T DEVICE=eth0 BOOTPROTO=static BROADCAST= HWADDR=00:02:E3:3A:52:FC IPADDR= NETMASK= NETWORK= ONBOOT=yes TYPE=Ethernet

88 Funkcje sieciowe 88 Interfejs sieciowy może mieć więcej niż jeden adres: $>more ifcfg-eth0:0 # Broadcom Corporation|BCM Base-T DEVICE=eth0:0 BOOTPROTO=static BROADCAST= IPADDR= NETMASK= NETWORK= ONBOOT=yes TYPE=Ethernet

89 Funkcje sieciowe 89 Ifconfig – programuje interfejsy sieciowe, wyświetla ich ustawienia i statystyki: ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:02:E3:3A:52:FC inet addr: Bcast: Mask: UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:152 errors:0 dropped:0 overruns:0 frame:0 TX packets:132 errors:0 dropped:0 overruns:0 carrier:4 collisions:0 txqueuelen:1000 RX bytes:20858 (1.9 Mb) TX bytes: (965.5 Kb) Interrupt:3

90 Funkcje sieciowe 90 Ifconfig – programuje interfejsy sieciowe, wyświetla ich ustawienia i statystyki: ifconfig eth0: netmask Tworzy wirtualny interfejs eth0:0 i przypisuje mu adres IP z maską

91 Funkcje sieciowe 91 Ścieżka default i ścieżki do sieci przyłączonych bezpośrednio do interfejsów tworzone są przy starcie systemu lub po zaprogramowaniu nowego interfejsu Pozostałe ścieżki dodać (usunąć) możemy poleceniem route: route [-v] [-A family] add [-net|-host] target [netmask Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev] If] route [-v] [-A family] del [-net|-host] target [gw Gw] [netmask Nm] [metric N] [[dev] If]

92 Funkcje sieciowe 92 Wyświetlenie tablicy routingu – polecenie route lub netstat -rn Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface * U eth * U eth * U eth * U lo default UG eth0

93 Funkcje sieciowe 93 Dynamiczne tworzenie tablicy routingu – daemony routed (protokół RIP) i gated (protokoły RIP, BGP, EGP, OSPF) Nie uruchamiać bez wyraźnej potrzeby!! Aby Linux pracował jako router, potrzebny wpis FORWARD_IPV4="yes" w /etc/sysconfig/network. Czasami ten wpis jest ignorowany, wtedy: echo 1 > /proc/sys/net/ipv4/ip_forward

94 Funkcje sieciowe 94 $> cat /etc/host.conf order hosts,bind $> cat /etc/resolv.conf domain stanpol.com.pl #nameserver nameserver W /etc/resolv.conf zdefiniowane jest nazwa domeny DNS. Polecenie domainname wyświetla i ustawia nazwę domeny NIS/YP !

95 Funkcje sieciowe 95 $> cat /etc/hosts localhost.localdomain localhost $> cat /etc/services telnet 23/tcp telnet 23/udp # 24 - private mail system smtp 25/tcp mail smtp 25/udp mail time 37/tcp timserver time 37/udp timserver

96 Funkcje sieciowe 96 netstat – stan połączeń sieciowych. Z opcjami alp wyświetla, które programy słuchają na portach ping - diagnostyka sieci, wysyła ramki ICMP. Opcje - -n bez DNS, -f flood, -s rozmiar ramki, -b na adres broadcast, -R zapis trasy traceroute, mtr - wyświetlenie trasy ramek. Traceroute używa domyślnie UDP (można zmienić na ICMP) nslookup, host – konwersja adresów IP i nazw z użyciem DNS

97 Funkcje sieciowe 97 ipchains – filtrowanie pakietów z dokładnością do interfejsu, adresów nadawcy i odbiorcy, portów iptables – firewall arpwatch – śledzi przyporządkowanie adresów IP adresom MAC nmap – narzędzie do skanowania zasobów sieciowych i wykrywania luk w bezpieczeństwie ettercap – sniffer, man in the middle – czasami przydatny dla administratora arp – wyświetla i modyfikuje tablicę ARP

98 Funkcje sieciowe 98 Serwery sieciowe działają jako samodzielne daemony, albo uruchamiane na żądanie przez daemon xinetd sendmail – poczta elektroniczna SMTP apache – serwer WWW squid – serwer w3cache vuftpd, vsftpd – serwery ftp tftp – serwer tftp pop3d, imap.d – serwery po3, imap4 lpd, cups – serwery drukarek samba – serwer (i klient) plików w sieciach Microsoft ntpd – serwer czasu telnetd, sshd – serwery telnet, ssh....

99 Kopie bezpieczeństwa systemu 99 Dump – składuje filesystem lub jego część na taśmę (opcjonalnie do zbioru lub pipe) Poziomy 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

100 Kopie bezpieczeństwa systemu 100 restore – odtwarza filesystem lub pojedyncze zbiory z kopii utworzonej przez dump z opcją -i wchodzi w tryb interaktywny umożliwiając odtworzenie pojedynczych zbiorów Typowe użycie: mke2fs /dev/sda1 mount /dev/sda1 /mnt cd /mnt restore rf /dev/st0 Jeśli były wykonywane częściowe dumpy, najpierw należy odtworzyć dump poziomu 0, później kolejno dumpy wyższych poziomów

101 Kopie bezpieczeństwa systemu 101 tar – program do składowania zbiorów na taśmę i odtwarzania ich. Może też składować do pliku. Użycie: tar opcje zbiory_do skopiowania typowe opcje c – utwórz archiwum x – odtwórz zbiory z archiwum t – wyświetl zbiory z archiwum v – verbose, wyświetlaj co jest wykonywane f – zbiór z archiwum (domyślnie /dev/rmt0 ) C kartoteka – odtwórz pliki do wskazanej kartoteki

102 Kopie bezpieczeństwa systemu 102 Typowe użycie: tar -cvf /tmp/kopia /etc w zbiorze /tmp/kopia zostanie utworzone archiwum wszystkich zbiorów z kartoteki (i podkartotek) /etc tar -vxf /tmp/kopia w bieżącej kartotece odtworzy wszystkie zbiory z archiwum w /tmp/kopia

103 Kopie bezpieczeństwa systemu 103 Polecenia tar i dump mogą opcjonalnie poddawać pakowane zbiory kompresji. Jeśli składowanie odbywa się do zbioru, lepiej jest jednak poddać kompresji archiwum, jednym z dostępnych programów: compress, gzip, bzip2, zip, arj

104 Kopie bezpieczeństwa systemu 104 Polecenia tar i dump w przypadku składowania na taśmę działają powoli. Niewielkie ilości danych wygodnie jest zarchiwizować do pliku na dysku lokalnym i przesłać na dysk innego komputera (samba, nfs, ftp), składując na taśmie jedynie okresowe kopie. Składowanie najlepiej uruchamiać daemonem cron Ważnym jest opracowanie i opisanie szczegółowych procedur wykonywania kopii bezpieczeństwa. Jest to bardzo przydatne podczas odtwarzania systemu po awarii.

105 Edytory ed, vi - ed 105 Ed – edytor liniowy operuje zawsze na pojedynczej linii tekstu operuje na kopii zbioru w buforze, oryginalny zbiór jest modyfikowany dopiero podczas zapisu bufora dwa tryby pracy – komend i wprowadzania Przydatny do obróbki bardzo dużych zbiorów, do wielokrotnej zamiany tekstu w dużej części zbioru lub kiedy nie jest dostępny tryb pełnoekranowy (niektóre awarie systemu) użycie – ed plik

106 Edytory ed, vi - ed 106 W trybie wprowadzania wszystko, co wprowadzimy z klawiatury jest wpisywane do pliku wejście w tryb wprowadzania: i – przed zaadresowaną linią, a – za zaadresowaną linią wyjście z trybu wprowadzania i powrót do trybu komend – linia zawierająca tylko jedną kropkę

107 Edytory ed, vi - ed 107 W trybie komend wszystko, co wprowadzimy z klawiatury traktowane jest jako polecenia. Adresowanie linii:. bieżąca linia $ ostatnia linia n linia n (liczona od 1) - poprzednia linia (-n – n-ta poprzednia linia) + następna linia (+n – n-ta kolejna linia) /re/ (?re?) następna (poprzednia) linia zawierająca regular expression Zakres linii – dwa adresy linii oddzielone znakiem,

108 Edytory ed, vi ed 108 Przykładowe komendy (.)a – dodaj tekst za zaadresowaną linią (.,.)d – usuń linie z zakresu (.)i - dodaj tekst przed zaadresowaną linią (.,.)s/wzor1/wzor2/ – w podanym zakresie w każdej linii zamienia pierwsze wystąpienie wzor1 na wzor2. (.,.)s/wzor1/wzor2/g – jak wyżej, ale zamienia wszystkie wystąpienia w każdej linii z zakresu.

109 Edytory ed, vi - ed 109 Podstawowe komendy q – opuszczenie edytora w [plik] - zapisanie zmian, opcjonalnie do innego pliku r plik -wczytanie zbioru i dopisanie za bieżącą linią

110 Edytory ed, vi - ed 110 Przykładowa sesja >$ cd /etc >$ ed inittab 1666 /\:initdefault id:5:initdefault: s/5/3/ w 1666 q >$

111 Edytory ed, vi - vi 111 vi - edytor ekranowy (vim, vi IMproved) potężne możliwości rozumie składnię wielu języków programowania możliwość pracy w trybie liniowym makropolecenia pracuje na każdym terminalu ze sterowaniem kursorem

112 Edytory ed, vi - vi 112 Uruchomienie: vi plik :q! wyjście z anulowaniem zmian :wq lub ZZ – zapis zmian i wyjście :r zbiór wczytanie zbioru i dopisanie za bieżącą linią :w [plik] zapisanie zmian, opcjonalnie w innym pliku

113 Edytory ed, vi - vi 113 tryb wprowadzania tekstu tryb komend tryb liniowy

114 Edytory ed, vi - vi 114 W trybie liniowym można wprowadzać polecenia edytora ed Wejście w tryb liniowy – poprzedzenie polecenia znakiem : Przykłady: :1,45s/zmienna_c/stala_c/g w liniach 1 – 45 zamieni łańcuch zmienna_c na stala_c :1,.d usunie linie od pierwszej do bieżącej := wyświetli numer bieżącej linii :5 przeniesie kursor do linii 5

115 Edytory ed, vi - vi 115 Poruszanie się po tekście – strzałki lub klawisze: k – w górę h – w lewo l – w prawo j – w dół w niektórych wersjach vi poruszanie się w górę i w dół nie działa w trybie wprowadzania tekstu Wyszukiwanie tekstu: /wzor przeniesie kursor na początek wzoru. Kolejne pojedyncze / wyszukają jego kolejne wystąpienia

116 Edytory ed, vi - vi 116 Podstawowe komendy i – wejdź w tryb wprowadzania tekstu, ustaw kursor przed bieżącym znakiem (a – za nim, I – na początku linii, A – na końcu linii) esc – wyjście z trybu wprowadzania tekstu r – zastąp jeden znak nowym [n]s – zastąp n znaków nowymi, pozostań w trybie wprowadzania [n]x – usuń znak (n znaków) pod kursorem (X – na lewo od niego) zapamiętaj je w buforze. powtórz ostatnia komendę :h – wyświetl help

117 Edytory ed, vi - vi 117 Podstawowe komendy [n]dd usuń n linii (zapamiętaj je w buforze) [n]yy skopiuj do bufora n linii p - wstaw zawartość bufora pod bieżącą linię (P – nad nią). Jeśli w buforze są znaki usunięte komendą x, to wstaw zawartość bufora za kursorem (P - przed)

118 Edytory ed, vi – vi 118 Makropolecenia Zapamiętanie makropolecenia: q{rejestr} ciag komend do zapamietania q jako rejestr może być użyta dowolna litera a -z Wykonanie makropolecenia wykonane zostaną wszystkie zapamiętane poprzednio w rejestrze polecenia. n wskazuje, ile razy makropolecenie ma zostać wykonane

119 Pakiety rpm 119 Klasyczny sposób instalacji oprogramowania w Unix - programy w wersji źródłowej, spakowane tar >$ tar -vxf pakiet.tar >$ cd pakiet >$./configure >$ make >$ make install >$ make clean Podstawowa wada – po zainstalowaniu trudno zapanować, gdzie zostały skopiowane poszczególne komponenty

120 Pakiety rpm 120 Pakiety rpm zawierają archiwum plików i dane pomocnicze używane do instalowania i usuwania plików z archiwum Po zainstalowaniu pakietu w bazie danych pamiętana jest informacja o zainstalowanych składnikach – gdzie zostały zainstalowane, jaka powinna być ich suma MD5 i atrybuty – umożliwia to dokładne odinstalowanie oprogramowania i sprawdzenie jego zgodności z oryginałem

121 Pakiety rpm 121 Pakiety rpm występują w dwu wariantach, zawierających skompilowane, binarne programy do zainstalowania (binary rpm) lub programy źródłowe i zasady ich kompilacji (source rpm) Do zarządzania pakietami rpm służy program rpm Baza danych zainstalowanych pakietów przechowywana jest w /var/lib/rpm

122 Pakiety rpm 122 Instalowanie nowych pakietów rpm {-i|--install}[install-options] PACKAGE_FILE... Uaktualnianie pakietów: rpm {-U|--upgrade}[install-options] PACKAGE_FILE... PACKAGE_FILE może być podane jako URL - http lub ftp. Ważniejsze opcje: --force – wymuszaj instalację nawet gdy jest konflikt z innymi pakietami --nodeps – nie sprawdzaj zależności od innych pakietów

123 Pakiety rpm 123 Usuwanie pakietów rpm {-e|--erase}[--nodeps] [--test] PACKAGE_FILE... --test – nie usuwaj pakietu, symuluj usuwanie

124 Pakiety rpm 124 Pytania o pakiety rpm {-q|--query} [select-options] [query-options] Ważniejsze select-options: PACKAGE_FILE – zainstalowany pakiet o tej nazwie -all – wszystkie zainstalowane pakiety -f PLIK – pakiet do którego należy PLIK -p PACKAGE_FILE nie zainstalowany pakiet o tej nazwie Ważniejsze query-options: -i, --info – podaj nazwę, wersję i opis pakietu -l, --list – wyświetl pliki w pakiecie

125 Pakiety rpm 125 Pytania o pakiety Przykład: rpm -q -all -i |grep Name wyświetli nazwy wszystkich zainstalowanych pakietów rpm -q ethtool -i wyświetli informacje o zainstalowanym pakiecie ethtool

126 Pakiety rpm 126 Weryfikacja pakietów rpm {-V|--verify} [select-options] [verify-options] select-options jak przy query, verify-options umożliwia wyłączenie niektórych sprawdzeń Sprawdza rozmiar, sumę MD5, pozwolenia, typ, właściciela i grupę każdego pliku z pakietu porównując z zapamiętaną w bazie danych. Przykład: rpm -V -f /etc/inittab T c /etc/inittab S.5....T c /etc/rc.d/rc.local

127 Pakiety rpm - yum 127 yum [opcje] [komenda] pakiet...] komendy: install update (upgrade) remove (erase) localinstall, localupdate (instaluj z lokalnego rpm, ewentualne zależności z repozytorium)

128 Interfejsy graficzne 128 Protokół X opracowano w połowie lat 80, pierwotnie dla Unix Obecnie wersja X11R6.8.2 Architektura klient-serwer Inaczej niż w Windows, klient i serwer mogą komunikować się przez sieć Serwer obsługuje ekran, klientem jest aplikacja, która z niego korzysta

129 Interfejsy graficzne 129 Serwer: Wyświetla informację na ekranie Odpowiada na pytania klienta Wysyła komunikaty o błędach Wysyła komunikaty o zdarzeniach Obsługuje mysz, klawiaturę i ekran Tworzy i zamyka okienka, wyświetla informacje w okienkach

130 Interfejsy graficzne 130 Klient: Wysyła polecenia do serwera Odbiera informacje o zdarzeniach od serwera (np. o kliknięciu myszką) Odbiera informacje o błędach od serwera

131 Interfejsy graficzne 131 Konfiguracja Xserwera w zbiorze /etc/xorg.conf (dawniej - /etc/X11/XF86config) Opisuje: monitor (typ, częstotliwości odchylania) mysz (liczba klawiszy, rolka) klawiaturę (liczba i układ klawiszy, wersja językowa) kartę wideo sposób korzystania z czcionek

132 Interfejsy graficzne 132 Czcionki obsługuje serwer czcionek, xfs Konfiguracja xfs w zbiorze /etc/X11/fs/config Komunikacja pomiędzy xfs i X serwerem poprzez sieć

133 Interfejsy graficzne 133 Serwer czcionek uruchamiany jest skryptem /etc/rc.d/init.d/xfs X-serwer uruchamia skrypt /usr/X11R6/bin/startx Startx ustawia konfigurację (zbiory /etc/X11/xinit/xinitrc i.xinitrc), po czym uruchamia program binarny /usr/X11R6/bin/xinit

134 Interfejsy graficzne 134 Managery windows – programy zarządzające oknami w X serwerze FVWM, AfterStep, Enlightenment, IceWM, Sawfish... Umożliwiają zmianę tła, wyglądu okien itp.

135 Interfejsy graficzne 135 Managery pulpitu – programy zapewniające pełniejszy interfejs do systemu operacyjnego, zawierają własne wbudowane narzędzia i aplikacje KDE i Gnome

136 Interfejsy graficzne 136 KDE – nowoczesny manager pulpitu utworzony w QT Zawiera własny manager okien – kwm Posiada przeglądarkę WWW, wbudowany help, przeglądarkę PDF, HTML, klienta poczty i wiele innych Przetłumaczony na ponad 50 języków

137 Interfejsy graficzne 137 GNOME – nie posiada własnego managera okien, najczęściej używany jest Sawfish, ale działa też z innymi (Icewm, enlightenment) Zawiera własny manager okien – kwm Zdobywa coraz większą popularność Do współpracy z GNOME powstaje coraz więcej aplikacji


Pobierz ppt "Trochę historii Lata 50 – początki systemów operacyjnych, programy batch, minimalizacja przestojów między kolejnymi programami Lata 60 – pierwsze systemy."

Podobne prezentacje


Reklamy Google