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

Podobne dokumenty