S DOS/Windowsa na Linux KAKO
Guido Gonzato, OBRI�
[email protected] (Obri�ite
``OBRI�I_ME''.)
verzija 1.3.2, 22. velja�e 1999.
Ovo je KAKO za sve (uskoro biv�e?) korisnike DOS-a i Windowsa koji su
odlu�ili prije�i na Linux, besplatni klon Unixa. Poku�ava pomo�i
�itatelju u primjeni njegovog znanja DOS-a i Windowsa u Linux okru�ju,
te razmjeni datoteka i resursa me�u tim OS-evima.
______________________________________________________________________
Sadr�aj
1. Uvod
1.1 Je li Linux za vas?
1.2 Da. Ho�u jo�.
1.2.1 Uvodni koncepti
1.2.2 Upute
1.3 Konvencije
2. Za nestrpljive
3. Upoznajte bash
4. Datoteke i programi
4.1 Datoteke: osnovne stvari
4.2 Simboli�ke veze
5. Dozvole i vlasni�tvo
5.1 Datoteke: prevo�enje naredbi
5.1.1 Primjeri
5.2 Pokretanje programa: vi�ezada�nost i sesije
5.3 Pokretanje programa na udaljenim ra�unalima
6. Kori�tenje direktorija
6.1 Direktoriji: osnovne stvari
6.2 Dozvole direktorija
6.3 Direktoriji: prevo�enje naredbi
6.3.1 Primjeri
7. Diskete, tvrdi diskovi i sli�no
7.1 Rad s ure�ajima na DOS na�in
7.2 Rad s ure�ajima na Unix na�in
7.3 Backup
8. A �to je s Windowsima?
9. Prilago�avanje sustava
9.1 Inicijalizacijske datoteke sustava
9.2 Inicijalizacijske datoteke programa
10. Mre�e: koncepti
11. Malo programiranja
11.1 Skripte u ljusci: .BAT datoteke na steroidima
11.2 C za vas
12. Ostalih 1%
12.1 Kori�tenje tara i gzipa
12.2 Instaliranje aplikacija
12.3 Trikovi bez kojih se ne mo�e
12.4 Gdje na�i aplikacije
12.5 Nekoliko stvari koje niste mogli
12.6 Prakticiranje UNIX-a pod DOS/Windowsima
12.7 Uobi�ajene ekstenzije i povezani programi
12.8 Pretvaranje datoteka
12.9 Besplatni uredski paketi
13. Kraj, za sada
13.1 Autorska prava
13.2 Autor
14. Hrvatski prijevod
______________________________________________________________________
11.. UUvvoodd
11..11.. JJee llii LLiinnuuxx zzaa vvaass??
�elite prije�i iz DOS svijeta (ta definicija uklju�uje Windowse) na
Linux? Dobra ideja: Linux je tehni�ki superioran DOS-u, Windowsima
9x, �ak i Windowsima NT. Ali pazite: mo�da vama ne�e biti koristan.
Ovo su glavne razlike izme�u DOS/Windowsa i Linuxa:
� Na Windowsima radi Microsoft Office i puno igara; smatra se da ga
je lako instalirati i konfigurirati; poznat je po nestabilnosti;
jadnih performansi; ru�enja su �esta.
� Na Linuxu radi StarOffice, hrpa tehni�kog softvera i manje igara;
mo�e biti te�ko instalirati ga i konfigurirati; stabilan je kao
stijena; besprijekornih performansi; ru�enja su izuzetno rijetka.
Na vama je da odlu�ite �to vam treba. Nadalje, Linux vam daje mo�, ali
treba vremena dok nau�ite kako je iskoristiti. Dakle, ako trebate
ve�inom komercijalni softver, ili vam se ne svi�a u�enje novih naredbi
i koncepata, bolje tra�ite drugdje. Budite svjesni da mnogi po�etnici
odustaju zbog po�etnih te�ko�a.
Radi se na pojednostavljivanju Linuxa, ali nnee oo��eekkuujjttee ddjjeelloottvvoorrnnoosstt
bbeezz ��iittaannjjaa ppuunnoo ddookkuummeennttaacciijjee ii bbaarreemm nneekkoolliikkoo mmjjeesseeccii kkoorrii��tteennjjaa.
Linux rezultate ne daje odmah. Unato� ovim upozorenjima, 100% sam
siguran da, ako ste prava vrsta korisnika, Linux �e postati va�a
Nirvana. Ina�e, Linux i DOS/Windows sretno mogu �ivjeti zajedno na
istom ra�unalu.
�to vam je potrebno za ovaj KAKO: pretpostavit �u da:
� znate osnovne naredbe i ideje DOS-a;
� Linux je, mo�da s X Window Systemom (ili kra�e X11), pravilno
instaliran na va�em PC-u;
� va�a ljuska (pandan COMMAND.COM-u) je bash.
Osim ako je druk�ije re�eno, sve informacije u ovom dokumentu odnose
se na lo�i stari DOS. O Windowsima ima ne�to tu i tamo jer su oni i
Linux potpuno razli�iti, za razliku od DOS-a, jadne imitacije Unixa.
Tako�er, shvatite da ovo nije ni potpun uvod ni vodi� u
konfiguriranju!
Najnovija verzija ovog dokumenta je dostupna u nekoliko formata na
<
ftp://sunsite.unc.edu/pub/Linux/docs/howto>.
11..22.. DDaa.. HHoo��uu jjoo��..
Linux i programi koji vam trebaju instalirani su na va�em PC-u.
Napravili ste si account -- korisni�ki ra�un (ako niste, ooddmmaahh
pokrenite adduser va�eime) i Linux radi. Upravo ste napisali svoje ime
i �ifru, i gledate na zaslon misle�i ``A �to sad?''.
Ne o�ajavajte. Gotovo ste spremni raditi iste stvari koje ste radili s
DOS/Windowsima, te mnoge druge. Dok ste radili pod njima, obavljali
ste neke od ovih poslova:
� pokretanje programa i stvaranje, kopiranje, pregledavanje,
brisanje, ispisivanje, preimenovanje datoteka;
� CD, MD, RD, i DIR u direktorijima;
� formatiranje disketa i kopiranje datoteka s/na njih;
� prilago�avanje sustava;
� surfanje Internetom;
� pisanje .BAT datoteka i programa u va�em omiljenom jeziku;
� preostalih 1%.
Ovi se zadaci pod Linuxom mogu izvesti sli�no kao pod DOS-om. Pod DOS-
om, obi�ni korisnik od svih 100 koristi samo neke naredbe: isto
donekle vrijedi za Linux.
11..22..11.. UUvvooddnnii kkoonncceeppttii
Najbolji na�in za u�enje je skakanje ravno u vodu. Svakako
eksperimentirajte i igrajte se s Linuxom: osim ako se logirate kao
``root'', nema mu se �to dogoditi. Nekoliko napomena:
� Najprije, kako ugasiti Linux. Ako ste u tekstualnom modu,
pritisnite <CTRL>-<ALT>-<DEL>, pri�ekajte da se sustav digne i
ugasite PC. Ako radite pod X-om, prvo pritisnite
<CTRL>-<ALT>-<BACKSPACE>, a zatim <CTRL>-<ALT>-<DEL>. NNiikkaadd nemojte
izravno gasiti ili resetirati PC: tako mo�ete o�tetiti datote�ni
sustav.
� Za razliku od DOS-a ili Windowsa, u Linux su ugra�eni sigurnosni
mehanizmi. Datoteke i direktoriji imaju dozvole; zato obi�ni
korisnik nekima ne mo�e pristupiti (pogledajte poglavlje ``Dozvole
i vlasni�tvo''). DOS i Windows vam dopu�taju da izbri�ete cijeli
disk.
� Posebni korisnik rroooott, administrator sustava, ima potpunu vlast nad
�ivotom i smr�u ra�unala. Ako radite na svom PC-u, mo�ete biti i
root. No to je ooppaassnnoo: svaka gre�ka mo�e ozbiljno o�tetiti ili
uni�titi sustav kao i u DOS/Windowsima. Ne budite root kad to nije
potrebno.
� Linux je toliko slo�en jer je vrlo prilagodljiv: gotovo svaka
mogu�nost i program mogu se prilagoditi preko jedne ili vi�e
konfiguracijskih datoteka. Slo�enost je cijena koju pla�ate za
mo�.
� Redirekcija i piping, sporedne mogu�nosti u DOS-u, vrlo su va�ne i
puno mo�nije pod Linuxom. Jednostavne naredbe mogu se povezati za
slo�ene poslove. Toplo preporu�am da ih nau�ite koristiti.
11..22..22.. UUppuuttee
Pod Linuxom upute mo�ete dobiti na mnogo na�ina. Najva�niji su:
� ��iittaannjjee ddookkuummeennttaacciijjee -- mislim ozbiljno. Iako KAKO koji �itate
mo�e poslu�iti kao uvod u Linux, ima nekoliko knjiga koje biste
stvarno trebali pro�itati: _L_i_n_u_x _I_n_s_t_a_l_l_a_t_i_o_n _a_n_d _G_e_t_t_i_n_g _S_t_a_r_t_e_d
Matta Welsha, <
http://sunsite.unc.edu/mdw/LDP/gs/gs.html>, _L_i_n_u_x
_U_s_e_r _G_u_i_d_e Larrya Greenfielda,
<
ftp://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/users-
guide>, i _L_i_n_u_x _F_A_Q, <
http://dokumentacija.linux.hr/Linux-
FAQ.html>. Na vama je da pro�itate barem jednu.
� Dokumentacija instaliranih paketa �esto je u poddirektorijima
/usr/doc.
� Za upute o ``internim naredbama'' ljuske napi�ite help, ili, jo�
bolje, man bash ili info bash.
� Za upute o nekoj naredbi napi�ite man naredba �to �e prikazati man
(mmaannual -- priru�nik) stranicu za naredba. info naredba prikazuje,
ako postoji, info stranicu za naredba. info je hipertekstualni
sustav dokumentacije, ne ba� intuitivan. Na kraju, probajte apropos
naredba ili whatis naredba. Kod svih njih rad mo�ete prekinuti
pomo�u <q>.
� Kona�no, na Internetu: pravo mjesto za dobivanje pomo�i je Usenet,
na primjer comp.os.linux.setup. Molim vas, nemojte od mene tra�iti
pomo�, jer sam prili�no preoptere�en.
11..33.. KKoonnvveenncciijjee
U ovom dokumentu, primjeri �esto slijede ovaj format: <...> je nu�an
argument, a [...] opcionalan.
Na primjer:
$ tar -tf <datoteka.tar> [> redir_datoteka ]
datoteka.tar se mora navesti, ali redirekcija u redir_datoteka nije
obavezna.
RMP (_R_e_a_d _M_a_n _P_a_g_e_s) vas upu�uje na daljnje �itanje man stranica. Ne
mogu naglasiti koliko je va�no �itanje dokumentacije. ``DOSWin''
ozna�ava ``DOS/Windows''.
Kada je prompt u primjeru naredbe #, naredbu mo�e izvr�iti samo root.
22.. ZZaa nneessttrrpplljjiivvee
Ho�ete se ista�i? Pogledajte malo ovo:
DOS Linux
------------------------ -------------------------
ATTRIB (+-)atr datoteka chmod <mod> datoteka potpuno druk�ije
BACKUP tar -Mcvf ure�aj dir/ isto
CD dir\ cd dir/ skoro ista sintaksa
COPY datoteka1 datoteka2 cp datoteka1 datoteka2 isto
DEL datoteka rm datoteka pa�ljivo: nema undelete
DELTREE dir rm -R dir isto
DIR ls ne ba� jednaka sintaksa
DIR datoteka /S find . -name datoteka potpuno druk�ije
EDIT datoteka vi datoteka mislim da vam se ne�e
svidjeti
jstar datoteka sli�no DOS-ovom EDIT-u
EDLIN datoteka ed datoteka zaboravite na to
FORMAT fdformat, mount, umount prili�no razli�ita
sintaksa
HELP naredba man naredba, info naredba filozofija je ista
MD dir\ mkdir dir/ skoro ista sintaksa
MORE < datoteka less datoteka puno bolje
MOVE datoteka1 datoteka2 mv datoteka1 datoteka2 isto
NUL /dev/null isto
PRINT datoteka lpr datoteka isto
PRN /dev/lp0, /dev/lp1 isto
RD dir rmdir dir/ skoro ista sintaksa
REN datoteka1 datoteka2 mv datoteka1 datoteka2 ne radi za vi�e datoteka
RESTORE tar -Mxpvf ure�aj druk�ija sintaksa
TYPE datoteka less datoteka puno bolje
WIN startx totalno druk�ije!
Za ne�to vi�e od popisa naredbi pro�itajte sljede�a poglavlja.
33.. UUppoozznnaajjttee bbaasshh
Dobre vijesti: uz Linux puno manje tipkate na promptu, jer bash ljuska
tipka za vas kad god je mogu�e, i nudi zgodne mogu�nosti editiranja
linije. Za po�etak, tipka strelice gore vra�a pro�le naredbe; ali tu
je jo�. Pritisak na <TAB> dopunjava imena datoteka i direktorija, pa
je tipkanje
$ ls /uTABloTABbTAB
isto kao tipkanje
$ ls /usr/local/bin
Da je bilo dvosmislenosti, kao u
$ ls /uTABloTABiTAB
bash bi stao jer ne zna mislite li na /usr/local/info ili
/usr/local/include. Dodajte jo� znakova i opet pritisnite <TAB>.
Druge korisne tipke su <ESC-BACKSPACE>, �to bri�e rije� na lijevo, i
<ESC-D>, �to bri�e rije� na desno; <ESC-F> mi�e kursor jednu rije�
desno, <ESC-B> lijevo; <CTRL-A> mi�e na po�etak reda, <CTRL-E> na
kraj. Tipka <ALT> radi isto �to i <ESC>.
Dosta za sada. Kada se jednom naviknete na te kombinacije, DOS prompt
�e vam biti vrlo neudoban...
44.. DDaattootteekkee ii pprrooggrraammii
44..11.. DDaattootteekkee:: oossnnoovvnnee ssttvvaarrii
Struktura direktorija i datoteka u Linuxu vrlo je sli�na onoj u
DOSWinu. Datoteke imaju imena po posebnim pravilima, nalaze se u
direktorijima, neke su izvr�ne, a ve�ina takvih ima programske
prekida�e (_s_w_i_t_c_h). Isto tako, mo�ete koristiti metaznakove,
redirekciju i piping. Samo je nekoliko manjih razlika:
� Pod DOS-om, imena imaju tzv. 8.3 oblik; na primjer NIJEDOVO.TXT.
Linux mo�e i bolje. Ako je Linux instaliran na datote�nom sustavu
kao �to je ext2 ili umsdos, mo�ete koristiti du�a imena (do 255
znakova), s vi�e od jedne to�ke: Ovo_je.VRLO_dugo.ime_datoteke.
Primjetite da sam koristio i velika i mala slova: ustvari...
� Velika i mala slova u imenima datoteka i naredbi razli�ita su.
Prema tome, IME_DATOTEKE.tar.gz i ime_datoteke.tar.gz su dvije
razli�ite datoteke. ls je naredba, LS je gre�ka.
� Korisnici Windowsa, pazite se kod kori�tenja dugih imena pod
Linuxom. Ako u imenu ima razmaka (nije preporu�ljivo, ali je
mogu�e), morate ga okru�iti navodnicima. Na primjer:
$ # ova naredba stvorit �e direktorij "Moje stare datoteke"
$ mkdir "Moje stare datoteke"
$ ls
Moje stare datoteke bin tmp
Neke znakove ne bi trebalo koristiti: me�u njima su ! * $ & #.
� Nema odre�enih ekstenzija kao �to je .COM i .EXE za programe, ili
.BAT za batch datoteke. Kada zadate naredbu ls -F, izvr�ne datoteke
ozna�ava zvjezdica (*) na kraju imena. Na primjer:
$ ls -F
Ja_sam_direktorij/ cindy.jpg cjpg* pismo_Jurici moja_1._skripta*
staro~
Datoteke cjpg* i moja_1._skripta su izvr�ne, odnosno programi. Pod
DOS-om, backup datoteke zavr�avaju na .BAK, a pod Linuxom s tildom,
~. Zatim, datoteka �ije ime po�inje to�kom je skrivena. Na primjer,
datoteku .Ja.sam.skrivena.datoteka naredba ls ne�e pokazati.
� U DOS-u programski prekida�i izgledaju kao /prekida�, a u Linuxu
-prekida� ili --prekida�. Na primjer: DIR /S postaje ls -R. Mnogi
DOS programi, kao �to je PKZIP ili ARJ, koriste Unix-olike
prekida�e.
Sad mo�ete presko�iti do dijela ``Datoteke: prevo�enje naredbi'', ali,
da sam na va�em mjestu, ja bih nastavio.
44..22.. SSiimmbboollii��kkee vveezzee
Pod Unixom postoji vrsta datoteke kakve nema pod DOS-om: simboli�ka
veza. To je ne�to poput pokaziva�a na datoteku ili direktorij, a mo�e
se koristiti umjesto datoteke ili direktorija na koji pokazuje; sli�na
je pre�icama (_s_h_o_r_t_c_u_t_s) iz Windowsa. Primjeri simboli�kih veza su
/usr/X11, koja pokazuje na /usr/X11R6; /dev/modem koji pokazuje na
/dev/ttyS0 ili /dev/ttyS1.
Simboli�ku vezu �ete napraviti ovako:
$ ln -s <datoteka_ili_direktorij> <ime_veze>
Na primjer:
$ ln -s /usr/doc/g77/DOC g77upute.txt
Sada mo�ete pozivati g77upute.txt umjesto /usr/doc/g77/DOC. Veze ovako
izgledaju u ispisu direktorija:
$ ls -F
g77upute.txt@
$ ls -l
(nekoliko stvari...) g77upute.txt -> /usr/doc/g77/DOC
55.. DDoozzvvoollee ii vvllaassnnii��ttvvoo
DOS datoteke i direktoriji imaju ove atribute: A (arhiviran), H
(skriven), R (samo za �itanje) i S (sustav). Samo H i R imaju smisla
pod Linuxom: skrivene datoteke po�inju to�kom, a za R atribut �itajte
dalje.
Pod Unixom datoteka ima ddoozzvvoollee i vvllaassnniikkaa, koji pripada ggrruuppii.
Pogledajte ovo:
$ ls -l /bin/ls
-rwxr-xr-x 1 root bin 27281 Aug 15 1995 /bin/ls*
Prvo polje sadr�i dozvole za datoteku /bin/ls, koja pripada rootu,
grupi bin. Bez obzira na to, zapamtite �to -rwxr-xr-x zna�i, s lijeva
na desno:
- je tip datoteke (-: obi�na, d: direktorij, l: veza, itd.); rwx su
dozvole za vlasnika datoteke (�itanje, pisanje, izvr�avanje); r-x su
dozvole za grupu vlasnika datoteke (�itanje, izvr�avanje) (ne�u
obja�njavati grupe, pre�ivjet �ete bez toga dok ste po�etnik ;-); r-x
su dozvole za sve ostale korisnike (�itanje, izvr�avanje).
I direktorij /bin ima dozvole: pogledajte dio ``Dozvole direktorija''
za detalje. Zato ne mo�ete obrisati datoteku /bin/ls osim ako ste
root: za to nemate dozvole. Naredba za mijenjanje dozvola datoteka je:
$ chmod <tkoXdozvola> <datoteka>
gdje je tko u (korisnik, tj. vlasnik), g (grupa), o (ostali); X je +
ili -; dozvola je r (�itanje), w (pisanje), x (izvr�avanje). Evo
�estih primjera kori�tenja chmoda:
$ chmod +x datoteka
To postavlja dozvolu za izvr�avanje datoteke.
$ chmod go-rw datoteka
To oduzima dozvole za �itanje i pisanje svima osim vlasniku.
$ chmod ugo+rwx datoteka
To svima daje dozvole za �itanje, pisanje i izvr�avanje.
$ chmod +s datoteka
Time dobivamo takozvanu _s_e_t_u_i_d ili ssuuiidd datoteku -- svatko ju mo�e
izvr�iti s privilegijama njenog vlasnika. Naj�e��e su root suid
datoteke; to obi�no va�ne datoteke sustava, kao �to je X server.
Kra�i na�in za pisanje dozvola je brojkama: rwxr-xr-x mo�emo izraziti
kao 755 (svako slovo odgovara bitu: --- je 0, --x je 1, -w- je 2, -wx
je 3). Izgleda te�ko, ali shvatit �ete uz malo prakse. root kao
nadkorisnik mo�e mijenjati dozvole svake datoteke. RMP.
55..11.. DDaattootteekkee:: pprreevvoo��eennjjee nnaarreeddbbii
Na lijevoj strani su DOS naredbe; na desnoj Linux pandani.
ATTRIB chmod
COPY cp
DEL rm
MOVE mv
REN mv
TYPE more, less, cat
nul /dev/null
prn, lpt1 /dev/lp0 ili /dev/lp1; lpr
Operatori za redirekciju i piping: < > >> |
Metaznakovi: * ?
55..11..11.. PPrriimmjjeerrii
DOS Linux
-------------------------------------- ------------------------------
C:\GUIDO>ATTRIB +R DATOTEKA.TXT $ chmod 400 datoteka.txt
C:\GUIDO>COPY JURICA.TXT JURICA.DOC $ cp jurica.txt jurica.doc
C:\GUIDO>COPY *.* SVE $ cat * > sve
C:\GUIDO>COPY FRAKTALI.DOC PRN $ lpr fraktali.doc
C:\GUIDO>DEL PRIV $ rm priv
C:\GUIDO>DEL *.BAK $ rm *~
C:\GUIDO>MOVE DOKUMENT.TXT TMP\ $ mv dokument.txt tmp/
C:\GUIDO>REN DOKUMENT.TXT DOKUMENT.ASC $ mv dokument.txt dokument.asc
C:\GUIDO>PRINT PISMO.TXT $ lpr pismo.txt
C:\GUIDO>TYPE PISMO.TXT $ more pismo.txt
C:\GUIDO>TYPE PISMO.TXT $ less pismo.txt
C:\GUIDO>TYPE PISMO.TXT > NUL $ cat pismo.txt > /dev/null
nema $ more *.txt *.asc
nema $ cat dio*.txt | less
Napomene:
� * je pametniji pod Linuxom: * odgovara svim datotekama osim
skrivenima; .* odgovara svim skrivenim datotekama (ali i trenutnom
direktoriju . i roditeljskom direktoriju ..: pazite na to!); *.*
odgovara samo datotekama s . u sredini ili na kraju; p*r odgovara i
``petar'' i ``papir''; *c* odgovara i ``crv'' i ``svizac''.
� Kada koristite more, pritisnite razmak za slijede�u stranicu, <q>
za izlaz. less je intuitivniji i dopu�ta kori�tenje strelica.
� UNDELETE ne postoji, pa pa�ljivo razmislite prije brisanja
datoteka.
� Uz DOS-ove < > >>, Linux ima 2> za preusmjeravanje poruka o
gre�kama (_s_t_d_e_r_r); 2>&1 preusmjerava stderr na stdout, a 1>&2
stdout na stderr.
� Linux ima jo� jedan metaznak: []. Kori�tenje: [abc]* odgovara
datotekama koje po�inju s a, b i c; *[I-N1-3] odgovara datotekama
koje zavr�avaju s I, J, K, L, M, N, 1, 2 i 3.
� lpr <datoteka> ispisuje datoteku u pozadini. Za provjeru stanja
reda za ispis slu�i lpq; za brisanje datoteke iz reda za ispis
lprm.
� Ne postoji RENAME sli�an DOS-ovom; to jest, mv *.xxx *.yyy ne�e
raditi. REN-olika naredba se mo�e na�i na
<
ftp://sunsite.unc.edu/pub/Linux/utils/file>.
� Ako �elite upozorenje kad bi datoteka trebala biti prepisana,
koristite cp -i i mv -i.
55..22.. PPookkrreettaannjjee pprrooggrraammaa:: vvii��eezzaaddaa��nnoosstt ii sseessiijjee
Kako biste pokrenuli program, napi�ite njegovo ime kao i pod DOS-om.
Ako je direktorij (poglavlje ``Kori�tenje direktorija'') u kojem je
program smje�ten uklju�en u $PATH (poglavlje ``Inicijalizacijske
datoteke sustava''), program �e se pokrenuti. Iznimka: za razliku od
DOS-a, pod Linuxom se program u trenutnom direktoriju ne�e pokrenuti
osim ako je taj direktorij u $PATH-u. Rje�enje: ako je prog va�
program, napi�ite ./prog.
Ovako izgleda tipi�na naredba:
$ naredba [-s1 [-s2] ... [-sn]] [par1 [par2] ... [parn]] [< ulaz] [> izlaz]
gdje su -s1, ..., -sn programski prekida�i; par1, ..., parn programski
parametri. U jednom redu mo�ete pokrenuti vi�e programa:
$ naredba1 ; naredba2 ; ... ; naredban
To je sve o pokretanju programa, ali lako je nastaviti. Jedan od
glavnih razloga za kori�tenje Linuxa je vi�ezada�nost. Vi�e programa
(od sada, procesa) radi u isto vrijeme. Mo�ete ih pokretati u pozadini
i nastaviti rad bez prekida. Linux vam dopu�ta i nekoliko sesija: kao
da radite na vi�e ra�unala odjednom!
� Za prebacivanje izme�u 1.-6. sesije na virtualnim konzolama,
pritisnite <ALT>-<F1> ... <ALT>-<F6>.
� Za pokretanje nove sesije u istoj VC bez napu�tanja trenutne,
napi�ite su lt;login>. Na primjer: su - root. Ovo je korisno kada
obavljate zadatak koji mo�e obaviti samo root.
� Za kraj sesije napi�ite exit. Upozorit �e vas ako ima zaustavljenih
poslova (�ut �ete o tome kasnije).
� Za pokretanje procesa u pozadini, dodajte ampersand (&) na kraju
naredbe:
$ imeprograma [-prekida�i] [parametri] [< ulaz] [> izlaz] &
[1] 123
Ljuska procese ozna�ava brojem posla ([1]; vidi dolje) i PID-om
(_P_r_o_c_e_s_s _I_d_e_n_t_i_f_i_c_a_t_i_o_n -- identifikacijski broj procesa; u na�em
primjeru 123).
� Za broj procesa napi�ite ps ax. To �e ispisati popis procesa koji
trenutno rade.
� Da biste ubili (terminirali) proces, napi�ite kill <PID>. Mo�da
�ete ga morati ubiti ako ne znate kako pravilno iza�i... Ako niste
root, ne mo�ete ubijati tu�e procese. Ponekad �e proces ubiti
jedino kill -SIGKILL <PID>. I ljuska vam omogu�ava zaustavljanje
ili privremeno suspendiranje procesa, slanje procesa u pozadinu i u
prednji plan. U tom kontekstu procese nazivamo poslovima.
� Za broj poslova napi�ite jobs. Tu su ozna�eni brojem posla, a ne
PID-om.
� Za zaustavljanje procesa u prednjem planu pritisnite <CTRL>-<C>
(ne�e uvijek raditi).
� Za suspendiranje procesa u prednjem planu pritisnite <CTRL>-<Z>
(isto).
� Za slanje suspendiranog procesa u pozadinu napi�ite bg <%posao>
(postaje posao).
� Za slanje posla u prednji plan, napi�ite fg <%posao>. Za slanje
posljednjeg procesa poslatog u pozadinu u prednji plan jednostavno
napi�ite fg.
� Za ubijanje posla napi�ite kill <%posao>. <posao> mo�e biti 1, 2,
3...
Kori�tenjem ovih naredbi mo�ete formatirati disketu, arhivirati hrpu
datoteka, kompajlirati program i otpakirati arhivu skoro istovremeno,
i jo� uvijek imati prompt pred sobom. Probajte to na Windowsima, samo
da vidite razliku u brzini (naravno, ako se ne sru�e).
55..33.. PPookkrreettaannjjee pprrooggrraammaa nnaa uuddaalljjeenniimm rraa��uunnaalliimmaa
Kako biste pokrenuli program na udaljenom ra�unalu �ije je ime
udaljeno.ra�unalo.edu, napi�ite:
$ telnet udaljeno.ra�unalo.edu
Nakon �to se ulogirate, pokrenite svoj omiljeni program. Naravno, na
tom ra�unalu morate imati korisni�ki ra�un.
Ako imate X11, �ak mo�ete na udaljenom ra�unalu pokrenuti X
aplikaciju, prikazanu na va�em X prikazu. Neka je
udaljeno.ra�unalo.edu udaljeno X ra�unalo i moja.linux.kanta va� Linux
sustav. Kako biste s moja.linux.kanta pokrenuli X program koji se
nalazi na udaljeno.ra�unalo.edu, u�inite slijede�e:
� Pokrenite X11 i xterm ili sli�an emulator terminala, a zatim
napi�ite:
$ xhost +udaljeno.ra�unalo.edu
$ telnet udaljeno.ra�unalo.edu
� Nakon �to se logirate, napi�ite:
udaljeno:$ DISPLAY=moja.linux.kanta:0.0
udaljeno:$ imeprograma &
(Umjesto DISPLAY... �ete mo�da morati napisati: setenv DISPLAY
moja.linux.kanta:0.0. Ovisi o ljusci.)
Eto! Sada �e se imeprograma pokrenuti na udaljeno.ra�unalo.edu i
prikazati na va�em stroju. No nemojte ovo poku�avati preko modema --
presporo je da bi se moglo koristiti. �tovi�e, ovo je gruba i
nesigurna metoda: pro�itajte ``X na daljinu mini-KAKO'' na
<
http://dokumentacija.linux.hr/X-na-daljinu.html>.
66.. KKoorrii��tteennjjee ddiirreekkttoorriijjaa
66..11.. DDiirreekkttoorriijjii:: oossnnoovvnnee ssttvvaarrii
Vidjeli smo razlike izme�u datoteka pod DOSWinom i Linuxom. �to se
ti�e direktorija, pod DOSWinom je root direktorij \, a pod Linuxom /.
Tako se pod DOSWinom ugnije��eni direktoriji razdvajaju znakom \, a
pod Linuxom /. Primjeri staza datoteka:
DLOiSnux C/:h\oDmOeK/UgMuEiNdTo\/GdEoOkLuOmGeInJt\iS/RgEeDo.lnorgi3jbao/tsr0e>d?n0ja.nr 3bot 0>?0
Kao i obi�no, .. je direktorij roditelj, a . trenutni direktorij.
Sjetite se da vam sustav ne�e dopustiti cd, rd ili md gdje god �elite.
Svaki korisnik ima svoje stvari u direktoriju koji se naziva hhoommee
(dom), koji mu je dao administrator sustava; na primjer, na mojem PC-u
moj je home direktorij /home/guido.
66..22.. DDoozzvvoollee ddiirreekkttoorriijjaa
I direktoriji imaju dozvole. Ono �to smo vidjeli u dijelu ``Dozvole i
vlasni�tvo'' vrijedi i za direktorije (korisnik, grupa, ostali). Za
direktorij rx zna�i da mo�ete u�i u njega, a w zna�i da u njemu mo�ete
izbrisati datoteku (naravno, prema dozvolama datoteke) ili sam
direktorij.
Na primjer, kako bi sprije�ili nju�kanje ostalih korisnika po
/home/guido/tekst:
$ chmod o-rwx /home/guido/tekst
66..33.. DDiirreekkttoorriijjii:: pprreevvoo��eennjjee nnaarreeddbbii
DIR ls, find, du
CD cd, pwd
MD mkdir
RD rmdir
DELTREE rm -rf
MOVE mv
66..33..11.. PPrriimmjjeerrii
DOS Linux
---------------------------------- -----------------------
C:\GUIDO>DIR $ ls
C:\GUIDO>DIR DATOTEKA.TXT $ ls datoteka.txt
C:\GUIDO>DIR *.H *.C $ ls *.h *.c
C:\GUIDO>DIR/P $ ls | more
C:\GUIDO>DIR/A $ ls -l
C:\GUIDO>DIR *.TMP /S $ find / -name "*.tmp"
C:\GUIDO>CD $ pwd
nema - pogledajte napomenu $ cd
isto $ cd ~
isto $ cd ~/temp
C:\GUIDO>CD \OSTALO $ cd /ostalo
C:\GUIDO>CD ..\TEMP\SME�E $ cd ../temp/sme�e
C:\GUIDO>MD NOVIPROG $ mkdir noviprogrami
C:\GUIDO>MOVE PROGRAM .. $ mv program ..
C:\GUIDO>MD \PROGRAMI\TURBO $ mkdir /programi/turbo
C:\GUIDO>DELTREE TEMP\SME�E $ rm -rf temp/sme�e
C:\GUIDO>RD NOVIPROG $ rmdir noviprogrami
C:\GUIDO>RD \PROGRAMI\TURBO $ rmdir /programi/turbo
Napomene:
� Kad koristite rmdir, direktorij mora biti prazan. Za brisanje
direktorija i njegovog sadr�aja koristite rm -rf (na svoju
odgovornost).
� Znak ~ je kratica za ime va�eg home direktorija. Naredbe cd ili cd
~ �e vas odvesti u va� home direktorij bez obzira na trenutni;
naredba cd ~/tmp �e vas odvesti u /home/va�_home/tmp.
� cd - vas vra�a u direktorij iz kojeg ste posljednji put pokrenuli
cd.
77.. DDiisskkeettee,, ttvvrrddii ddiisskkoovvii ii ssllii��nnoo
S ure�ajima pod Linuxom mo�ete raditi na dva na�ina: DOS na�in i Unix
na�in. Izaberite sami.
77..11.. RRaadd ss uurree��aajjiimmaa nnaa DDOOSS nnaa��iinn
S ve�inom distribucija dolazi Mtools kolekcija, skup naredbi koje su
posve jednake DOS pandanima, osim �to po�inju s ``m'': mformat, mdir,
mdel, mmd, itd. Mogu �ak sa�uvati duga imena, ali ne i dozvole
datoteka. Ako mtools konfigurirate ure�ivanjem datoteke
/etc/mtools.conf (primjer je u distribuciji), mo�ete pristupiti i
DOS/Windows particiji, CD-ROM-u ili Zip driveu. Ipak, za formatiranje
nove diskete mformat nije dovoljan. Prije toga �ete morati kao root
zadati ovu naredbu:
# fdformat /dev/fd0H1440
Ne mo�ete pristupati datotekama na disketi naredbom kao �to je less
a:datoteka.txt! To je mana DOS na�ina pristupanja diskovima.
77..22.. RRaadd ss uurree��aajjiimmaa nnaa UUnniixx nnaa��iinn
Unix s ure�ajima radi druk�ije. Nema odvojenih diskova kao �to je A:
ili C:; disk, bio on disketa ili ne�to drugo, postaje dio lokalnog
datote�nog sustava operacijom mmoonnttiirraannjjaa. Kada ste gotovi s njime,
prije nego �to ga izvadite, morate ga ddeemmoonnttiirraattii.
Fizi�ko formatiranje diska je jedna stvar, a stvaranje datote�nog
sustava na njemu sasvim druga. DOS naredba FORMAT A: obavlja obje, ali
pod Linuxom postoje odvojene naredbe. Za formatiranje diskete
pogledajte prethodni dio; za stvaranje datote�nog sustava:
# mkfs -t ext2 -c /dev/fd0H1440
Umjesto ext2 mo�ete koristiti dos, vfat (preporu�en) ili druge
formate. Kada je disk pripremljen, montirajte ga naredbom
# mount -t ext2 /dev/fd0 /mnt
to�no navode�i datote�ni sustav ako niste koristili ext2. Sada mo�ete
raditi s datotekama na disketi koriste�i /mnt umjesto A: ili B:.
Primjeri:
DOS Linux
---------------------------- -------------------------
C:\GUIDO>DIR A: $ ls /mnt
C:\GUIDO>COPY A:*.* $ cp /mnt/* .
C:\GUIDO>COPY *.ZIP A: $ cp *.zip /mnt
C:\GUIDO>EDIT A:DATOTEKA.TXT $ jstar /mnt/datoteka.txt
C:\GUIDO>A: $ cd /mnt
A:> _ /mnt/$ _
Kad ste gotovi, prije nego izvadite disketu, mmoorraattee ju demontirati
naredbom
# umount /mnt
O�ito, fdformat i mkfs morate koristiti samo na neformatiranim
disketama, a ne na prethodno kori�tenim. Ako koristite B: pogon,
obra�ajte mu se s fd1H1440 i fd1 umjesto fd0H1440 i fd0 u gornjim
primjerima.
Naravno, �to vrijedi za diskete, vrijedi i za druge ure�aje; na
primjer, mo�ete montirati drugi tvrdi disk ili CD-ROM. CD-ROM
montirate ovako:
# mount -t iso9660 /dev/cdrom /mnt
Ovo je ``slu�beni'' na�in za montiranje diskova, ali to se mo�e i
jednostavnije. Po�to je malo iritantno �to morate biti root kako bi
montirali disketu ili CD-ROM, njihovo montiranje se ovako mo�e
dopustiti svakomu:
� U�inite sljede�e kao root:
# mkdir /mnt/floppy ; mkdir /mnt/cdrom
# chmod 777 /mnt/floppy /mnt/cd*
# # pazite da navedete pravi CD-ROM ure�aj
# chmod 666 /dev/hdb ; chmod 666 /dev/fd*
� Dodajte u /etc/fstab ove redove:
/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 0
/dev/fd0 /mnt/floppy vfat user,noauto 0 0
Ako sada �elite montirati DOS disketu ili CD-ROM:
$ mount /mnt/floppy
$ mount /mnt/cdrom
Direktorijima /mnt/floppy i /mnt/cdrom sada mo�e pristupiti svaki
korisnik. Ako vas zanima, ovakvo dopu�tanje montiranja diskova svakom
ogromna je sigurnosna rupa.
Jo� dvije korisne naredbe su df, koji daje informacije o montiranim
datote�nim sustavima, te du imedirektorija, koji ispisuje prostor na
disku koji direktorij zauzima.
77..33.. BBaacckkuupp
Pomo�i �e vam nekoliko paketa, no najmanje �to mo�ete u�initi za
backup na vi�e diskova je (kao root):
# tar -M -cvf /dev/fd0H1440 direktorij_za_backup/
Mora biti uba�ena formatirana disketa, a jo� nekoliko njih spremno.
Kako biste vratili svoje stvari, ubacite prvu i napi�ite:
# tar -M -xpvf /dev/fd0H1440
88.. AA ��ttoo jjee ss WWiinnddoowwssiimmaa??
Pandan Windowsima je grafi�ko su�elje X Window System. Za razliku od
Windowsa ili Maca, X11 nije napravljen za lako kori�tenje ili lijep
izgled, nego samo za dodavanje grafi�kih mogu�nosti Unix radnim
stanicama. Ovo su glavne razlike:
� Windows izgleda isto �irom svijeta, a X11 ne: puno je
prilagodljiviji. Ukupni izgled X11-a odre�uje klju�ni dio zvan
_w_i_n_d_o_w _m_a_n_a_g_e_r. �irok je izbor window managera: fvwm, spartanski,
ali zgodan i djelotvoran s memorijom; fvwm2-95; Afterstep,
WindowMaker, Enlightenment i mnogi drugi. Obi�no se pokre�e iz
.xinitrc.
� Va� WM se mo�e konfigurirati tako da prozor reagira kao u, eh,
Windowsima: kliknete na njega i dolazi u prednji plan. Druga je
mogu�nost da u prednji plan do�e kada preko njega prije�ete mi�em
(fokus). Smje�taj prozora na zaslonu mo�e biti automatski ili
interaktivan: ako se umjesto va�eg programa pojavi �udan okvir,
lijevim klikom odaberite gdje �e se smjestiti.
� Ve�ina opcija se mo�e prilagoditi ure�ivanjem jedne ili vi�e
konfiguracijskih datoteka. Pro�itajte dokumentaciju svog WM-a;
konfiguracijska datoteka mo�e biti .fvwmrc, .fvwm2rc95, .steprc,
itd. Primjer konfiguracijske datoteke se obi�no nalazi u
/etc/X11/ime-window-managera/system.ime-window-managera.
� X11 aplikacije su pisane pomo�u posebnih librarya (_w_i_d_g_e_t _s_e_t_s);
po�to ih ima nekoliko, aplikacije izgledaju razli�ito. Najosnovnije
koriste Athena widgete (2D izgled; xdvi, xman, xcalc); drugi
koriste Motif (netscape), a drugi pak Tcl/Tk, XForms, Qt, Gtk, itd.
Skoro svi od tih librarya pru�aju izgled i osje�aj Windowsa.
� Osje�aj, na�alost, mo�e biti nepotpun. Na primjer, ako odaberete
red teksta mi�em i pritisnete <BACKSPACE>, o�ekujete da red
nestane, ne? S aplikacijama na Atheni to ne radi, ali radi s drugim
widget setovima.
� Kako radi pomicanje i mijenjanje veli�ine prozora ovisi o WM-u i
widget setu. Uputa: ako scrollbarovi ne rade kako o�ekujete,
probajte ih micati sredi�njom tipkom mi�a ili s obje tipke zajedno.
� Aplikacije ne moraju imati ikonu, ali mogu ih imati mnogo. Ve�ina
WM-a vam daje izbornik koji pozivate klikanjem na desktop (root
prozor); naravno, izbornik se mo�e mijenjati. Za mijenjanje izgleda
root prozora koristite xsetroot ili xloadimage.
� _C_l_i_p_b_o_a_r_d mo�e sadr�avati samo tekst i pona�a se �udno. Kad
izaberete tekst, on je ve� kopiran u clipboard: pomaknite se i
pritisnite srednju tipku za lijepljenje. xclipboard pru�a
vi�estruke clipboard spremnike.
� _D_r_a_g _& _d_r_o_p je mogu�, no dostupan je samo ako koristite X11
aplikacije i/ili WM-ove koji ga podr�avaju.
Trebali biste koristiti aplikacije koje koriste iste librarye jer time
�tedite memoriju, no to je te�ko ostvariti u praksi.
Postoje projekti kojima je cilj izgled i pona�anje X11 u�initi
dosljednim kao na Windowsima. Gnome, <
http://www.gnome.org>, i KDE,
<
http://www.kde.org>, su zakon. Probajte ih: vi�e ne�ete �aliti za
svojim Windows desktopom.
99.. PPrriillaaggoo��aavvaannjjee ssuussttaavvaa
99..11.. IInniicciijjaalliizzaacciijjsskkee ddaattootteekkee ssuussttaavvaa
Dvije va�ne datoteke pod DOS-om su AUTOEXEC.BAT i CONFIG.SYS, koje se
pri dizanju sustava koriste za inicijalizaciju, postavljanje nekih
varijabli okru�ja kao �to je PATH i FILES, i, mo�da, pokretanje
programa ili batch datoteke. Pod Linuxom ima puno inicijalizacijskih
datoteka. Neke bolje ne dirajte ako ne znate �to radite. Uglavnom, evo
najva�nijih:
Datoteke Napomene
/etc/inittab zasad ne dirajte!
/etc/rc.d/* isto
Ako �elite samo postaviti $PATH i druge varijable okru�ja, ili �elite
promijeniti poruke pri loginu, automatski pokrenuti program nakon
njega, pogledajte ove datoteke:
� /etc/issue: poruka prije logina
� /etc/motd: poruka poslije logina
� /etc/profile: $PATH i druge varijable, itd.
� /etc/bashrc: aliasi i funkcije, itd.
� /home/va�_home/.bashrc: va�i aliasi i funkcije
� /home/va�_home/.bash_profile: ili
� /home/va�_home/.profile: okru�je i pokretanje va�ih programa
Ako ova zadnja datoteka postoji (skrivena je), naredbe u njoj �e se
izvr�iti nakon logina.
Primjer -- pogledajte ovaj .bash_profile:
# ja sam komentar
echo Okru�je:
printenv | less # pandan naredbi SET pod DOS-om
alias d='ls -l' # lako je shvatiti �to je alias
alias up='cd ..'
echo "Podsje�am te da je PATH "$PATH
echo "Danas je `date`" # koristimo izlaz naredbe `date`
echo "Lijepo se provedi, "$LOGNAME
# a ovo je "funkcija ljuske"
ctgz() # Ispisuje sadr�aj .tar.gz arhive.
{
for datoteka in $*
do
gzip -dc ${datoteka} | tar tf -
done
}
# kraj .profile-a
Pogodili ste -- $PATH i $LOGNAME su varijable okru�ja. Ima ih jo�
puno; RMP za aplikacije kao �to je less ili bash.
Stavljanjem ovog reda u svoj /etc/profile dobit �ete grub ekvivalent
PROMPT $P$G:
export PS1="\w\\$ "
99..22.. IInniicciijjaalliizzaacciijjsskkee ddaattootteekkee pprrooggrraammaa
Pod Linuxom je skoro sve prilagodljivo va�im potrebama. Ve�ina
programa ima jednu ili vi�e inicijalizacijskih datoteka s kojima se
mo�ete igrati, obi�no .imeprogramarc u va�em home direktoriju. Prve
koje �ete �eljeti mijenjati su:
� .inputrc: koristi ju bash za definiranje tipkovnice;
� .xinitrc: koristi ju startx za inicijalizaciju X Window Systema;
� .fvwmrc: koristi ju window manager fvwm;
� .joerc, .jstarrc: koristi ih editor joe;
� .jedrc: koristi ju editor jed;
� .pinerc: koristi ju �ita� po�te pine;
� .Xdefault: koriste ju mnogi X programi.
Za sve ove i druge koje �ete prije ili poslije sresti, RMP. Mo�da vas
zanima _K_o_n_f_i_g_u_r_i_r_a_n_j_e _K_A_K_O na
<
http://dokumentacija.linux.hr/Konfiguriranje-KAKO.html>?
1100.. MMrree��ee:: kkoonncceeppttii
Ne samo �to je ``Dialup Networking'' dostupan pod Linuxom, nego je i
stabilniji i br�i. Radi se o PPP-u, protokolu kori�tenom za spajanje
na Internet pomo�u modema. Trebat �e vam kernel koji podr�ava PPP i
alat koji bira broj i uspostavlja vezu.
Kako biste skidali po�tu s ISP-ovog poslu�itelja, potreban vam je alat
zvan ``e-mail fetcher'' koji koristi POP protokol; nakon skidanja,
poruke �e izgledati kao da su izravno isporu�ene na va� Linux stroj.
Potom �ete s njima raditi koriste�i MUA (_M_a_i_l _U_s_e_r _A_g_e_n_t -- korisnikov
po�tanski agent) kao �to je pine, mutt, elm i mnogi drugi.
Dok se pod Windowsima uspostavljanje veze automatski pokrene kada
pokrenete Internet aplikaciju, pod Linuxom je obratno: prvo
uspostavite vezu, a zatim pokrenete aplikaciju. Stvar zvana diald nudi
uobi�ajeno pona�anje. Instaliranje i konfiguriranje spajanja na mre�u
modemom je nekad bila jedna od najte�ih stvari pod Linuxom, ali vi�e
nije: pogledajte _K_o_n_f_i_g_u_r_i_r_a_n_j_e _K_A_K_O.
Na kraju, ne�to o ``Network neighborhood'': va�a Linux radna stanica
mo�e izgledati kao Windows NT/9x u lokalnoj mre�i Windows strojeva!
�arobna rije� je Samba: ne razuzdani brazilski ples, nego
implementacija SMB protokola za Linux. Oti�ite na
<
http://samba.anu.edu.au/samba>.
1111.. MMaalloo pprrooggrraammiirraannjjaa
1111..11.. SSkkrriippttee uu lljjuussccii:: ..BBAATT ddaattootteekkee nnaa sstteerrooiiddiimmaa
Ako ste koristili .BAT datoteke kao pre�ice do dugih naredbi (ja
jesam, puno), to mo�ete odgovaraju�im alias redovima (pogledajte
gornji primjer) u profile ili .bash_profile. Ali ako su vam .BAT-ovi
bili slo�eniji, onda �ete obo�avati jezik ljuske: mo�an je kao dobri
stari QBasic, ako ne i vi�e. Ima varijable, konstrukte kao while, for,
case, if... then... else i puno drugih mogu�nosti: dobra je
alternativa ``pravom'' programskom jeziku.
Za pisanje skripte -- ekvivalenta .BAT datoteci pod DOS-om -- samo
trebate napisati standardnu ASCII datoteku koja sadr�i instrukcije,
snimiti ju, a onda u�initi izvr�nom naredbom chmod +x <skripta>. Ako
ju ho�ete izvr�iti, samo napi�ite njeno ime.
Malo upozorenje. Editor sustava se zove vi i po mom iskustvu vrlo je
te�ak za ve�inu novih korisnika. Ne�u vam obja�njavati kako ga
upotrebljavati; pogledajte knjigu Matta Welsha ili potra�ite upute na
mre�i. Ovdje �u re�i samo ovo:
� za ubacivanje teksta pritisnite <i>, a onda upi�ite tekst;
� za brisanje znakova pritisnite <ESC>, pa <x>;
� za izlaz bez snimanja pritisnite <ESC>, pa :q!;
� za snimanje i izlaz pritisnite <ESC>, pa :wq.
Dobar editor za po�etnika je joe: ako ga pokrenete kao jstar, dobit
�ete iste tipke kao u DOSWin editoru. jed u WordStar ili IDE modu je
jo� bolji. Pogledajte dio ``Gdje na�i aplikacije'' za informacije gdje
ih nabaviti.
Pisanje skripti u bashu tako je golema tema da zahtijeva knjigu samo
za sebe i ne�u dublje u nju ulaziti. Samo vam dajem primjer skripte iz
koje mo�ete vidjeti neka osnovna pravila:
#!/bin/sh
# primjer.sh
# ja sam komentar
# ne mijenjajte prvi red, on mora biti tamo
echo "Ovaj sustav je: `uname -a`" # kori�tenje izlaza naredbe
echo "Moje ime je $0" # ugra�ene varijable
echo "Dali ste mi ovih $# parametara: "$*
echo "Prvi parametar je: "$1
echo -n "Kako se zovete? " ; read vase_ime
echo pogledajte razliku: "zdravo, $vase_ime" # citiranje s "
echo pogledajte razliku: 'zdravo, $vase_ime' # citiranje s '
DIROVI=0 ; DATOTEKE=0
for datoteka in `ls .` ; do
if [ -d ${datoteka} ] ; then # ako je datoteka direktorij
DIROVI=`expr $DIROVI + 1` # DIROVI = DIROVI + 1
elif [ -f ${datoteka} ] ; then
DATOTEKE=`expr $DATOTEKE + 1`
fi
case ${datoteka} in
*.gif|*jpg) echo "${datoteka}: grafi�ka datoteka" ;;
*.txt|*.tex) echo "${datoteka}: tekstualna datoteka" ;;
*.c|*.f|*.for) echo "${datoteka}: datoteka s izvornim kodom" ;;
*) echo "${datoteka}: op�enita datoteka" ;;
esac
done
echo "ima ${DIROVI} direktorija i ${DATOTEKE} datoteka"
ls | grep "ZxY--!!!WKW"
if [ $? != 0 ] ; then # izlazni kod zadnje naredbe
echo "ZxY--!!!WKW nije na�en"
fi
echo "dosta... napi�ite 'man bash' ako ho�ete jo� informacija"
1111..22.. CC zzaa vvaass
Pod Unixom jezik sustava je C, svidjelo se to vama ili ne. Tu je i
hrpa drugih jezika (Java, FORTRAN, Pascal, LISP, BASIC, Perl, AWK...).
Ako znate C, evo nekoliko uputa za one razma�ene Turbo C++-om ili
nekim njegovim DOS ro�akom. Linuxov C kompajler se zove gcc i
nedostaju mu svi ukrasi uobi�ajenih IDE pandana: nema IDE-a, izravnih
uputa, integriranog debuggera, itd. To je samo grubi kompajler
komandne linije, vrlo mo�an i djelotvoran. Za kompajliranje
standardnog hello.c napi�ite:
$ gcc hello.c
�to �e dati izvr�nu datoteku a.out. Ako ho�ete drugo ime, napi�ite
$ gcc -o hello hello.c
Za vezanje librarya na program, dodajte prekida� -l<imelibrarya>. Na
primjer, za vezanje s matemati�kim libraryem:
$ gcc -o matematika matematika.c -lm
-l<imelibrarya> ka�e gccu da ve�e library /usr/lib/<imelibrarya>.so,
pa -lm ve�e /usr/lib/libm.so.
Zasad je sve u redu. Ali kad se va� program sastoji od vi�e datoteka,
koristit �ete alat make. Prepostavimo da ste napisali parser izraza:
njegova se datoteka zove parser.c i uklju�uje dva headera, parser.h i
xy.h. A onda �elite koristiti funkcije iz parser.c u drugom programu,
recimo kalk.c, koji tako�er uklju�uje parser.h. Kakva zbrka! Kako �ete
kompajlirati kalk.c?
Napisat �ete takozvani Makefile, koji kompajleru pokazuje
me�uovisnosti izvornih i objektnih kodova. U na�em primjeru:
# Ovo je Makefile za kompajliranje kalk.c
# Pritisnite <TAB> gdje je ozna�eno!
kalk: kalk.o parser.o
<TAB>gcc -o kalk kalk.o parser.o -lm
# kalk ovisi o dvije objektne datoteke: kalk.o i parser.o
kalk.o: kalk.c parser.h
<TAB>gcc -c kalk.c
# kalk.o ovisi o dvije izvorne datoteke
parser.o: parser.c parser.h xy.h
<TAB>gcc -c parser.c
# parser.o ovisi o tri izvorne datoteke
# kraj Makefilea
Ovu datoteku snimite kao Makefile i napi�ite make za kompajliranje
programa; mo�ete ju snimiti i kao kalk.mak i napisati make -f
kalk.mak. Naravno, RMP. Ne�to uputa o C funkcijama pokrivaju man
stranice 3. dijela; na primjer,
$ man 3 printf
Za otklanjanje gre�aka koristite gdb. info gdb za njegovo kori�tenje.
Librarya ima puno; me�u prvima koje �ete �eljeti koristiti su ncurses
(efekti u tekstualnom modu) i svgalib (grafika na konzoli). Ako ste
dovoljno hrabri za programiranje u X11 (nije to tako te�ko), postoje
nekoliko librarya koje pisanje X11 programa �ine vrlo lakim.
Pogledajte <
http://www.xnet.com/~blatura/linapp6.html>, imaju�i pritom
na umu da Gtk postaje Linux standard.
Mnogi editori mogu imitirati IDE; na primjer, emacs i jed imaju
sintakti�ko osvjetljavanje, automatsko uvla�enje, itd. Mo�ete nabaviti
i paket RHIDE s <
ftp://sunsite.unc.edu/pub/Linux/devel/debuggers/>.
To je klon Borlandovog IDE-a i vjerojatno �e vam se svidjeti.
1122.. OOssttaalliihh 11%%
Zapravo puno vi�e od 1%...
1122..11.. KKoorrii��tteennjjee ttaarraa ii ggzziippaa
Pod Unixom postoje �iroko kori�tene aplikacije za arhiviranje i
sa�imanje datoteka. tar se koristi za stvaranje arhiva -- kao PKZIP
ili Winzip, ali bez kompresije. Za novu arhivu:
$ tar -cvf <ime_arhive.tar> <datoteka> [datoteka...]
Za dearhiviranje datoteka:
$ tar -xpvf <ime_arhive.tar> [datoteka...]
Za ispis sadr�aja arhive:
$ tar -tf <ime_arhive.tar> | less
Datoteke mo�ete sa�eti pomo�u compressa, koji je zastario i ne bi ga
vi�e trebalo koristiti, ili gzipa:
$ compress <datoteka>
$ gzip <datoteka>
�to �e proizvesti sa�etu datoteku s ekstenzijom .Z (compress) ili .gz
(gzip). Ovi programi mogu sa�eti samo jednu datoteku odjednom. Za
dekompresiju:
$ compress -d <datoteka.Z>
$ gzip -d <datoteka.gz>
RMP.
Tu su i unarj, zip i unzip (PK*ZIP kompatibilni) alati. Datoteke s
ekstenzijom .tar.gz ili .tgz (arhivirane tarom, a onda sa�ete gzipom)
�este su u Unix svijetu kao .ZIP datoteke pod DOS-om. Ovako �ete
ispisati sadr�aj .tar.gz arhive:
$ tar -ztf <datoteka.tar.gz> | less
1122..22.. IInnssttaalliirraannjjee aapplliikkaacciijjaa
Prvo, instaliranje paketa rootov je posao. Ve�ina Linux aplikacija se
distribuira u .tar.gz arhivama, koje obi�no sadr�e odgovaraju�e nazvan
direktorij s datotekama i/ili poddirektorijima. Takve pakete je
najbolje instalirati u /usr/local naredbom
# tar -zxf <arhiva.tar.gz>
te zatim pro�itati datoteku README ili INSTALL. U ve�ini slu�ajeva,
aplikacija se distribuira kao izvorni kod koji morate kompajlirati;
�esto �e biti dovoljno napisati samo make pa make install. Ako arhiva
sadr�i configure skriptu, najprije pokrenite nju. O�ito, potreban vam
je gcc odnosno g++ kompajler.
Druge arhive treba otpakirati iz /; tako je s Slackwareovim .tgz
arhivama. A druge pak arhive sadr�e datoteke, ali ne i poddirektorij
-- pazite da ne pomije�ate stvari! Prije instalacije uvijek pogledajte
sadr�aj arhive.
Debian i Red Hat imaju posebne formate arhiva; .deb i .rpm. Drugi
postaje sve popularniji; za instalaciju rpm paketa napi�ite
# rpm -i paket.rpm
1122..33.. TTrriikkoovvii bbeezz kkoojjiihh ssee nnee mmoo��ee
PPoogglleedd uunnaattrraagg::
pritisak na <SHIFT>-<PgUp> (siva tipka) �e pokazati zadnjih
nekoliko stranica zaslona, ovisno o koli�ini video memorije.
RReesseett zzaasslloonnaa::
ako more ili cat prika�e binarnu datoteku, zaslon �e zavr�iti
pun sme�a. Da to sredite, naslijepo napi�ite reset ili ovaj niz
znakova: echo CTRL-V ESC c ENTER.
LLiijjeepplljjeennjjee tteekkssttaa::
za konzolu pogledajte dolje; u X-u, kliknite i vucite odabrav�i
tako tekst u xterm prozoru, a zatim pritisnite srednju tipku
(ili obje zajedno ako va� mi� ima dvije tipke) za lijepljenje.
Tu je i xclipboard (ali samo za tekst); ne dajte se zbuniti
njegovom sporo��u.
KKoorrii��tteennjjee mmii��aa::
ako ste instalirali gpm, program za mi�a na konzoli, mo�ete
kliknuti i vu�i kako bi odabrali tekst i desnom tipkom odabrani
tekst zalijepiti. Radi i me�u razli�itim VC-ima.
PPoorruukkee kkeerrnneellaa::
kao root pogledajte /var/adm/messages ili /var/log/messages da
vidite �to vam kernel ima re�i, kao i poruke pri dizanju
sustava. Dobro do�e i naredba dmesg.
1122..44.. GGddjjee nnaa��ii aapplliikkaacciijjee
Ako se pitate mo�ete li zamijeniti svoju staru i provjerenu DOS/Win
aplikaciju Linux aplikacijom, predla�em vam da pregledate glavne
arhive Linux softvera: <
ftp://sunsite.unc.edu/pub/Linux>,
<
ftp://tsx-11.mit.edu/pub/linux> i <
ftp://ftp.funet.fi/pub/Linux>.
Druga dobra mjesta za po�injanje su ``_L_i_n_u_x _A_p_p_l_i_c_a_t_i_o_n_s _a_n_d _U_t_i_l_i_t_i_e_s
_P_a_g_e'', <
http://www.xnet.com/~blatura/linapps.shtml>, i ``slu�bene''
Linux stranice, <
http://www.linux.org>.
1122..55.. NNeekkoolliikkoo ssttvvaarrii kkoojjee nniissttee mmooggllii
Linux mo�e stra�no puno stvari koje su pod DOS/Windowsima zapetljane,
slo�ene ili nemogu�e. Evo kratkog popisa koji �e vam dovesti slinu u
usta:
� at omogu�ava pokretanje programa u odre�eno vrijeme.
� awk je jednostavan, ali mo�an jezik za rad s datotekama s podacima
(i ne samo to). Na primjer, ako je podaci.pod datoteka od vi�e
stupaca,
$ awk '$2 ~ "abc" {print $1, "\t", $4}' podaci.pod
ispisuje 1. i 4. polje svakog reda u podaci.pod �ije drugo polje
sadr�i ``abc''.
� cron je koristan za redovito obavljanje zadataka, u odre�eni dan i
vrijeme. man 5 crontab.
� file <imedatoteke> �e vam re�i �to je <imedatoteke> (ASCII tekst,
izvr�na, arhiva, itd.).
� find (pogledajte dio ``Direktoriji: prevo�enje naredbi'') je jedna
od najmo�nijih i najkorisnijih naredbi. Koristi se za nala�enje
datoteka koje imaju neke osobine i obavljanje poslova na njima.
Op�enito se koristi ovako:
$ find <direktorij> <izraz>
gdje <izraz> opisuje kriterije za tra�enje i radnje. Primjeri:
$ find . -type l -exec ls -l {} \;
nalazi sve datoteke koje su simboli�ke veze i prikazuje na �to one
pokazuju.
$ find / -name "*.staro" -ok rm {} \;
nalazi sve datoteke koje odgovaraju uzorku i bri�e ih, pitaju�i vas
za dopu�tenje.
$ find . -perm +111
nalazi sve datoteke �ije su dozvole 111 (izvr�ne).
$ find . -user root
nalazi sve datoteke koje pripadaju rootu. Ovdje ima jo� mnogo
mogu�nosti -- RMP.
� grep nalazi uzorke teksta u datotekama. Na primjer,
$ grep -l "geologija" *.tex
�e ispisati datoteke *.tex koje sadr�e rije� "geologija".
Varijanta zgrep radi na gzip-anim datotekama. RMP.
� Regularni izrazi su slo�en, ali prokleto mo�an na�in za operacije
tra�enja teksta. Na primjer, ^a[^a-m]X{4,}txt$ odgovara redu koji
po�inje s a, kojeg slijedi bilo koji znak izme�u a i m, kojeg
slijedi 4 ili vi�e X, a zavr�ava na ``txt''. Koristite ih u
naprednim editorima, lessu i mnogim drugim aplikacijama. man grep
�e vam dati uvod.
� script <imetranskripta> sadr�aj ekrana ispisuje u imetranskripta
dok ne zadate naredbu exit. Korisno za otklanjanje gre�aka.
� sudo korisnicima omogu�ava izvo�enje nekih rootovih poslova (dakle,
formatiranje i montiranje disketa; RMP).
� uname -a daje informacije o va�em sustavu.
� zcat i zless su korisni za pregledavanje i piping gzip-anih
datoteka bez njihove dekompresije. Na primjer:
$ zless tekst.gz
$ zcat tekst.gz | lpr
� Ove naredbe �esto zgodno poslu�e: bc, cal, chsh, cmp, cut, fmt,
head, hexdump, nl, passwd, printf, sort, split, strings, tac, tail,
tee, touch, uniq, w, wall, wc, whereis, write, xargs, znew. RMP.
1122..66.. PPrraakkttiicciirraannjjee UUNNIIXX--aa ppoodd DDOOSS//WWiinnddoowwssiimmaa
Vjerovali ili ne, postoje dobri alati koji pru�aju UNIX-oliko okru�je
pod DOS/Windowsima! Jedan od njih je DJGPP paket,
<
http://www.delorie.com/djgpp>, za DOS; Cygnus,
<
http://www.cygnus.com>, je slo�eniji port za Win32. Oba sadr�e iste
GNU razvojne i ostale alate kao Linux; ipak, ne�ete dobiti istu
stabilnost i performanse.
Ako �elite probati okus Linuxa, probajte DJGPP. Skinite i instalirajte
sljede�e datoteke (u vrijeme pisanja najnovija verzija je 2.02):
djdev202.zip, bnu281b.zip, bsh1147b.zip, fil316b.zip, find41b.zip,
grep22b.zip, gwk303b.zip, lss332b.zip, shl112b.zip. Instalacijske
upute su uklju�ene, a pomo� mo�ete dobiti u comp.os.msdos.djgpp.
Konkretno, koristiti bash pod DOSWinom je pravo osvje�enje. Kako biste
ga pravilno konfigurirali, editirajte danu datoteku BOOT.BAT tako da
odgovara va�oj instalaciji; zatim ove datoteke smjestite u svoj home
direktorij (na Windows particiji) umjesto ve� danih:
# ovo je _bashrc
LS_OPTIONS="-F -s --color=yes"
alias cp='cp -i'
alias d='ls -l'
alias l=less
alias ls="ls $LS_OPTIONS"
alias mv='mv -i'
alias rm='rm -i'
alias u='cd ..'
# ovo je _bprof
if [ -f ~/_bashrc ]; then
. ~/_bashrc
fi
PS1='\w\$ '
PS2='> '
CDPATH="$CDPATH:~"
# stvari za less(1)
LESS="-M-Q" # du�i prompt, tiho
LESSEDIT="%E ?lt+%lt. %f" # sre�ujemo red na vrhu
VISUAL="jed" # editor
LESSCHARSET=latin1 # prikazuje nagla�ene znakove
export PS1 PS2 CDPATH LS_OPTIONS LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET
1122..77.. UUoobbii��aajjeennee eekksstteennzziijjee ii ppoovveezzaannii pprrooggrraammii
Susrest �ete se s puno ekstenzija. Isklju�uju�i egzoti�nije (fontovi,
itd.), evo tko-je-tko popisa:
� 1 ... 8: man stranice. �itajte ih pomo�u groff -Tascii -man
<datoteka.1>.
� arj: arhiva stvorena pomo�u ARJ.
� dvi: izlazna datoteka TeX-a (pogledajte dalje). xdvi za prikaz,
dvips za pretvaranje u PostScript .ps datoteku.
� gz: arhiva stvorena gzipom.
� info: info datoteka (alternativa man stranicama). Nabavite info.
� lsm: Linux Software Map datoteka. To je obi�na ASCII datoteka koja
opisuje paket.
� ps: PostScript datoteka. Za prikaz ili ispis nabavite gs i, ako
�elite, ghostview ili gv.
� rpm: Red Hat paket. Mo�ete ga instalirati na bilo kojem sustavu
koriste�i rpm.
� taz, tar.Z: arhiva stvorena tarom i sa�eta compressom.
� tgz, tar.gz: arhiva stvorena tarom i sa�eta gzipom.
� tex: tekstualna datoteka za TeX, mo�an sustav izdava�tva. Nabavite
paket tex uklju�en u mnogim distribucijama.
� texi: texinfo datoteka, iz koje mo�e nastati i TeX i info datoteka
(pogledajte info). Nabavite texinfo.
� xbm, xpm, xwd: grafi�ka datoteka.
� Z: arhiva stvorena compressom.
1122..88.. PPrreettvvaarraannjjee ddaattootteekkaa
Ako �elite razmjenjivati tekstualne datoteke izme�u DOS/Windowsa i
Linuxa, budite svjesni problema s krajem reda. Pod DOS-om svaki red
zavr�ava s CR/LF (to jest, ASCII 13 i ASCII 10), a pod Linuxom s LF.
Ako editirate DOS tekstualnu datoteku pod Linuxom, svaki �e red
vjerojatno zavr�avati �udnim "M" znakom; Linux tekstualna datoteka pod
DOS-om �e izgledati kao kilometarski red bez odlomaka. Nekoliko �e
alata, dos2unix i unix2dos, pretvoriti datoteke.
Ako va�e tekstualne datoteke sadr�e nagla�ene znakove, napravite ih u
Windowsima (pomo�u Notepada), a ne obi�nom DOS-u; ina�e �e svi
nagla�eni znakovi biti potpuno zeznuti.
Pretvaranje Word ili Word Perfect datoteka u obi�ni tekst je
zapetljano, ali mogu�e. Trebat �e vam jedan od alata s CTAN
poslu�itelja; jedan od njih je ftp.tex.ac.uk. Uzmite program word2x iz
direktorija /pub/tex/tools/, ili pogledajte programe u direktoriju
/pub/tex/support/. word2x pretvara Word 6 datoteke; za Word 97
datoteke �e vam trebati mswordview,
<
http://www.csn.ul.ie/~caolan/docs/MSWordView.html>, koji ih pretvara
u HTML.
1122..99.. BBeessppllaattnnii uurreeddsskkii ppaakkeettii
Ako pretvaranje datoteka nije dovoljno, mo�ete isprobati jedan od
(besplatnih!) paketa sli�nih Microsoft Officeu.
Paket StarOffice je besplatan za osobnu uporabu. Velik je, pomalo
spor, ali ipak vrlo dobar: nudi mnogo mogu�nosti koje Microsoft Office
nema. Tako�er mo�e �itati Word i Excel datoteke, iako pretvaranje nije
uvijek savr�eno. WWW stranice: <
http://www.stardivision.com>.
Jo� jedan dobar paket je Corel WordPerfect, �ije je besplatno izdanje
dostupno na WWW-u. Trebam li jo� �to re�i? Skinite ga:
<
http://www.corel.com>.
1133.. KKrraajj,, zzaa ssaaddaa
�estitam! Na�eli ste malo Unixa i spremni ste po�eti raditi. Nemojte
zaboraviti da je va�e znanje sustava jo� uvijek ograni�eno i da je
potrebno jo� prakse s Linuxom za udoban rad. Ali ako je sve �to ste
htjeli dobiti hrpu aplikaciju i po�eti raditi s njima, ovo je dosta.
Siguran sam da �ete u�ivati u Linuxu i nastaviti u�iti vi�e o njemu --
svi to rade. Kladio bih se da se nikad ne�ete vratiti DOSWinu! Nadam
se da sam bio razumljiv i dobro uslu�io svoja 3 ili 4 �itatelja.
1133..11.. AAuuttoorrsskkaa pprraavvaa
Ako nije druk�ije izra�eno, autorska prava na Linux KAKO dokumente
posjeduju njihovi autori. KAKO dokumente mo�e se reproducirati i
distribuirati u cjelosti ili djelomi�no, na mediju fizi�kom ili
elektroni�kom, dok je ova obavijest na svim primjercima. Komercijalna
distribucija dopu�tena je i ohrabrena; me�utim, autor bi o takvom
distribuiranju �elio biti obavije�ten.
Svi prijevodi, izvedeni ili sa�eti radovi koji uklju�uju Linux KAKO
dokumente moraju biti pod ovom licencom. Dakle, ne smijete napraviti
rad izveden iz KAKO-a i nametati dodatna ograni�enja na njegovu
distribuciju. Iznimke ovim pravilima mogu�e su pod odre�enim
uvjetima; kontaktirajte Linux KAKO koordinatora na dolje danoj adresi.
Ukratko, �elimo ohrabriti �irenje ovih informacija kroz �to je vi�e
mogu�e kanala. Me�utim, �elimo zadr�ati autorska prava na KAKO
dokumente i htjeli bi biti obavije�teni o bilo kakvim namjerama
redistribuiranja KAKO-a.
Ako imate pitanja, kontaktirajte Tima Bynuma, Linux KAKO koordinatora,
na
[email protected].
1133..22.. AAuuttoorr
_S _D_O_S_/_W_i_n_d_o_w_s_a _n_a _L_i_n_u_x je napisao Guido Gonzato,
OBRI�
[email protected]. (Obri�ite ``OBRI�I_ME''.) Puno
hvala Mattu Welshu, autoru _L_i_n_u_x _I_n_s_t_a_l_l_a_t_i_o_n _a_n_d _G_e_t_t_i_n_g _S_t_a_r_t_e_d,
Ianu Jacksonu, autoru _L_i_n_u_x _�_e_s_t_o _p_o_s_t_a_v_l_j_a_n_a _p_i_t_a_n_j_a _u_z _o_d_g_o_v_o_r_e,
Giuseppeu Zanettiju, autoru _L_i_n_u_x, svima koji su mi poslali
prijedloge, te posebno Linusu Torvaldsu i GNU-u koji su nam dali
Linux.
Ovaj dokument je ``kakav je''. Ulo�eno puno truda da bude �to to�niji,
ali ove informacije koristite na vlastitu odgovornost. Ni u kojem
slu�aju autor nije odgovoran za bilo kakve �tete proiza�le iz
kori�tenja ovog djela.
Primjedbe su dobrodo�le. Slobodno mi se obratite zahtjevima,
prijedlozima, flejmovima, itd.
U�ivajte u Linuxu i �ivotu,
Guido =8-)
1144.. HHrrvvaattsskkii pprriijjeevvoodd
Najnovija verzija ovog prijevoda mo�e se na�i na
<
http://dokumentacija.linux.hr/DOS-Win-na-Linux-KAKO.html>. Odr�ava
ga Matej Vela,
[email protected]. Svi su prilozi, primjedbe i
prijedlozi dobrodo�li.