230 likes | 407 Views
Systemy Operacyjne (2). UNIX i LINUX. System Operacyjny UNIX. system dla róznych komputerów: mikrokomputerów, stacji roboczych, superkomputerów powstał w latach 60-tych (Ken Thompson, Dennis Ritchie z Bell Laboratories)
E N D
Systemy Operacyjne (2) UNIX i LINUX
System Operacyjny UNIX • system dla róznych komputerów: mikrokomputerów, stacji roboczych, superkomputerów • powstał w latach 60-tych (Ken Thompson, Dennis Ritchie z Bell Laboratories) • 1988 powołano oraganizację UNIX International (ponad 200 członków: AT&T, Control Data, Fujitsu, ICL, Motorola, NRC, NEC, Olivetti, Sun Microsystems, Toshiba,... )standaryzacja
260 wersji UNIX • SCO Unix Open Server 5, opracowany przez kalifornijską firmę Santa Cruz Operation;AIX (Advanced Interactive eXecutive) na stacje robocze RISC serii 6000 firmy IBM A/UX (Apple Unix), dla MacIntoshy HP-UXna komputery Hewletta-Packarda (początkowo znana jako AP-UX) oraz unixopodobny system MPE/iX Irix na komputery Silicon Graphics Sinix, na komputery Siemens-Nixdorf SunOS i Solaris, na komputery Sun Ultrix, Digital Unixi Unixo-podobny system OSF na komputery firmy DEC • Inne: Coherent - najtańszy komercyjny Unix, IBM-PC Xenix - najstarszy na PC
LINUX • Jedna z najpopularniejszych wersji Unix (darmowy) • dzieło Linusa Torvalda z Finlandii, • Skromne wymagania, na PC i stacje robocze • trudny w konfiguraci i instalacji. • Możliwości uruchomiania programów dla Windows - za pomocą emulacji lub pakietu WINE.
CECHY UNIX’a • wielodostępność (16 – kilkaset osób) • wieoloprocesowość (wielozadaniowość) – mechanizmy synchronizacji i komunikacji • hierarchiczny system plików (katalogi, pliki i urządzenia zewnętrzne = pliki) • wykonywanie operacji we/wy niezależnie od typu urządzenia • dużo programów narzędziowych (kompilatory języków: C, Pascal, Fortran, Basic, Cobol) • kontrola uprawnień dostępu
użytkownicy końcowi złączefunkcji systemowych złącze z użytkownikiem Oprogramowanie użytkowe (edytory, kompilatory, itp.) tryb użytkowania Funkcje systemowe(open, close, wait, read, exit) Jądro Systemu Operacyjnego UNIX(zarządzanie pamięcią, procesami, urządzeniami, systemem plików) tryb jądra Sprzęt komputerowy (procesory, pamięć, dyski, itp.) Struktura systemu
UNIX- struktura • Jądro – warstwa wewnętrzna: obsługa przerwań, przydział czasu procesora, realizacja procesów, zarządzanie pamięcią. • warstwa zewnętrzna – zestaw procesów odpowiadających za wykonywanie programów systemowych i programów użytkownika • powłoka (shell) – proces warstwy zewnętrznej odpowiadający za komunikację z uzytkownikiem (interpretację poleceń) zwykle dostępne są dwie powłoki: Bourne Shell oraz Bercley C Shell
System plików • logiczny system plików: • każde urządzenie, plik i katalog traktowane są jak plik (niezależnie od typu i lokalizacji) • istnieje jeden wyróżniony system zawierający katalog pierwotny (root – korzeń systemu) – musi znajdować się na HD • do katalogu pierwotnego dołączone są inne systemy plików (na dyskach, dyskietkach, taśmach itd.)
Hierarchiczna struktura katalogów • Każdy zbiór informacji traktowany jest jak plik – katalog jest plikiem zawierającym listę plików, oraz (..) odnośnik do katologu nadrzędnego (rodzica) • do każdego katalogu musi istnieć odwołanie w conajmniej jednym katalogu nadrzędnym • cechy plików: • brak struktury wewnętrznej – ciąg znaków zakończony EOF • nazwa, wielkość, właściciel, czas powstaniam prawa dostępu
Nazwy plików • dowolny ciąg 14 znaków ASCII (bez / * ? { } < > & spacja) • duże i małe litery są rozróżnialne – zaleca się małe • nie mogą zaczynać się od kropki • nie mają rozszerzeń (programy użytkowe mogą ich potrzebować): • .a – pliki archiwalne • .c – programy w C • .f – programy w Fortranie • .p – programy w Paskalu • .s – programy asemblerowe • .h – zbiór wierszy definicyjnych dla C • .i – pliki wynikowe procesor C • .o - moduł programu w postaci wynikowej
Maski • * dowolny ciąg znaków • ? zastąpienie jednego znaku • [] zastąpienie znakiem z nawiasu: • test*: test_1, testowy.xxx, lub tester • test?: test1, test. , test_ • [AOE]la: Ala, Ola, Ela
--- rwx Atrybuty • prawa dostępu - 9 bitów: • ------- --- prawa właściciela prawa grupy prawa pozostałych użytkowników katalog? r – prawo czytania w – prawo pisania x - prawo wykonywania (execute) -rwxrwx rwx pełne uprawnienia
Zmiana atrybutów • chmod [kto][+/- co] [plik] kto a – all wszyscy u – user użytkownik g - grupa o - pozostali chmod a+r * • co • + nadanie • odebranie • = nowe niezależne od poprzednich • r – prawo czytania • w – prawo pisania • x - prawo wykonywania
komendyUNIX login - rozpoczęcie sesji:{ login użytkownik } lub: { login użytkownik } { password hasło } logout - zakończenie sesji {ctrl-D, exit } passwd - zmiana hasła program interterpretujący polecenia - shell sh - Bourne shell csh - C shell ksh
dir ls cls clear copy cp del rm deltree rm -Rrmdir edit vipico format fdformatmountumount move / rename mv type less <file> cd cdchdir more < file more file md mkdir win startx DOS-UNIX
komendy systemu who [am i] - podaje nazwy zalogowanych użytkowników pwd- podanie bieżącego katalogu {print working directory} ls - wyświetlenie zawartości katalogu ls -l - wyświetlenie katalogu w formie rozszerzonej cd - zmiana katalogu mkdir - utworzenie katalogu rmdir - usunięcie katalogu cat - zawartość pliku (tekstowego) cp - kopiowanie pliku mv - przesunięcie lub zmiana nazwy pliku mail, mailx - programy poczty elektronicznej man komenda- wyświetlenie podręcznika (pomocy)
początek i koniec pracy telnet - logowanie sie na swoje konto passwd - zmiana hasla exit lub quit - zakonczenie pracy na koncie Ctrl + d "kombinacja klawiszy" - przerywa uruchomiony proces pierwszoplanowy man -wyswietla pomoc na wyspecyfikowany temat (np. man ls) wiecej informacji uzyj rozkazu: man -a man w celu przegladania stron helpu uzyj klawisza spacji ps - sprawdza ile procesow jest aktualnie uruchomionych - sprawdzaj to przed zakonczeniem pracy !!! (np. ps -a; ps -afl) kill- kasowanie uruchomionych procesow, ktore widoczne sa po uzyciu polecenia ps (gdzie PID jest numerem identyfikacyjnym procesu) (np. kill nrPID; kill -9 nrPID)
Przeglądanie katalogów i plików: pwd - sprawdzenie gdzie się aktualnie znajdujemy w "drzewie katalogowym ls - wyświetla nazwy plików i podkatalogów znajdujących się w aktywnym katalogu [opcje] -l - wyswietla pelne informacje o plikach (calkowita skladnia: ls-l) np.: drwxr-xr--2katuzytkow 40 Apr 21 10:40test_1 typ pliku:- plik zwykły; b twardy lub miękki dysk; c specjalne urządzenie znakowe; d katalog; mn plik specjalny z nazwa; p potok z nazwa; s flaga uprawnienia do: r odczytu; w zapisu; x wykonania; - brak zezwolenia liczba połączeń (sciezek do np.pliku) nazwa wlasciciela nazwa grupy rozmiar np.pliku w bajtach data i czas ostatniej modyfikacji nazwa pliku -c -a -wyswietla dodatkowo pliki ukryte
cd - przejscie do innego katalogu (folderu) [opcje] /-przejscie do katalogu podstawowego (calkowita skladniacd /) ..-przejscie o jeden katalog w "gore drzewa katalogow" ../..-przejscie o dwa katalogi w "gore drzewa katalogowego /nazwakatalogu/nazwacelkatalog -przejscie do katalogu o wybranej nazwie find- poszukiwanie pliku (np. find/wkatalogu-nameszukananazwa) cat - wyswietla zawartosc pliku o wyspecyfikowanej nazwie pliku (np. cat nazwapliku ; cat *) more- wyswietla zawartosc pliku - podobnie jak cat, ale z wiekszymimożliwościami
Edytor vi vi - edycja pliku (np.vi nowyplik; vi staryplik) kilka podstawowych funkcji wewnetrznych: i - przejscie w tryb edytowania (pisanie tekstu; przejscie do nastepnego wiersza [Enter];poprawki tylko w trybie rozkazow) [Esc] - przejscie do trybu rozkazow x - kasowanie znaku znajdujacego sie przy kursorze dw - kasowanie slowa w obrebie ktorego jest kursor dd - kasowanie wiersza w ktorym znajduje sie kursor :w - zapisanie :q! - wyjscie bez zapisu :x - wyjscie z zapisaniem pliku
Operacje na plikach cp - kopiowanie plików (np. cpnazwapliku1 nazwapliku2+1; cpkopiujplik /dokatalogu) rm - kasowanie plików (np. rmnazwapliku; rm *) mv - zmiana nazwy pliku (np. mv staranazwa nowanazwa) oraz przenoszenie plików (np. mvnazwapliku /dokatalogu) Operacje na katalogach cp - kopiowanie katalogów (np. copykatalog /na/nowykatalog mkdir- tworzenie katalogów (np. mkdirnazwanowegokatalogu rmdir - osuwanie katalogów (np. rmdirnazwakatalogu
Operacje pomiędzy użytkownikami who - pokazuje aktywne konta na serwerze (np. who) finger - (szerzej) pokazuje aktywne konta na wybranym serwerze (np. finger; fingernazwakonta@serwer) talk - interakcyjne porozumiewanie się (np. talknazwakonta@nazwa.serwera ----> odbiorca podaje: talknazwamojegokonta@nazwa.mojego.serwera) write - wysyłanie wiadomości ukazujących się na ekranie drugiej osoby pod warunkiem, ze wprowadzi polecenie: mesgy (np. writenazwakonta nazwaterminala[ENTER] Czy mozesz ..... [Enter] ... to narazie ctrl +d; nazweterminala (np.ttyp1) pokazuje polecenie who) mail - poczta elektroniczna Przyklady: mailnazwakonta[Enter] Witam Pana. Co nowego... Ctrl + d; [ENTER] mailnazwakonta1 nazwakonta2 nazwakontan< nazwaplikuzlistem [Enter]
Dodatki date - aktualna data i godzina cal - kalendarz bc - kalkulator (np. bc[Enter]2^2[Enter]; wyjście ctrl + d lub quit) mc - program podobny do NC dla DOS - dostępny w systemie Linux Znaki ogolnego zastosowania: & - przenoszenie procesu w tlo tj.uruchamianie dodatkowego okna obsługującego proces (np. xterm -sb &) > - skierowanie wyniku procesu np. na plik a nie na ekran jak jest w domyśle (np. ls >nowyplik) >> - skierowanie wyniku procesu np. na plik a nie na ekran jak jest w domyśle i dołączenie jego do istniejącego pliku (np. ls >>istniejacyplik) < - pobranie danych do rozkazu np. z pliku (np. mailnazwakonta<nazwaplikuzlistem) | - rozdzielenie kilku poleceń zapisanych w jednym wierszu tzw. potok (np. ls | wc-l)