S:Gentoo stage3 nasıl kurarım?
Aşağıda Stage3 olarak bir kurulum belgesi var. Bu kurulum ilk başlayanlar için tavsiye edilir. Bu kurulumu uygulayın ve güzel bir gentoo nuz olsun.
Yanlız Yazarın tavsiyesi herzamanki gibi güçlü bir makine sağlam bir internet bağlantısı (en azından ADSL 512 kbit/s olsa iyi olur) olması, (CD den kurulum yapanlar için internet bağlantısı gerekli değil) ve herşeyden önemlisi sabırlı ve sakin bir yetişkin bir linux yöneticisi olmak sorunları aşmada kolaylık sağlayacaktır..Bir kere kesinlikle kernel derlemesini ve hardware modullerini bilmesi gerekir..
şimdi şu anda olan gentoo 2007.0 stable durumda. 2007.0 Stable olduktan sonra x86 makıneler için Performansı en yüksek seviyeye çıkarıldı . Eğer kerneli yeterince sade ve küçük tutarsanız, Bence mükemmel ve inanılmaz hızlı olur. Kurun ve 1 dk altına inmiş bir boot zamanıyla tanışın. Bazıları bunu sadece kıskançlıkla seyredebilir. Smile
Evet ilk yapacağımız şey bir gentoo Universal live cd edinebilmek olacak. Bunu nasıl yaparız. Aşağıdaki _link_ ten indirin.
install-x86-minimal-2007.0.isoEvet Universal live cd yi indirdik ve cd ye yazdırdık. Sonra live cd ile boot yapıyoruz. Karsımıza ılk çıkan bir pencere ve oraya yazıyoruz. Eger bir aksilik yapacağı tutar asılı kalırsa reset yapın tekrar boot yapın tekrar o pencereye yazın. Sanırım sorunsuz boot olacaktır.
Evet Boot yaptık demiştik..
Şu an karşımızda gentoo nun konsolu bize bakıyor. Mavi bir bootsplash eşliğinde canavar gibi bir konsol sakın korkmayın.
İlk yapmamız gereken iş loadkeys tr (yada hangi tip bir klavye kullanıyorsanız ona göre; loadkeys de yada loadkeys en ; olabilir) komutuyla klavyemizin dilini ayarlıyoruz. ikinci önemli yapılacak iş ise network kartımızın modulunu yüklemek olacak. Buradaki network kart RTL 8139 yani benım için modul 81399too sizdeki kart baska olabilir, ona göre modul seçersiniz. Gerçi live cd boot ederken network ayarlarını otomatik olarak yapması gerekir ama biz garantili hareket etmeliyiz değilmi nede olsa gentoo administrator olacağız. Kolaymı Smile.. (ayrıca söyleyim kurulum bittikten sonra çalıştırmak çok iyi oluyor, çok iyi geliyor.) Neyse işimize bakalım.
kolkola ~ # modprobe 8139too
kolkola ~ # ifconfig eth0
kolkola ~ # dhcpcd eth0
kolkola ~ # ping -c4 gentoo-tr.com (böylece internet bağlantımız LAN da çalışan bir PC için sağlanmış oldu.)
Sonraki Adım Sabit diski optimal ayarına getirmek olacak gentoo yu en üst performansta kullanabilmek için bu gerekli.
Eger Sabit diskimiz eğer SCSI yada SATA olarak tabir ettiğmiz bir sabit disk ise bu işlemi yapmadan geçiyoruz.
Aşağıda optimize edilmemiş bir sabit disk çıktısını görüyoruz,
kolkola ~ # hdparm /dev/hda
/dev/hda:
multcount = 0 (off)
IO_support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 16383/255/63, sectors = 78165360, start = 0
Aşağıda ise optimize edilimiş bir sabit disk çıktısı görüyoruz, Optimize için komut verelim.
kolkola ~ # hdparm -d1c1u1m16 /dev/hda
/dev/hda:
setting 32-bit IO_support flag to 1
setting multcount to 16
setting unmaskirq to 1 (on)
setting using_dma to 1 (on)
multcount = 16 (on)
IO_support = 1 (32-bit)
unmaskirq = 1 (on)
using_dma = 1 (on)
ve aynı şekilde CD Okuyucuğu optimize ediyoruz.
kolkola ~ # hdparm -d1c1u1 /dev/cdroms/cdrom0
Ve gelelim Sabit diskimizi yapılandırmaya benim tercihim her zaman Home ve boot bölümlerini ayırmak olmuştur.
sebebini sorarsanız herhangi bir nedenle gentoo / root hasar görürse, /home bölümü ayrı bir kısımda olduğu için, kendime ait özel bilgiler zarar görmüyor.
Şimdi sabit diskimizin hda olduğunu farzediyoruz ve fdisk adıyla anılan ve benim çok sevip saydığım programı çalıştırıyoruz. (değerli bir büyüğümüzdür kendisi)
kolkola ~ # fdisk -l
Disk /dev/hda: 60 GB, 60040544256 bytes
255 heads, 63 sectors/track, 7299 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
ve çıktıda Sabit diskimize ait özellikler görünüyor.
Şimdi fdisk programına ait bazı komutlar görünmektedir.
The number of cylinders for this disk is set to 7299.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): m ( komutları görmek için m tuşluyoruz)
Command action (komutların yaptıkları anlamları)
a toggle a bootable flag (bununla seçilen bölüm boot bölümü (önyükleme etiketi) olarak ayarlanmaktadır)
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition ( mevcut olan bir bölümü silmek için kullanılır. Bunu yaparken 10 kere düşünün)
l list known partition types (çeşitli Bölümleme tipleri gösterilir. sistem ID leri için liste)
m print this menu (bu bölümü görmek için)
n add a new partition (yeni bir bölüm yapmak için )
o create a new empty DOS partition table ( Dos için bölümleme )
p print the partition table (bölümlerimizin son halini gösterir)
q quit without saving changes (yapılan işlemleri kayıt yapmadan çıkış sabitdisk ilk haline geri döner.)
s create a new empty Sun disklabel (Sun için sabit disk ayarları)
t change a partition's system id (bölümlerimizin sistem ID lerini değiştirmek yada ayarlamak için)
u change display/entry units
v verify the partition table
w write table to disk and exit ( yapılan tüm işlemler kaydedilir ve çıkılır. Dikkat bölüm sildiyseniz tekrar düşünün son uyarı bu)
x extra functionality (experts only) (ekstra seçenekler uzmanlık ister)
Açıklama yapmadıklarım benim sevmediğim hatta nefret etiğim şeylerle ilgili olabilir ve ihtiyacımız yok demektir. Smile)
Evet komutlarımızı aşağı yukarı öğrendik. Artık fdisk ile disklerimizi bölümleriz değilmi ? Duyamadım biraz sesli lütfen, hah tamam yaparmışız... Çok acımasızca dimi, adam yapmış. Gayet rahat dalgasını geçiyor -))
Şimdi fdisk için komut verelim
kolkola ~ # fdisk /dev/hda (hda makinemizdeki master disk anlamında, eğer slave bir diskimiz varsa /dev/hdb olacaktır.)
The number of cylinders for this disk is set to 7299.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help): n
Comman action
e extendet
p primary partition (1-4)
p (komutunu veririz)
Partition nummer (1-4) : 1 (rakamini veririz bununla 1 numarali bölümü olusturuyoruz.)
First cylinder (1 -7299, default 1) : Enter yapin
Using default value 1
Last cylinder or +sizeM or +sizeK (1-7299, default 7299 : +150M (150 MB boyutunda bir boot bölümü oluşturduk)
ve p komutunu verdiğimizde şu çıktıyı görürüz.
Device boot Start End Blocke Id System
/dev/hda1 1 14 105808+ 83 Linux
Bu bölümü Önyüklemeye uygun hale getirelim. a tuşuna basıyoruz ve bu bölüm için önyükleme etiketini koyuyoruz. Tekrar p tuşuna bastığımızda * işaretinin boot sütununa geldiğini görüyoruz.
Swap (takas) Alanı oluşturmak.
Command (m for help): n
e extendet
p primary partition (1-4)
p (komutunu veririz)
Partition nummer (1-4) : 2 (rakamini veririz bununla 2 numarali bölümü olusturuyoruz.)
First cylinder (15 -7299, default 15) : Enter yapin
Using default value 15
Last cylinder or +sizeM or +sizeK (1-7299, default 7299 : +764M (764 MB boyutunda bir boot bölümü oluşturduk
bu bölüm 1024 MB . ye kadar yükseltilebilir)
t tuşuna basıyoruz ve system id sini 2 numaralı bölüm için 82 linux swap olarak ayarlıyoruz.
tekrar p ve çıkan sonuç şöyle olmalı.
Device boot Start End Blocke Id System
/dev/hda1 * 1 14 105808+ 83 Linux
/dev/hda2 15 107 747022+ 82 Linux swap / solaris
/home bölümü oluşturmak.
Command (m for help): n
e extendet
p primary partition (1-4)
p (komutunu veririz)
Partition nummer (1-4) : 3 (rakamini veririz bununla 3 numarali bölümü olusturuyoruz.)
First cylinder (108 -7299, default 15) : Enter yapin
Using default value 108
Last cylinder or +sizeM or +sizeK (1-7299, default 7299 : 4971 (40 GB lık bir Bölüm oluşturuyoruz.)
tekrar p tuşluyoruz ve çıkan sonuç.
Device boot Start End Blocke Id System
/dev/hda1 * 1 14 105808+ 83 Linux
/dev/hda2 15 107 747022+ 82 Linux swap / solaris
/dev/hda3 108 4971 39070080 83 Linux
Benzer şekilde 4 bölümü / root için hda4 bölümünü oluştururuz ve p tuşladığımızda çıkan sonuç şöyle olmalı. Bu kadarıda sanırım
yapılabilir.
Device boot Start End Blocke Id System
/dev/hda1 * 1 14 105808+ 83 Linux
/dev/hda2 15 107 747022+ 82 Linux swap / solaris
/dev/hda3 108 4971 39070080 83 Linux
/dev/hda4 4972 7299 18699660 83 Linux
Evet sabit diskimiz böylece hazırlandı.
Sonraki komut w tuşuna basarız, yaptığımız işlemleri kaydederiz ve fdisk programının dan çıkarız.
ilk yapacağımız şey hemen takas (swap) alanını hazırlar ve aktif hale getiririz.
kolkola# mkswap /dev/hda2
kolkola# swapon /dev/hda2
Ve Gentoo linux için hazırladığımız bölümleri reiserfs olarak format yapıyoruz. (benim tercihim herzaman reiserfs olmuştur.)
kolkola# mkreiserfs /dev/hda1
kolkola# mkreiserfs /dev/hda3
kolkola# mkreiserfs /dev/hda4
ve Gentoo linux için hazırladığımız bölümleri reiserfs olarak format yapıyoruz. (benim tercihim herzaman reiserfs olmuştur.)
Yada aşağıdaki format komutları da seçilebilir..
ext2 için mke2fs
ext3 için mke2fs -j
reiserfs için mkreiserfs
xfs için mkfs.xfs (gentoo için standart tasarlandı ama biraz fazla ram kullanır)
jfs için mkfs.jfs (kullanmadım)
Artık sabit diskimiz tamamen kurulum için hazır. Sıra geldi bölümlerimizi bağlamaya.
kolkola# mount /dev/hda4 /mnt/gentoo
kolkola# mkdir /mnt/gentoo/boot
kolkola# mount /dev/hda1 /mnt/gentoo/boot
kolkola# mkdir /mnt/gentoo/home
kolkola# mount /dev/hda3 /mnt/gentoo/home
STAGE3 SEÇIM VE KURULUMU
Evet söylediğimiz gibi stage3 kuracağız bize gerekli olan stage 3 paketini, herhangi bir mirrordan olabilir yada benim yazdığım mirrordan da indirebiliriz. Dikkat mirrorda değişikliler zaman içinde olabileceğinden adreste sorun çıkarsa bir zahmet bir mirror buluverin, artık. Önemli olan stage 3 olması. Burada dikkat etmemiz gereken nokta şu stage2 ve stage3 kurulumlarda cpu farkı vardır o yüzden eğer aşağıda yapılan örnekleme sizin cpu nuza uymazsa eğer, kendi CPU unuza uygun stage3 ü indirip ona göre devam edin, kabul edinki her farklı cpu için belge hazırlamaya kalkarsak zamanda yetmez ömürde. Ben herzamanki gibi AMD XP seçtim tercih ve alışkanlık diyelim. Aşağıdaki _link_lere bir bakın ve size ait cpu ya uygun stage3 seçin..
Parent Directory -
[DIR] alpha/ 08-May-2007 00:54 -
[DIR] amd64/ 08-May-2007 00:54 -
[DIR] historical/ 03-Aug-2006 01:54 -
[DIR] hppa/ 08-May-2007 00:54 -
[DIR] ia64/ 08-May-2007 00:55 -
[DIR] mips/ 08-May-2007 00:54 -
[DIR] ppc/ 08-May-2007 00:55 -
[DIR] snapshots/ 04-May-2007 05:22 -
[DIR] sparc/ 08-May-2007 00:55 -
[DIR] x86/ 08-May-2007 00:55 -
Biz örneğiimiz olan x86 ile devam edelim. Ve paketin sağlam elimize geçtiğini md5sum ile kontrol edelim.
kolkola# cd /mnt/gentoo/
kolkola#wget
http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/releases/x86/2007.0/stages/stage3-x86-2007.0.tar.bz2kolkola# wget
http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/releases/x86/2007.0/stages/stage3-x86-2007.0.tar.bz2.DIGESTSkolkola# md5sum -c stage3-x86-2007.0.tar.bz2.DIGESTS
stage3-x86-2007.0.tar.bz2 : OK
kolkola# tar -xjpvf stage3-x86-2007.0.tar.bz2
Evet stage 3 ümüzü seçtik ve indiriyoruz. Mirrorlarda (yansılarda) zaman içinde değişiklik olabilir. Gentoo dan değişik yansılar bulabilirsiniz.
Portage Kurulumu
# cd /mnt/gentoo
# wget
http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/snapshots/portage-20070714.tar.bz2Seçtiğiniz Snapshot'u tar komutuyla açabilirsiniz, tekrardan verdiğimiz seçenekleri bire bir aktarmaya özen gösterin. Dikkat edilmesi başka bir unsurda -C 'yi büyük C harfi olarak yazmak, (küçük c olarak değil).
# tar -xvjf portage-20070714.tar.bz2 -C /mnt/gentoo/usr
Portage snapshot şimdi kuruldu ve Derleyici Parametrelerininin Ayarlanması bölümü ile devam edebiliriz.
Derleyici Parametrelerininin Ayarlanması
Başlangıç
Gentoo'yu ayarlamak için portage'i etkileyen bazı değişkenler verilebilir. Bu değişkenlerin tümü ( export komutu ile) ortam değişkenleri olarak tanımlanabilir. Ama bu yöntem kalıcı bir çözüm değildir. Ayarlarınızın kalıcı olması için portage size /etc/make.conf ayar dosyasını sunuyor. Şimdi bu dosyayı ayarlayacağız.
Note: Tüm değişkenlerin açıklamalı anlatımını /mnt/gentoo/etc/make.conf.example dosyasında bulabilirsiniz.
Başarılı bir Gentoo kurulumu için vereceğimiz değişkenleri kullanmaya özen gösteriniz. Tavsiyem ilk önce /mnt/gentoo/etc/make.conf.example dosyasına bir göz atın. Yada bu dosyayı make.conf olarak kopyalayarak ve bu
dosya üzerinde değişken ayarlarını yaparak işe başlayabilirsiniz..
cp /mnt/gentoo/etc/make.conf.example /mnt/gentoo/etc/make.conf
Dilediğiniz bir editörü (gentoo için en uygun nano editor) kullanarak, tanıtacağımız ayarlı değişkenlerle /etc/make.conf dosyasını biçimlendirmeliyiz.
/etc/make.conf dosyasını editörle açmak
# nano -w /mnt/gentoo/etc/make.conf
Sizinde çabucak görebileceğiniz gibi, make.conf.example dosyası tipik bir yapılandırma dosyasıdır: Kullanmak istemediğiniz satırların başına "#" koyabilirsiniz. Kullanmak istediğiniz satırların başında ise sadece değişken tanımlamaları olmalıdır, örnek: VARIABLE="content"
CHOST
Dikkat: stage1 kurulumu dışında make.conf dosyasında bulunan CHOST ayarlarına dokunmamakta fayda vardır.
Sonuçta sizi bozuk bir sistem bekleyebilir. Tekrardan: CHOST değişkenini sadece Aşama1 (stage1) kurulumunda ayarlamalısınız.
CHOST değişkeni gcc derleyicisin yazılımları tercüme ederken hangi mimariyi kullanacağını belirler. Bunlar :
Mimari Alt Mimari CHOST Ayarları
x86 i386 i386-pc-linux-gnu
x86 i486 i486-pc-linux-gnu
x86 i586 i586-pc-linux-gnu
x86 i686 veya daha yükseği (athlon'da dahil) i686-pc-linux-gnu
alpha alpha-unknown-linux-gnu
ppc powerpc-unknown-linux-gnu
sparc sparc-unknown-linux-gnu
hppa (generic) hppa-unknown-linux-gnu
hppa pa7000 hppa1.1-unknown-linux-gnu
hppa pa8000 ve yükseği hppa2.0-unknown-linux-gnu
mips mips-unknown-linux-gnu
amd64 x86_64-pc-linux-gnu
CFLAGS ve CXXFLAGS
CFLAGS ve CXXFLAGS değişkenlerinin tanımı gcc derleyicisinin C ve C++ derleyicisini uygun hale getirir. Burada bu ayarları global tanımlasak bile en iyi verimi Flag'leri her yazılım için ayrı tanımlayarak elde ederiz. Bunun sebebi her yazılımın derlenirken ayrı davranmasıdır ve ayrı özellikler gösterebilmesidir.
make.conf dosyasını uygun hale getiren Flag'leri tanımlarken sistemin genel olarak ayarlamaya özen gösterin. Bu değişkenlerde denemelerde bulunmayın, aşırı fanatik tanımlarmalar yazılımlarda hatalara yol açabilir
Burada en uygun hale getiren tüm parametreleri açıklamayacağız. Bunları öğrenmek için GNU Online Manual(s) veya gcc info page (info gcc sayfasına bakmanız gereklidir. Bunun dışında make.conf.example dosyası bir sürü örnek ve bilgi barındırmakta.
İlk ayarlamamız -march= flag'ı . Flag işlemcimizin mimarisini belirliyor. Yapılabilecek seçenekler make.conf.example dosyasında açıklanmış halde bulunuyor. Örnek olarak x86 Athlon XP'nin mimarisini ayarlayalım.
GCC'nin march ayarı
-march=athlon-xp
İkinci paremetremiz ise -O flag'ı dır. (DIKKAT: Büyük O harfidir(Onur un O harfi gibi), sıfır(0) rakamı ile karıştırmayın). Bu Flag'ımız gcc derleyicisini uygun hale getiren sınıflandırmasıdır. Verilebilir sınıflardan bazıları s (for size-optimized), 0 (zero - for no optimizations), 1, 2 veya 3 Flag'ı daha yüksek hız ulaştırmak için kullanılabilir. (Her sınıf kendinden ufak sınıfların Flag'larını miras alablir. Mesela bir Sınıf-2 uygun hale getirme seçeneği olarak kullanmak istersek:
GCC O değişkeninin ayarları
-O2
Bunların dışında çok kullanılan sistemizi uygun hale getiren Flag'lerden bazıları -pipe (geçici dosyalar yerine farklı tercüme aşamalarındaki iletişimde pipe kullanıyor) ve fomit-_frame_-pointer (bu seçenekle fonksiyonlar için kullanılan _frame_ Pointer ihtiyaç duymadığında kayıt tutulmuyor).
CFLAGS CXXFLAGS değişkenlerinde birden fazla uygunlaştırma flag'leri birleştirerek kullanılabiliniz; aşağıdaki örneğimizde olduğu gibi:
CFLAGS ve CXXFLAGS değişkenlerinin tanımlanması
CFLAGS="-march=athlon-xp -pipe -O2"
CXXFLAGS="${CFLAGS}" # Her iki değişken için aynı ayarları kullanın
MAKEOPTS
MAKEOPTS değişkeniyle kaç tane paralel derleme işleminin bir paketi derlerken çalışmasını belirleriz. Tavsiye edilen sayı makinemizde bulunan işlemci sayısının bir fazlasıdır.
Basit tek işlemcili bir makina için MAKEOPTS değişkeni
MAKEOPTS="-j2"
Özel Not
USE Değişkeninin Yapılandırması
USE , Gentoo'nun kullanıcılarına sunduğu çok güçlü bir değişkendir. Bir çok program mutlak nesneler için isteğe bağlı seçeneklerle ya da seçenek olmadan derlenebilir. Örnek olarak, bazı programlar gtk desteği ile, ya da qt desteğiyle derlenebilir. Diğerleri SSL desteği ile ya da SSL desteği olmadan derlenebilir. Hatta bazı programlar X11 desteği (X-server) yerine _frame_buffer (svgalib) desteği ile derlenebilir.
Çoğu dağıtım, paketleri olabildiğince destek ile derler, programların boyutunu ve çalışma zamanını arttırmak için bağımlılık hatalarını belirtmemeye özen gösterir. Gentoo ile bir paketin hangi seçeneklerle derleneceğini belirtebilirsiniz. İşte burada USE rol alıyor.
USE değişkeni ile derleme seçeneklerinde bulunan anahtar kelimeleri belirtebilirsiniz. Örnek olarak,vssl anahtarı, ssl destekleyen programları ssl desteği ile kuracaktır. -X X-server desteğini kaldıracaktır (eksi işareti önde olmalıdır). gnome gtk -kde -qt programlarınızı gnome (ve gtk) desteği ile, fakat kde (ve qt) desteği olmadan derleyecektir. Sisteminizi tamamiyle GNOME'a uyumlu hale getirecektir.
Öntanımlı USE ayarları /etc/make.profile/make.defaults içindedir./etc/make.conf dosyasında belirttiğiniz değişkenler, bu öntanımlı ayarların ardından hesaplanmıştır.Eğer USE yarlarına herhangi bir şey eklediyseniz, o seçenek öntanımlı listeye eklenir. Eğer USE ayarlarından herhangi bir şey kaldırdıysanız (seçeneğin önüne eksi işareti koyarak) o seçenek öntanımlı listeden çıkarılır (eğer ön tanımlı listede bulunuyorsa). Asla /etc/make.profile dizininde bir değişiklik yapmayın; Portage'i güncellediğinizde bu dizin yeniden yazılacaktır!
USE değişkeninin tam bir açıklamasını sisteminizde /usr/portage/profiles/use.desc dosyasında bulabilirsiniz
less /usr/portage/profiles/use.desc
nano -w /etc/make.conf
USE="gtk gnome -qt -kde dvd alsa cdr dvb dvd java" örnek bir make.conf USE= flag ayarı
USE='' '' flag ayarları gentoo daki en önemli ayarlardan biridir. Sistemimizde bizim belirleyeceğimiz programların olması yada olmaması nı bu ayarlarla sağlarız. Örnek olarak USE=''-kde'' sistemimizde kde olmayacağını gösterir USE='' java'' sistemimizde java kullanılacağını gösterir. Benim ayarladığım make.conf içerisinde USE=''ayarları'' oldukça etraflı bir şekilde yapıldı. Ayrıca Belgenin bazı ileriki bölümlerindede bu konuyla ilgili bazı ayrıntılı açıklamalar olacak..
/mnt/gentoo/etc/make.conf dosyanızı kaydedin ve şimdi Gentoo Temel Sisteminin Kurulması ile devam edebiliriz.
Sonraki adım bize en uygun mirror u seçmek olacak.
# mirrorselect -i -r -o | grep 'GENTOO_MIRRORS=' >> /mnt/gentoo/etc/make.conf
Sıra geldi /proc ve eğer kullanacaksak /dev mount yani bağlamaya ( /dev eğer sistemimizde onboard olarak promise yada benzeri controller varsa olması uygundur.)
# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
ve chroot olarak gentoo yu kumanda etmeye başlıyoruz.
# cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
# chroot /mnt/gentoo /bin/bash
# env-update && source /etc/profile
# export PSI="(chroot) $PSI"
kolkola# ls -FGg /etc/make.profile
lrwxrwxrwx 1 50 Jul 15 2007 /etc/make.profile -> ../usr/portage/profiles/default-linux/x86/2007.0/
sistemimizin yazı karakterlerini ayarlarız
kolkola# nano -w /etc/locale.gen
Aşağıdaki yazı karakterlerini gireriz. Yada başka karakter tercihleriniz varsa. less /usr/share/i18n/SUPPORTED komutuyla değişik karakterleride görebiliriz.
en_US ISO-8859-1
en_US.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15
tr_TR ISO-8859-9
tr_TR.UTF-8 UTF-8
Böylece yazı karakterlerimizi ayarladık ve aşağıdaki komutla karakter seçimini tamamlarız.
# locale-gen
Sırada sistem saat ve tarih ayarlarını yapmak var. Bu işlemi şimdi yaparsak daha sonra tekrar ayar yapmamıza gerek kalmayacak.
# date (komutuyla tarih ve saat aşağıdaki gibi görülür.)
Sun Jul 15 10:31:02 CEST 2007
eğer tarih veya saat yanlış ise yeniden ayarlamak mümkün.
kolkola#date 071509312007 komutunu yazarız ve 07. ay 15. gün saat 09 dakika31 yıl 2007 şeklinde ayarımızı yeniden yapılandırırız. Ve yeniden date komutuyla.
# date (komutuyla tarih ve saat aşağıdaki gibi görülür.)
Sun Jul 15 09:31:02 CEST 2007
Ve portage, emerge sync komutuyla en yeni sistem paketlerini tanımış olur.
# emerge sync
Artık işimizin en önemli kısmına geldik. Aşağıdaki _script_ benzeri komutlar topluluğu bize sistem için sistem kayıtçısı cron LAN için gerekli programlarını ayarlarını tek bir kumanda ile yapmamızı sağlayacak.
#emerge syslog-ng vixie-cron slocate reiserfsprogs dhcpcd && rc-update add syslog-ng default && rc-update add net.eth0 default && rc-update add vixie-cron default
Yukarıdaki komutlar eğer sorunsuz olarak tamamlanmışsa işimizin önemli bir bölümü tamamlanmış demektir. Şimdi sırada saatimizin timezone ayarları
Sistemimizin saatlerinin doğru ayarlanabilmesi için gerekli olan timezone ayarlarının yapılması. Burada bulunduğumuz ülke ve şehirin tam ayarlanması mümkün böylece saatlerimiz saniyesine kadar doğru ayarlanmış olacak.
# ls /usr/share/zoneinfo/
Africa Chile Factory Iceland Mexico posix UCT
America CST6CDT GB Indian Mideast posixrules Universal
Antarctica Cuba GB-Eire Iran MST PRC US
Arctic EET GMT Israel MST7MDT PST8PDT UTC
Asia Egypt GMT0 iso3166.tab Navajo right WET
Atlantic Eire GMT-0 Jamaica NZ ROC W-SU
Australia EST GMT+0 Japan NZ-CHAT ROK zone.tab
Brazil EST5EDT Greenwich Kwajalein Pacific Singapore Zulu
Canada Etc Hongkong Libya Poland SystemV
CET Europe HST MET Portugal Turkey
Yukarıda gördüğünüz gibi bazı kıtalar ve zaman grupları görülmekte.
Benim seçtiğim grup Europe ve Berlin zaman dilimi şimdi ona göre komutumuzu yazalım.
# rm /etc/localtime && ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
Bu benim zaman dilimim, eğer Türkiye olsaydı komut şöyle olacaktı
# rm /etc/localtime && ln -s /usr/share/zoneinfo/Turkey /etc/localtime
Artık saatim yaşadığım saat dilimine uygun oldu.
linux kernel sources emerge yapılması (linux kernel kaynak kodları)
Gentoo da aslında bir çok kernel kaynak kodu var ama ilk başlayanlar şimdilik bu ikisi ile başlayabilirler.. gentoo-sources ve vanilla-sources . gentoo-sources isimli kaynak kodumuz kernel.org tarafından verilen kaynak kodune değişik yamalar yapılarak gentoo için daha uygun ve güvenli hale getirilmiştir.. vanilla-sources kaynak kodunda ise orijinaline bağlı kalınmıştır. Ve udev için /etc/conf.d/rc ayar dosyasına aşağıda yazıldığı gibi eklemeliyiz, böylece herşey saat gibi çalışacak.
################# /etc/conf.d/rc #####################
RC_NET_STRICT_CHECKING="no"
# Use this variable to control the /dev management behavior.
# auto - let the _script_s figure out what's best at boot
# devfs - use devfs (requires sys-fs/devfsd)
# udev - use udev (requires sys-fs/udev)
# static - let the user manage static nodes
RC_DEVICES="udev"
# Set to "yes" if you want to save /dev to a tarball on shutdown
# and restore it on startup. This is useful if you have a lot of
# custom device nodes that udev does not handle/know about.
# (ONLY used by UDEV enabled systems!)
RC_DEVICE_TARBALL="no"
############### end /etc/conf.d/rc ###################
#emerge gentoo-sources (internet ten kurulum yapanlar için)
Eğer şimdi /usr/src dizinine bakarsanız, linux adında bir dizinin oluştuğunu ve kernel sürümüne bağlandığını (_link_) görürsünüz:
Kernel kaynak koduna sembolik bağlantı oluşturulması
# ls -l /usr/src/linux
lrwxrwxrwx 1 root root 22 Dec 2 2006 /usr/src/linux -> linux-2.6.18-gentoo-r3
Eğer linux dizini başka bir dizine bağlı gözüküyorsa, kullandığınız kernel kaynağını ve sürüm numarasını tekrar kontrol edin veya kendiniz aşağıdaki komutu verip bağlayın:
Eğer istiyorsak Kernel kaynak koduna yapılan sembolik bağlantının değiştirilmesi (mecbur değil)
# rm /usr/src/linux && ln -s /usr/src/linux-2.6.18-gentoo-r2 /usr/src/linux
tekrar kontrol ettiğimizde kernel kaynak kodumuzun linux dizinine sembolik bağlantı ile doğru şekilde bağlandığını görürüz
# ls -l /usr/src/linux
lrwxrwxrwx 1 root root 22 Dec 2 2006 /usr/src/linux -> linux-2.6.18-gentoo-r2
Kernel ayarlarına gelince iki yöntemimiz var bir genkernel ile ayarlama ikincisi ise benim yaptığım gibi menuconfig komutu ile ayarlama.. (bunu yapabilmek için kernel derleme bilgisi gerekmektedir)
Genkernel ile kerneli ayarlama ve kurma..
Genkernel aslında bir _script_ tir. Görevi kernel derlemesi konusunda kendisinden emin olmayan arkadaşların işini kolaylaştırmaktır..
Kernel kaynak kodu sisteminize kurulu ve şimdi otomatik olarak bütün işlerinizi kolaylaştıracak genkernel komutunu uygulayabilirsiniz. genkernel ilk önce kernel seçimini yapar. Bunun için LiveCD de seçilen seçenekleri esas alır. Bunun anlamı; boot esnasında tanınan bütün donanım kernel seçiminde kullanılır. genkernel çalıştırıldıktan sonra elile bir ayar gerektirmediği için, Linux ve kernel dünyasına yabancı ama kendi özel kernelini derlemek isteyen Gentoo kullanıcıları için ideal bir çözümdür.
Sırası ile Genkernel nasıl kullanabilirsiniz kısaca aktaralım. İlk önce sistemimize genkernel kurmamız gerekli: Ve udev kullanacaksak eğer genkernel komutuna eklememiz gerekir.
#emerge genkernel
#genkernel --udev all
GenKernel v3.0.1_beta10
* ARCH: x86
* KERNEL VER: 2.6.11-gentoo.r6
* kernel: configuring source
* kernel: running mrproper
(Uzun bölümler kısaltılmıştır)
* Kernel compiled successfully!
* Required Kernel Params:
* : root=/dev/ram0 init=/linuxrc real_root=/dev/$ROOT
* where $ROOT is the devicenode for your root partition as
* you should have specified in /etc/fstab
*
* You MUST tell your bootloader to use the generated initrd
*
* Recommended Kernel Params:
* : vga=0x317 splash=verbose
*
* Do NOT report kernel bugs (configs included) as genkernel bugs.
* Make sure you have the latest genkernel before reporting bugs
*
* For more info see /usr/share/genkernel/README
genkernel biter bitmez, yeni bir kernel imagesi, tüm modullar ve bir initial root disk (initrd)oluşturulmuş olur. Eğer bir önyükleyici (bootloader) kullanmak istiyorsanız, oluşan yeni kernel imagesi ve initrd yi daha sonra burda kullanılabilirsiniz. Bunların isimlerini bir kenara not alın. initrd doğrudan boot bittikten sonra donanımın tanınması için kullanılır. Böylece sisteminizdeki donanım için gerekli olan sürücüler otomatikman yüklenir. Kernelimizi kontrol ederiz.. (dikkat! aşağıdaki çıktılar sadece örnektir, sizdekiler farklı olacaktır ve tüm kernel ve grub ayarlarınızı sizdeki çıkan sonuca göre ayarlayacaksınız)
Kernel image ve initrd dosyalarını kontrolu
ls /boot/kernel* /boot/initramfs*
/boot/initramfs-genkernel-x86_64-2.6.13-gentoo-r5
/boot/initramfs-genkernel-x86_64-2.6.14-gentoo
/boot/kernel-genkernel-x86_64-2.6.13-gentoo-r5
/boot/kernel-genkernel-x86_64-2.6.14-gentoo
Sırada sistemimizin LiveCD olmaktan kurtaracak hotplug emerge ediyoruz. Donanım initrd tarafından otomatik olarak tanınırken(yani sisteminizi başlatmak için gerekli olan modulları tanırken) hotplug ise otomatik olarak diğer donanımları tanır(örn: USB cihazlarınız gibi). hotplug pakedini kurup, etkin hale sokmak için aşağıdaki komutu vermeniz yeterlidir:
hotplug coldplug emerge edilmesi ve etkinleştirilmesi
# emerge hotplug
# rc-update add hotplug default
Değişik Kernel Modullarının Kurulması
Özel Modulların Kurulması
Eğer uyum sağlarsa emerge komutunu kullanarak bütün donanımınızın sürücülerini kurabilirsiniz. Aşağıda sık kullanılan bazı modullar ve ebuilds isimlerini bulabilirsiniz:
Ebuild ismi Açıklama Komutu
nvidia-kernel XFree86 için 3D NVIDIA Grafik sürücüleri emerge nvidia-kernel
nforce-net On-board ağ kartı ( NVIDIA NForce(2) Mainboards) emerge nforce-net
nforce-audio On-board Ses kartı ( NVIDIA NForce(2) Mainboards) emerge nforce-audio
e100 Intel e100 Fast Ethernet Adapter emerge e100
e1000 Intel e1000 Gigabit Ethernet Adapter emerge e1000
emu10k1 Creative Sound Blaster Live!/Audigy desteği emerge emu10k1
ati-drivers Hızlandırılmış ATI Radeon 8500+/FireGL Grafik sürücüsü emerge ati-drivers
ati-drivers-extra Grafiksel ATI araçları emerge ati-drivers-extra
xfree-drm Hızlandırılmış ATI Radeon 9200, Rage128, Matrox, Voodoo ve digerleri... Lütfen IUSE_VIDEO_CARDS değişkenlerini ( /usr/portage/x11-_base_/xfree-drm dosyanısının içinden) kontrol etmeyi unutmayın. VIDEO_CARDS="sizin_kartınız" emerge xfree-drm
Modulların Ayarlanması
Otomatik olarak yüklenmesini istediğiniz modulları /etc/modules.autoload.d/kernel-2.6 dosyasına (veya kernel 2.4 kullananlar için /etc/modules.autoload.d/kernel-2.4) koyabilirsiniz. Eğer kullandığınız modul ilave bir parametre gerektiyorsa veya siz ilave bir parametre eklemek istiyorsanız bu dosya içine koyabilirsiniz.
Mevcut Modulların listesini görmek için find komutunu kullanabilirsiniz. Aşağıdaki komutdaki "" bölümüne kendi kernel sürümünüzü yazıp kontrol edin:
Mevcut modulların listelenmesi
# find /lib/modules// -type f -iname '*.o' -or -iname '*.ko'
Mesela r8169 Modulunu otomatik olarak, başlangıçda yüklemek istiyorsanız, /etc/modules.autoload.d/kernel-2.6 dosyasının içine bunu yazmanız gerekir.:
/etc/modules.autoload.d/kernel-2.6 dosyasına ekleriz (benim eklediğim network kartın modulu)
r8169
Ve aktif hale getirmek için modules-update komutunu çalıştırın. Böylece /etc/modules.conf dosyasının içindeki değişiklikler etkinleşecektir:
modules-update komutunun uygulanması
# modules-update
Kernel genkernel kullanmadan Derlemesi
Genelde elile kernel ayarlamak linux kullanıcıları için zahmetli bir iştir ve dikkat ister. Ancak birkaç defa kendiniz kernel derlediğinizde, aslında bunun hiçde o kadar zor bir olay olmadığı göreceksiniz. Biraz tecrübe ve pratik ile sizde aynı görüşe sahip olacaksınız, inanın buna.

Yalnız gerçek olan birşey varsa: Elile kernel derlemeden önce, sisteminizdeki bütün donanımı ve bu donanımın bütün özelliklerini çok iyi bilmeniz gereklidir. Donanım ile ilgili önemli birçok bilgileri /proc/pci dosyasının içinden lspci komutu ile alabilirsiniz. LiveCD de kullanılan modulları lsmod komutu yardımı ile öğrenebilir veya bir yere not alabilirsiniz. Bu sayede kernel derlerken hangi modulları işaretleyeceğiniz konusunda size bir fikir verebilir
Şimdi kendiniz kernel derlemek için kernel kaynak kodlarının bulunduğu dizine gidin ve make menuconfig komutunu çalıştırın. Bu komut size ncurses temelli ayar menüsünün çalıştırılmasını sağlar:
Menuconfig kullanımı
# cd /usr/src/linux
# make menuconfig
Karşınıza çeşitli ayar bölümlerini gösteren bir menü çıkar. İşaretlenmesi gerekli olan önemli bazı seçenekleri kısaca aşağıda bulabilirsiniz. (Bu zorunlu secenekleri muhakkak yapmanız gerekli. Aksi taktirde Gentoo sağlam bir şekilde çalışmayabilir).
Gerekli Seçeneklerin Seçilmesi
doğru sistem sürücüsünün seçilmesi
Processor type and features --->
Subarchitecture Type (PC-compatible) --->
(Change according to your system)
(Athlon/Duron/K7) Processor family
İlk önce geliştirme ve deneysel kullanıma izin veren kod sürücülerinin blunduğu bölümü seçmeniz gerekli. Bu bölüm gereklidir, çünkü bazı önemli Kod/Sürücü (code/drivers) bölümlerinin menülerde bulamazsınız. Onun için bu bölümü muhakkak işaretleyin:
Selecting experimental code/drivers
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
Sonra File Systems Sonra File Systems bölümüne gidiyoruz ve dosya sistemlerinin desteğini sağlayan bölümü geçip, kullanmak istediğimiz veya bize gerekli olan dosya sistemlerini seçiyoruz.Burdaki modulları tercihen gömülü (Y) olarak seçin. Aksi taktirde yeni Gentoo sisteminiz sabit sürücünüzdeki (harddisk) bölümleri görmeyebilir( yani mount etmeyebilir). Seçimizine Virtual memory, /proc file system, /dev file system + Automatically mount at boot bölümlerinide ekleyin:
Kernel de Dosya sistemi seçimleri
File systems --->
Pseudo Filesystems --->
/proc file system support
/dev file system support (OBSOLETE)
Virtual memory file system support (former shm fs)
(Select one or more of the following options as needed by your system)
Reiserfs support
Ext3 journalling file system support
JFS filesystem support
Second extended fs support
XFS filesystem support
İnternete PPPoE (genelde ADSL de kullanılır) veya dial-up modem kullanarak çıkmayı planlıyorsanız aşağıdaki seçeneklere ihtiyacınız olacak:
PPPoE için sürücülerin seçilmesi
Device Drivers --->
Networking support --->
PPP (point-to-point protocol) support
PPP support for async serial ports
PPP support for sync tty ports
Aşağıdaki iki seçeneklerin de kullanılmasında fayda var. PPP over Ethernet seçeneği rp-pppoe tarafından kullanılır. (Eğer PPPoE kernel modulu kullanılırsa).
Ağ kartı kullanıyorsanız, gerekli modulları kernel içine dahil etmeyide unutmayın.
Eğer bir HyperThereading destekli Intel CPU sahibi iseniz veya multi-CPU sistem kullanıyorsanız, "Symmetric multi-processing support" desteğini etkin hale getirebilirsiniz:
SMP desteğini etkinleştirmek
Processor type and features --->
[*] Symmetric multi-processing support
Burada en önemli olan kernel ayarları şunlar olmalı..
Ana kartımızın chipseti doğru olarak seçilmeli ve (*) olarak işaretlenmeli
ÖZELLIKLE BURASı ÇOK ÖNEMLI
DEVICE DRIVERS --->
ATA/ATAPI/MFM/RLL support --->
ATA/ATAPI/MFM/RLL support
Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
--- Please see Documentation/ide.txt for help/info on IDE drives
[ ] Support for SATA (deprecated; conflicts with libata SATA driv
[ ] Use old disk-only driver on primary interface
Include IDE/ATA-2 DISK support
[ ] Use multi-mode by default
Include IDE/ATAPI CDROM support
Include IDE/ATAPI TAPE support (EXPERIMENTAL)
Include IDE/ATAPI FLOPPY support SCSI emulation support
[ ] IDE Taskfile Access
--- IDE chipset support/bugfixes
generic/default IDE chipset support
[ ] CMD640 chipset bugfix/support
[*] PCI IDE chipset support
[*] Sharing PCI IDE interrupts support
[ ] Boot off-board chipsets first support
Generic PCI IDE Chipset Support
OPTi 82C621 chipset enhanced support (EXPERIMENTAL)
[*] Generic PCI bus-master DMA support
[*] Force enable legacy 2.0.X HOSTS to use DMA
[*] Use PCI DMA by default when available
[ ] Enable DMA only for disks
AEC62XX chipset support
ALI M15x3 chipset support
[ ] ALI M15x3 WDC support (DANGEROUS)
AMD and nVidia IDE support
ATI IXP chipset IDE support
CMD64{3|6|8|9} chipset support
Compaq Triflex IDE support
CY82C693 chipset support
Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTA
Cyrix/National Semiconductor CS5530 MediaGX chipset suppo
HPT34X chipset support
[ ] HPT34X AUTODMA support (EXPERIMENTAL)
HPT36X/37X chipset support
National SCx200 chipset support
Intel PIIXn chipsets support
IT821X IDE support NS87415 chipset support
PROMISE PDC202{46|62|65|67} support
[*] Special UDMA Feature
PROMISE PDC202{68|69|70|71|75|76|77} support
[ ] Enable controller even if disabled by BIOS
ServerWorks OSB4/CSB5/CSB6 chipsets support
Silicon Image chipset support
SiS5513 chipset support
SLC90E66 chipset support
Tekram TRM290 chipset support
VIA82CXXX chipset support
Bendeki anakarta ait IDE chip set (IDE kontroller) kernelde gömülü (*) seçildiler.. En önemlisi bu, doğru yapılmazsa eğer boot anında kernel HD leri bulamaz ve kernel panic olur. Daha sonra önemli olan audio kartımıza ait moduller ve alsa modulleri bunlar modul olarak seçilebilir..
Kendinize özel diğer gerekli seçimi yaptıysanız artık Derleme ve Kurulum bölümü ile devam edebiliriz.
Derleme ve Kurulum
Artık Kernel derleme için gerekli seçimi yaptınız ve kerneli derleme için gerekli adımı atmaya geldi. Menüden çıkın..
Kernel derleme
(2.4 kernel için)
# make dep && make bzImage modules modules_install
(2.6 kernel için)
#make && make modules modules_install install
İnanamayacaksınız ama kernelimiz /boot dizininde vmlinuz-2.6.11-gentoo-r6 olarak gitti yerini aldı ve vmlinuz sembolik bağını (_link_) yaptı .. ve tabii config ve map dosyalarıda bağlarıyla tam olarak ayarlamış olarak orada.. İşte gentoo nun mucizelerinden biri diye buna derim ben..
İnanmazsanız bakın.
ls /boot
Ne olur ne olmaz diyerek, kernel ayar dosyamızıda /boot dizini altına kopyalıyoruz. Belki ilerde ihtiyacımız olabilir.
Kernel ayar dosyasının yedeklenmesi
# cp .config /boot/config-2.6.11-gentoo-r6
Kernel de ayrıca önemli olan maddeler
Burda dikkat edeceğimiz nokta sistemimizde bulunan hardware ye göre kernel ayarımızın yapılması olacak. Sound için modül seçimi, ide chipset için modül seçimini doğru yapmalıyız. mesela benim sistemimde iki adet ide chip set var sis5513 ve siimage bunlar bendeki sistemde kernele gömülü olarak seçildiler. lspci && lsmod komutları sanırım doğru hardwareleri bulmayı sağlayacaktır. Gentoo boot splash ayarları indirdiğiniz .config de çoktan ayarlandı, uğraşmanıza gerek yok..
1) Processor type and features - sistemimizdeki çalışan CPU yada prozessor
2) ATA/ATAPI/MFM/RLL support for storage controllers IDE chip vs.
3) Networking support - network kartımıza ait chip modul olarak ayarlanmalı
4) Character devices - agpgart and agp chipset type, dri driver ( if required)
5) Sound support ~>> Advanced Linux Sound Architecture ~~> Pci devices
Burada sistemimizdeki sound karta ait chip modulu seçilecek.
6) USB support - sistemimizde usb ile çalışacak ve çalışabilecek moduller ...
EHCI HCD (USB 2.0) support
OHCI HCD support
UHCI HCD (most Intel and VIA) support
bu modullere özellikle dikkat etmeliyiz sistemimizde kullanılan hardwareye kesinlikle uymalı.
grub kurulması ve boot sektor (MBR) e install edilmesi
# emerge grub
# grub
grub> root (hd0,0) (bu bizim hda1 sabitdisk için komut)
grub> setup (hd0)
grub> quit
cd /boot/grub
nano -w /boot/grub/grub.conf (aşağıda çalışan örnek bir grub.conf yazılmıştır.)
# ln -s /boot/grub/grub.conf /boot/grub/menu.lst
gentoo boot grub splash teması indirme ve kurma
# cd /boot/grub && wget
http://www.schultz-net.dk/downloads/grub/gentoo.xpm.gzve arkasından /boot/grub/grub.conf (menu.lst de olabilir neticede ikiside aynı işi yapıyor.) Ayarlarımızı yapalım.
grub.conf genkernel kullanmayanlar için
# Which listing to boot as default. 0 is the first, 1 the second etc.
default 0
# How many seconds to wait before the default listing is booted.
timeout 30
# Nice, fat splash-image to spice things up

# Comment out if you don't have a graphics card installed
splashimage=(hd0,0)/grub/splash.xpm.gz
_title_=Gentoo Linux 2.6.11-r6
# Partition where the kernel image (or operating system) is located
root (hd0,0)
kernel /vmlinuz root=/dev/hda4
# Eğer ısrarla bir windows sistem ekleyeceksek aşağıyı ekleyin
# Windows un /dev/hda6 bölümünde olduğunu varsayarsak.
_title_=Windows XP
rootnoverify (hd0,5)
makeactive
chainloader +1
grub.conf genkernel kullananlar için
default 0
timeout 30
splashimage=(hd0,0)/grub/splash.xpm.gz
_title_=Gentoo Linux 2.6.11-r6
root (hd0,0)
kernel /kernel-2.6.11-gentoo-r6 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda4
initrd /initrd-2.6.11-gentoo-r6
# windows dual-boot için
_title_=Windows XP
root (hd0,5)
makeactive
chainloader +1
Aşağıdaki bana ait grub.conf kerneli kendim derledim.. Bir fikir vermesi açısından ekledim..
############## /boot/grub/grub.conf ####################
# Sample boot menu configuration file
#
# Boot automatically after 30 secs.
timeout 30
# By default, boot the first entry.
default 0
# Fallback to the second entry.
fallback 1
splashimage=(hd0,0)/grub/gentoo.xpm.gz
# For booting GNU/Hurd
_title_ gentoo-2.6.11 by kolkola Technologies
root (hd0,0)
kernel (hd0,0)/vmlinuz ro root=/dev/hda4 video=vesafb:ywrap,pmipal,1024x768-32@85 splash=verbose,theme:emergence
initrd=(hd0,0)/fbsplash-emergence-1024x768
_title_ gentoo-2.6.11-old by kolkola Technologies
root (hd0,0)
kernel (hd0,0)/vmlinuz.old ro root=/dev/hda4 video=vesafb:ywrap,pmipal,1024x768-32@85 splash=verbose,theme:emergence
initrd=(hd0,0)/fbsplash-emergence-1024x768
# Change the colors.
_title_ Change the colors
color light-green/brown _b_link__-red/blue
##################### End grub.conf####################
Sistem ayarları
Hostname ve Domainname ayarları
# echo kolkola > /etc/hostname
# echo kolkola.net > /etc/dnsdomainname
# echo nis.kolkola.net > /etc/nisdomainname
# rc-update add domainname default
/etc/hosts Ayarları
################## /etc/hosts ####################
# /etc/hosts: This file describes a number of hostname-to-address
# mappings for the TCP/IP subsystem. It is mostly
# used at boot time, when no name servers are running.
# On small systems, this file can be used instead of a
# "named" name server. Just add the names, addresses
# and any aliases to this file...
# $Header: /home/cvsroot/gentoo-src/rc-_script_s/etc/hosts,v 1.7 2002/11/18 19:39:22 azarah Exp $
#
127.0.0.1 gateway.kolkola.org gateway localhost.localdomain localhost
192.168.1.1 kolkola.router
192.168.1.2 kolkola.org
192.1681.5 kolkola.org
192.168.1.4 kolkola2.
# IPV6 versions of localhost and co
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
################## end /etc/hosts ##################
Evet yukarıda internet bağlantısı için gerekli olan bazı ayarları yaptık.
Şimdi sistemimizdeki network kartımızın boot anında aktif hale geçmesi için gerekli hazırlıkları yapalım.
# echo 8139too >>/etc/modules.autoload.d/kernel-2.6
**8139too benim örnek network kartım sizinki farklı olabilir**
init _script_ hazırlanır.
# rc-update add net.eth0 default (bu komutla boot esnasında eth0 network bağlantısı çalıştırılıyor.)
/etc/conf.d/net dosyasının ayarları
# cp /etc/conf.d/net.example /etc/conf.d/net (komutuyla örnek bir net dosyamız kopyalanır /etc/conf.d dizini içerisine)
#nano -w /etc/conf.d/net editörle ayarlarız.
######### /etc/conf.d/net ###########################
# DHCP
# DHCP can be provided by dhcpcd (default), dhclient, udhcpc or pump
#
# dhcpcd: emerge net-misc/dhcpcd
# dhclient: emerge net-misc/dhcp and modules=( "dhclient" ) above
# udhcp: emerge net-misc/udhcp and modules=( "udhcp" ) above
# pump: emerge net-misc/pump and modules=( "pump" ) above
#
# Notes:
# - all clients except for dhclient send the current hostname to the DHCP
# server by default
# - pump does not support NIS
# Regardless of which DHCP client you prefer, you configure them the
# same way using one of following depending on which interface modules
# you're using.
ifconfig_eth0=( "dhcp" ) # for ifconfig
#ipaddr_eth0=( "dhcp" ) # for iproute2
# For passing custom options to dhcpcd use something like the following. This
# example reduces the timeout for retrieving an address from 60 seconds (the
# default) to 10 seconds.
dhcpcd_eth0="-t 10"
################ end /etc/conf.d/net ####################
Yukarıda net ayarlarımız dhcp yani otomatik olarak ayarlandı.
/etc/fstab ayarları burada sistemimizde çalışan sabit disklerin yada cd okuyucu ve yazıcıların ve proc un boot anında sorunsuz bağlanması için yapılacaktır.
# nano -w /etc/fstab
Hani başlarken harddiskimizi fdisk ile yapmıştık. O yaptığımız harddisk bölümlemesine göre fstap ayarlanacak. Olabilir yanlış ayarlayabilirsiniz ve sonuçta boot yaparken kernel panic ile sonuçlanırsa siz sakın paniklemeyin sakin olun ve fstab ayarlarının hatalı olduğunu ve düzeltmeniz gerektiğini düşünün, yeniden gentoo minimal cd ile boot yapın gentoo bölümlerini bağlayın ve fstab ayarlarını yeniden yapın. Ve bu ayarı yapmadan önce # fdisk -l komutuyla diskinize yeniden bir bakın
############# /etc/fstab #########################
# /etc/fstab: static file system information.
# $Header: /var/cvsroot/gentoo-src/rc-_script_s/etc/fstab,v 1.18 2004/10/16 05:42:25 vapier Exp $
#
# noatime turns off atimes for increased performance (atimes normally aren't
# needed; notail increases performance of ReiserFS (at the expense of storage
# efficiency). It's safe to drop the noatime options if you want and to
# switch between notail / tail freely.
#
# See the manpage fstab(5) for more information.
#
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
/dev/hda1 /boot reiserf noauto,noatime 1 2
/dev/hda4 / reiserfs noatime 0 1
/dev/hda3 /home reiserfs noatime 0 1
/dev/hda2 none swap sw 0 0
/dev/hdb3 /home/togan3 reiserfs noatime 0 1
/dev/hde3 /home/togan2 reiserfs noatime 0 1
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro,exec 0 0
/dev/cdroms/cdrom1 /mnt/dvd iso9660 noauto,ro,exec 0 0
#/dev/fd0 /mnt/floppy auto noauto 0 0
kolkola.org:/ /mnt/kolkola-root nfs rw,async,nosuid,hard,intr 0 0
# NOTE: The next line is critical for boot!
none /proc proc defaults 0 0
# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for
# POSIX shared memory (shm_open, shm_un_link_).
# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will
# use almost no memory if not populated with files)
none /dev/shm tmpfs nodev,nosuid,noexec 0 0
################# end /etc/fstab ####################
hdparm ayarları ve rc-update ile start anında yapılan ayarların korunması
kolkola # cat /etc/conf.d/hdparm
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-apps/hdparm/files/hdparm-conf.d.3,v 1.2 2004/09/06 02:17:08 swegener Exp $
# You can either set hdparm arguments for each drive using disc*_args and cdrom*_args..
# eg.
disc0_args="-d1c1u1m16"
disc1_args="-d1c1u1m16"
cdrom0_args="-d1c1u1"
cdrom1_args="-d1c1u1"
# Or, you can set hdparm options for ALL drives using all_args..
# eg.
# this mimics the behavior of the current _script_
#all_args="-d1"
/etc/conf.d/hdparm ayarları yukardaki gibi olmalı ve sonra init _script_ler arasındaki yerini almalı.
# rc-update add hdparm boot
komutu ile boot anında disklerin ve cd romların daha performanslı çalışmaya başlaması sağlanır
Kullanıcı ayarları
#passwd (bu komut ile root şifresi verilir.)
#useradd kullanıcı.ismi -m -k /etc/skel -g users -G audio,cron,wheel,portage,games -d /home/kullanıcı.ismi -s /bin/bash
#passwd kullanıcı.ismi (bu komut ile kullanıcı için şifre verilir.)
(kullanıcı.ismi yazan yerlere kullanıcı olarak bir isim yazın. hepsi ayrı ayrı değil tek bir isim olacak..)
Çıkış, unmount ve reboot
kolkola # exit && exit
kolkola # cd ~/
kolkola # umount /mnt/gentoo/proc
kolkola # umount /mnt/gentoo/boot
kolkola # umount /mnt/gentoo/home
kolkola # umount /mnt/gentoo/dev
kolkola # umount /mnt/gentoo
kolkola # swapoff /dev/hda2
kolkola # shutdown -r now (gözünüz aydın kurulum bitti.)
Ve makineyi çalıştırın . Ve isterseniz emerge gnome yada emerge kde komutuyla grafik arayüz kurmaya başlayın yada neyi tercih ediyorsanız.. gentoo herhangi bir grafik desktop programı emerge yapmaya başlarsa xorg serveri de otomatik olarak kuracaktır.....
hepsi bu kadar X server ile iıgili ayarları başka bir bölümde inceleyeceğiz
tekrar bol şans
Yazarın notu her zaman olabilen hatalar la eğer karşılaşırsanız lütfen bana bildirinki hatayı düzeltelim.. Tabii yapıcı önerilerede herzaman saygı duyarım..