UNIX - AGH

Transkrypt

UNIX - AGH
Podstawy Informatyki
Metalurgia, I rok
Wykład 2
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
Komendy UNIXa, cd:
ls - listowanie zawartości katalogu (listing),
48%{sendzimir}/home/sysadm/wilk/dydaktyka/c>ls
kar*
karman.cpp
karman.out
press.dat
karman*
karman.dat
karman1.cpp
ls –l – "długi" listing
49%{sendzimir}/home/sysadm/wilk/dydaktyka/c>ls
total 526
-rwx-----1 wilk sysadm 20628 Nov 14 2005
-rwx-----1 wilk sysadm 20632 Nov 4 2003
-rw------1 wilk sysadm
3949 Nov 4 2003
-rw------1 wilk sysadm
94 Nov 4 2003
-rw------1 wilk sysadm 199038 Nov 14 2005
-rw-r--r-1 wilk sysadm
4778 Oct 28 2003
-rw------1 wilk sysadm
2830 Nov 14 2005
-l
kar*
karman*
karman.cpp
karman.dat
karman.out
karman1.cpp
press.dat
ls -al (pokazuje również pliki/foldery z kropką na początku nazwy)
np.
drwxr-xr-x
11 root
512 Jun 18 13:42 ./
drwxr-xr-x
23 root
512 May 31 08:16 ../
-rw-r--r--
1 root
120 Oct 18 15:06 .plikrc
drwxrwxrwx
10 root
512 Jun 25 13:40 common/
drwx------
2 root
8192 Feb 18
drwxr-xr-x
14 root
512 Jan 18
-rw-r--r--
1 root
drwxr-xr-x
33 root
2002 prac/
2097120 Oct 18 15:06 quotas
512 Oct
d|rwx|rwx|r-x il. dow. właściciel wielkość
d - folder
w - prawo pisania do pliku
r - prawo czytania pliku
x - prawo wykonywania pliku
2000 lost+found/
7 10:08 stud/
data czas
nazwa_pliku
mkdir nazwa_folderu - utworzenie folderu nazwa_folderu
(make directory)
Np. mkdir programy
rmdir nazwa_folderu - usunięcie folderu nazwa_folderu,
Np. rmdir listy
cd nazwa_folderu - zmiana folderu roboczego na folder
nazwa_folderu,
Np.
cd programy
cd programy/matem/geometria
cd .. - przejście do folderu powyżej folderu roboczego,
/
(korzeń)
cd aa1
aa
bb
cc
cd ..
aa1
aa2
aa3
cd /aa/aa2
cc1
pwd – wyświetla nazwę folderu roboczego
cp plik1 plik2 - kopiowanie jednego pliku na drugi plik (lub kopia pod
inną nazwą/ w innym położeniu),
Np.
cp prog_1.for prog_2.for
rm nazwa_pliku - usunięcie pliku nazwa_pliku
Np.
rm list3.txt
mv nazwa1 nazwa2 - zmiana nazwy pliku nazwa1 na nazwa2, lub
przemieszczenie pliku
Np.
mv zadanie.doc problem.doc
rmdir nazwa_folderu - usunięcie folderu nazwa_folderu,
Przekierowanie strumienia danych
program <plik (dane z pliku zamiast z klawiatury)
program >plik (wynik do pliku zamiast na ekran)
program >>plik (wynik dopisany na końcu pliku
zamiast na ekran)
program1 | program2 (wynik programu1 jako
dane programu2)
Filtrowanie strumienia danych
cat plik (drukuje plik na ekranie)
cat >plik (znaki z klawiatury kopiuje do pliku, Ctrl-D kończy)
cat plik1 plik2 >plik3 (skleja plik1 i plik2,
wynik zapisuje do plik3)
cat plik |more (more stronicuje wydruk pliku)
cat plik |grep wzor (grep szuka w pliku zadanego
wzorca i drukuje całe linie ze wzorcem)
cat plik |sort (sort sortuje linie pliku )
cat plik |wc (wc zlicza ilość znaków, słów i linii w
tekście )
Uwaga! zamiast cat plik można wstawić dowolną
komendę, której wynikiem jest tekst, np.
ls –l | more
Praca zdalna
Użytkownicy najczęściej pracują w systemie
poprzez sieć komputerową
do połączenia służą odpowiednie urządzenia
(terminale) lub programy na komputery PC
najczęściej stosowane oprogramowanie to
telnet (nieszyfrowany) i ssh (szyfrowany)
do aplikacji graficznych najczęściej służą
programy Xwindows
Sieć komputerowa (Internet)
laboratorium B-4
B-1
UCI
Cyfronet
laboratoria B-5
B-6
Poczta komputerowa (E-mail) w UNIX
You have mail
Adres E-mail: [email protected]
mail - komenda poczty komputerowej (informuje, czy jest
jakiś list),
No mail for ....... (gdy nie ma listu)
Gdy jest list:
>O
O
O
1 Mail System Intern Wed Jul 23 13:14
2 Maria M
Fri Jul 25 12:03
3 [email protected] Fri Jul 25 12:25
17/589
61/2582
45/1916
DON'T DELETE THIS
zyczenia
Raport DNS
Czytanie listów:
mail -> prompt ?
p - wyświetlenie listu na ekranie
d [n] - usunięcie listu [n]
s [nazwa_pliku] - zapisanie listu jako nazwa_pliku
2 - skok do listu o numerze 2
r - odpowiedź na list
q - wyjście z poczty
x - wyjście z poczty bez dokonania zmian
mail adresat - wysyłanie listu do adresata
Subject: Nagłówek listu
Treść listu (bla, bla, bla ......).
Zakończenie pisania listu – Ctrl-D lub przejście do
nowej linii i wpisanie kropki
? - pomoc - wyświetla wszystkie komendy poczty
Programy do obsługi poczty (Unix):
pine, elm
Programy pocztowe w Windows
(outlook, netscape, mozilla...)
Do działania potrzebny jest serwer poczty
przychodzącej i serwer poczty wychodzącej.
Program pocztowy transferuje zawartość skrzynki
pocztowej użytkownika (po autoryzacji) z serwera na
lokalny PC. Po przeczytaniu, poczta na serwerze
powinna być skasowana!
Program pocztowy transmituje napisany list do
wskazanego serwera. Ten wysyła pocztę dalej. Nie
każdy serwer wyśle naszą pocztę – zabezpieczenia
antyspamowe.
Konfiguracja poczty – Mozilla Thundebird
Konfiguracja poczty – Mozilla Thundebird
To dla pracy wewnątrz sieci AGH
Dla pracy spoza AGH ustawić wg.
http://poczta.agh.edu.pl/info.html
Można też ustawić:
„bez szyfrowania”
ftp (nie szyfrowany, często zablokowany)
ftp nazwa komputera (zdalnego) do którego chcemy przesłać lub
z którego chcemy skopiować zbiór
login:
password:
ftp> dir - listowanie zawartości zbiorów na zdalnym komputerze
cd nazwa katalogu - zmiana katalogu na zdalnym komputerze
ascii - przesylanie zbiorow ASCII
binary - przesylanie zbiorow binarnych
get nazwa zbioru - pobranie zbioru ze zdalnego komputera
put nazwa zbioru - przesłanie zbioru do zdalnego komputera
mget (mput) * - pobranie (przesłanie) wszystkich zbiorów z
danego katalogu. System pyta o każdy zbiór.
bye - wyjście z ftp
WinSCP
Programy do pracy zdalnej
telnet
dostępny w pakietach do
obsługi sieci tcp/ip oraz w
Windows (od 95)
transmisja nie szyfrowana
(możliwość podsłuchu)
w zabezpieczonych sieciach
i serwerach jest wyłączony
telnet w Windows źle
obsługuje niektóre funkcje
terminala
ssh
cała transmisja szyfrowana
jedyny sposób połączenia
przy zabezpieczonych
komputerach
przenosi w „tunelu” transmisję innych protokołów, np.
mail, X11, ftp.
klienty i serwery ssh w wersji
darmowej są dostępne dla
Windows (np. putty) i Unix
(openssh)
putty
http://www.putty.org/
149.156.111.10
lub
sendzimir.metal.agh.edu.pl
Programy graficzne
praca w systemie klient - serwer
obliczenia na serwerze, wyświetlane na terminalu
zdalnym
terminal to albo specjalne urządzenie, albo program
na PC, zazwyczaj płatny
najczęściej używany jest znormalizowany system
programów o nazwie X11

Podobne dokumenty