1. Wprowadzenie do systemu Linux Slackware
Slackware jest dystrybucją, która jako pierwsza została udostępniona szerokiemu gronu użytkowników. Stworzył ją Patrick Volkerding
w 1992 roku. Podstawowymi założeniami przy jej tworzeniu było i jest bezpieczeństwo oraz
stabilność.
|
|
Patrick Volkerding |
Linus Torvalds |
Pracując z tym systemem, od samego początku widać, że Linux to całkiem inna filozofia niż Windows. Po pierwsze, w
Linuksie mamy pełną kontrolę nad wszystkimi zasobami systemu. To my decydujemy, jakie programy i gdzie zainstalować, to my
decydujemy, co i jak ma być skonfigurowane - zwłaszcza jeśli chodzi o Slackware. W odróżnieniu od innych dystrybucji,
w Slackware praktycznie nic nie konfiguruje się automatycznie. Cały proces konfiguracji od początku do końca przeprowadza
użytkownik. Tylko w niektórych przypadkach można sobie pomóc skryptami konfiguracyjnymi. Kolejną wielką zaletą Linuksa jest to,
że kody źródłowe, zarówno jądra jak i znacznej większości programów są ogólnie dostępne, dzięki czemu bardziej zaawansowani
użytkownicy mogą dowolnie modyfikować i dostosowywać ten system do własnych potrzeb.
1.1 Obalanie mitów
Punkt ten postanowiłem dopisać po wysłuchaniu rozmowy,
między kilkoma osobami stojącymi w krakowskim Empiku. Osoby te, przeglądając
czasopisma Linuksowe, rozmawiały na temat wymagań tego systemu. Nie będę tu przytaczał
ich rozmowy bo mało w niej było prawdy - choć jedna z nich wypowiadała się
w bardzo autorytatywny sposób. Wniosek z tego taki, że jeśli ktoś mówi jak ekspert
niekoniecznie nim jest (oczywiście tyczy się to także mojej osoby - bo
nie wydaje mi się żebym pisał jak ekspert :) ).
Ale do rzeczy:
- Linux nie musi być zainstalowany na osobnym dysku!
- Podstawowa instalacja Linuksa nie zajmuje 1.5 GB!
- Jest możliwość czytania i zapisu na partycjach NTFS, FAT32 oraz FAT!
- Jest możliwość posiadania trzech systemów (w tym Linuksa) na jednym dysku!
Jeśli kiedyś usłyszę podobne mity, to na pewno znajdą się na tej liście...
1.2 Podstawowe pojęcia
Ponieważ zadaniem tej strony nie są dywagacje na temat, która dystrybucja
Linuxa jest lepsza, jaka jest ich historia, początki, a szczegółowy opis
instalacji i konfiguracji to pozwolicie, że przejdę szybko do objaśnień. Poniżej
w formie pytań i odpowiedzi przedstawiłem podstawowe pojęcia, które powinien
znać początkujący użytkownik. Ich wyjaśnienia pomogą wam lepiej zrozumieć dalsze części serwisu.
Co to jest jądro/kernel?
Jak sama nazwa wskazuje jądro jest centralną częścią systemu. Odpowiada za kontrolę procesora, pamięci,
dysku twardego oraz wszystkich urządzeń, jakie mamy w komputerze. Jądro kontroluje również uruchamiane w systemie
programy i niektóre operacje przez nie wykonywane. Podstawowa różnica między jądrem systemu Linux a Windows polega na
tym, że kod źródłowy jądra Linuksa jest ogólnie dostępny. Dzięki temu każdy z nas może skompilować (stworzyć)
takie jądro, jakie mu odpowiada - np. dostosować je do sprzętu jaki mamy w komputerze (po co nam obsługa USB czy dysków
SCSI skoro ich nie posiadamy!). Różnic jest oczywiście o wiele więcej. Zainteresowanych tym tematem odsyłam do innych stron
traktujących o budowie i działaniu jądra.
Z terminem jądro pierwszy raz zetkniecie się w rozdziale mówiącym o tworzeniu
dyskietek startowych. Napisałem tam, że mamy wybór z jakiego obrazu
zrobić dyskietkę bootowalną. Jest to nic innego jak wybór dyskietki z odpowiednio
przygotowanym jądrem.
Oczywiście, aby system operacyjny mógł być nazywany Linuksem, musi posiadać jądro Linuksa.
Aby sprawdzić jaka jest najnowsza wersja jądra lub przejrzeć poprzednie wejdź na
http://www.kernel.org/.
Co to są moduły jądra?
Jest to część kodu jądra. Zazwyczaj pewnego rodzaju sterownik, który może być dynamicznie załadowany lub usunięty
z pamięci. Dzięki modułom jądro zajmuje mniej miejsca w pamięci. Kolejnym plusem modułów jest możliwość testowania różnego rodzaju
sterowników bez konieczności restartu systemu.
Co to znaczy podmontować dysk lub odmontować?
W Linuksie, aby korzystać z dysków, dyskietek oraz innych urządzeń wymiennych musimy wykonać czynność zwaną
montowaniem (podpięciem) do systemu plików. Wykorzystujemy do tego komendę mount. Opis
jej składni znajdziecie na stronie manuala.
Po zakończeniu pracy z wcześniej podmontowanym urządzeniem należy go odmontować (odpiąć) komendą
umount. Jeśli nie odmontujemy wcześniej podmontowanego CD-ROMu nie będziemy w stanie wyciągnąć
z niego płyty CD.
Co to jest partycja?
Partycja to część dysku twardego. Dysk dzielimy na partycje w celu oddzielenia od siebie danych lub np.
systemów operacyjnych. Są dwa rodzaje partycji Primary i Extended. Na dysku możemy posiadać maksymalnie tylko cztery partycje
primary. Partycja Extended to partycja, którą możemy podzielić na tzw. dyski logiczne.
W jaki sposób Linux "nazywa" dyski i partycje?
Każdy dysk (jak i każde inne urządzenie) reprezentowany jest jako plik w katalogu /dev.
Dyski nazywane są w następujący sposób:
/dev/hda - Dysk master na pierwszym kontrolerze IDE (cały dysk)
/dev/hda1 - Pierwsza partycja (primary) na dysku /dev/hda
/dev/hda2 - Druga partycja (primary) na dysku /dev/hda
/dev/hda3 - Trzecia partycja (primary) na dysku /dev/hda
/dev/hda4 - Czwarta partycja (primary) na dysku /dev/hda
/dev/hda5 - Partycja (logical) na dysku /dev/hda
/dev/hda6 -Partycja (logical) na dysku /dev/hda
...
/dev/hdb - Dysk slave na pierwszym kontrolerze IDE (cały dysk)
/dev/hdb1 - Pierwsza partycja (primary) na dysku /dev/hdb
/dev/hdb2 - Druga partycja (primary) na dysku /dev/hdb
/dev/hdb3 - Trzecia partycja (primary) na dysku /dev/hdb
/dev/hdb4 - Czwarta partycja (primary) na dysku /dev/hdb
/dev/hdb5 - Partycja (logical) na dysku /dev/hdb
/dev/hdb6 - Partycja (logical) na dysku /dev/hdb
...
Na dysku można mieć tylko 4 partycje primary, więc wszystkie partycje zakończone cyfrą wiekszą niż 4 to partycje
logiczne.
/dev/sda - Pierwszy dysk SCSI (cały dysk)
/dev/sda1 - Pierwsza partycja (primary) na dysku /dev/sda
...
/dev/sdb - Drugi dysk SCSI (cały dysk)
/dev/sdb1 - Pierwsza partycja (primary) na dysku /dev/sdb
...
/dev/scd0 - Pierwszy CD-ROM SCSI
/dev/scd1 - Drugi CD-ROM SCSI
...
Inne urządzenia podpinane do kontrolerów SCSI (skanery, nagrywarki itd.)
/dev/sg0 - Pierwsze ogólne urządzenie SCSI
/dev/sg1 - Drugie ogólne urządzenie SCSI
hda, hda1, scd0, itd. nazywamy deskryptorami.
Co to jest swap?
Swap to partycja, którą Linux wykorzystuje do tymczasowego przechowywania danych. Można powiedzieć, że jest ona rozszerzeniem
pamięci operacyjnej.
Co to jest powłoka?
Powłoka, to interpreter poleceń jakie wydajemy (cd,
mkdir...). Można ją porównać z DOS-owym Command.com.
Pamiętać jednak należy, że linuksowe powłoki są o wiele potężniejsze.
Jest kilka rodzajów powłok. Najpopularniejsza
z nich nazywa się Bash. Z reguły jest to domyślna powłoka każdego systemu Linux.
Co to jest skrypt?
Skrypt to plik tekstowy zawierający polecenia, które chcemy aby
wykonał system (powłoka). Jest to coś podobnego do plików *.bat pod DOS
i Windows z tym, że mamy o wiele więcej możliwości.
Co to jest Boot Disk?
Boot disk (dyskietka startowa) to dyskietka, z której można "załadować" system. Jest kilka
rodzajów dyskietek startowych, które różnią się przede wszystkim konfiguracją zamieszczonego na nich jądra. Więcej
o dyskietkach startowych dowiecie się w rozdziale 3. Tworzenie dyskietek startowych.
Co to są Root Disks?
W skrócie można powiedzieć, że na dyskietkach root znajdują się wszystkie
potrzebne do przeprowadzenia instalacji pliki oraz skrypty instalacyjne dzięki, którym w prosty sposób zainstalujemy Slackware.
Co to jest Supplemental Disk?
Supplemental disk (dyskietka dodatkowa) to dyskietka, na której znajduje się dodatkowe oprogramowanie potrzebne
podczas instalacji. Taką dodatkową dyskietką jest np. network.dsk lub
pcmcia.dsk.
Co to jest host?
Host to synonim do: komputer, stacja robocza, węzeł sieci, serwer.
Jak wygląda organizacja systemu plików w Linuksie?
Przed przystąpieniem do instalacji Linuksa każdy powinien wiedzieć jak wygląda organizacja systemu plików w
tym systemie. Krótki opis organizacji systemu plików znajdziesz w podrozdziale 8. Zapoznanie
z systemem.
Co to są demony?
Demony, to programy uruchomione w tle.
Co to jest PID i UID?
Każdemu uruchomionemu w systemie programowi przydzielany jest numer PID
(Process IDentification) a każdemu użytkownikowi
UID (User IDentyfication),
które ich identyfikują. Listę uruchomionych w systemie programów i kto je
uruchomił wyświetla polecenie ps -Af.
Co to jest kompilacja?
Kompilacja to proces zamieniania kodu źródłowego (source code) w jednym z języków programowaniana na kod zrozumiały
dla procesora (binary-code).
Co to jest sterownik?
Sterownik to program kontrolujący urządzenie podpięte do komputera.
Co to jest device node?
Device node to specjalny plik umieszczony w /dev reprezentujący konkretne
urządzenie w komputerze (nazywany również deskryptorem).
Co to jest Epoka Unixa?
Jest to czas, od którego liczy się powstanie systemu Unix i jego podobnych. Epoka Unix zaczęła się 00:00:00 UTC, 1
stycznia 1970.
Co to jest biblioteka?
Biblioteki to zbiory funkcji wykorzystywanych przez programy. Wiele programów może korzystać z tej samej
biblioteki dzięki czemu są one mniejsze i oszczędzają miejsce na dysku oraz w pamięci operacyjnej.
Co to jest dowiązanie symboliczne (Symbolic Link)?
Jest to specjalny, który wskazuje inny plik. Dokładnie to samo co skrót w Windows.
Co to jest wirtualny terminal (Virtual Terminal)?
Jest to specjalny program symulujący wiele terminali na jednym stanowisku pracy (jeden monitor, klawiatura, myszka).
Naciskając odpowiednie kombinacje klawiszy możemy przełączać się między terminalami [ALT]+[Fx],
gdzie x to numer klawisza funkcyjnego. Ilość terminali jest z reguły ograniczona.
Co to jest runlevel?
Jest to stan w jakim znajduje się,lub do którego uruchamia się system. Podczas startu systemu prócz jądra
uruchamiany jest również program init. Program ten czyta plik konfiguracyjny
/etc/inittab , w którym zawarte są informacje jak uruchomić system. W Slackware istnieje
6 stanów runlevel:
0 = halt - zatrzymanie systemu, wyłączenie komputera
1 = single user mode - tryb jednego użytkownika
2 = unused (but configured the same as runlevel 3) - nie używany ale skonfigurowany jak runlevel 3
3 = multiuser mode (default Slackware runlevel) - tryb wielu użytkowników
4 = X11 with KDM/GDM/XDM (session managers) - tryb X Windows
5 = unused (but configured the same as runlevel 3) - nie używany ale skonfigurowany jak runlevel 3
6 = reboot - ponowne uruchomienie systemu
Jeśli więc chcemy ponownie uruchomić system to przechodzimy do stanu runlevel 6 wydając np. komendę
reboot.
1.3 Jak zdobyć Slackware
Ja kupiłem Slackware w kiosku z gazetą LiNUX+ Extra.
W opakowaniu był krótki opis instalacji oraz 4 CD:
- CD1 - Płyta instalacyjna Slackware (bootowalna)
- CD2 - Slackware live
- CD3 - Źródła Slackware
- CD4 - Pakiety dodatkowe
Na stronie http://www.linux.com.pl/
możecie się dowiedzieć gdzie kupić to czasopismo za pośrednictwem Internetu.
Oczywiście wszystko, co jest na tych czterech kompaktach można ściągnąć z
Internetu. Pod adresem www.slackware.com
zamieszczonych jest mnóstwo linków do stron WWW oraz serwerów FTP, z których
można ściągnąć wszystkie potrzebne podczas instalacji pliki/pakiety.
Gdy posiadamy już wszystkie potrzebne do instalacji pliki to upewniamy się, że mamy przynajmniej 300MB wolnej przestrzeni
dyskowej. Przydałoby się oczywiście więcej, jeśli będziemy chcieli "postawić"
w przyszłości serwer FTP, WWW itd. 300MB to oczywiście nie minimum. Ja sam
instalowałem Slackware na dysku, który miał 230MB a czytałem, że z powodzeniem
da się go zainstalować na dysku o pojemności 100MB!
Jako ciekawostkę dodam, że istnieją również dystrybucje Linuksa mieszczące się na jednej dyskietce 1.44MB. Jedną z wielu takich
dystrybucji jest Coyote - warto sprawdzić.
1.4 Etapy Instalacji
Instalację Slackware można podzielić na następujące etapy:
- zdobycie wymaganych plików.
- podjęcie decyzji, w jaki sposób będziemy instalować Slackware. Mamy do wyboru instalowanie z CD-ROMu, przez sieć za
pośrednictwem NFS (Network
File System), wskazując folder zawierający wymagane pliki lub korzystając z pliku będącego obrazem płyty
CD w formacie iso.
- przygotowanie dysku - podział na partycje.
- uruchomienie programu setup, wybór pakietów jakie chcemy zainstalować oraz ich instalacja
(setup to program, który przeprowadzi nas przez wszystkie etapy instalacji).
- wstępna konfiguracja systemu przy pomocy skryptów wywoływanych przez setup - konfiguracja sieci, czasu itd.
- ostateczna konfiguracja zainstalowanego systemu.
Jeśli chodzi o ostatni etap, to w dziale instalacja zamieszczę tylko opis
konfiguracji Slackware jako prostego routera. Pisząc "prosty" mam
na myśli, że będzie to tylko router - nie będzie udostępniał żadnych usług
(jak np. ftp, www) oraz nie będzie posiadał firewalla. Zagadnieniami bezpieczeństwa
oraz uruchomieniem kolejnych usług zajmę się w innych częściach tego serwisu.
[ Poprzednia ] [ Spis treści ] [ Następna ]