Lekcja 1, Unix - lekcje

 

[ Pobierz całość w formacie PDF ]
Lekcja 1

Struktura systemu UNIX

 

Celem zajęć jest zaznajomienie słuchaczy ze strukturą systemu UNIX oraz prostymi komendami umożliwiającymi zapoznanie się z systemem.

 

1. System operacyjny UNIX

Unix jest wielozadaniowym, wielodostępnym i interaktywnym systemem operacyjnym o szerokim zakresie zastosowań.

Wielozadaniowość oznacza, że system może wykonywać jednocześnie wiele zadań (programów), w tym również na rzecz jednego użytkownika.

Wielodostępność oznacza, że z usług systemu może korzystać jednocześnie wielu użytkowników.

Interaktywność oznacza, że przy pomocy terminala (urządzenie zawierające monitor i klawiaturę) można przeprowadzać „dialog” z systemem, wprowadzając kolejne polecenia, które są natychmiast wykonywane.

 

Konfiguracje sprzętowe systemów komputerowych pracujących pod kontrolą systemu Unix mogą być bardzo różne. Do serwera unixowego można podłączać komputery z procesorami RISC, komputery PC, terminale znakowe lub graficzne (X-terminal). Ze względu na odległość terminali od serwera wyróżniamy łącza lokalne i zdalne. Łącza lokalne obejmują komputery podłączone do sieci lokalnej LAN lub łączem kablowym poprzez multiplekser. Łącze zdalne uzyskujemy głównie dzięki modemom i sieci telefonicznej. Przykładową konfigurację unixowego systemu komputerowego przedstawia rysunek.

 

 

 

2. Budowa systemu Unix

System Unix ma budowę warstwową. Centralnym elementem systemu jest sprzęt komputerowy (hardware). Bezpośrednio ze sprzętem komunikuje się jądro systemu (kernel), które pośredniczy pomiędzy urządzeniami komputerowymi a programami. Nad jądrem znajduje się powłoka (shell). Dopiero w shellu możemy uruchamiać programy i skrypty. System Unix umożliwia wykorzystywanie różnych shelli, które różnią się możliwościami, ilością komend, składnią. Najpopularniejsze to standardowy Bourne, rozszerzony Korn, C shell o składni języka C oraz rozpowszechniany z Linuxem shell Bash.



Hardware - sprzęt komputerowy

Kernel - jądro systemu obsługujące:

sprzęt komputerowy (procesor, pamięć, urządzenia zewnętrzne)

procesy wykonywane w systemie (deamons)

hierarchiczny system plików (file system)

Shell - powłoka systemu pośrednicząca pomiędzy użytkownikiem i jądrem, interpretująca polecenia użytkownika:

         Bourne Shell

         Korn Shell

         C Shell

         Bash Shell

 

 

3. Grupy i użytkownicy w systemie Unix

Użytkownicy rozpoczynający pracę w systemie rozpoznawani są za pomocą nazwy (login) i hasła (password). Każdy użytkownik musi należeć do wybranej grupy. Uprawnienia użytkowników i grup ustala administrator systemu (root). W systemie użytkownicy i grupy identyfikowane są przy pomocy numeru uid (user id) oraz gid (group id). Najniższy numer 0 należy do administratora.

 

 

Na rysunku przedstawiono cztery grupy użytkowników

nazwa grupy

root

naucz

studenci

class2

numer grupy gid

0

1221

101

21

nazwy użytkowników

root

robert

student1 ... studentf

user1, user2 ... user20

numery użytkowników uid

0

1003

80, 81, 82, 83, 84, 85 ... 96

50, 51, 52, 53, 54, 55 ... 60

 

 

4. Wydawanie poleceń w sytemie Unix

Użytkownik komunikuje się z systemem Unix poprzez wydawanie komend interpretowanych i realizowanych przez shell. Składnia polecenia w shellu wygląda następująco:

 

polecenie   –opcje   argumenty

 

Polecenie to jedna z wielu komend dostępnych w systemie Unix lub własny program użytkownika (skrypt).

Opcje modyfikują funkcjonowanie polecenia powodując, że wykonuje się ono w inny sposób niż bez podania opcji. Opcje w systemie Unix to najczęściej pojedyncze litery poprzedzone minusem ( - ). Opcje można łączyć umieszczając tylko jeden minus przed wszystkimi literowymi oznaczeniami opcji.

Argumenty to obiekty, na których wykonywane są polecenia: pliki, katalogi, urządzenia. Wprowadzenie kilku argumentów powoduje kilkukrotne wywołanie komendy z każdym z podanych parametrów.

 

Przykład wykorzystania komend:

ls

komenda ls podana bez opcji i argumentów wyświetla zawartość bieżącego katalogu

ls  -a

komanda ls wywołana z parametrem a wyświetla wszystkie (all) pliki z bieżącego katalogu

ls  -la

komenda ls wywołana z dwiema opcjami a i l wyświetla wszystkie pliki z bieżącego katalogu w formie długiej (long)

ls  -la  dane

komenda ls wywołana z dwiema opcjami a i l oraz z argumentem dane wyświetla wszystkie pliki w formie długiej z podkatalogu dane

ls dane teksty

komenda ls wywołana z dwoma argumentami dane i teksty wyświetla zawartość obu podkatalogów dane i teksty

 















$

 

pobierz polecenie

 

 

analizuj

 

 

wykonaj

 

 

odpowiedz

lwysłanie znaku gotowości na terminal i oczekiwanie na polecenie użytkownika.llpobranie polecenia od użytkownikallzdekodowanie polecenia i odszukanie w  katalogach odpowiadającego mu programullprzekazanie polecenia do jądra w celu utworzenia odpowiedniego procesu realizującego i oczekiwanie na jego zakończeniellprzyjęcie odpowiedzi od jądra i przekazanie wyniku użytkownikowillpowrót do początku cyklu (pkt 1)l

 

Shell jest zawsze gotowy do przyjęcia nowego polecenia. Wprowadzenie ciągu znaków zakończonych naciśnięciem klawisza Enter jest sygnałem do pobrania wprowadzonego polecenia. Shell jest interpreterem poleceń co oznacza, że każde wprowadzone polecenie jest natychmiast analizowane, przekształcane na kod zrozumiały dla jądra i wykonywane. Shell pracuje więc w cyklu pobierz – analizuj – wykonaj, który można opisać następująco:

 

W systemie Unix można wprowadzić kilka komend w jednej linii oddzielonych średnikiem. Shell wykonuje je jedna po drugiej, jak gdyby wpisane były kolejno w nowych liniach.

5. Lista komend

Komendy wykorzystywane w bieżącej lekcji:

 

date – wyświetla czas oraz datę systemową

cal – wyświetla kalendarz

              cal – wyświetla kalendarz na bieżący miesiąc

              cal rok – wyświetla kalendarz na wybrany rok (rok podać czterocyfrowy np. 2002)

              cal miesiąc rok – wyświetla kalendarz na wybrany miesiąc danego roku

echo – wyświetla podany tekst

              echo „tekst”

banner – wyświetla tekst powiększonymi literami

              banner „tekst”

clear – czyści okno terminala

man – wywołuje opis komendy z podręcznika elektronicznego (manuala)

              man komenda

apropos – wyświetla wszystkie komendy związane z wprowadzonym tekstem

              apropos tekst

logname – wyświetla nazwę pod jaką zalogowałeś się do systemu

whoami – podaje jako kto pracujesz w systemie

              who am i – podaje oprócz nazwy użytkownika nr terminala i godzinę zalogowania

who – wyświetla listę użytkowników obecnie pracujących w systemie

nazwa użytkownika

terminal, z którego użytkownik jest podłączony

data i czas zalogowania użytkownika

adres IP komputera w sieci

id – wyświetla nazwę i numer użytkownika oraz jego grupy

tty – wyświetla nazwę bieżącego terminala

stty – wyświetla parametry terminala i umożliwia ich zmianę

uptime – wyświetla informacje o systemie: godzinę, czas pracy systemu, ilość zalogowanych użytkowników

w – wyświetla dokładne informacje o systemie (godzina, czas pracy systemu, ilość pracujących osób) oraz listę zalogowanych użytkowników

nazwa użytkownika

terminal, z którego użytkownik jest podłączony

data i czas zalogowania użytkownika

JCPU

PCPU

nazwa aktualnie wykonywanej komendy

uname – wyświetla nazwę systemu, w którym pracujesz

              uname – a - wyświetla wszystkie (all) informacje o systemie

nazwa systemu operacyjnego

nazwa sieciowa identyfikująca system

numer wersji systemu operacyjnego

numer komputera i model

identyfikator komputera

licencja systemu operacyjnego

finger – wyświetla dokładne dane o użytkowniku

nazwa użytkownika

imię i nazwisko uzytkownika

terminal, z którego użytkownik jest podłączony

Idle

data i czas zalogowania użytkownika

adres IP komputera w sieci

              finger użytkownik – wyświetla nazwę użytkownika,

jego imię i nazwisko,

katalog domowy

domyślny shell

czas zalogowania,

informacje o poczcie

informacje o planach i projektach,

(większość z tych informacji pobierana jest z pliku haseł - passwd)

 

W systemie Unix informacje o grupach i użytkownikach zapisane są w plikach systemowych:

grupy w pliku /etc/group

użytkownicy w pliku /etc/passwd

6. Ćwiczenia

 

Nawiąż połączenie z serwerem unix.wlodkowic.pl i zaloguj się swoim nazwiskiem i hasłem (patrz poprzednia lekcja). System powinien wyświetlić znak zgłoszenia shella Korna - $.

Uwaga! Obsługa terminala nie obejmuje polskich liter!

 

a)      ...

[ Pobierz całość w formacie PDF ]
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • leborskikf.pev.pl
  •