Prva  Prethodna  Sadrzaj  Slijedeca

4. Ostali štosovi

4.1 Kompajliranje novog kernela

Evo pravog posla za okorjelog linksaša! Osobito ako imate kakav tvrdoglavi i neposlušni komadić očvrsja koji uporno odbija proraditi sa Sargeovim kernelom izabranim pri instalaciji. Za početak, pomoću Synaptic-a pogledajte pakete kernel-source-x.x.x , to vam je izvorni kod Linuxovih kernela. Imate i cijeli niz već gotovih, predefiniranih (paketi kernel-image-x.x.x), ali ne pokušavajte ih instalirati, jer ste još uvijek samo početnik i neznalica. 

Nekad je kompajliranje kernela bilo nešto složenije. Ako baš želite stariji, pogledajte u KAKO za Woody ili Potato, jer ću se ovdje usredotočiti samo na 2.6.x inačice. Pozor, nemojte iznova kompajlirati Debianov 2.6.8 kernel. Prema uputama u ovom KAKO stavili ste ga kod instalacije i kao novak daleko ćete lakše zapeti (i čak možda zeznuti cijeli sustav kojeg ste dosad - nadam se - već prilično dobro podesili) s njim, nego s nekim novijim.  

Dakle, hodite na Kernel.org ili malo bliže ftp.linux.hr i skinite najnoviju linux-*.tar.bz2 datoteku (naravno, umjesto zvjezidice inačica). Manje su nego .tar.gz , ali ne skidajte one koje u sredini imaju neparni broj (npr. 2.5.x ), te su valjda razvojne i nestabilne. Ne dopustite da vas uplaši što su velike po 35 i više Mb. Brigu ostavite za početak mjeseca kad vam stigne telefonski račun :-) 

Pretpostavimo da ste novi kernel skinuli u svoj /root direktorij. Prvo ga premjestite u direktorij /usr/src , recimo ovako:

mv /root/linux*tar.bz2 /usr/src/linux*tar.bz2 

...potom hodite tamo, otpakirajte ga i na direktorij u kojem se bude pojavio načinite simboličku poveznicu linux . Ne pitajte ništa, samo radite:

cd /usr/src
bunzip2 -d linux*tar.bz2
tar -xvvf linux*tar
ln -s linux-2.6.x linux

Naravno, u zadnjem redu namjesto x... skužili ste. Koji davež, a? A mogli ste sve to lijepo i bez silnog tipkanja s Gnome-commander-om ili TkDesk-om :-) Postavite se u direktorij /usr/src/linux i napišite:

make xconfig

...i pojavljuje se... ne pojavljuje se, kaže ne može naći QT instalaciju. Kvragu, ni make gconfig ne radi, buni se da nema ni GTK+, što god to bilo. Vjerovali ili ne, iz prve ne šljaka čak ni make menuconfig . Čovjek bi pomislio da je kompajliranje kernela neka teška konspiracija, misterija i frka!? :-) No dobro, za QT vam treba paket libqt3-dev (i cijelo čudo drugih), a za GTK+ paketi libglade2-dev i libgtk2.0-dev. Na kraju, ako baš predano ljubite tekstualne štosove, menuconfig će proraditi nakon instalacije paketa libncurses5-dev .  

U ovome slučaju KDE sučelje je uvjerljivo najkvalitetnije, točka. Otvara se lijepi prozor, a mnoštvo mogućnosti s lijeve strane jedva čeka da ih kliknete. Međutim, tek započinju pravi problemi, jer sada morate znati, kao prvo, zašto uopće kompajlirate novi kernel, i kao drugo, sve što imate u svome računalu. Koji chipset na matičnoj ploči, koji procesor, koju grafičku, zvučnu i mrežnu karticu, koji modem itd. Većina dodatnih uređaja ima svoje posebne zahtjeve. Niste mogli montirati Windows particiju? Možda vam nedostaje podrška za taj datotečni sustav. Nema zvuka? Možda nemate podršku za svoju zvučnu karticu!

Ako se ne varam, 2.6.x kerneli imaju preko tisuću opcija i sad, što odabrati? To vam nitko živ ne može sigurno reći bez neposrednog uvida. Kako što kliknete, u donjem prozorčiću pojavit će se opis za pomoć, ali često razumljiv samo programerima i osobama koje u napadima zlobe pišu one krasne i jednostavne man stranice zbog kojih je ovaj KAKO čisti gubitak vremena.   

Cijeli niz mogućnosti već je ponuđen i označen, pa će se dogoditi da puno toga zapravo trebate izbaciti. Besmiseno je kompajlirati podršku uređajima koje nemate na računalu, zar ne? :-) No, dobro, još jednom ću se prihvatiti uzaludnog posla i pokušati popisati najosnovnije od onog što je meni trebalo na drugom računalu (uz dodatak ISDN-a koji više ne koristim):

Loadable module support
    Enable loadable module support /
(sve osim Source checksum...) y
Power management options (ACPI, APM)
    Power management support y
Bus options (PCI, PCMCIA...)
    PCI support y
Executable file formats
    Kernel support for ELF binaries y
(ostalo m)
Parallel port support
   
Parallel port support m (paralelni pisač)
Parallel port support
   
Parallel port support
        PC-style hardware m
(paralelni pisač)
Plug and Play support
    Plug and Play support y

Plug and Play support
    Auto-probe for parallel devices m
(paralelni pisač)
Block devices
    Normal floppy disk support y

Block devices
    Loopback device support m
ATA/ATAPI/MFM/RLL support
    ATA/ATAPI/MFM/RLL support y

ATA/ATAPI/MFM/RLL support
    Enhanced IDE/MFM/RLL/disk/cdrom/tape/floppy support y

ATA/ATAPI/MFM/RLL support
    Enhanced IDE/MFM/RLL/disk/cdrom/tape/floppy support
        Include IDE/ATA-2 DISK support y
ATA/ATAPI/MFM/RLL support
    Enhanced IDE/MFM/RLL/disk/cdrom/tape/floppy support
        Include IDE/ATAPI CDROM support y

ATA/ATAPI/MFM/RLL support
    Enhanced IDE/MFM/RLL/disk/cdrom/tape/floppy support

        SCSI emulation support m

ATA/ATAPI/MFM/RLL support
    Enhanced IDE/MFM/RLL/disk/cdrom/tape/floppy support
        generic/default IDE chipset support y

SCSI device support
    SCSI device support y

SCSI device support
    SCSI device support
        SCSI disk support
m
SCSI device support
    SCSI device support
        SCSI CDROM support
m
SCSI device support
    SCSI device support
        SCSI generic support
m
IEEE 1394 (FireWire) support
   
IEEE 1394 (FireWire) support m
Networking support
    Networking options
        TCP/IP networking y
Networking support
    Networking options
        Network
device support
            Dummy net driver support m

Networking support
    Networking options
        Network
device support
            Ethernet (10 or 100 Mbit) y
(LAN i ADSL)
Networking support
    Networking options
        Network
device support
            Ethernet (10 or 100 Mbit)
                EISA, VLB, PCI and on board controllers y
(LAN i ADSL)
Networking support
    Networking options
        Network
device support
                Ethernet (10 or 100 Mbit)
                    EISA, VLB, PCI and on board controllers
                        SiS 900/7016 PCI Fast Ethernet Adapter support m
(LAN i ADSL)
ISDN subsystem
    ISDN support m
ISDN subsystem
    ISDN support
        Old ISDN4Linux (obsolete) m
 (obsolete, vraga)
ISDN subsystem
    ISDN support
        Old ISDN4Linux (obsolete)

            Support synchronous PPP y

ISDN subsystem
    ISDN support
        Old ISDN4Linux (obsolete)

                             Support generic MP (RFC 1717) y (channel bundling)
ISDN subsystem
    ISDN support
        Old ISDN4Linux (obsolete)
           
Passive cards
                HiSax Siemens ChipSet driver support m

ISDN subsystem
    ISDN support
        Old ISDN4Linux (obsolete)
           
Passive cards
                HiSax Siemens ChipSet driver support
                   
HiSax Support for Euro/DSS1 y
ISDN subsystem
    ISDN support
        Old ISDN4Linux (obsolete)
           
Passive cards
                HiSax Siemens ChipSet driver support
                   
HiSax Supported Cards / y (odaberite svoju ako je tamo, ako nije, kockajte se i pokušajte s HFC karticama)
Input device support
    Generic input layer
        Mouse interface m
Input device support
    Generic input layer
        Mouse interface
            Provide legacy /dev/psaux device y

Input device support
    Generic input layer
        Input device drivers
            Keyboards
                AT keyboard y
Input device support
    Generic input layer
        Input device drivers
            Mouse y
Input device support
    Generic input layer
        Input device drivers
            Mouse
                P
S/2 Mouse y 
Input device support
    Generic input layer
        Input device drivers
            Miscellaneous devices
                PC speaker support m 

Input device support
    Serial I/O support
        i8042 PC Keyboard controller y
Input device support
    Serial I/O support
        Serial port line discipline y
Character Devices
    Virtual terminal y
Character Devices
    Virtual terminal
        Support for console on virtual terminal y
Character Devices
    Unix98 PTY support y
Character Devices
    Legacy (BSD) PTY support y

Character Devices
    Parallel printer Support m
(paralelni pisač)
Character Devices
    /dev/agpgart (AGP support) y
Character Devices
    /dev/agpgart (AGP support)
        SiS chipset support y
Character Devices
    /dev/agpgart (AGP support)
        Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) y
Character Devices
    /dev/agpgart (AGP support)
        Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) m
Character Devices
    Serial drivers
        8250/16550 and compatible serial support y

Character Devices
    Serial drivers
        8250/16550 and compatible serial support
            Extended
8250/16550 serial driver options y
Graphics support
    Console display driver support
        VGA text console y
Graphics support
    Console display driver support
        VGA text console
            Video mode selection support y

Sound
    Sound card support m

Sound
    Advanced Linux Sound Architecture
       
Advanced Linux Sound Architecture m
Sound
    Advanced Linux Sound Architecture
       
Advanced Linux Sound Architecture
            Sequencer support m

Sound
    Advanced Linux Sound Architecture
       
Advanced Linux Sound Architecture
            Generic devices
                Dummy /dev/null soundcard m

Sound
    Advanced Linux Sound Architecture
   
    Advanced Linux Sound Architecture
            PCI devices
                C-Media 8738, 8338 m

Sound
    Advanced Linux Sound Architecture
       
Advanced Linux Sound Architecture
            PCI devices
                Intel/SiS/nVidia/AMD/Ali AC97 Controller m

USB Support
    Support for Host-side USB y
USB Support
   
Support for Host-side USB
       
USB verbose debug messages y (ovo uzrokuje masu USB poruka i brbljanja pri podizanju sustava)
USB Support
   
Support for Host-side USB
        EHCI HCD (USB 2.0) support m

USB Support
   
Support for Host-side USB
        OHCI HCD support m
USB Support
   
Support for Host-side USB
        UHCI HCD support m

USB Support
   
Support for Host-side USB
       
USB printer support m
USB Support
   
Support for Host-side USB
       
USB Mass Storage Support m (za USB flash memory štapiće)
USB Support
   
Support for Host-side USB
       
USB Mass Storage Support
            USB Mass Storage verbose debug y
USB Support
    Support for Host-side USB
        USB Human Interface Device (full HID) support m

USB Support
    Support for Host-side USB
        USB Human Interface Device (full HID) support

            HID input layer support y

USB Support
    Support for Host-side USB
        USB Human Interface Device (full HID) support
           
/dev/hiddev raw HID device support y
Filesystems
    Second extended fs support y
(i sve ostalo pod tim)
Filesystems
    Ext3 journaling fs support y
(i sve ostalo pod tim)
Filesystems
    ROM file system support m

Filesystems
    CD-ROM/DVD Filesystems
        ISO 9660 CDROM file system support y
Filesystems
    CD-ROM/DVD Filesystems
        ISO 9660 CDROM file system support
            Microsoft Joliet CDROM extensions y

Filesystems
    CD-ROM/DVD Filesystems
        ISO 9660 CDROM file system support
            UDF file system support m

Filesystems
    DOS/FAT/NT 
Filesystems
        MSDOS fs support y

Filesystems
    DOS/FAT/NT 
Filesystems
        VFAT (Windows-95)fs support y
(možete staviti default codepage 852, a default iocharset iso8859-2)
Filesystems
    DOS/FAT/NT 
Filesystems
        NTFS filesystem support y

Filesystems
   
Pseudo Filesystems
        /proc file system support y

Filesystems
   
Base native language Support
        Codepage 437 m

Filesystems
   
Base native language Support
        Codepage 852 m

Filesystems
   
Base native language Support
        Windows CP1250 m

Filesystems
   
Base native language Support
        NLS ISO 8859-1 m

Filesystems
   
Base native language Support
        NLS ISO 8859-2 m

Filesystems
   
Base native language Support
        NLS ISO UTF8 m

Sve izabrano možete uključiti u sam kernel, označujući kockicu kvačicom (ovdje predstavljeno kao y), ili kao modul koji se učitava, označujući kockicu točkicom (ovdje predstavljeno kao m). Ne mogu generalno reći što je bolje; neke stvari zahtijevaju jedno, neke drugo, ovisi o mnogo toga. Kada ste završili, preporučam spremite svoju novu kernel-konfiguraciju u neku datoteku da biste je slijedeći puta mogli učitati. Izađite s Quit i u terminalu napišite:

make bzImage

...pa ako sve prođe bez problema, tj. bez ispadanja uz poruku da vam nedostaje žmrlj.x.23 ili štogod (imate Synaptic), obavili ste dobar dio posla. Novi kernel naći ćete u direktoriju /usr/src/linux/arch/i386/boot , kao bzImage . Presnimite ga u direktorij /boot . Stari kernel (kod mene vmlinuz-2.6.8-2-k7) ne dirajte, možda će vam trebati. Novi kernel preimenujte u standardno vmlinuz-2.6.x . Načinite simbolički link, recimo novi-kernel u korijenskom direktoriju / na vaš novi kernel, ovako:

ln -s /boot/vmlinuz-2.6.x /novi-kernel

Nakon toga u isti taj direktorij /boot presnimite datoteku /usr/src/linux/System.map i preimenujte je u System.map-2.6.x , tako da odgovara inačici novog kernela. Slično učinite s datotekom /usr/src/linux/vmlinux , presnimite je u /boot i preimenujte u initrd.img-2.6.x . I na nju načinite simbolički link u korijenskom direktoriju, recimo novi-initrd , možda ovako:

ln -s /boot/initrd.img-2.6.x /novi-initrd

Ostaje vam još par koraka, svi iz terminala u /usr/src/linux :

make modules
make modules_install
depmod -a 2.6.x

...ali pozor! Ako ste bili neposlušni i ipak iznova iskompajlirali isti kernel koji već imate na računalu, ne smijete zadati ove posljednje dvije naredbe prije no što uklonite direktorij sa starim modulima /lib/modules/inačica_starog_kernela . Možete ih sačuvati, sažeti u neku arhivu, a zatim obrisati direktorij. Isto tako, nikako ne valja kopirati novi kernel preko istoimenog starog, ako je stari kernel aktivan. Zapamtite, čak i ako ste jako pažljivi i dobro znate što radite, uvijek postoji mogućnost da se novi kernel odbije podići. Da to izbjegnete, jednostavno kompajlirajte različitu inačicu kernela, a staru ostavite u pričuvi, kako savjetujem. 

Nakon što ste učinili sve opisano, ostaje vam podesiti lilo. U /etc/lilo.conf dodajte: 

# 2.6.x
image=/novi-kernel
label=deb-novi
initrd=/novi-initrd
optional

...zatim spremite datoteku i opalite lilo -b /dev/fd0 (dižete ga s diskete, ne?). Ako ste sve učinili prema naputku, vidjet ćete kako lilo dodaje deb*, deb-novi i win, pa ponovo pokrenite sustav da doznate šljaka li novi kernel. U lilo boot izabirniku pojavit će vam se i deb-novi, pokušajte. Što ako odbije i zakoči se na pola? Tja, resetirajte stroj, dignite stari kernel, obrišite sve nove datoteke i ponovite, uzimajući u obzir gdje ili zašto se zakočio. Nešto će vam već napisati. Ili pokušajte s nekom drugom inačicom.

Još upozorenja: kažu da za kompajliranje 2.6.x kernela ne treba naredba depmod -a [inačica_kernela]. Ja sam je iz nekog razloga morao rabiti na svom drugom računalu, jer se u direktoriju /lib/modules/[novi_kernel]/ nisu pojavile datoteke modules.* . Dalje, ako vam se novi kernel uzme kočiti i paničariti oko nečeg što se zove init ili initrd , pokušajte s dodatnom naredbom:

mkinitrd -o /boot/initrd.img-2.6.x 2.6.x   

...gdje naravno namjesto x stoji inačica kernela koji ste kompajlirali. To je bio slučaj s Gericom nakrilnikom. Upucajte me ako kužim zašto.

Nakon što uspješno podignete novi kernel, ne zaboravite prvo pokrenuti modconf i učitati sve potrebne module.

4.2 Kompajliranje programa

Za početak, izaberite direktorij u kojem ćete kompajlirati. Većini omiljeni je /usr/src , ali možete otići bilo kamo, nije previše bitno. Koji god Linux program dobili, obično će biti u obliku kompresirane .tar ili .tar.gz datoteke s izvornim kodom. Osim, naravno, ako se radi o Slackware .tgz paketu, ali to je druga priča. Za Debian korisnika idealno je doći do odgovarajućeg .deb paketa, već pripremljenog za dpkg , ali nije loše ni ako se dobije Red Hat-ov .rpm, jer ga je relativno lako pretvoriti.

Dakle, imate sažetu datoteku s izvornim kodom. Presnimite je u neki direktorij i otpakirajte. Najvjerojatnije će se pojaviti novi direktorij s imenom i inačicom programa, hodite u njega i pronađite kakvu README ili INSTALL datoteku. U nekih 90% slučajeva u njoj će pisati da prvo morate pokrenuti konfiguracijsku skriptu configure , koja će reći imate li na sustavu sve što treba, a zatim make (kompajliranje), te na kraju make install (instalacija iskompajliranog). Djeluje prilično jednostavno, zar ne? Aha, da, naravno, kako da ne... :-) Pogledajte tu 'jednostavnost' na jednom starom primjeru... :-)

4.3 USB flash-memory štapić i neke SCSI sitnice

Svi se uokolo prave važni sa svojim lijepim malim šarenim svijetlećim privjescima za ključeve, prepunim programa, glazbe i slika, pa morate i vi, zar ne? :-) Kao i za većinu drugih stvari, na Sargeu više nema nikakvih problema s korištenjem USB štapića. U 2.6.x kernelima koji dolaze uz instalaciju već postoji sva potrebna podrška, pa ih Gnome automatski montira po umetanju - na desktopu se samo pojavi nova ikona. Sustav USB štapić vidi kao SCSI uređaj, vjerojatno negdje oko /dev/sda . U terminalu možete upisati cat /proc/scsi/scsi i dobit ćete nešto ovakvo.

E, sad, da biste se izborili s raznoraznim SCSI frkama, Synaptic-om si instalirajte paket sg3-utils i iskoristite njegove naredbe. Pomoću sg_scan -i vidjet ćete gdje vam je novi USB pogon (možda /dev/sg0), a pomoću sg_map preko čega mu možete pristupiti:

/dev/sg0  /dev/sda

I na kraju, ako štapić želite formatirati Linuxovim ext3 datotečnim sustavom... uh-uh. Nažalost, moj omiljeni cfdisk ne funkcionira kao kod formatiranja običnog pogona, pa ćete se morati pomučiti s čudovištem zvanim fdisk . Javite jeste li preživjeli.

4.4 Kako gledati TV i video na Sargeu

Hmm... za video nema problema, imate Aplikacije / Multimedija / Alsa player. Neka vas ne zavara naslov, to je Xine...

4.5 Kako natjerati skener da radi

Jednom!

4.6 Programiranje

Ako ste programer, teško da čitate ovo - programeri su obično osobe koje u slobodno vrijeme pišu one divne, dopadljive i svima na prvi pogled razmljive man stranice zbog kojih ovaj KAKO nikome uopće ne treba. Dakle niste programer, ali potrošili biste višak svoga slobodnog vremena i zanima vas kako ta čuda barem izvana izgledaju. Okej. Sa Sargeom ste dobili Visual Tcl (paket je visual-tcl, pokreće se s vtcl), pa se poslužite Synaptic-om i instalirajte ga. Osim njega postoji i Borlandov Kylix, besplatni Delphi za Linux. Bio je na BUG/Mrežinom CD-u broj ... koji? Zaboravio sam :-( ...a inače ga se se moglo skinuti odavde (pozor, prilično je velik). Iako je sam program besplatan za privatnu uporabu, postupak dobijanja aktivacijske .txt datoteke preko Interneta bio je živi pain in the ass zadnji put kad sam pokušao. Sama instalacija je jednostavna, otpakirate, imate INSTALL i README, pokrenete setup i to je sve.

x.y Dopuštenja na datotekama i simbolički linkovi

Ni u ludilu... :-)

6.2.8.1 Kako postati tajkun

6.2.8.1.3.4.5 Kako izbjeći zatvor 

6.2.8.1.3.4.6 ... 
 


Prva  Prethodna  Sadrzaj  Slijedeca