Contents: [RazmjenaVjestina]
|
Susret: 16/10/04
Napomene
- redosljed je malo drukciji od onog sto smo radili zato sto sam neke stvari zaboravio napraviti pa smo se vracali na njih :)
- za većinu naredbi postoje tzv manual pages a pregledavaju se sa:
man ime_programa
kroz njih se navigira pomoću kursorskih tipki a pretraživanje je moguće pritiskom na tipku '/' (osjetljivo je na veličinu slova)
Prošli put
Prošli put smo napravili brdo stvari pa ću samo ukratko ponoviti ono što nam treba da nastavimo.
Mountanje
mount /dev/hda9 /mnt/gentoo
- ovim se odvija pridruživanje neke particije nekom direktoriju unutar file-sistema
- mount naredba ima slijedeći oblik:
mount [-t fs] particija direktoriji
gdje pojedini parametri imaju slijedeća značenja:
'fs' je ime file-sistema, u većini slučajeva se fs automatski prepozna pa ga nije potrebno navoditi ali u određenim situacijama je :)
'particija' je particija koju želimo mountat (u našem slučaju /dev/hda9)
'direktoriji' je direktoriji gdje to želimo mountat
mount -t proc none /mnt/gentoo/proc
- mountanje proc file-sistema u gentoo okolinu
- promjetite 'none' na mjestu gdje treba ići oznaka particije jer se to primjer za upotrebu '-t fs' (traba nam gdje god kernel nema na osnovu čega zaključiti o kojem se fs-u radi)
chroot /mnt/gentoo /bin/bash
- chroot-anje u gentoo okolinu aka mijenjanje root file sistema iz '/' u '/mnt/gentoo'
- važno: ovim mijenjamo root samo za programe koji će se izvršiti unutar bash programa koji chroot pokrene
env-update
source /etc/profile
- stvari koje nam kod gentoo-a i chroot-anja trebaju ući u automatizam :)
Ovim smo se vratili u poziciju gdje smo stali prošle subote.
.
.
.
The sequal
cd /usr/src/linux
- pošto nismo završili kompajliranje kernela, vrijeme je da to završimo :)
make menuconfig
make dep
make bzImage
make modules
make modules_install
cp -f arch/i386/boot/bzImage /boot
- 'make menuconfig' nam služi za odabir parametara u kernelu
- 'make dep' proračunava dependency-e za module
- 'make bzImage' kompajlira kernel
- 'make modules' kompajlira module
- 'make modules_install' instalira module
- 'cp -f arch/i386/boot/bzImage /boot' kopira kernel na prikladno mijesto
Slijedeće stvari se odnose na uređivanje conf datoteka:
- /boot/grub/grub.conf - ubacivanje opcije za Gentoo
- /etc/fstab - defuiniranje opicija za mountanje prilikom bootanja
- /etc/rc.conf - razne sistemske stvarčice
- /etc/hostname - ime mašine
- /etc/make.conf - opcije za gentoo portage sistem
/boot/grub/grub.conf
Ovo smo obradili prošli put pa neću ulaziti u detalje. Ovo smo ubacili unitra:
title Gentoo GNU/Linux
root (hd0,8)
kernel /boot/bzImage root=/dev/hda9
/etc/fstab
Sintaksa ove datoteke je slijedeća:
'particija' 'direktoriji' 'fs' 'opcije' 'dump' 'pass'
- 'particija', 'direktoriji', 'fs' su isti kao i kod mount naredbe
- 'opcije' određuju ponašanje samog mounta i fs-a, a neke od njih su:
- 'defaults' za defaultne postavke (implicira auto opciju)
- 'auto' određuje da li će se fs mountat pri bootanju
- 'noauto' suprotno od... :)
- 'ro' particija će se mountat u readonly modu (nije moguće pisanje)
- 'rw' moguće i čitanje i pisanje
- 'user' upućuje na to da će i obični korisnik (not root) moći mountati/odmountati tu particiju (zgodno za cdrom, floppy i usb)
- 'dump' ovo je vezano za dump fs-a pa vam vjerovatno nije bitno (ili uvijek stavite nulu
- 'pass' ovdje stavite 1 za root fs a 0 za ostale
Naš fstab je izgledao ovako (mislim :) ):
/dev/hda9 / reiserfs defaults 1 0
Što znači da imamo samo jednu particiju /dev/hda9 mountanu na / (root particiju) tipa reiserfs sa defaultim postavkama
/etc/rc.conf
Ovdje smo zamjenili par stvari:
CLOCK="local"
- stavili smo unutrašnji sat da pokazuje lokalno vrijeme umijesto UTC-a
DISPLAYMANAGER="kdm"
- odredili da xdm servis inicijalno diže kde (naravno kad bude instaliran :) )
XSESSION="kde-3.2.1"
- i kde-3.2.1 pošto na linux-u možete imati 100 (čitaj: pun k...) kde-a, gnome-a itd
/etc/make.conf
Ovaj je bio žilav :( al' smo ga zeznuli :))
CFLAGS="-O3 -pipe -fomit-framepointers
- opcije za c kompajler (vidi: man gcc)
CXXFLAGS="${CFLAGS}
- opcije za c++ kompajler (vidi: man gcc)
CHOST="i686-pc-linux-gnu"
- računalo na kojem radimo (ovo je postavka za većinu računala)
#ACCEPT_KEYWORDS="~x86"
- maknemo znak '#' ako hoćemo instalirati ne stabilne pakete
USE="X kde alsa"
- ovdje kažemo za što hoćemo podršku (lista vam se nalazi u /usr/portage/profiles/use.desc)
PKGDIR="/usr/portage/packages"
- ovo nam je za sada zanimljivo jer ćemo kasnije dizati binarne pakete sa cd-a a označava gdje se oni nalaze (za sada to nećemo dirati)
Prebacivanje source-va
iz fedore smo mountali cdrom sa source-vima unutar gentoo okoline (/mnt/gentoo/mnt/cdrom što iz gentoo okoline vidimo kao /mnt/cdrom :) ):
mount /dev/cdrom /mnt/gentoo/mnt/cdrom
i onda ih iz chroot-a prebacili sa:
cp /mnt/cdrom/distfiles/* /usr/portage/distfiles
Prvo emerge-anje
Sad moramo (sudeći po Gentoo handbook-u) kompajlirati sysklogd i vixie-cron:
emerge vixie-cron
emerge sysklogd
- sysklogd je servis za filtriranje poruka u datoteke u /var/log
- vixie-cron je servis za periodično izvršavanje programa
Ti servisi se moraju pokrenuti pri bootanju mašine:
rc-update add vixie-cron boot
rc-update add sysklogd boot
Servisi
rc-update program dodaje/briše servise iz boot procesa a ima slijedeći oblik:
rc-update akcija servis level
- 'akcija' je radnja koju program treba obaviti a ona može biti add ili del
- 'servis' je ime servisa s kojim nešto hoćete napraviti
- 'level' je runlevel nad kojim hoćete raditi a mogući su boot, nonetwork ili default
za popis instaliranih servisa, levela i njihovih stanja ukucajte:
rc-status --all
- servisi vam se nalaze u /etc/init.d direktoriju s pripadnim imenom pa ih možete i ručno startati, restartati, zaustaviti itd. :
/etc/init.d/servis akcija
- 'servis' je ime servisa (pr. sysklogd)
- 'akcija' je radnja koju hoćete obaviti a moguće je:
- 'start' za startanje
- 'stop' za zaustavljanje
- 'restart' hm... i wonder :)
- 'zap' u slučaju da nešto pođe po zlu (resetiranje servisa)
Dodatne stvari
Pošto smo kao root fs uzeli resierfs moramo kompajlirati alate za njega jer ne dolaze uključeni u osnovni sistem.
emerge reiserfstools
Završna faza
sada dolazimo do instalacije binarnih paketa pa u /etc/make.conf moramo staviti:
PKGDIR=/mnt/cdrom
da ih vuče sa cd-a (to kasnije moramo promjeniti natrag jer će nam se događati čudne stvari - ovo je iz iskustva :) )
nakon toga iz fedore moramo demountati cd:
umount /mnt/gentoo/mnt/cdrom
zamjeniti ga s onim koji sadrži binarne pakete i ponovno mountati:
mount /dev/cdrom /mnt/gentoo/mnt/cdrom
a sad iz gentoo okoline (aka chroot):
emerge -k kde
ovdije nam -k kaže će emerge proces prvo pogledati u PKGDIR da li postoji binarni paket i ako postoji cool, a ako ne postoji kompajliraj novi :)
Puš pauza
Oni koji puše mogu jednu zapaliti.
Gotovo
već??? je ovaj stroj brz :)
Sada slijedi konfiguracija X-a pomoću program xf86config koji nas detaljno ispita o svemu i svačemu vezanom za grafički sustav. Utažimo njegovu znatiželju i dodamo xdm servis (služi za dizanje X-a) da se diže pri boot-u:
rc-update add xdm default
Postavimo root password:
passwd
restartamo, bootamo u Gentoo i sretni i zadovoljni skočimo pod autobus :))
Ok! To je to! Ekipa, za ovo ste mi svi dužni po jednu OPAKU kavu!
btw, ako ima nejasnoća, pitanja i sl. pišite.
original Oct 17 3:32pm