(EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak...

32
Enformasyon Sistemlerinin Tasarimi ve Yönetimi Yuksek Lisans Programi (EST566B) iLERi LiNUX LiLO ve GRUB ile Coklu-Acilis Konfigurasyonlari March 2006 V1.0 Beyza BEZCi

Transcript of (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak...

Page 1: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Enformasyon Sistemlerinin Tasarimi ve Yönetimi

Yuksek Lisans Programi

(EST566B) iLERi LiNUX

LiLO ve GRUB ile Coklu-Acilis Konfigurasyonlari

March 2006

V1.0

Beyza BEZCi

Page 2: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

=== iCERiK ===

LiLO ve lilo.conf Dosyasi LiLO Konfigurasyon Ornekleri ve Genel Tanimlamalari GRUB Grub önyukleyici yöneticisinin sisteme yuklenmesi Grub önyukleme islemi icin kullanilan yöntemler Grub imageleri Grub Komutlari Splashimage Kullanimi ve Splashimage Yapimi Boot Menusune Ait Kisayollar ve islemler Örnek Konfigurasyon Dosyalari YAST ile konfigurasyon LiLO ve GRUB ile Fiziksel Guvenligin Saglanmasi Referanslar

Page 3: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

LiLO(Linux LOader ) 1- LiLO ve lilo.conf dosyasi LiLO, linuxda birden fazla kullanim alani olan boot loaderfdir. Linux da acilis kaydini LiLO adi verilen linux yukleyicisi olusturur. LiLO linux cekirdegini floppy diskten, hardiskten boot edebilir. Yani LiLO linux cekirdegini yukler ve cekirdegin baslatilmasini saglar. LiLO paketinin en önemli dosyasi /etc/lilo.conf ' tur. Bu yapilandirma dosyasi uzerinde tum ayarlar yapilir ve yapilan bu ayarlar lilo komutu yardimiyla diskin MBR (master boot record) bölumune yazilir. LiLOfyu degistirmek icin /etc/lilo.conf dosyasi uzerinde degisiklikler yapmalisiniz. Asagida bir LiLO yapilandirma örnegi gözukmektedir. Burada Linux bölumu /dev/hda2 de , MS-DOS bölumu ise /dev/hdb1de (ikinci sabit diskin ilk bölumu) bulunmaktadir. “ #” karakteri ile baslayan satirlar göz önune alinmayacaktir. Asagida bir örnegi görulen /etc/lilo.conf dosyasinda gerekli degisiklik veya duzeltmeleri yaptiktan sonra /sbin/lilo programini root yetkisiyle calistirin. Örnek –1.1-: # LiLO , /dev/hda uzerinde kurulacak. boot=/dev/hda map=/boot/map install=/boot/boot.b prompt # Buyuk diskler icin lba32 destegi vermek gerekebilir. # Özellikle ilk acilista sistem “Li” yazip kaliyorsa # lba32 # Acilis sirasinda 5 saniye bekle timeout=50 # Linux yuklemek icin # cekirdegin diskteki ismi vmlinuz-2.4.2 olsun image=/boot/vmlinuz-2.4.2 # Buna glinuxh adini ver. # Acilis aninda ekranda “linux” yazisi görunur. Label=linux # Kök dosya sistemi olarak /dev/hda2 root=/dev/hda2 # Windows/DOS acmak icin. Bu bölum /dev/hdb1 uzerinde görunuyor. other=/dev/hdb1 # Acilista msdos adini ver. label=msdos # ikinci surucu icin bölumlendirme tablosu table=/dev/hdb

Page 4: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

/etc/lilo.conf dosyasini ve lilo komutunu kullanarak Linux Yukleyicisi (Linux Loader-LiLO) yapilandirilabilir. /etc/lilo.conf dosyasi incelenirse, dosyanin her birinin LiLOfnun baslattigi her bir isletim sistemine ait olan ve stanza olarak isimlendirilen farkli kisimlar halinde duzenlendigi görulur. Eger Linux sistemi bilgisayari bir DOS sistemi ile paylasiyorsa, biri Linux digeri DOS icin iki adet stanza görulur. Her bir stanza, ilgili isletim sistemlerinin yerlestigi sabit disk bölumune isaret eder. Etiket icin de bir giris görulur. Bu etiket, isletim sistemini baslatmak icin LiLO komut satirinda girilen isimdir. Dilerseniz bir metin editörunu kullanarak /etc/lilo.conf dosyasinda dogrudan degisiklik yapilabilir.Bu degisikligin etkin hale gelmesi icin lilo komutu kullanilir. # lilo Linuxconffda bulunan LiLO panelleri kullanilarak LiLO yapilandirilabilir.Burada cesitli kisimlar eklenebilir.Linuxconf da yapilan degisiklikler etkinlestirildiginde, /etc/lilo.conf dosyasi guncellenir ve lilo komutu calistirilir. Bir komutu root yetkisiyle calistirmak icn sisteme root kullanici adiyla ve sifresiyle girmelisiniz. Bu komut LiLO ön yukleyicisini sabit diske kurar. LiLO boot islemlerini yönetir ve floppy diskten, harddiskten linux cekirdek göruntulerini boot edebilir. Linux sistemi icersinde LiLO cok önemlidir, bu nedenle bunu en iyi sekilde korumaliyiz. LiLOfnun en önemli konfigurasyon dosyasi lilo.conf dosyasidir. Bu dosya /etc dizininin altinda yer almaktadir: /etc/lilo.conf LiLO bu dosya ile beraberdir ki bu dosya ile biz konfigure edebiliriz 2.LiLO Konfigurasyon Ornekleri ve Genel Tanimlamalari cekirdegin mevcut surumunun bir kopyasini daima bulundurmalidir, böylece yeni surumler ile ilgili bir sorunla karsilasildiginda mevcut surumu tekrar kullanilabilme olanagi saglanir.Bu cekirdegin yedek bir kopyasini olusturarak saglanabilir. Eger LiLO kullaniliyorsa, lilo.conf dosyasinda eski cekirdege ait yeni bir giris olusturulmalidir. Yeni cekirdek icin lilo.conf dosyasinda bir giris olusturulunca, eski cekirdege ait girisin birakilmasi, yeni cekirdekle ilgili bir sorun cikmasi durumuna karsi tavsiye edilir.Bu durumda eski cekirdek daima secilebilir ve baslatilabilinir. lilo.conf dosyasina eski cekirdek dosyasininkine benzer, image satirina yeni cekirdege isaret eden yeni bir giris eklenir. lilo.conf girisi asagidaki gibidir.Yeni lilo.conf girisleri ile LiLOfyu guncellemek icin lilo komutunun calistirilmasi gerekir. image = /boot/vmlinux2.2-15.back label = oldlinux2.2-5 root = /dev/hda3 read-only Sisteminizi yuklenmis cekirdeklerinizden birini baslatmaniza izin verecek sekilde yapilandirabilirsiniz.Yeni cekirdek surumleri yukledikce, önceki cekirdeklerden birini kullanmaniza imkan veren daha fazla girisler eklenebilir.Örnegin,cekirdegin eski surumunu korurken ,hazirda bulunan kararli surumle birlikte cekirdegin gelistirilmekte olan bir surumude yuklenebilir.Her girise ait image satirinda cekirdegin ismi belirtilir.Yeni bir giris eklendiginde, LiLOfyu guncellemek icin lilo komutu her defasinda kullanilmalidir.Asagidaki örnekte, lilo.conf dosyasi Windowsfun yani sira iki Linux cekirdegine ait girisleri de icermektedir. Örnek - 2.1 - /etc/lilo.conf boot = /dev/hda install = /boot/boot.b message = /boot/message prompt timeout = 200 default = win image = /boot/vmlinuz-2.2.5-15 label = linux root = /dev/hda3 read-only image = /boot/vmlinuz-2.0-36 label = linux-2.0

Page 5: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

root = /dev/hda3 read-only other = /dev/hda1 label = win table = /dev/hda On altiya kadar ki degisik imageler boot zamaninda secilebilir. Bircok parametre, örnegin root aygiti gibi, her bir cekirdekten bagimsiz olarak hazirlanabilir. LiLO, master boot record tarafindan bile kullanilabilir. Master boot record, harddiskfin ilk sektörudur. (bölumudur). Bu bilgisayarinizdaki BiOSda yer almaktadir. BiOS, isletim sisteminin nasil yuklenecegine dair talimatlari icerir. BiOS, LiLO enun yuklenmesini ve baslatilmasini saglar. LiLO, lilo.conf dosyasi ile konfigure edebilirsiniz; Lilo.conf: Örnek –2.3- /etc/lilo.conf dosyasi ornegi : boot = /dev/hda delay = 40 compact vga = normal root = /dev/hda1 read-only image = /zimage-2.5.99 label = try image = /zimage-1.0.9 label = 1.0.9 image = /tamu/vmlinuz label = tamu root = /dev/hdb2 vga = ask other = /dev/hda3 label = dos table = /dev/hda

Bu ayar dosyasi, lilo'nun /dev/hda uzerindeki MBR'yi kullandigini belirtmektedir.

Acilis esnasinda, önyukleyici, sizin <shift> tusuna basmaniz icin 4 saniye (40 desisaniye) kadar bekleyecektir. sayet bunu yapmazsaniz, ilk cekirdek yuklenecektir. sayet <shift> tusuna basarsaniz, önyukleyici hangi cekirdegi yuklemek istediginizi soracaktir. sayet muhtemel secenekleri unutmussaniz, <TAB> tusuna basarak (US klavye icin “g” tusuna) bir menu acabilirsiniz. simdi yeni bir cekirdek ile eskisi arasinda veya baska bir kök dosya sistemindeki bir cekirdek (her zaman kullandiginiz kök dosya sistemine salakca bir seyler yapmis olabilirisiniz) arasinda secim yapma sansina sahipsiniz. Bu noktada baska bir isletim sistemini (tabii ki bilgisayarinizda yuklu olmak kosulu ile) acabilirsiniz. lilo.conf icinde tanimli 16 cekirdek biteslemi bulunabilir.

Asagida görebileceginiz gibi, bir ayar dosyasi, bir miktar genel secenek ile baslar (örnegimizdeki ilk alti satir gibi). Daha sonra cesitli biteslemler icin secenekler tanimlanir. Bir biteslem icin tanimli bir secenek varsa, genel tanimli secenek göz ardi edilir.

GENEL SEcENEKLER

Pek cok anahtar sözcuk mevcuttur. Asagidaki tanimlamalar tamamen user.tex dosyasindan alinmistir. (sadece biraz kisaltilmislardir).

backup=yedekleme_dosyasi Orjinal önyukleme sektörunu yedekleme_dosyasina kopyalar. Bu dosya /boot/boot.NNNN gibi normal bir dosya olabilecegi gibi /dev/null gibi bir aygit da olabilir.

Page 6: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Önyukleme sektörunun icinde bulundugu aygit (mesela bir sabit disk bölumu). sayet bu anahtar sözcuk atlanirsa, kök olarak baglanmis olan aygittaki önyukleme sektöru okunur (veya muhtemelen yazilir).

change-rules Önyukleme zamani degisikliklerini disk bölumu turu numaralarina (“hiding”) tanimlar. Ayrintili bilgi icin user.tex'in Disk bolumu turu degisiklik kurallarini bolumunu okuyunuz.

compact Okuma isteklerini tek bir okuma istegi haline getirebilmek icin bitisik sektörleri okuma isteklerini birlestirmeye calisir. Bu yukleme zamanini epeyce kisaltir ve biteslemi mumkun mertebe kucuk tutar. Bir disket surucuden acilis yapiliyorsa, bu secenegi kullanmaniz siddetle tavsiye edilir.

default=isim isim ile belirtilen biteslem dosyasini öntanimli önyukleme biteslemi olarak kabul eder. sayet bu secenek atlanmissa, ayar dosyasinda rastlanan ilk biteslem kullanilir.

delay=desisaniyeler Önyukleyicinin, biteslemi yuklemeden önce beklemesi istenen sureyi tanimlar. istenen surenin saniye cinsinden degerinin on kati yazilir. Bu secenek, klavye etkin hale geldikten hemen sonra dogrudan sabit diskten acilan sistemler icin uygundur. sayet delay secenegine sifir atanmissa veya bu secenek kullanilmamissa, onyukleyici acilis esnasinda beklemez.

disk=aygit-ismi Belirtilen disk icin standart disi parametreleri tanimlar. Ayrintili bilgi icin user.tex'in Disk geometrisi bölumune bakiniz. Genellikle bios= parametresi oldukca kullanislidir. BiOS, diskinizi 0x80, 0x81, 0x82 seklinde numaralandirir ve hangi bölumun Linux bölumu oldugu bilinemez. Alisilmamis bir yuklemeniz varsa, BiOS bölumu ile Linux bölumunu eslestirmeniz gerekebilir. Örnegin:

disk=/dev/sda bios=0x80 disk=/dev/hda bios=0x81

Burada, SCSi diskin ilk BiOS diski oldugu ve birinci iDE girisine takili master konumlu iDE diskin ikinci BiOS diski oldugu belirtilmistir.

disktab=disktab_dosyasi Disk parametreleri tablosunun adini verir. sayet bu secenek atlanmissa, ilk olarak /etc/disktab dosyasina bakilir. disktabflarin kullanimi oldukca cesaret kirici olabilir.

fix-table Bu secenek, lilofnun, disk bölumleme tablolarindaki 3D adresleri ayarlamasini saglar. Her disk bölumu girdisi bir 3D adrese (sektör/kafa/silindir) ve bölumun ilk ve son sektörlerinin adresinden olusan duz bir adrese sahiptir. Eger bir disk bölumu iz-hizali degilse ve eger ayni diski baska bir isletim sistemi ile birlikte kullaniyorsaniz, bu isletim sistemleri 3D adresleri degistirebilir. lilo, kendi önyukleme sektörunu sadece her iki adresin karsiligi olan yere yukleyebilir. sayet fix-table belirtilmis ise, lilo hatali 3D adreslerini tekrar ayarlayabilir.

UYARi

Diger isletim sistemlerinin, sonradan bu ayarlari sifirlamamasinin bir garantisi yoktur. Bu degisikligin beklenmedik etkileri olabilir. Dogru olan yöntem; diski iz-hizali bölumleme yapabilen bir uygulama ile bölumlemektir. Ayrica, bazi disklerde (mesela adres dönusum tablosu etkin olan bazi EiDE disklerde), bazi durumlarda, karmakarisik disk bölumleme tablosu girdilerine sahip olmak kacinilmaz olabilir.

force-backup=yedekleme_dosyasi

backup secenegi ile aynidir, fakat eski bir yedekleme dosyasi varsa uzerine yazmaya zorlar.

Page 7: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

ignore-table lilo fya bozuk bölum tablosunu gözardi etmesini söyler.

install=önyukleme_sektöru Belirtilen dosyayi, yeni önyukleme sektöru olarak yukler. Bu secenek atlanirsa, /boot/boot.b otanimli olarak kullanilir.

linear 3D adresleme yerine dogrusal adresler uretir. Dogrusal adresler calisma zamaninda kullanilir ve disk geometrisine dayanmaz. Unutmayin ki, acilis disketleri, bu secenek kullanildigi durumlarda tasinabilir olmayabilirler. cunku disk geometrisini belirleyen BiOS servisi disketler icin guvenilir calismayabilir. Buyuk diskler ile gdogrusalh adresleme kullanildigi durumlarda, /sbin/lilo, disk alanina ulasilamadigini soyleyebilir. Cunku 3D adresleme acilis zamanindan once bilinemez.

lba32 Sektör/kafa/silindir adreslemesi yerine 32 bitlik mantiksal blok adreslemesi (LBA) uretilir. sayet BiOS paket adreslemeyi destekliyorsa, diske erisebilmek icin paket cagrilari kullanilir. Böylece 8.4 GB den daha buyuk disklerde herhangi bir bölumden acilis yapabilirsiniz. 3D adreslemeden kaynaklanan sinir böylece asilmis olur. sayet BiOS paket adreslemeyi desteklemiyorsa, lba32 adresler tipki dogrusal adreslemede oldugu gibi 3Dfye cevrilir. Disketlerde, lba32 kullaniminda, adresler 3D olarak saklanir.

lock Daha sonraki acilislar icin, önyukleme komut satirinin özdevinimli kaydedilmesini etkinlestirir. Bu yolla, elle mudahale edilmedigi surece, lilo belli bir tercih uzerinde gkilitlih kalir.

map=map_dosyasi map dosyasinin yerini tanimlar. sayet bu secenek atlanmis ise, /boot/map dosyasi kullanilir.

message=ileti_dosyasi Önyukleme ekranindan önce gösterilmek uzere bir ileti iceren dosyanin adini belirtir. LiLO yazdiktan sonra <shift> tusuna basmak icin beklenirken herhangi bir ileti görunmez. iletideki FF karakteri (<Ctrl L>) yerel ekrani temizler. iletinin boyu 65535 bayt ile sinirlidir. ileti dosyasi degistirilirse veya tasinirsa map_dosyasi yeniden duzenlenmek zorundadir.

nowarn Muhtemel tehlikeler hakkindaki uyariyi kapatir.

optional istege bagli bir secenek belirtmek icin biteslem tanimlarinda kullanilir. Asagiya bakiniz.

password=parola Parola belirtmek icin biteslem tanimlarinda kullanilir. Asagiya bakiniz.

prompt Herhangi bir tusa basilmasini beklemeksizin, önyukleme ekranina girmeye zorlar. prompt belirtilmis ve timeout belirtilmemisse sistemin basibos bir bicimde yeniden acilmasi imkansizdir.

restricted Biteslem tanimlarinda kullanilir. Asagiya bakiniz.

serial=parametreler Seri port uzerinden kontrolu olanakli kilar. Tanimlanmis seri port uzerinden ilklendirilme yapilir ve önyukleyici buradan ve klavyeden girdi kabul eder. Seri hat uzerinden break gondermek konsoldan <shift> tuuna basmak ile ayni seydir. sayet seri baglantinin guvenliginden tam emin degilseniz, butun onyukleme biteslemleri parola korumali olmalidir. Parametreler dizgesi asagidaki soz dizimine sahiptir:

port[,hiz[eslikbiti[genislik]]]

Page 8: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet varsa, dört portun tamami da kullanilabilir.

hiz Seri portun saniyedeki bit sayisi cinsinden iletisim hizi. su hizlar desteklenmektedir: 110, 150, 300, 600, 1200, 2400, 4800 ve 9600 b/s. Öntanimli deger 2400 b/sfdir.

eslikbiti Seri hat uzerinde kullanilan eslik biti.Önyukleyici girdi olarak eslik bitini yoksayar ve 8. biti ayirir. Eslik bitini tanimlamakta su karakterler kullanilir (buyuk veya kucuk harf olabilir): eslik bitinin olmamasi n (none), tek eslik biti icin o (odd), cift eslik biti icin e (even).

genislik Bir karakteri olusturan bit sayisi. Sadece 7 ve 8 bit desteklenmektedir. Öntanimli degeri eslik bitinin olmdigi durumda 8, eslik bitinin tek veya cift olmasi durumunda ise 7fdir.

sayet serial tanimli ise, delay in degeri özdevinimli olarak 20'ye yukseltilir.

ÖRNEK: serial=0,2400n8 COM1fi öntanimli degerlerle ilklendirir. timeout=desisaniyeler

Klavye girdisi bekleme zamanasimi suresi tanimlar. istenen sure, saniye cinsinin on kati seklinde belirtilir. Belirtilen sure icinde bir tusa basilmazsa, ilk biteslem öntanimli olarak yuklenir. Ayni sekilde, kullanici uzun sure hareketsiz kalirsa, parola girdisi basarisiz sayilir. Öntanimli deger sonsuzdur.

verbose=seviye cogu islemin raporlama yapmasini etkinlestirir. Yuksek numaralar daha fazla ayrinti elde edilmesini saglar. sayet lilo komut satirinda –v belirtilmisse, buna uygun olarak seviye yukseltilir. En yuksek deger 5 olabilir.

Ayrica, cekirdek ayar parametreleri olan append, ramdisk, read-only, read-write, root ve vga genel secenekler icinde tanimlanabilir. cekirdek biteslemi yapilandirma bölumlerinde belirtilmemisse, bu degerler onlar icin öntanimli olarak kullanilirlar.

image BOLUMLERINDEKI SECENEKLER

image bölumleri ya Linux cekirdeginin bitesleminin bulundugu bir dosya ya da aygiti belirten bir

image=dosyayolu

satiri ile ya da herhangi bir sistem acilisini belirten

other=dosyayolu

satiri ile baslar.

Birinci durumda, image satirinda onyuleme icin bir aygit belirtilmisse,

range=baslangic-bitis

satiri ile önyuklemenin yapilacagi bölumu gösteren sektör araligi belirtilmelidir.

ikinci durumda (baska bir sistemin yuklenmesi), uc secenek sözkonusudur: loader=zincir-yukleyici

Kullanilmasi istenen zincir yukleyiciyi tanimlar. Öntanimli olarak /boot/chain.b kullanilir. onyulemenin ilk disk veya disket disinda bir yerden yapilmasi gerekiyorsa, zincir yukleyici mutlaka tanimlanmalidir.

Page 9: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Bölumleme tablosunu iceren aygit belirtilir. Bu secenek atlanmis ise, önyukleyici bölumleme bilgilerini yuklenen isletim sistemine bildirmeyecektir. (Bazi isletim sistemleri, nereden yuklendiklerini saptamak icin degisik yöntemler kullanirlar. Örnegin; MS-DOS genellikle disk veya bölumunun acilis sektörunde geometri bilgisini saklar.) Önemli: “table” secenegi ile gösterilen bir bölum tablosunda bir degisiklik söz konusu ise /sbin/lilo yeniden calistirilmalidir.

unsafe Eslem olusturulmasi sirasinda acilis sektörune erisilmez. Bu secenekle, bazi saglik kontrolleri (mesela bölumleme tablosu kontrolu) yapilmaz. sayet acilis sektöru sabit bicimli bir disket aygiti uzerinde ise, unsafe secenegi, eslem yukleyicinin calistirilmasi esnasinda, surucuye okunabilir bir disk koyma ihtiyacini ortadan kaldirir. unsafe ve table secenekleri birbirleriyle uyumsuzdur, her ikisi birden belirtilemez.

Her iki durum icin ortak olan secenekler sunlardir:

label=isim Önyukleyici, biteslemi tanimlamak icin her bir biteslemin ana dosya adini (yol tanimlamasi gerekmez) kullanir. Bu secenekle degisik isimler tanimlamak da mumkundur.

alias=isim Ayni girdi icin ikinci bir isim kullanma imkani verir.

lock (Yukariya bakiniz.)

optional sayet eslem olusturma sirasinda kullanilabilir durumda degilse, biteslemi atlar. Test cekirdekleri tanimlamak icin oldukca kullanisli bir secenektir.

password=parola Bitesleme parola korumasi saglar.

restricted Sadece, komut satirinda bir parametre belirtildiginde parola sorulmasini saglar (örnegin, komut satirindan tek kullanicili kipe gecilmek istendiginde).

cEKiRDEK SEcENEKLERi

sayet yuklenen cekirdek bir Linux cekirdegi ise, komut satirindan cekirdege parametre aktarmak mumkundur.

append=dizge Dizge icinde bosluklarla ayrilarak belirtilen secenekleri cekirdege ilave eder. Genellikle, tespit edilmesi tehlikeli olabilecek ve özellikleri özdevinimli olarak saptanamayan donanim parcalarinin parametrelerini tanimlamak icin kullanilir. Örnegin:

append="hdc=ide-scsi hdd=ide-scsi"

literal=dizge append fe benzer ama diger butun secenekleri iptal eder (mesela kök aygit ayarlari gibi). cok önemli secenekler farkina varilmaksizin kaldirilabilecegi icin, bu secenegi genel secenekler bölumunde kullanmamak daha mantikli olacaktir.

ramdisk=boyut istege bagli olan RAM diskin boyutunu tanimlar. Deger 0 ise, RAM disk olusturulmaz. Bu secenek atlanmis ise, RAM disk önyukleme biteslemi icindeki ayarlara göre olusturulur.

read-only Bu secenek kök dosya sisteminin salt okunur kipte baglanmasini saglar. Genel olarak, sistem

Page 10: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

acilis islemleri, daha sonra, kök dosya sistemini oku-yaz kipinde tekrar baglar (mesela fsck yapgldgktan sonra).

read-write Kök dosya sisteminin oku-yaz kipinde baglanmasini saglar.

root=kök_aygiti Kök bölumu olarak baglanacak aygiti belirtir. sayet özel bir isim belirtilmisse, kök aygiti, kök dosya sisteminin o an bagli oldugu aygita göre duzenlenir. sayet –r ile kök degistirilmisse, belirtilen aygit kullanilir. sayet bu secenek kullanilmamissa, cekirdek biteslemi icindeki kök ayarlari kullanilir. (Derleme sirasinda, cekirdek Makefilefinda ROOT_DEV degiskeni ile ayarlanabilir ve daha sonra rdev(8) ile degistirilebilir.)

vga=kip Önyukleme esnasindaki kullanilacak vga metin kipini tanimlar. su degerler gecerlidir (harf buyuklugune bakilmaz):

normal : normal 80x25 metin kipi.

extended (veya ext): 80x50 metin kipi. ask : dur ve kullanici girdisi icin bekle (önyukleme esnasinda). numara : bu sayiya karsilik gelen metin kipini kullan. Olasi kiplerin bir listesi vga=ask kullanarak ve önyukleme sirasinda [Enter] tusuna basarak elde edilebilir. sayet bu degisken kullanilmazsa, cekirdek bitesleminde bulunan VGA kip ayarlari kullanilir. (Derleme sirasinda, cekirdek Makefilefinda SVGA_MODE degiskeni ile ayarlanabilir ve daha sonra rdev(8) ile degistirilebilir.)

Örnek –2.4- /etc/lilo.conf # general section boot = /dev/hda # wait 20 seconds for user to select the entry to load timeout = 200 message = /boot/message prompt # default entry default = win vga = normal map = /boot/map install = /boot/boot.b image = /boot/vmlinuz-2.2.5-15 label = linux root = /dev/hda4 read-only other = /dev/hda1 label = win table = /dev/hda default girisi ile belirtmediginiz surece LiLOfnun baslattigi varsayilan isletim sistemi /etc/lilo.conf dosyasinda ilk listelenen isletim sistemidir.ilk olarak Linux stanza listelenirse, LiLO komut satirinda herhagi birsey girilmediginde LiLO enun ilk baslatacagi isletim sistemi Linux olacaktir.Eger Windowsfun sistemin varsayilan isletim sistemi olmasini istiyorsaniz, varsayilan ayari yeniden duzenlemek icin lilo komutunu –D parametresi ile birlikte kullanilir veya default girisine bir deger atamak icin lilo.conf dosyasi kullanilir.Windows stanzafyi Linux stanzafnin önune almak icin bir metin editöru kullanilabilir.Sistemi tekrar baslattiginizda , LiLO komut satirinda dos yazmak yerine windowsfun yuklenmesi icin enterfa basilmasi yeterlidir. # lilo –D dos

Page 11: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Komut satiri parametrelerini veya lilo.conf dosyasindaki parametreleri kullanarak bircok LiLO parametresini ayarlanilabilir. Bu parametreler asagidaki tabloda verilmektedir. Tablo 1

Komut Satiri Parametreleri lilo.conf Parametreleri Aciklama -b acilisaygiti boot= acilisaygiti Sistem acilis aygiti -c

compact

Acilis sistemini hizlandiran map yogunlastirma islemini etkinlestirir

-d dsan

delay=dsan

Sistemi baslattiginizda LiLO komut satirinda bir isletim sistemineait etiketin girilmesi icin beklenecek zaman asimi suresi

-D etiket

default=etiket

Baslatilacak varsayilan cekirdek olarak listenin basinda yer alan cekirdek yerine belirtilen etikete sahip cekirdegin kullanilmasini saglar

-i acilissektöru install = acilissektöru Yeni acilis sektöru olarak kullanilacak dosya

-f dosya disktab =dosya Disk geometrisi parametre dosyasi -l linear Buyuk diskler icin sektör adresleri uretir -m mapdosyasi map =mapdosyasi Varsayilan yerine belirtilen map

dosyasinin kullanilmasini saglar -P fix fix-table Bozulmus disk bölum tablolarini onarir -P ignore ignore-table Bozulmus disk bölum tablolarini

dikkate almaz -s dosya backup=dosya Acilis sektörune ait yedek

kayit dosyasi -S dosya force-backup=dosya Mevcut kayit dosyasinnin uzerine yazilmasina

izin verir -v verbose=duzey Aciklama duzeyi -u Kaydedilmis acilis sektörunu geri kopyalayarak

LiLOfyu kaldirir -V Surum numarasini yazdirir -t Sadece test. -i etiket

calistirilmakta olan cekirdege ait etiket ve yol ismini göruntuler.Etiket, BOOT_iMAGE kabuk degiskeninde tutulur.

timeout=dsan Sistemi baslattiginizda LiLO komut satirinda bir isletim sistemine ait etiketi girmeniz icin beklenecek zaman asimi suresi

image=Linux-cekirdegi Bir linux cekirdeginin acilis göruntusune ait yol ismi

read-only Linux cekirdegini salt okunur olarak baslatir

Page 12: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Örnek –2.5- # LiLO konfigurasyon dosyasi # Start LiLO global Section boot=/dev/hda # LiLO installation target backup=/boot/MBR.hda.970428 # Backup file for the old MBR #compact # faster, but wonft work on all systems. #linear # Generate linear sector addresses # instead of sector/head/cylinder addresses. message=/boot/greetings # LiLOfs Greeting prompt password = q99iwr4 # Example LiLO password timeout=100 # wait at prompt for 10 s before default # is booted vga = normal # normal text mode (80x25 characters) # End LiLO global section # Linux bootable partition config begins image = /vmlinuz # Setting root = /dev/hdb3 # Root partition for kernel read-only label = Linux # Linux bootable partition config ends # Second Linux bootable partition config image = /vmlinuz.old root = /dev/hdb3 read-only label = Linux.old # 2nd Linux bootable partition config ends # DOS bootable partition config begins other = /dev/hda1 label = DOS loader = /boot/chain.b table = /dev/had # DOS bootable partition config ends

Page 13: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Örnek –2.6- # LiLO Configuration file # Start LiLO global Section boot = /dev/sda4 # LiLO in Linux root partition backup = /boot/boot.sda4.970428 message = /boot/message # Greeting message prompt delay = 100 vga = normal # Linux bootable partition config begins image = /vmlinuz label = linux root = /dev/sda4 # Linux bootable partition config ends # # OS/2 bootable partition config begins other = /dev/sdb5 table = /dev/sdb label = os2 loader = /boot/os2_b.b # OS/2 bootable partition config ends # # DOS bootable partition config begins other = /dev/sda1 table = /dev/sda label = dos # DOS bootable partition config ends Örnek- 2.7 - lilo.conf on /mnt dosyasi yaratalim. # LiLO Configuration file bootdisk # Start LiLO global Section boot=/dev/fd0 # installation: Floppy install=/mnt/boot.b map=/mnt/map message=/mnt/message prompt timeout=100 # Wait at prompt: 10 s vga = normal # End LiLO global section # # Linux bootable partition config begins image = /mnt/First_Kernel # default

Page 14: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

root = /dev/Your_Root_Device label = linux # Linux bootable partition config ends # # System sections for more kernel here:

3- GRUB (GRand Unified Bootloader)

Giris :

Bilgisayar uzerinde herhangi bir isletim sisteminin calisabilmesi icin sistemin bir yukleyici tarafindan baslatilmasi gerektiginden bahsetmistik.Linux sistemlerde elilof dan baska egrubf da sistem yukleyecisi kullanilabilir.GNU projesi cercevesinde halen gelistirme asamasinda olan ve yeni avantajlar sunan grub yukleyicisi cogu linux versiyonlarinda varsayilan yukleyici olarak kullanilmaktadir.

Bilgisayar aci lip yukleyici calistirildiginda sistemde kullanilabilecek sistemler listelenir.Bu listeden acilmasi istenen isletim sistemi secilir ve yukleyicinin özelliklerine ve istege göre gerekli parametreler girilerek isletim sistemi baslatilabilir.

Grub Resmi Sitesi : http://www.gnu.org/software/grub/

FTP Adresi : ftp://alpha.gnu.org/pub/gnu/grub/

GRUB (GRand Unified Bootloader) cok guclu bir önyukleyici yöneticisidir. Sistemin yuklenmesinden ve kontrolun kernel'a devredilmesinden sorumludur.

En önemli özelligi esnek bir yapiya sahip olmasi ve her turlu isletim sistemini (Windows, Dos, Linux, Gnu Hurd, BSD (Berkley Software Distribution) , BeOs vb.) desteklemesidir.

Diger önemli özelliklerinden bazilari :

g Veriye direk erisim imkani : Bios tarafindan taninan tum suruculeri mount edip (disk, disket) direk olarak ulasabilir.

g Grub,Lilo dan farkli olarak dosya sistemlerini okuyabilir ve kernel imagelarini taniyabilir.

g Bircok dosya sistemini destekler : BSD FFS, DOS FAT16 ve FAT32, Minix fs, Linux ext2fs, ReiserFS, JFS, XFS vb.

g Her turlu isletim sistemini boot edebilme özelligi.

g LBA (Logical Block Address) destegi : LBA destegi olan makinelerde bu destegi kullarak yuksek kapasiteli disk alanlarinada erisim saglar. Geleneksel disklerde BiOSfun 1024 silindir uzerine erisememesinden dolayi bu disklerde ulasilabilir alan olarak en az 508mb ve en fazla 8gb olmaktadir.ancak LBA destegi olan makinalarda GRUB kullanimi ile bu sorun asilmistir.

g Ag uzerinden boot edebilme : Ag uzerinde boot edebilme özelligine sahip. TFTP(Trivial File Transfer Protocol) protokolunu kullanarak ag uzerindeki bir isletim sistemi image'ini yuklemesi mumkun.

g Menu ve komut satiri destegi sunar : ilk boot esnasinda karsimiza gelen boot menusunde istersek "c" tusuna basarak grub komut satirina dusebilir, islemlerimizi burdanda yapabiliriz.

g Konfigurasyon dosyasinda degisiklik yaptiktan sonra degisikliklerin aktif edilmesi icin herhangi bir komut calistirmaya gerek yok. (Mesela lilo.conf'da yapilan degisikliklerin aktif edilmesi icin "lilo" komutunun calistirilmasi zorunlulugu gibi)

Page 15: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Grub Terminolojisi:

Grub icerisinde kullanilan isimlendirme sistemi isletim sistemindekinden biraz farklidir.Device tanimlanirken ( )isaretleri kullanilir. Parantezler onemlidir! Linixta sabitdisk bolumlerinizin ornegin, /dev/hda1, GRUB altinda (hd0,0) olarak tanimlidir. Sabit diskler "a" yerine 0 dan saymaya baslar, sabit disk bolumleri de 1 yerine 0 dan baslayarak devam eder.

4 -Grub Önyukleyici Yöneticisinin Sisteme Yuklenmesi :

Kaynak koddan kurulum yapmak icin ftp://alpha.gnu.org/pub/gnu/grub/ adresinde yer alan en son grub surumu indirilir.

(Örn : ftp://alpha.gnu.org/pub/gnu/grub/grub-0.96.tar.gz ).

Daha sonra sirasi ile asagidaki islemler uygulanir.

# tar -zxvf dosya-ismi.tar.gz ( örn: tar -zxvf grub-0.96.tar.gz )

# cd dosya-ismi ( örn: cd grub-0.96)

# ./configure ("configure --help" komutu ile yardim alabilirsiniz. Kurulmasi sizin icin gerekli olmayan destekleri disable edebilirsiniz veya gereklileri enable edebilirsiniz.)

# make

Kurulum tamamlandiktan sonra "grub" komutu ile grub komut satirina gecerek veya "grub-install" ile grub'un HDD'in MBR'sine yazilmasini saglayacagiz.

Örnek -1 : /dev/hda5 deki grubun MBR'ye yazilmasini saglamak icin.Grub komut satirina gectikten sonra sirasi ile "root (hd0,4)" ve "setup (hd0)" komutlarini veriyoruz.

grub> root (hd0,4) Filesystem type is ext2fs, partition type 0x83

grub> setup (hd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 22 sectors are embedded. succeeded Running "install /boot/grub/stage1 (hd0) (hd0)1+22 p (hd0,4)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded Done.

veya ikinci bir yöntem olan "grub-install" komutu ile daha kolayca yukaridaki islemi yapabiliriz.

[root@ayhan root]# grub-install /dev/hda installation finished. No error reported. This is the contents of the device map /boot/grub/device.map. Check if this is correct or not. if any of the lines is incorrect, fix it and re-run the script `grub-install'.

# this device map was generated by anaconda (fd0) /dev/fd0 (hd0) /dev/hda

RPM tabanli dagitimlari kullananlar http://rpmfind.net/linux/rpm2html/search.phpgquery=grub adresinden kendi sistemleri icin uygun olan .rpm'i cekip sistemlerine

rpm -ivh <dosya_ismi> (Örn: rpm -ivh grub-0.92-7.i386.rpm)

Debian kullanicilari ise;

"apt-get install grub" komutu ile grub'u sistemlerine kurabilirler. Yine kurulumdan sonra "grub-install /dev/hda"

Page 16: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

seklindeki bir komut ile grubun MBR' ye yazilmasini saglamamiz gerekli. Debian tarafindan /boot/grub/ veya /boot/boot/ icerisinde bir menu.lst olusturulmasini saglamak icin debiana özgu olan "update-grub" komutunu kullanabilirsiniz.

Yukarida bahsedilen yöntemlerden herhangi biri ile kurulum tamamlandiktan sonra, bir editör ile /etc/grub.conf dosyasini asagidaki bilgiler isiginda olusturup yine asagidaki bilgiler isiginda aktif ederek kullanmaya basliyabilirler.

Grub Konfigurasyon Dosyalari:

Grub konfigurasyonu 3 temel dosyaya dayanir.

/boot/grub/menu.lst Bu dosya Grub ile boot edilebilecek isletim sistemlerinin veya partitionlarin tum bilgisini icerir. Bu dosya uzerinde istedigimiz konfigurasyonlari yapacagiz. Ornek bir /boot/grub/menu.lst dosyasi su sekilde olabilir:

color white/blue black/light-gray default=0 timeout=10 gfxmenu (hd0,1)/boot/message title SUSE 9.3 kernel (hd0,1)/boot/vmlinuz root=/dev/sda2 vga=0x332 initrd (hd0,1)/boot/initrd

title Floopy root (fd0) chainloader +1

/boot/grub/device.map Bu dosya GRUB device isimlerini Linix device isimlerine map eder. Ornek bir /boot/grub/device.map dosyasi soyle olabilir:

(fd0) /dev/fd0 (hd0) /dev/sda device.map dosyasinda manual olarak bir degisiklik yapildiysa, bunun gecerli olmasi icin asagidaki komut calistirilmalidir. grub --batch < /etc/grub.conf

/etc/grub.conf Bu dosya on yukleyicinin dogru bir sekilde yuklenmesi icin grub in ihtiyaci olan parametreleri ve secenekleri icerir. Ornek bir /etc/grub.conf dosyasi asagidaki sekilde olabilir:

setup --stage2=/boot/grub/stage2 (hd0) (hd0,1) quit

5- Grub Önyukleme islemi icin Kullanilan Yöntemler:

Grub önyukleme islemi icin iki farkli yöntem kullanilir.

1.Kernelin dogrudan yuklenmesi. (Linux, *BSD vb. isletim sistemleri icin) 2.Chain-Loading yöntemi ile önyukleme isleminin diger önyukleme yukleyicine verilmesi. (Windows, OS/2 vb. isletim sistemleri icin)

Yukarida bahsedilen önyukleme islemlerini detayli olarak izah edelim.

Page 17: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

5 .1-Kernelin dogrudan yuklenmesi (directly boot with grub) :

Genellikle coklu-önyukleme özelligine sahip isletim sistemleri (Linux, *BSD vb.) grub tarafindan bu yöntem ile boot edilirler. Bununla ilgili /etc/grub.conf icerisinde yer alabilecek örnek tanimlamalar asagidaki gibidir.

title Red Hat Linux root (hd0,4) kernel /boot/vmlinuz-2.4.18-14 ro root=/dev/hda5 initrd /boot/initrd-2.4.18-14.img

veya,

title Debian root (hd0,6) kernel /boot/vmlinuz-2.2.20-idepci ro root=/dev/hda7

Bu tanimlamalarda yer alan title, root, kernel ve initrd komutlarini ilerleyen kisimda detaylica izah edecegiz.

5.2-Chain-Loading yöntemi ile, direk destek verilmeyen isletim sistemlerinin yuklenmesi :

Bu yöntem ile Windows vb. isletim sistemlerinin boot edilmesi saglanir. Grub bu yöntemde belirtilen isletim sistemlerini mount etmez bunun yerine önyukleme islemini söz konusu isletim sisteminin önyukleme yöneticisine devreder.

Yine bu yöntem ile menu.lst de yer alabilecek örnek asagidaki gibidir:

title WinXP rootnoverify (hd0,0) chainloader +1 Bu yöntemde yer alan rootnoverify ve chainloader komutlarina iliskin detayli bilgilere az sonra deginecegiz.

6 -Grub image'leri :

Grub birtakim image'ler icerir.Temel olarak iki tane image dosyasi vardir ki bunlarin birisi "stage1" digeri ise "stage2" dir. Opsiyonel olarak kullanilan diger image'ler ise;

"stage1.5" , "nbgrub" ile pxegrub" dur.

stage 1 :

MBR 'ye veya diskin boot sektörune yerlestirilen boot image'dir. Boyutu 512 byte'dir.

Stage 1, stage 2 yi veya stage 1.5 'i yukler.

stage 1.5 :

Stage 1 ile stage 2 arasindaki gecisi saglar. Asagidaki image dosyalari stage 1.5 dosyalaridir.

e2fs_stage1_5, fat_stage1_5, ffs_stage1_5, jfs_stage1_5, minix_stage1_5, reiserfs_stage1_5, vstafs_stage1_5, xfs_stage1_5

stage 2 :

Geri kalan islemlerin devredildigi stage'dir.

nbgrub ve pxegrub :

Network uzerinden boot edilebilmeyi saglayan boot imageleridir.

7 -Grub Komutlari :

Page 18: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Boot menusunde "c" tusuna basip komut satirina gectigimizde yada isletim sistemi icerisinde "grub" yazip entere bastigimizda karsimiza gelen grub komut satirinda "help" yazarak grub icerisinde yer alan komutlarin listesini görebiliriz.

[root@beyza root]# grub Probing devices to guess BiOS drives. This may take a long time.

GRUB version 0.92 (640K lower / 3072K upper memory)

[ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ]

grub> help blocklist FiLE boot cat FiLE chainloader [--force] FiLE color NORMAL [HiGHLiGHT] configfile FiLE device DRiVE DEViCE displayapm displaymem find FiLENAME geometry DRiVE [CYLiNDER HEAD SECTOR [ halt [--no-apm] help [--all] [PATTERN ...] hide PARTiTiON initrd FiLE [ARG ...] kernel [--no-mem-option] [--type=TYPE] makeactive map TO_DRiVE FROM_DRiVE md5crypt module FiLE [ARG ...] modulenounzip FiLE [ARG ...] pager [FLAG] partnew PART TYPE START LEN parttype PART TYPE quit reboot root [DEViCE [HDBiAS]] rootnoverify [DEViCE [HDBiAS]] serial [--unit=UNiT] [--port=PORT] [-- setkey [TO_KEY FROM_KEY] setup [--prefix=DiR] [--stage2=STAGE2_ terminal [--dumb] [--timeout=SECS] [--testvbe MODE unhide PARTiTiON uppermem KBYTES vbeprobe [MODE]

Yukarida listesi görunen komutlardan en cok ihtiyac duyulanlari izah etmeye calisalim.

cat :

Kullanimi : cat <dosya_ismi> (örn : cat (hd0,1)/etc/fstab)

istenilen dosya icerigini göruntuler.

grub> cat (hd0,1)/etc/fstab LABEL=/ / ext3 defaults 1 1 none /dev/pts devpts gid=5,mode=620 0 0 none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0 /dev/hda8 swap swap defaults 0 0 /dev/hda6 swap swap defaults 0 0

chainloader :

Kullanimi : chainloader -force <dosya_ismi> rootnoverify ile belirtilen disk bölumunde boot image'inin hangi sektörde bulundugunu isaret eder. "chainloader +1" kullanimi rootnoverify ile belirtilen bölumun ilk sektörunden boot etmesini belirtir. Aksi bir durum söz konusu ise "chainloader -force <dosya_ismi> ile yer belirtilebilir.

color :

Kullanimi : color <normal> <highlight> (örn : color light-gray/blue black/light-gray)

Menu rengini degistirmek icin kullanilir. ilk kisimda belirtilen parametre menunun normal halinin rengini ifade eder. ikinci kisimda belirtilen parametre ise kursorun belirtilen title'in uzerine geldiginde olusacak rengi ifade eder. Yine her iki kisimdaki parametrelerde kullanim sekli önplan-rengi/geriplan-rengi (FG/BG) seklindedir.

Yani "color light-gray/blue black/light-gray" ifadesi ile menunun rengi önplan, light-gray arkada plan, blue olacak sekilde belirtilmis. Kursorun title'lar uzerindeki durumunda ise önplan rengi, black geriplan rengi ise light-gray olarak secilmis.

Page 19: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Kullanilabilecek renkler :

black, blue, green, cyan, red, magenta, brown, light-gray, dark-gray, light-blue, light-green, light-cyan, light-red, light-magenta, yellow, white.

Bu renklerden sadece ilk sekiz tanesi geriplan (background) rengi olarak kullanilabilir.

configfile : Kullanimi : configfile <dosya_ismi>

Belirtilen yerdeki dosyayi konfigurasyon dosyasi olarak yukler. Örnek : grub> configfile (hd0,1)/boot/grub/menu.lst

menu.lst icerisinde duzenlenen yapinin boot ekraninda gelecek olan halidir. default : Kullanimi : default <numara> (örn: default 1)

grub.conf icerisinde yer alan OS bilgilerinden kacinci siradakinin default olarak acilacagini belirtir. default 0 title SUSE 9.3 root (hd0,1) kernel /boot/vmlinuz root=/dev/sda2 initrd /boot/initrd

title Floopy Disk root (fd0) title WinXP rootnoverify (hd0,0) chainloader +1 sekilde girilen bir yapida "default 1" degeri ile boot islemi sirasinda herhangi bir mudahale olmazsa default olarak "SUSE 9.3" ile ilgili kismi isleme sok anlamindadir. Yani

default 0 -> 1. kisim (SUSE 9.3) default 1 -> 2. kisim (Floopy Disk) default 2 -> 3. kisim (WinXP) gibi.

fallback : Kullanimi : fallback <numara> (örn : fallback 0)

Default olarak belirtilen kayidin boot islemi sirasinda herhangi bir hata olursa fallback ile belirtilen kayit devreye sokulur. default 0 fallback 1 seklinde bir yapi belirlemis oldugumuzu varsayarsak yukarida yer alan menu.lst icerigimize göre ilk önce "SUSE" boot edilmek istenecek. sayet boot isleminde bir hata olusursa "timeout" ile belirtilen zaman kadar bekleyip otomatik olarak "Floopy Disk" kismini isletecek.

find : Kullanimi : find <dosya_ismi> (örn : find /etc/fstab)

Belirtilen dosyayi tum harddisk alanlarinda arar.

Page 20: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

grub> find /etc/fstab (hd0,1) /etc/ altindaki fstab dosyasini yer aldigi harddisk bölumlerini listeler ( (hd0,1) ).

hide : Kullanimi : hide <hdd bölumu> ( Örn : hide (hd0,1) )

Belirtilen disk bölumunu gizlemeye yarar. Harddiskinizin birinci bölumunde DOS ayni hardiskin ikinci bölumunde Windows kurulu oldugunu farzedelim. Siz sadece Dos kisminda boot edilmesini saglamak istiyorsaniz. grub> unhide (hd0,0) grub> hide (hd0,1) grub> rootnoverify (hd0,0) grub> chainloader +1 grub> makeactive grub> boot

seklinde birinci harddiskdeki birinci bölumu öne cikarip ikinci bölumu gizleyebilirsiniz. initrd : Kullanimi : initrd <dosya ismi> (Örn : initrd /boot/initrd-2.4.18-14.img)

Ram disk image'i kullananlar icin image'in yuklenmesini saglar.

kernel : Kullanimi : kernel [`--type=tip'] [`--no-mem-option'] dosya ...

Sisteme yuklenecek boot image'inin yerini belirtir. kernel /boot/vmlinuz-2.2.20-idepci ro root=/dev/hda7 (/dev/hda7 de /boot dizininde yer alan "vmlinuz-2.2.20-idepci" isimli image'i yuklemesini saglar.)

makeactive : Disk bölumunnun aktif edilmesini saglar. Windows vb. isletim sistemleri buna ihtiyac duyar.

# For booting Windows NT or Windows95 title Windows NT / Windows 95 boot menu root (hd0,0) makeactive chainloader +1

map : Kullanimi : map <map edilecek surucu ismi> <map edilen surucu> (Örn : map (hd0) (hd1))

sayet dos veya windows'u birinci diskinize harddiskinize yuklememisseniz vede diger diskten boot edemiyorsaniz. "map" komutu ile dos veya windows'un oldugu diski birinci disk ile yer degistirebilirsiniz. Yani o diski birinci disk gibi gösterebilirsiniz. Asagida birinci disk ile ikinci diskin nasil yer degistirilebilecegine dair bir örnek. grub> map (hd0) (hd1) grub> map (hd1) (hd0)

md5crypt :

Page 21: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Kullanimi : md5crypt

password komutu ile birlikte kullanilmak uzere encrypt edilmis sifre uretir. Örnek verecek olursak: grub> md5crypt

Password: ***** Encrypted: $1$M.P8g/$CwPjmlPRCZLo7wL5rMJyD1

password : Kullanimi : password [`--md5'] <sifre> (örn : password --md5 $1$M.P8g/$CwPjmlPRCZLo7wL5rMJyD1)

menu.lst icerisinde istenilen isletim sisteminin boot edilmesi isleminde sifre sorulmasini veya "single mod" ile sistem acilmak istenildiginde sifre sorulmasi islemi icin kullanilir. ister md5crypt fonksiyonu ile urettigimiz md5 yapisindaki sifreyi kullanabiliriz, istersek duz metin olarakda ("password sifrem" seklinde) sifremizi belirtebiliriz.

root : Kullanimi : root (<surucu>,<bölum_ismi>,<dilim_ismi>) Belirtilen surucu uzerindeki disk bölumunde bulunan kismi mount eder.

Örnekler : Linux'e ait kullanim örnekleri : root (hd0,1) : Birinci diskin 2. bölumunde (/dev/hda2 veya /dev/sda2) yer alan bölumdur. root (hd1,4) : ikinci diskin 5. bölumunde (/dev/hdb5 veya /dev/sdb5) yer alan bölumdur. grub> root (hd0,4) Filesystem type is ext2fs, partition type 0x83

*BSD ve vb isletim sistemelerine ait kullanim örnekleri :

root (hd0,1,a) : Birinci diskin 2. bölumunun "a" (/dev/ad1s2a) dilimini isaret eder. root (hd1,2,d) : ikinci diskin 3. bölumunun "d" (/dev/ad2s3d) dilimini isaret eder.

rootnoverify : Kullanimi : rootnoverify (<surucu>,<bölum_ismi>,<dilim_ismi>)

Gruba chain-loading metodu ile isletim sistemi eklenecegi zaman (windows, dos, winxp vb.) belirtilen kismin mount edilmeyecegini belirtir. Örnek : title WinXP rootnoverify (hd0,0) chainloader +1

setup : Kullanimi : setup [`--force-lba'] [`--stage2=os_stage2_dosyasi] [`--prefix=dir'] yuklenecek_surucu [image_surucu] Karmasik kullanimi olan "install" komutunu kullarak grub'un MBR' ye yuklenmesini saglar.

grub> setup (hd0) Checking if "/boot/grub/stage1" exists... yes Checking if "/boot/grub/stage2" exists... yes Checking if "/boot/grub/e2fs_stage1_5" exists... yes Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 22 sectors are embedded. succeeded

Page 22: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Running "install /boot/grub/stage1 (hd0) (hd0)1+22 p (hd0,4)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded Done.

timeout : Kullanimi : timeout <saniye> (örn : timeout 10) Default yada fallback komutlarinda belirtilen kismi isleme sokmadan önce olasi bir kullanici mudahalesine karsin belirtilen saniye kadar bekler. title : Kullanimi : title <isim> (örn : title GNU/Debian)

Boot isleminde belirtilen kisimlarin isimlendirilmesini saglar.

unhide : Kullanimi : unhide <disk bölumu> ( Örn : unhide (hd0,0) )

"hide" komutunun yaptigi isin tam tersi olarak disk bölumunu aktif eder. Ayni diskte birden fazla primary alan oldugu zaman istenilen birinin iptal edilip digerinin aktif edilmesi amaci ile kullanilir.

8 -Splashimage Kullanimi ve Splashimage Yapimi : Boot menusunde cok daha guzel, hos göruntuler elde edebilmek icin splashimage'lerinden faydalanabilirsiniz. Bu destegin verilmesi icin "vga-16" yamasina ihtiyac vardir. Redhat tarafindan hazirlanmis son rpm'ler bu yama ile birlikte cikmistir, yani bu destege sahiptirler. Kaynak koddan kurulum yapanlar icin yamalarin bulunabilecegi bir adres: http://people.redhat.com/~katzj/grub/patches/ Debian kullananlar (unstable) source.list'e asagidaki adresleri girdikten sonra "apt-get update" daha sonra "apt-get install grub" ile vga destegine sahip grub onyukleyici yoneticisini kurabilirler.

deb http://people.debian.org/~ingo/grub/unstable/ ./ deb-src http://people.debian.org/~ingo/grub/unstable/ ./

Splashimage'ler 640 x 480, 14 renk olarak yapilmis resim dosyalaridir. Sizde kendinize ögzun resim dosyalari yapmak icin

#convert -geometry 640x480 -colors 14 image.jpg image.xpm

#gzip image.xpm ile image.xpm.gz dosyasini elde edersiniz. daha sonra bunu /boot/grub/ altina yerlestirip, menu.lst icerisinde

splashimage (hd0,1)/boot/grub/image.xpm.gz veya splashimage /boot/grub/image.xpm.gz

seklindeki bir tanimlama ile kullanmaniz mumkun.

9 -Boot Menusune Ait Kisayollar ve islemler :

Page 23: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

ilk acilista karsimiza gelen boot menusune ait kisa yol tuslari ve onlara ait islemler su sekildedir. Once ESC ye bastiktan sonra;

"c" : Grub komut satirina gecmemizi saglar. "e" : Kursorun uzerinde bulundugu satira ait bilgilerin edit edilebilmesini saglar. "b" : Edit kisminda kursorun uzerinde bulundugu kismin boot etmesini saglar. "o" : Edit kisminda kursorun bulundugu satirin sonrasina yeni bos bir satir acar. "O" : Yine edit kisminda kursorun bulundugu satirin önune yeni bos bir satir acar. "d" : Kursorun uzerinde bulundugu satiri siler.

10 - Örnek Konfigurasyon Dosyalari : 1. default=1 timeout=10 splashimage=(hd0,4)/boot/grub/splash.xpm.gz

title Red Hat Linux (2.4.18-14) root (hd0,4) kernel /boot/vmlinuz-2.4.18-14 ro root=/dev/hda5 initrd /boot/initrd-2.4.18-14.img title Debian root (hd0,6) kernel /boot/vmlinuz-2.2.20-idepci ro root=/dev/hda7 title WinXP rootnoverify (hd0,0) chainloader +1

2.

timeout 5 color red/green black/light-gray default 0 password freeos ##gfxmenu /boot/grub/message ## bu satir acilistaki secim ekraninin arka planinin imajini isaret eder bu ornekte bu ozelliginin kullanilmasi istenmemis.

title SUSE 9.3 root (hd0,1) kernel /vmlinuz root=/dev/sda2 initrd /initrd

title BEYZA root (hd0,4)

title Floopy Disk root (fd0) title Failsafe – SUSE Linux 9.3 root (hd0,1) kernel /vmlinuz.2.3.5 root=/dev/hda2 initrd /initrd

Page 24: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

11-YAST ile konfigurasyon : YAST ile acilis dosyasi konfigurasyonu yapmak mumkun. Bunun icin YAST acildiginda System seceneginin altinda bulunan Boot Loader Configuration secilmelidir.

Page 25: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Bu ekranda tum konfigurasyonlari manuel olarak adim adim degistirebiliyoruz. Ayrica, Edit Configuration Files butonuna tiklayarak, konfigurasyon dosylarimiza ulasmamiz ve bu dosyalar uzerinde degisiklik yapmamizda mumkun.

Page 26: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

GRUB:

Page 27: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

LiLO:

Page 28: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

12-LiLO ve GRUB ile Fiziksel Guvenligin Saglanmasi

Giris

Lilo ve Grub kullanilan sistemlerde root parolasinin baskalari tarafindan degistirilmesini önlemek icin nasil önlemler alabilecegimiz kisaca anlatilacak. Linux'un Turkiyede artan bir sekilde populer hale gelmesi ile birlikte, bircok linux kullanicisinin aklina degisik sekilde guvenlik sorulari takilmakta. Bazilari internette buldugu belgeler sayesinde, bazilarida uzmanlar vasitasiyla kendi Linux sistemlerine ellerinden geldikce ve kendi imkanlari dahilinde guvenlik cözumleri uyguluyor. Fakat, cesitli yazilim/program kaynaklarindan meydana gelen guvenlik problemlerinin disinda, bircok insanin gözden kacirdigi bir guvenlik eksikligi daha var. Buda Fiziksel Guvenlik.

Fiziksel olarak guvenligin, yani "single modus" olarak bilinen (init 1 olarakda tanimlanabilir) *NiX sistemlerde tek kullanicili modusuna karsi alinabilecek önlemler hakkinda kisaca bilgi vermeye calisacagim.

Tek kullanicili modu kullanabilmek icin gerekli olan teksey, hicbir önlemi alinmamis ve detayli ayari yapilmamis olan "Boot Loader" (acilis yukleyiciler) kullanarak Linux kurulu bilgisiyara root olarak giris yapabilmektir. Tabiki bu olay, internetten gelebilecek bir saldiri olarak algilanmamalidir. Bu saldiriyi yapacak olan, bir isyerindeki kendi is arkadasimiz veya fiziksel olarak linux bilgisayar ile temasa gecebilen herkes olarak tanimlanabilir. Bilgisayarin karsisina gecen herhangi bir sahis, tek kullanicili moda gecerek, sizin haberiniz olmadan root sifresini degistirebilir veya sisteme herhangi bir kullanici ekleyebilir. Hatta bilgisayarinizda eger varsa bircok gizli bilgilere erisebilecegi gibi, bu bilgilere zararda verebilir.

Peki, tek kullanicili modus nasil baslarg

Basit. Mesela diyelim LiLO kullaniyorsunuz. Bilgisayari ilk actiginizda, karsiniza cikan Lilo secim menusunden CTRL + X tuslarina basarak, Lilonun TEXT ekranda baslamasini kolayca saglarsiniz. iste ordaki komut satirina "linux single" yazarak, bu modusda sistemin acilmasini saglarsiniz:

boot: linux single

Esasinda bu modus, root kullanicisi icin bir cesit ilk yardim modusu olarak dusunulmustur. Minimal olarak yuklenen bu modusda bircok servis calismaz ve bu modusa root olarak otomatikman giris yaparsiniz. Bu modusda tamamen root haklari ile calistiginiz icin, artik sistem tamamen sizin kontrolunuz altinda olacaktir. Bundan sonra root ile neler yapilabilecegini detayli olarak anlatmaya gerek yok sanirim.

Genelde, böyle fiziksel saldirilara maruz kalan sistemler halka acik olan sistemlerdir. internet cafeler, kucuk isletmelerdeki bilgisayarlar butur saldirilara encok maruz kalan bilgisayarlardir. Eger sisteminize giren belirli sayida kullanici varsa ve bunlar guvendiginiz insanlar ise sanirim böyle bir kaygi tasimaniza gerek yok. Tabi her turlu guvenlikten zarar gelmez fikrini savunuyorsaniz, evdeki kucuk kardesinize karsi bile önlem almaniz gerektiginide unutmayin.

simdi diyeceksinizki, neden BiOS'a sifre felan koyup engellemiyoruz veya böyle bir imkanimiz yokmu g Teori olarak evet.. Olabilir. Ancak BiOS uretici firmalari, atanan sifrelerin unutulmasi karsisinda, MASTER PASSWORD adini verdikleri parolalar koymuslar. Bu Master Passwort'lari degistirmeniz imkansiz. internette bircok adresden bu Passwortlarin ne oldugunu ögrenebilirsiniz. Yani BiOS sifrelenmeside kesin ve kalici bir cözum olmuyor demekki. Kötu niyetli birisi bu parolalari internetten ögrenip gene size zarar verebilir.

BiOS uzerinden yapilacak en akillica ayar, "Bootsequence" bölumu olarak sadece "C" tanimlamasi, yani devamli olarak Harddisk uzerinden boot etmesini saglamak. Bu sayede bir nebzede olsa saldirganin isini engellemis olursunuz. cunku bir A:\ surucusu veya CDROM takip boot etmesini bu durumda biraz zorlasacaktir ama imkansiz degildir.

Ayarlar

suan linux sistemlerde kullanilan iki populer acilis yöneticisi bulunmakta. simdi kisaca bu iki acilis yöneticisinde hangi islemleri yaparak, sisteminize girenlerden nasil parola talep edebileceginizi anlatacagim. Bu sayede, sadece bu sifreyi bilen kisilerin sisteminizi boot etmesini saglayabilirsiniz.

GRUB Ayarlari

Page 29: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

Bundan sonraki butun ayarlari root olarak yapacagimiz icin, nasil root olacaksiniz veya root iken yapilan bir hatadan geriye dönus olmadigini hatirlatmama gerek yok sanirim.

ilk önce grub icin kendimize bir parola olusturalim. Bunu md5crypt komutuyla yaptigimizi hatirlayalim.Bizden kullanmak istedigimiz parolayi isteyecek, mesela beyza12 olarak giris yaptigimizi farzedelim. Daha sonra bunun md5 olarak sifrelenmis halde ekranda bir ciktisini alirsiniz. iste bize lazim olacak olan bu garip garip görunen sekiller ve bunu ASLA YANLis YAZMiYORSUNUZ. Yoksa sisteme girmeyi birdaha unutabilirsiniz.:

# /sbin/grub-md5-crypt Password: $1$Zo25d/$i1HusFuQ7F6ZC2klLTybJ/

Sonra root haklari ile grub ayar dosyasi olan /boot/grub/menu.lst dosyasini herhangi bir editor ile aciyoruz. Ve timeout yazan satiri bulup hemen altina asagisina password --md5 SiFRE satirlarini ekliyoruz:

splashimage=(hd0,4)/boot/grub/splash.xpm.gz default=0 timeout=10 ####### password --md5 $1$Zo25d/$i1HusFuQ7F6ZC2klLTybJ/ ####### title SUSE 9.3 root (hd0,1) kernel /boot/vmlinuz root=/dev/sda2 initrd /boot/initrd

Daha sonra dosyamizi hafizaya alip cikiyoruz. Artik bilgisayarinizi yeniden baslattiginizda, eger single modus ile calismak isterseniz, GRUB ilk önce sizden "p" tusuna basip, sonra dogru sifreyi (md5 ise sifrelenmis olani, yani beyza12 parolasini) girmeden size editor ve komut satirinin kullanim hakkini vermeyecektir. Yani zarar vermek isteyen birisinini SiNGLE modusa gecmesi icin bu parolayi bilmesi gereklidir. Aksi taktirde SiNGLE modus calismaz ve normal boot islemleri yapilir. Yani PC normal bir sekilde boot eder, ki burdada gene ya user yada root parolasini vermek zorundasiniz. Root parolasi bilinmiyorsa zaten sisteme root olarak giremezsiniz, o halde korkulacak bir durum yoktur..

Yalniz burda gene bir guvenlik acigi söz konusu olabilir. Yani

cat /boot/grub/grub.conf

komutu ile felan yaramaz insanlarin aklina ayar dosyasindaki MD5 ile sifrelenmis olan dosyayi alip, desifre etme fikri gelebilir. Ve dogrudurda. cok basit bir islem ile md5 ile sifrelenmis sifreyi normal text olarak görme imkanlari vardir. Bu yuzden bu dosyanin erisim haklarini sadece ROOT kullanicisina devretmekte cok buyuk önem vardir. Bunu gerceklestirmek icin ise asagidaki basit komutu vermek ve root harici kullanicilara butun erisim haklari kapatmak sanirim en mantikli yol olacaktir:

# chmod 600 /boot/grub/grub.conf

Peki simdi hemen aklimiza söyle bir soru gelebilir: - iyi guzel. Linux dan SiNGLE modus acilmasini kapattim. Bana zarar vermek isteyen bu kisi peki diger OS lerimi acmaya kalkarsa ve onlara zarar vermek isterse ne olacak g

Eger gerekirse diger OS lerimizin korumasinida bu yöntem ile yapabiliriz. Mesela sistemimizde birde Windows oldugunu farz edelim. Yapmamiz gereken "title" satirindan sonra "lock" satirini eklemek yeterli olacaktir. Bu sayede boot edilmek istenen OS icinde bir parola verilmesi gerekmektedir:

title Win2K ####### lock ####### rootnoverify (hd0,1) chainloader +1

Peki ben Windows icin ayri bir passwort vermek istiyorsam g diye soran olursa oda sorun degil. Tek yapmaniz gereken MD5 ile urettiginiz bu yeni sifreyi "lock" satirindan sonra aynen yukarda Linux icin yaptigimiz sekilde eklemek:

title Win2K ####### lock password --md5 $1$pbK5d/$2DC/UUKF4nyuwU6WWsHsT0

Page 30: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

####### rootnoverify (hd0,1) chainloader +1

Örnek Bir grub Konfigurasyon dosyasi

default=0 timeout=10 splashimage=(hd0,4)/boot/grub/splash.xpm.gz #Burda sifrem "beyza12" password --md5 $1Ejo25d/$i1HusFuQ7FC2klLTybJ/ title SUSE 9.3 root (hd0,1) kernel /boot/vmlinuz root=/dev/sda2 initrd /boot/initrd title Win2K ####### lock #Burda sifrem "beyza" password --md5 $1$EpbK5d$2DC/UUKF4nyuwU6WWsHT1 ####### rootnoverify (hd0,1) chainloader +1

Lilo Ayarlari

Lilo, Grub'dan daha basit bir yapiya sahip olan acilis yöneticisidir. cekirdek yuklenmeden komut satirina gecis izni vermez. Fakat bu, bize zarar verecek olan kisinin bize zarar veremeyecegi veya SiNGLE modusa gecisini engeller anlami tasimaz.

Single modus'a gecisi önlemek icin yapmamiz gereken, lilo.conf dosyasindaki birinci "image xxxxxxxxx" satirindan önce "pasword=sifrem" ve "restricted" satirlarini eklemek yeterli olacaktir. Bunlarin anlami kisaca hatirlayalim:

password=sifrem

Bu satir boot esnasinda herhalukarda sifre sorulmasini saglar. Dogru sifre girilmeden boot edemezsiniz.

restricted

Ek olarak bir Boot parametresi verildigi anda (örn: init=/bin/bash ) parola sorulmasini saglar.

Root olarak /etc/lilo.conf dosyasini herhangi bir editor ile aciyoruz ve asagidaki gibi duzenliyoruz:

prompt timeout=50 default=linux boot=/dev/hda map=/boot/map install=/boot/boot.b message=/boot/message lba32 ################ password=beyza12 restricted ################ image=/boot/vmlinuz2.6 label=linux initrd=/boot/initrd-2.6 read-only

Page 31: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

root=/dev/hda5

Göruldugu gibi, yukardaki gibi basit bir islem ile, bilgiyasarimizin single modusuna sizip root parolasini degistirmek isteyenlere karsi, ufakda olsa bir önlem almis olduk. Kullandigimiz sifre (beyza12) göruldugu gibi yazdik. Text olarak verebilirsiniz. Aslinda Grub'da da yok ama biz öyle kolay olmasin diye, hirsiza davet cikarmamak icin vede isini biraz zorlastirmak icin MD5 ile sifreli olma yolunu anlattik.

lilo.conf dosyasina verilen bu sifrelin digerleri tarafindan görulmemesi icin butun erisim haklarini, aynen Grub'da oldugu gibi root kullanicisina devredelim:

# chmod 600 /etc/lilo.conf

Bu sayede root kullanicisindan baska kimse bu dosya ile oynama yapamaz.

Eger, sifre ile birlikte ayri bir bölumun boot edilmesini engellemek ve boot edilmeden önce parola sorulmasini istiyorsaniz, yapmaniz gerekenler gene cok basit. O bölumun bulundugu yere "password=sifrem" satirini eklemek yeterli olacaktir:

image=/boot/vmlinuz-2.6 password=beyza label=linux initrd=/boot/initrd-2.6.img read-only root=/dev/hda5

Örnek Bir lilo.conf dosyasi

prompt timeout=50 default=linux boot=/dev/hda map=/boot/map install=/boot/boot.b message=/boot/message lba32 ################ password=beyza12 restricted ################ image=/boot/vmlinuz-2.6 label=linux initrd=/boot/initrd-2.6.img read-only root=/dev/hda5 # #SuSE acilirken password istiyorum image=/boot/vmlinuz-2.6 password=beyza label=SuSE read-only root=/dev/hda7

Birkac ipucu

ister Lilo kullanin isterse Grub, sonucda bunlar bir defalik ayarlama yapilacak olan islemlerdir. Bir defa ayarlama yaptiktan sonra bu dosyalari kilitlemek ve kapali kapilar ardinda tutmakta bence cok buyuk fayda var. Bunun icin ise en basit komut, chattr komutudur. Detaylar icin man chattr komutunu verip inceleyin.

chattr +i /etc/lilo.conf

veya

chattr +i /boot/grub/grub.conf

chattr +i

Page 32: (EST566B) iLERi LiNUX - web.itu.edu.trmscelebi/est566/notlar/Lecture11.pdf · Sifirdan baslamak uzere, seri hatlarin numarasi. 0 (sifir) COM1 yani /dev/ttyS0'a karsilik gelir. sayet

`i' özellik bilgisi bulunan bir dosya degistirilemez. Bu dosya silinemez, ismi degistirilemez, bu dosyaya baglanti yaratilamaz ve dosyaya hic bir veri yazilamaz. Sadece yetkili kullanicinin bu özellik bilgisini degistirmeye yetkisi vardir. (Degistirmek icin chattr -i komutu yeterlidir)

Diger önemli nokta ise, verilecek olan sifrelerin basit harfler ve sayilardan olusmamasina dikkat etmektir.

13-Referanslar

man sayfalari. grub icin ayrica info grub komutuyla erisilebilen detayli manual.

http://www.cc.metu.edu.tr/filesTR/usg/pdf/Linux9.1.PDF

http://www-128.ibm.com/developerworks/library/l-bootload.htmlgca=dgr-lnxw01LiLOandGRUB

http://wiki.linux-sevenler.org/

http://www.novell.com/documentation/suse93/pdfdoc/admin93-screen/admin93-screen.pdf

http://www.europe.redhat.com/documentation/rhl9/rhl-rg-es-9/s1-grub-lilo.php3