UNIX, cz.1
Transkrypt
UNIX, cz.1
Podstawy Informatyki Wykład 3 UNIX Twórcy Dennis Ritchie Ken Thompson Linus Torvalds Historia systemu UNIX 1966 - rozpoczęcie prac na Multicsem, zespół naukowców z Bell Labs, MIT i General Electric, wśród tych pierwszych Ken Thompson 1969 - pierwsza wersja Unix napisana w asemblerze w ośrodku Bell Labs firmy AT&T (stan New Jersey, USA) przez Dennisa Ritchie i Kena Thompsona ...... 1983 - rozpoczęcie projektu GNU (GNU's Not Unix) 1991 -wrzesień powstanie jądra Linux, wersja 0.01 1994 - powstają firmy Red Hat Linux oraz Caldera 13 marca - Linux 1.0 Systemy UNIX Na wszystkie typy komputerów, od prostych PC do superkomputerów systemy od początku wielodostępne i wielozadaniowe łatwe w konfiguracji (pliki tekstowe) przeznaczone głównie do pracy zdalnej jasno określone prawa użytkowników Systemy UNIX Android: jest oparty na jądrze Linuxa MacOS X: niektóre części z implementacji Unixa: FreeBSD i NetBSD Linux – od PC po superkomputery, np Zeus w ACK Cyfronet pracuje pod Scientific Linux, IBM BladeCenter HS21 pod Linux RedHat Serwery SUN (np. sendzimir) – SUNOS, potem Solaris, od 2011 Oracle Solaris Serwery IBM – AiX Silicon Graphics – Irix HP – HP-UX DEC – Ultrix "Darmowe" Unixy – Linux, FreeBSD, OpenSolaris itd. Wielozadaniowość i wielodostęp jednozadaniowość - kolejne zadanie wykonywane po zakończeniu poprzedniego wielozadaniowość - wykonywanie wielu zadań w „tym samym” czasie. W rzeczywistości zadania są wykonywane kolejno w przydzielonych im przedziałach czasowych (chyba że jest kilka procesorów) wielodostęp - w tym samym czasie z jednego komputera korzysta wielu użytkowników Praca w systemie UNIX Konta w systemie UNIX niepowtarzalny identyfikator użytkownika (login) wejście do systemu po podaniu hasła użytkownik posiada katalog domowy i fragment dysku do dyspozycji (często limitowany) użytkownik posiada skrzynkę pocztową (najczęściej o adresie: [email protected] ) uprawnienia w systemie zależą od przynależności do odpowiedniej grupy Plik passwd – dane użytkowników wsarga:x:2369:800:Waldemar Sarga:/home/stud/met2007/wsarga:/bin/tcsh zkulig:x:2370:800:Zuzanna Kulig:/home/stud/met2007/zkulig:/bin/tcsh zlitwin:x:2371:800:Zofia Litwin:/home/stud/met2007/zlitwin:/bin/tcsh login:hasło:nr:grupa:opis:katalog_domowy:powłoka komenda passwd - zmiana hasła old (login) password dwukrotnie new password hasło nie jest widoczne na ekranie! Drzewo folderów / (root) usr etc bin lib ls cd chmod ... zaocz jkowalsk home stud anowak bin prac met2012 jlorek knowak var mail dokt jkowalsk anowak jlorek knowak System plików W systemie UNIX zarówno dyski jak i wszystkie urządzenia zgrupowane są w jeden duży system plików każdy plik interpretowany jest jako strumień bajtów „pliki” urządzeń to są programy do sterowania nimi (drivery) każdy plik ma przypisane uprawnienia dostępu: dla właściciela, grupy i wszystkich Uprawnienia Właściciel pliku może dodać lub odjąć uprawnienia dostępu do niego prawa dostępu do czytania (r), zapisu, modyfikacji, kasowania (w) oraz do uruchomienia (x) są ustalane oddzielnie dla właściciela (u), grupy (g) i dla innych (o) tylko „super użytkownik” (root) ma prawa do wszystkiego, ale takie uprawnienia ma tylko administrator systemu Na listingu uprawnienia wyglądają tak: -rwxrwxrwx . . . . . . . . . . . . .plik |u |g|o| Zmiana praw do pliku: chmod [ugo][+/-][rwx] nazwa_pliku u - właściciel (user) g - grupa (group) o - inni (others) +/- odbieranie (nadawanie) uprawnień chmod go+rx aa – nadanie prawa czytania i wykonywania (rx) pliku aa przez grupę i wszystkich innych (go) chmod o-w bb – odebranie prawa zapisu (w) do pliku bb dla wszystkich innych Zmiana praw do pliku - inaczej: chmod nnn nazwa_pliku Jeśli każde prawo dla każdej kategorii użytkowników zinterpretować binarnie (1-jest 0-brak) to np zestaw praw: -rwxr-xr-- aa -111101100 możemy zapisać dziesiętnie: 754 Aby nadać taki zestaw praw (niezależnie od stanu początkowego): chmod 754 aa Pliki tworzone są przez użytkownika. Mogą być modyfikowane, kopiowane lub usuwane. tekstowe (ASCII, html, źródłowe w c, pas, for), pliki binarne (wykonywalne, graficzne, dźwiękowe, skompresowane...) Nazewnictwo plików : WINDOWS: nazwa.rozszerzenie (Np. list1.txt, prog3.for) nazwa - dowolny ciąg znaków, rozszerzenie - dowolny ciąg znaków UNIX: większa dowolność, np. nazwa nazwa.c aa.bb.cc .nazwa pliki "ukryte" (nie pokazuje ich normalny ls) "ala ma kota" – dozwolone, ale nie polecane Rozszerzenia specjalne: nazwa.txt - plik tekstowy (ASCII) - list1.txt, raport.txt nazwa.exe - plik wykonawczy, nazwa* - plik wykonawczy, nazwa.f - zbiór źródłowy programu w języku FORTRAN, nazwa.p - zbiór źródłowy programu w języku Pascal, nazwa.cpp - zbiór źródłowy programu w języku C++, .... Polecenia w systemie UNIX Przykład: ls komenda -al opcje /var ↵ parametry Enter Podstawowe komendy będą pokazane na ćwiczeniach Komendy Unixa passwd - zmiana hasła old (login) password dwukrotnie new password w - informacja o aktualnie pracujących w sieci write adresat - pisanie tekstu na ekranie adresata talk adresat - “rozmowa” z adresatem z wykorzystaniem klawiatury i ekranu monitora To "komunikatory" sprzed epoki gg ;-) man komenda - pomoc na temat komendy, czyli tzw. help ps - informacja o aktualnie wykonywanych zadaniach ps -f pełna informacja o aktualnie wykonywanych zadaniach UID kowal nowak janusz PID 37 125 328 TTY tty01 tty02 tty03 TIME 0:34 2:28 1:52 W celu przerwania procesu należy: 1. “zalogować” się w innym okienku 2. wykonać komendę: ps -f 3. wykonać komendę: kill -9 nn (np. 125) COMMAND -csh vi prog.f mail