Fiokware
skrypt – wprowadzenie do systemu Linux
1
Wprowadzenie do systemu Linux
Wst p
ę
Rodziny systemów operacyjnych: Windows, MacOS... UNIX, Linux.
Historia
Bell Labs / AT&T, 1969 – UNICS
kwestie prawne: sprzedawanie licencji osobom trzecim zamiast rozprowadzania systemu
samodzielnie
skutek: wielo odmian pochodz cych od ró nych firm
ść
ą
ż
(np.: Sun - SunOS/Solaris, IBM - AIX, HP - HP-UX...)
wyodr bnienie si 2 ga zi: System V oraz BSD
ę
ę
łę
wspólna dla wszystkich systemów z nazw UNIX baza wymaga : standard POSIX
ą
ń
Lata 70:
systemy komercyjne, du e, bardzo drogie.
ż
Lata 80-90:
upowszechnienie si komputerów osobistych. TCP/IP, Internet w formie znanej dzi .
ę
ś
1991:
Linus Torvalds. Pierwowzór nowo stworzonego systemu: MINIX.
List na grup dyskusyjn z pro b o pomoc w rozwijaniu projektu.
ę
ą
ś ą
System dost pny w internecie za darmo.
ę
Rosn ce wsparcie innych developerów.
ą
Podsumowanie
Linux nale y do rodziny UNIX (kwestia formalna z wykupieniem testów POSIX)
ż
Nie nale y do adnej firmy. Dost pny za darmo z kodem ród owym.
ż
ż
ę
ź
ł
Temat pokrewny: ruch GNU, Wolne Oprogramowanie (na oddzielny wyk ad).
ł
Podsumowanie: licencja GNU GPL = “wi cej, ni freeware”.
ę
ż
Poj cie dystrybucji:
ę
rozpowszechnianiem Linuksa zajmuje si wiele firm/organizacji. Takie
ę
rozprowadzane zestawy (czyli j dro i wybrany zestaw oprogramowania) nazywamy dystrybucjami.
ą
Z czego yj takie firmy (uproszczenie)? Sprzeda wersji z bogatsz dokumentacj , wsparcie
ż ą
ż
ą
ą
techniczne, wdro enia, wysoce specjalistyczne us ugi [
ż
ł
zastanów si : oferta firmy Fiokware
ę
].
Za o enia, budowa, g ówne cechy systemu
ł ż
ł
System operacyjny – po redniczy w komunikacji u ytkownika ze sprz tem, wykonuj c wiele
ś
ż
ę
ą
zada pomocniczych. Superprogram – pierwszy, nadzoruj cy ca o .
ń
ą
ł ść
System operacyjny = j dro (“kernel”) + programy narz dziowe.
ą
ę
Zadania: obs uga urz dze , przechowywanie danych (systemy plików), uruchamianie programów,
ł
ą
ń
zarz dzanie zasobami, u ytkownicy, bezpiecze stwo, komunikacja z u ytkownikiem i wiatem.
ą
ż
ń
ż
ś
Kopiowanie bez zezwolenia zabronione
www.fiokware.com
Fiokware
skrypt – wprowadzenie do systemu Linux
2
Dwa tryby pracy systemu Linux: [dok adnie jeden] tryb j dra (“kernel mode”) oraz tryb
ł
ą
u ytkownika (“user mode”). Podobnie jest równie w innych systemach unixowych.
ż
ż
Modularno : adowanie/wykonywanie fragmentów kodu na danie. Oszcz dno zasobów.
ść ł
żą
ę
ść
Elastyczno . Zmiany bez restartu komputera.
ść
Wielozadaniowo i wielou ytkownikowo .
ść
ż
ść
Wyw aszczanie.
ł
Mechanizmy szeregowania.
Asynchroniczne wej cie/wyj cie (porównaj: zapis na dyskietk w Windows95/98).
ś
ś
ę
Ochrona pami ci.
ę
Poj cie procesu
ę
– w uproszczeniu równowa ne programowi, zadaniu.
ż
“3 u ytkowników ma uruchomionych 10 procesów”.
ż
Demony: programy, które dzia aj w systemie w sposób ci g y,
ł ą
ą ł
oferuj c pewne us ugi.
ą
ł
Np. serwer WWW, FTP. Istniej równie demony poziomu j dra (np. obs uga pami ci wirtualnej).
ą
ż
ą
ł
ę
System plików:
brak dysków (wspólne drzewo zaczynaj ce si od “/”)
ą
ę
katalogi i pliki
pliki specjalne: reprezentuj urz dzenia; katalog /dev; katalog /proc
ą
ą
“/” zamiast “\” z DOS/Windows
zamiast “dysku C:” - montowanie urz dzenia w systemie plików w zadanym miejscu
ą
/mnt/c/windows/notepad.exe
Linux obs uguje system FAT/FAT32. S problemy z pe n obs ug NTFS.
ł
ą
ł ą
ł ą
Systemy komercyjne: ró ne, swoje w asne systemy plików, nierzadko z ciekawymi funkcjami
ż
ł
jak np. mo liwo zmiany rozmiaru w locie.
ż
ść
Windows nie obs uguje systemów plików Linuksa, ani tym bardziej komercyjnych unixów.
ł
Prawa dost pu do plików
ę
w systemie UNIX – telegraficzny skrót
(u ytkownik, grupa, reszta; zapis, odczyt, wykonanie).
ż
Kopiowanie bez zezwolenia zabronione
www.fiokware.com
Fiokware
skrypt – wprowadzenie do systemu Linux
3
Praca z systemem. Tryb tekstowy, terminal, podstawowe komendy.
Dost p zdalny w trybie tekstowym. Otwieramy terminal.
ę
Programy s fizycznie uruchamiane na komputerze z Linuksem/UNIXem. Wprowadzamy
ą
komendy, które nast pnie s przesy ane przez sie , wykonywane i ostatecznie widzimy wynik
ę
ą
ł
ć
z powrotem w oknie terminala. Pracuj c przy “prawdziwym” komputerze mamy “terminal
ą
lokalny”. Zasada dzia ania jest identyczna.
ł
Logowanie
Aplikacje: telnet, SSH.
Szyfrowanie hase i transmisji – telnet niepolecany.
ł
Program SSH dla Windows: PUTTY [
www.chiark.greenend.org.uk/~sgtatham/putty
]
Wylogowanie
exit
Ogólny wygl d polecenia:
ą
znak zach ty$
ę
program [argumenty...]
Opcje: podawane najcz ciej ze znakiem “-”: “-opcja”.
ęś
Zazwyczaj opcje mo na czy :
ż łą
ć “-l -p” == “-lp”.
Wbudowana pomoc: “--help”, “-help”, “-h”.
Pomoc systemowa: man polecenie. Pomoc do programu obs ugi pomocy:
ł
man man.
Podstawowe komendy:
ls
wy wietla zawarto katalogu (DOS – dir); ls -l – ze szczegó ami
ś
ść
ł
cd
zmienia katalog bie cy (jak w DOS)
żą
mkdir, rmdir
(jak w DOS, tylko puste katalogi)
cp, mv
(DOS: copy, move)
rm
(DOS: del)
rm -rf
(DOS: deltree)
cat
wypisanie zawarto ci pliku
ś
touch
stworzenie nowego, pustego pliku
mcedit, joe
najprostsze edytory (dla zaawansowanych: vi/vim)
passwd
zmiana has a
ł
finger, w, who
pokazuje, kto jest zalogowany na komputerze
finger [user]
informacje o u ytkowniku user (imi , nazwisko, ostatnie zalogowanie...)
ż
ę
uname, uname -a nazwa, wersja, architektura systemu (najbardziej podstawowe informacje)
uptime
czas dzia ania systemu od w czenia
ł
łą
cat /proc/cpuinfo informacje o procesorze/-ach
ps [-ax]
informacje o procesach w systemie
talk oraz write
komunikacja mi dzy u ytkownikami
ę
ż
Kopiowanie bez zezwolenia zabronione
www.fiokware.com
Fiokware
skrypt – wprowadzenie do systemu Linux
4
Przekierowania:
komenda > plik1
(zapisuje wynik do pliku plik1)
Filtry: je li
ś
Komenda1: generuje dane wyj ciowe
ś
Komenda 2: oczekuje danych wej ciowych, generuje nowe wyj ciowe
ś
ś
to
komenda1 | komenda2
przekazuje dane wynikowe komendy1 programowi komenda2.
less
wy wietla plik partiami, zatrzymuj c si co stron (DOS: more)
ś
ą
ę
ę
less plik równowa ne
ż
cat plik | less
- grep [wzorzec]
szuka wzorca na wej ciu i wy wietla pasuj ce linie
ś
ś
ą
grep wzorzec plik równowa ne
ż
cat plik | grep wzorzec
Tryb graficzny.
Pierwsze lata istnienia systemu: brak trybu graficznego.
Ju od dawna jednak Linux to nie tylko skomplikowane komendy i “bia e literki na czarnym tle”.
ż
ł
X Window System (popularnie, acz niepoprawnie “X Windows”). Darmowa wersja formalnego
protoko u X11. Systemy komercyjne – swoje implementacje. Linux – implementacja
ł
“XFree86”.
modularno (modu obs ugi karty graficznej, modu OpenGL)
ść
ł
ł
ł
architektura klient-serwer
umo liwia uruchamianie programów na innym komputerze, ni wy wietlanie wyników
ż
ż
ś
pojedyncze programy, lub “pe en” tryb terminalowy
ł
nowoczesne, przyjazne u ytkownikowi dystrybucje systemów: logowanie w trybie graficznym,
ż
lub w ogóle bez logowania. Workstacje unixowe – równie mog by przyjazne: Solaris –
ż
ą
ć
GNOME, HP – CDE...
sam X serwer odpowiada za us ugi bardzo podstawowe
ł
program obs ugi okien (window manager) rysuje okienka, guziki i ikonki
ł
najpopularniejsze rodowiska w Linuksie: GNOME (domy lne w RedHat/Fedora) oraz KDE.
ś
ś
Linux: du y wybór, systemy komercyjne – zazwyczaj wybór niewielki (stacje robocze) lub w
ż
ogóle brak trybu graficznego (serwery).
Podstawowe, najpopularniejsze programy u ytkowe dla systemu Linux:
ż
Przegl darka WWW:
ą
Mozilla,Galeon/Epiphany, Mozilla-FireFox, Konqueror (KDE)
Klient e-mail:
Evolution, Mozilla, Kmail, Sylpheed
Program biurowy:
OpenOffice
Grafika rastrowa:
GIMP
W komercyjnych systemach unixowych programów typowo u ytkowych jest zdecydowanie mniej.
ż
Wynika to z grupy docelowej tych systemów (zazwyczaj – powa ne serwery). Najcz ciej dost pny
ż
ęś
ę
jest stosunkowo zamkni ty katalog przygotowany przez producenta danego systemu. Zazwyczaj
ę
Kopiowanie bez zezwolenia zabronione
www.fiokware.com
Fiokware
skrypt – wprowadzenie do systemu Linux
5
jednak mamy do dyspozycji kompilator np. C – przy jego u yciu mo emy skompilowa w asne
ż
ż
ć ł
programy, w tym np. próbowa dokona portu wolnego oprogramowania z Linuksa na system
ć
ć
komercyjny. Czasem istniej gotowe pakiety budowane przez producenta - np. HP standardowo
ą
do cza wolny serwer WWW Apache, za IBM dalece ogólniej stara si integrowa AIX-a z ca
łą
ś
ę
ć
łą
“warstw ” linuksow .
ą
ą
Komendy tekstowe Linux – cd.
mc
klon Norton Commandera (Linux)
df
zaj to miejsca na dyskach/partycjach
ę ść
mount
zamontowane systemy plików
du
zaj to miejsca przez katalogi
ę ść
fdisk
zarz dzanie partycjami (dla zaawansowanych)
ą
fsck
odpowiednik programu ScanDisk
mkfs
odpowiednik programu format.
Organizacja katalogów w systemie.
(dla linuksa istnieje standard - FHS). Typowo:
/bin, /usr/bin
programy dost pne dla u ytkowników; globalne i prywatne
ę
ż
/sbin, /usr/sbin
programy administracyjne; systemowe (np. fdisk, mount)
/home
katalogi “domowe” u ytkowników (wyj tek: /root – administrator)
ż
ą
/etc
konfiguracja systemu (pewien odpowiednik rejestru windows)
/dev
urz dzenia
ą
/proc
katalog specjalny, informacje systemowe
/lib
biblioteki systemowe
/var
pliki systemowe wysokiej zmienno ci (poczta, newsy, bazy danych...)
ś
/opt
programy dodatkowe
/tmp
pliki tymczasowe
Zarz dzanie u ytkownikami
ą
ż
adduser, deluser
chfn
zmienia wpisy o u ytkowniku
ż
passwd user
su [-] user
zmiana bie cego u ytkownika; “-” ustawia równie rodowisko (m.in.
żą
ż
ż ś
zmienne systemowe, np. $PATH czyli odpowiednik PATH z DOS)
sudo komenda
umo liwia wykonywanie komend na prawach administratora.
ż
Konfiguracja: visudo (plik /etc/sudoers). Wypróbuj: sudo su -.
Kopiowanie bez zezwolenia zabronione
www.fiokware.com
Fiokware
skrypt – wprowadzenie do systemu Linux
6
Instalacja - podstawowe zasady podzia u dysków na partycje
ł
(pomijaj c oczywist partycj swap)
ą
ą
ę
Nie mówimy tu o konkretnych instalatorach wybranych dystrybucji. Nie mamy na to czasu. Sama
instalacja systemu zazwyczaj jest dosy prosta – przynajmniej dla ostatnich dystrybucji
ć
“biurkowych”.
Ma y dysk – za ó jedn partycj , pozwoli to maksymalnie wykorzysta dost pne miejsce.
ł
ł ż
ą
ę
ć
ę
W wi kszo ci przypadków warto zrobi “/” kilka GB oraz reszt na “/home”. Pozwoli to
ę
ś
ć
ę
bezbole nie przenie dane u ytkowników w przysz o ci podczas ew. uaktualnienia systemu.
ś
ść
ż
ł ś
Konfiguruj c serwer, nale y pomy le , do czego ma on s u y . Je eli np. b dzie zajmowa si
ą
ż
ś ć
ł ż ć
ż
ę
ł ę
wymian du ej ilo ci poczty, to na pewno warto za o y oddzieln partycj /var (unikni cie
ą
ż
ś
ł ż ć
ą
ę
ę
fragmentacji w ca ym systemie plików).
ł
Je eli projektujemy komputer typu
ż
dualboot – Windows + Linux:
pierwsza partycja: dysk Windows, FAT32 (nie NTFS, eby mie dost p z Linuksa)
ż
ć
ę
druga “partycja”: wpis partycji rozszerzonej
dalsze partycje – partycje linuksowe.
albo jako partycje g ówne 3-4, albo jako “dyski logiczne” (numery 5 w gór ).
ł
ę
Partycj swap korzystnie jest umieszcza mo liwie najbli ej pocz tku dysku, poniewa szybko
ę
ć
ż
ż
ą
ż
ść
odczytu spada wraz z odleg o ci od rodka (!).
ł ś ą
ś
Z przyczyn czasowych nie omawiamy przypadków bardziej skomplikowanych/zaawansowanych.
Kopiowanie bez zezwolenia zabronione
www.fiokware.com
Fiokware
skrypt – wprowadzenie do systemu Linux
7
Instalowanie i zarz dzanie oprogramowaniem.
ą
Kod rod owy vs. binaria vs. pakiety
ź
ł
teoretyczne zalety kodu rod wego - mo liwo ci modyfikacji, analizy, audytu, optymalizacji
ź
ł
ż
ś
oraz przeno no : o ile nie ma zale no ci od bibliotek, program skompilujemy wsz dzie tam,
ś ść
ż ś
ę
gdzie dany nam zostanie kompilator C/C++.
system automake; “CMI” [“configure; make; make install”]:
a) rozpakowanie zródeł
tar -xzf plik.tar.gz
b) konfiguracja ./configure (--help/--opcja)
c) kompilacja - make
d) instalacja - make install
paczki binarne (np.: mozilla) – dla ró nych systemów.
ż
pakiety.
Linux: systemy tgz/deb/rpm. Idea zale no ci, architektura, inne informacje.
ż ś
Unixy komercyjne: swoje w asne systemy, ró ne nazwy “pakietów”, np. depot dla HP-UX.
ł
ż
Systemy pó automatycznego zarz dzania pakietami
ł
ą
- po co s : przede wszystkim wspomagaj proces spe niania zale no ci (pakiet A wymaga B, B
ą
ą
ł
ż ś
wymaga C i D... -- chcemy powiedzie “zainstaluj A” i eby system sam zatroszczy si o
ć
ż
ł ę
doinstalowanie wynikaj cych z tego polecenia pakietów sk adowych)
ą
ł
- apt (oryginalnie: Debian)
update listy pakietów na serwerze - apt-get update
instalacja - apt-get install pakiet
usuni cie -
ę
apt-get remove pakiet
upgrade systemu - apt-get upgrade
plik konfiguracyjny (lokalizacja repozytoriów sieciowych): /etc/apt/sources.list
apt-rpm (port apt-a dla systemów RPM).
do RedHata 9/FC1 warto zainstalowa sobie apt-a z
ć
http://apt.freshrpms.net
.
yum
uwaga: od wersji Fedora Core 1 z systemem dostarczny jest yum; apt – opcjonalnie, ale
b dzie wspierany.
ę
poldek (PLD)
Ustawianie trybu pracy systemu
Runlevel – “szablon konfiguracji“ systemu. U ywane warto ci:
ż
ś
0 – wy cz maszyn ; 6 – zresetuj;
łą
ę
1 – tryb jednou ytkownikowy (w zasadzie naprawczy)
ż
3 – tryb tekstowy
5 – tryb graficzny.
Definicja – w pliku /etc/inittab (szczegó y – przy wst pie serwerowym).
ł
ę
Prze czanie bez resetu komputera:
łą
init [cyfra runlevelu] (z roota).
Kopiowanie bez zezwolenia zabronione
www.fiokware.com
Fiokware
skrypt – wprowadzenie do systemu Linux
8
W trybie graficznym domy lnie mamy logowanie analogiczne do trybu tekstowego.
ś
Mo na zrobi autologowanie wybranego u ytkownika przy starcie systemu (wygodne na
ż
ć
ż
komputerze u ywanym tylko przez 1 osob i gdy nie zale y nam na bezpiecze stwie dost pu).
ż
ę
ż
ń
ę
Protokó X umo liwia równie
ł
ż
ż tryb terminalowy.
Aplikacje s wtedy uruchamiane na serwerze (UWAGA: w rozumieniu potocznym, wg. definicji
ą
protoko u X teoretycznie powinni my powiedzie X Clients) i wy wietlane na kliencie.
ł
ś
ć
ś
Do serwera pod czamy si komend :
łą
ę
ą
X -query [IP serwera]
Pracuje si podobnie, jak na “normalnym” komputerze. Warto jedynie mie sie 100Mbit.
ę
ć
ć
Kopiowanie bez zezwolenia zabronione
www.fiokware.com