Linux-podstawy (Piotr Stykowski).doc

(221 KB) Pobierz
Linux – podstawowe zagadnienia

Linux dla początkujących – materiały do nauki

Piotr Stykowski

Linux – podstawowe zagadnienia

 

Co to jest Linux???

Linux - ostatnio coraz częściej można to słowo usłyszeć w mediach, lub przeczytać jakiś artykuł o nim w czasopismach komputerowych - co to w zasadzie jest i dlaczego wzbudza aż tyle kontrowersji? Czy przesiadać się na niego ze znanego nam wszystkim systemu jakim jest Windows? Co go wyróżnia od innych systemów?

   Linux jest to 32-bitowy, wielozadaniowy system operacyjny klasy Unix. Przede wszystkim jest darmowy i stabilny. Również większość oprogramowania przeznaczonego dla niego jest darmowa, zdarzają się wyjątki w postaci oprogramowania komercyjnego, shareware lub licencji tylko do użytku domowego, no ale takie jest prawo rynku. Jednak głównym przesłaniem twórców oprogramowania dla tego systemu jest tworzenie i udostępnianie darmowego oprogramowania wraz z kodem źródłowym. Oprogramowanie to często przewyższa swoimi możliwościami konkurencyjne oprogramowanie komercyjne. Każdy kto zna się na programowaniu może dowolnie zmieniać kod programu pod warunkiem dołączenia swoich poprawek w postaci kodu do programu. To wszystko powoduje, że nad oprogramowaniem dla Linuksa pracują tysiące indywidualnych programistów na świecie, również w Polsce, oraz coraz więcej firm. Wsparcie dla Linuksa z dnia na dzień ogłasza coraz więcej firm, między innymi producenci sprzętu tacy jak IBM, Intel, HP czy Lexmark. W tej chwili duża ilość serwerów internetowych postawionych jest na Linuksie, wykorzystywany on jest przez wiele przedsiębiorstw, firm państwowych, militarnych, rządowych, prestiżowych hoteli, przykładem może być Kancelaria Sejmu w Polsce, czy Biuro Bezpieczeństwa Narodowego.

   Istnieje wiele dystrybucji Linuksa, od najprostszych - przeznaczonych raczej dla początkującego użytkownika, są to Corel Linux(w zasadzie był - Corel wycofał się z tworzenia go), WinLinux i według mnie Mandrake, przez dystrybucje poważniejsze, jednak coraz łatwiejsze do opanowania jak Red Hat czy SuSE, po takie, które są wyzwaniem dla zagorzałych zwolenników konsoli i konfiguracji ręcznej - Slackware (jednocześnie jedna z bezpieczniejszych i stabilniejszych dystrybucji) oraz sprawiający dużo kłopotów w konfiguracji Debian. Co powinniśmy wybrać? Najlepiej spróbować kilku dystrybucji i samemu ocenić co nam jest potrzebne i w czym czujemy się najlepiej.

   A jak się to zaczęło? Oto pierwszy post Linusa na grupy usenetu dotyczący stworzonego przez niego projektu:

Autor:Linus Benedict Torvalds (torvalds@klaava.Helsinki.FI)

Temat:Free minix-like kernel sources for 386-AT

Grupy dyskusyjne:comp.os.minix

Data:1991-10-05 08:53:28 PST

 

 

Do you pine for the nice days of minix-1.1, when men were men and wrote

their own device drivers? Are you without a nice project and just dying

to cut your teeth on a OS you can try to modify for your needs? Are you

finding it frustrating when everything works on minix? No more all-

nighters to get a nifty program working? Then this post might be just

for you :-)

 

As I mentioned a month(?) ago, I'm working on a free version of a

minix-lookalike for AT-386 computers.  It has finally reached the stage

where it's even usable (though may not be depending on what you want),

and I am willing to put out the sources for wider distribution.  It is

just version 0.02 (+1 (very small) patch already), but I've successfully

run bash/gcc/gnu-make/gnu-sed/compress etc under it.

 

Sources for this pet project of mine can be found at nic.funet.fi

(128.214.6.100) in the directory /pub/OS/Linux.  The directory also

contains some README-file and a couple of binaries to work under linux

(bash, update and gcc, what more can you ask for :-).  Full kernel

source is provided, as no minix code has been used.  Library sources are

only partially free, so that cannot be distributed currently.  The

system is able to compile "as-is" and has been known to work.  Heh.

Sources to the binaries (bash and gcc) can be found at the same place in

/pub/gnu.

 

ALERT! WARNING! NOTE! These sources still need minix-386 to be compiled

(and gcc-1.40, possibly 1.37.1, haven't tested), and you need minix to

set it up if you want to run it, so it is not yet a standalone system

for those of you without minix. I'm working on it. You also need to be

something of a hacker to set it up (?), so for those hoping for an

alternative to minix-386, please ignore me. It is currently meant for

hackers interested in operating systems and 386's with access to minix.

 

The system needs an AT-compatible harddisk (IDE is fine) and EGA/VGA. If

you are still interested, please ftp the README/RELNOTES, and/or mail me

for additional info.

 

I can (well, almost) hear you asking yourselves "why?".  Hurd will be

out in a year (or two, or next month, who knows), and I've already got

minix.  This is a program for hackers by a hacker.  I've enjouyed doing

it, and somebody might enjoy looking at it and even modifying it for

their own needs.  It is still small enough to understand, use and

modify, and I'm looking forward to any comments you might have.

 

I'm also interested in hearing from anybody who has written any of the

utilities/library functions for minix. If your efforts are freely

distributable (under copyright or even public domain), I'd like to hear

from you, so I can add them to the system. I'm using Earl Chews estdio

right now (thanks for a nice and working system Earl), and similar works

will be very wellcome. Your (C)'s will of course be left intact. Drop me

a line if you are willing to let me use your code.

                            Linus

 

PS. to PHIL NELSON! I'm unable to get through to you, and keep getting

"forward error - strawberry unknown domain" or something.

 

1.     Instalacja programów

 

Pakiety RPM

Aby zainstalować pakiet RPM wpisujemy polecenie:

rpm -ivh nazwa_pakietu.rpm

użyte opcje:
-i   -polecenie instalacji pakietu
-v - podaje nazwę instalowanego pakietu
-h - pokazuje postęp instalacji za pomocą znacznika #

Aby uaktualnić zainstalowany pakiet należy wydać polecenie:

rpm -Uvh nazwa_pakietu.rpm

Zastosowana tutaj opcja -U usuwa poprzednią wersję programu i instaluje nową.

Odinstalowanie programu możemy wykonać wydając polecenie:

rpm -e nazwa_pakietu.rpm

Żeby zainstalować pakiety źródłowe RPM, mające rozszerzenie *.src.rpm, należy je wcześniej skompilować poleceniem:

rpm --rebuild nazwa_pakietu.src.rpm

Po tej operacji, jeżeli nie wystąpiły jakieś błędy podczas kompilacji, powinniśmy uzyskać ( Red Hat ) w katalogu /usr/src/redhat/RPMS/i386 gotowy do zainstalowania pakiet binarny.

Instalacja programów spakowanych programami tar, gzip i bzip2

Aby rozpakować dany plik musimy wydać odpowiednią komendę:

dla plików z rozszerzeniem *.tgz lub *.tar.gz odpowiednia jest komenda:   tar -xvzf nazwa_pliku.tar.gz

dla plików *.tar.bz2 musimy użyć komendy:  tar -xvjf nazwa_pliku.tar.bz2

Teraz możemy przystąpić do instalacji programu, wykonuje się to zazwyczaj ciągiem poleceń wydanych w katalogu ze źródłami programu:
./configure
make
make install

Przed instalacją warto jest przeczytać pliki README i INSTALL, zazwyczaj znajdujące się w katalogu ze źródłami. Można w nich dowiedzieć się ważnych informacji dotyczących programu i sposobu jego konfiguracji i instalacji.

 

Inne pliki instalacyjne

Czasami może się zdarzyć, że programy wymagają odmiennego podejścia do ich instalacji. Przykładem może być ostatni hit - StarOffice - udostępniany jako plik instalacyjny zakończony rozszerzeniem *.bin. W tym wypadku należy nadać plikowi możliwość uruchomienia poleceniem chmod. Zdarzają się też inne programy, które posiadają gotowe skrypty lub programy instalacyjne.

 

 

2.     Najważniejsze polecenia shella

 

adduser nazwa_konta - założenie nowego konta
cal - wyświetla kalendarz na bieżący miesiąc
cat nazwa_pliku - wyświetla zawartość pliku
cd - polecenie analogiczne jak w systemie MS-DOS
chmod u/g/o/a +/- r/w/x plik/katalog - polecenie służące do zmiany praw dostępu do plików i katalogów
   - właściciela określia się za pomocą liter: u - właściciel, g - grupa, o - inni użytkownicy, a - wszyscy
   - prawa określa się następująco: r - zezwolenie na odczyt, w - zapis, x - uruchomienie
Innymi sposobem ustawiania praw dostępu to ustawianie ich za pomocą liczb ósemkowych. Cyframi od 0-7 ustawiamy odpowiednio:
   0 to ( --- ) brak praw dostępu
   1 to ( --x ) wykonywanie
   2 to ( -w- ) zapis
   3 to ( -wx ) zapis i wykonywanie
   4 to ( r-- ) odczyt
   5 to ( r-x ) odczyt i wykonywanie
   6 to ( rw- ) odczyt i zapis
   7 to ( rwx ) odczyt, zapis, wykonywanie
wydając polecenie chmod podajemy 3 liczby, które oznaczają w kolejności: prawa dostępu właściciela, grupy i innych.
chown nowy_właściciel  plik/katalog - polecenie zmiany właściciela pliku lub katalogu
chgrp nowa_grupa  plik/katalog - polecenie zmiany grupy pliku lub katalogu
clear - czyszczenie ekranu
cmp plik1 plik2 - porównuje zawartość dwóch plików
cp - kopiuje pliki i katalogi
date - wyświetla bieżącą datę
df - sprawdza wolne miejsce na dysku
diff plik1 plik2 - stwierdza, czy między zawartością dwóch plików występują różnice
du - informuje o wielkości poszczególnych katalogów
echo - wyświetla podany tekst
kill - kończy pracę danego procesu
last nazwa_użytkownika - wyświetla logi użytkownika
ln -s nazwa_katalogu   nazwa_łącza - tworzy łącze symboliczne (tzw. link)
ls - wyświetla zawartość katalogu
mail - wysyła i odbiera pocztę
man - pomoc na wszelkie tematy - np.: man ls - pokaże nam pomoc na temat polecenia ls
mkdir - tworzenie katalogu
mv - zmiana nazwy pliku lub jego przeniesienie
rmdir - usuwanie katalogu
passwd nazwa_konta - ustawienie hasła dla konta
rm - usunięcie pliku
rm -f nazwa_katalogu - usuwanie katalogu wraz z podkatalogami bez potwierdzenia
rpm -q | część_nazwy_pakietu - sprawdza czy jest zainstalowany dany pakiet RPM
shutdown - restartuje komputer
wall - przesyła komunikaty do wszystkich użytkowników
who - lista użytkowników
w - jak wyżej, jednak informacje są dokładniejsze

 

 

 

3.     Partycje FAT16/32 w linuxie

 

Podczas instalacji Linuksa możemy wskazać miejsce montowania istniejących już partycji Windowsa (fat16/32), jednak partycje te dostępne są w trybie rw (odczyt/zapis) tylko dla root-a, zaś zwykły użytkownik może jedynie używać ich w trybie ro czyli tylko do odczytu. Jeżeli chcesz to zmienić musisz zmodyfikować, lub jeżeli zamierzasz podmontować nową partycję wprowadzić wpis w pliku /etc/fstab.

  Standardowo partycje montuje się w katalogu /mnt, gdzie tworzymy katalog do którego ma być podmontowana, np: "Windows" lub "c". Jeżeli wskazaliśmy punkt montowania podczas instalacji to wpis w pliku /etc/fstab wygląda mniej więcej tak:

...

Zgłoś jeśli naruszono regulamin