Вы находитесь на странице: 1из 36

TEMEL

LINUX SSTEM YNETM


KURS NOTLARI

Linux Kullanclar Dernei


http://www.linux.org.tr

Burak DAYIOLU <burak@linux.org.tr> Berk DEMR <berk@linux.org.tr>

Akademik Biliim 2001 Konferans 30,31 Ocak 2001, Samsun

TEMEL LINUX SSTEM YNETM KURS NOTLARI

NSZ

Bu notlar, Akademik Biliim 2001 Konferans ncesinde gerekletirilecek iki gnlk Temel Linux Sistem Ynetimi kursu iin Linux Kullanclar Dernei (LKD) tarafndan hazrlanmtr. Kurs ierii Burak DAYIOLU tarafndan belirlenmi, notlar Berk DEMR ve Burak DAYIOLU tarafndan yazlmtr. Kurs ieriinin hazrlanmas esnasnda farkl blmler iin destek salayan LKD yelerinin isimleri aadaki listede sunulmutur; katklarndan dolay kendilerine teekkr ediyoruz:

UNIX ve Linux nedir ? UNIX Kabuu ve zellikleri Aygt Dosylar Ba Dosyalaru Diskler ve Dosya Sistemleri Kullanc Kotalar leri Tarihe Grev Atama

Murathan Bostanc Bar Metin Sancar Saran lker Manap Devrim Seral Selami Aksoy Selami Aksoy

Kurs notlar, gsterilen youn abaya ramen ancak kurstan birka saat nce tamamlanabilmitir; bu nedenle eksiklerinin ve yanllarnn olmas kanlmazdr. neri ve eletirileri yazarlara aadaki e-posta adreslerinden ulatrabilirsiniz. Sayglarmzla, Burak DAYIOLU <burak@linux.org.tr> Berk DEMR <berk@linux.org.tr> 29 Ocak 2001, Samsun

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI

NDEKLER
NSZ ----------------------------------------------------------------------------------------------------------------------------- 2 NDEKLER-------------------------------------------------------------------------------------------------------------------- 3 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. UNIX ve Linux nedir? ---------------------------------------------------------------------------------------------------- 4 Kullanc ve Gruplar ile almak -------------------------------------------------------------------------------------- 4 UNIX Kabuu ve zellikleri -------------------------------------------------------------------------------------------- 6 Dosya ve Dizin Eriim Denetimleri ------------------------------------------------------------------------------------ 9 Dizin Sradzeni ve Yaps ----------------------------------------------------------------------------------------------10 Aygt Dosyalar ------------------------------------------------------------------------------------------------------------11 Ba Dosyalar (Link Files) ----------------------------------------------------------------------------------------------11 Sreler ve Sre Ynetimi ---------------------------------------------------------------------------------------------13 Diskler ve Dosya Sistemleri---------------------------------------------------------------------------------------------14 Init Sreci ve alma Dzeyleri------------------------------------------------------------------------------------19 Sistem Al ve Kapan Sreleri ---------------------------------------------------------------------------------21 Yazlm Ynetimi ve RPM -------------------------------------------------------------------------------------------22 Kullanc Kotalar ------------------------------------------------------------------------------------------------------23 Sistem Bilgileri ve Baarm -----------------------------------------------------------------------------------------24 Sistem Kayt Sunucusu ve Kaytlarn ncelenmesi --------------------------------------------------------------25 leri Tarihe Grev Atama ---------------------------------------------------------------------------------------------26 A Ayarlar --------------------------------------------------------------------------------------------------------------28 Temel A Hizmetleri ve inetd ---------------------------------------------------------------------------------------30 Linux ekirdei --------------------------------------------------------------------------------------------------------30

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI

1. UNIX ve Linux nedir?


UNIX, 1970'li yllarn banda AT&T Bell Laboratuvarlar'nda gelitirilmesine balanm ve bugnk durumu ile ok kullancl (multi user) ve ok grevli (multi-tasking) hale ulam bir iletim sistemidir. C programlama dilinin ayn yllarda Dennis Ritchie tarafndan bulunmasndan sonra, 1973 ylnda sistemin tm bu dil ile yeniden yazlm ve bu UNIX'in geliimi asndan bir dnm noktas oluturmutur. Bu yeni sistem, akademik evrelerde byk ilgi ile karlanm ve byk bilgisayar sistemlerinin ounluunu elinde bulunduran Amerikan akademik camiasnn da destei ile hzl bir gelime trendine girmitir. 1977 ylnda AT&T'nin daha nce cretsiz olarak uygun grd kurululara salad UNIX ticari bir rn haline gelmitir. Bu gelimeler akademik camiada alkantlara neden olmu, University of California, Berkeley'deki iki renci yazlma ciddi eklentiler yazarak bu eklentilerini Berkeley Software Distribution (BSD) ad ile datmaya balamlardr. Sonraki alt yl ierisinde BSD ok hzl bir geliim gstermi, AT&T UNIX'indeki mevcut bir ok kstlamann kaldrlmasnda nemli rol oynamtr. BSD 4.2 datm ile birlikte AT&T UNIX'te mevcut olmayan a balant destei sisteme katlmtr. Tm bu gerekeler ile akademik evrelerde BSD datm olduka popler bir hale gelmitir. UNIX, uzun gemii nedeni ile olduka kararl ve oturmu bir iletim sistemidir. Bu nedenle zellikle grevkritik uygulamalarda neredeyse alternatifsizdir. Bir ok kurum ve kurulu bu nitelikleri nedeni ile biliim uygulamalarn UNIX ve trevi iletim sistemlerinde srdrmektedir. Linux, Finli bir renci olan Linus Torvalds tarafndan deney seti olarak gelitirimine balanm bir UNIX trevidir. Torvalds, tek disketlik al-uyumlu bir sistem ile Intel i386 uyumlu kiisel bilgisayarn balatmay deniyordu. Bu almasn baarl bir biimde sonulandrnca, akademik evrelerde popler bir UNIX trevi olan MINIX sisteminden daha iyi bir sistem yazp yazamayaca konusunda kendisini snamaya karar verdi. Oluturduu ilk taslaklar 1991 ylnda Internet zerindeki muhtelif haber gruplarna gndererek, sistemin gelitirimi iin destek istedi. Beklediinin ok zerinde destek gren projeye LINUX ad verildi ve Internet zerinde her geen gn artan sayda gelitiricinin destei ile bugn artk her gazete ve dergide hakknda yazlar grmeye baladmz sistem durumuna ulat. LINUX projesinin bugnk baarsnn en byk nedenlerinden birisi zgr Yazlm Vakf (Free Software Foundation - FSF) tarafndan hamilii yaplan GNU projesidir. GNU projesi kapsamnda yksek kalitede bir ok gelitirme ve uygulama yazlm ak kaynak kodu ile birlikte zgrce datlmaktadr. Bu balamda, LINUX iletim sisteminin yalnzca ekirdeini oluturmaktadr. Sistemin tm dier bileenleri GNU vb. kaynaklardan salanan zgr yazlm rnlerinden olumaktadr. 1990'l yllarn ortalarndan itibaren LINUX'un yaygnlnn hzla artmas ticari yazlm reticilerini de cezbetmi ve saysz ticari yazlm rn LINUX zerinde de altrlabilir duruma gelmitir. LINUX, btn dier UNIX trevlerinden beklenebilecek gerek ok grevlilik, sanal bellek kullanm, TCP/IP ve a destei, bellek ynetimi gibi zellikleri yksek kalite ile salamaktadr. Kaynak kodunun ak olmas ve yazlmn zgrce datlmas nedeni ile hatalar ksa srede giderilebilmekte, hatta baz durumlarda potansiyel hatalar henz ortaya kmadan giderilebilmektedir.

2. Kullanc ve Gruplar ile almak


UNIX iletim sisteminde "Kullanc", sistemden hizmet alan her gerel kiinin sistem zerindeki temsili karldr. Temel olarak bir UNIX sisteminden faydalanan her kii iin, bir UNIX kullancs tanmlanmaldr. Tanmlanan her kullancya birer adet olmak zere ! Kullanc Ad (Login Name): Kullancnn sistem ile ilikilerinde kendisini tantaca ksa ad ! Parola (Password): Kullancnn kimliini sisteme ispatlamak iin kullanabilecei ve yalnzca ilgili kullanc tarafndan bilinmesi gereken harf-rakam-sembol karm ! Kullanc Kimlii (User ID): Kimlik kart sra numaras gibi dnlebilecek bir say 4

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI ! Ana Grup Kimlii (Group ID): Kullancnn mensubu olduu gruplardan ncelikli olan ! Ev Dizini (Home Directory): Kullancnn sisteme giri yaptnda almaya balayaca, kendisine zel dizin ! Kabuk (Shell): Kullancnn sisteme girii sonrasnda altrlacak ilk program; kullancnn sistem ile tm mteakip ilikileri bu yazlm tarafndan ynetilir. atanr; kullanc tanmlar sistemin sorumlu yneticisi ya da yneticileri tarafndan yaplr. Sistem yneticisi sistemin salkl bir biimde iletilmesinden ve bakmnn yaplmasndan sorumlu kiidir. UNIX balamnda sistem yneticisi geleneksel olarak root kullanc ad atanm ve kullanc kimlii ve grup kimlii sfr (0) olarak seilmi kullancdr. root kullancs, sistem zerindeki en yetkili kullancdr ve dier kullanclar iin geerli olan yetki denetimleri root iin sistem tarafndan geersiz klnmtr. Sisteme kullanc eklemek zere useradd programndan faydalanlr. Bu programn kullanm sistemden sisteme deiiklik gstermektedir; kullandnz sistemin klavuz sayfalarndan detayl bilgi edinebilirsiniz (man useradd). rnek sistemimiz zerinde program aadaki gibi altrlabilir:
# adduser -d /home/bdd bdd

Kullanc ekleme ilemi srasnda, /etc/skel dizini altnda yer alan dosyalarn tm kullancnn ev dizinine kopyalanr. Atnz her kullanc hesab ile birlikte, kullanclarnzn ev dizininde bir takm dzenlemeler yapmak isterseniz /etc/skel dizini altnda bu genel dzenlemeyi yaparak ilemi otomatik hale getirebilirsiniz. Kullanc silmek zere userdel program kullanlmaktadr. Programn iki rnek kullanm aada verilmitir:
# userdel burak

(burak kullancs sistemden silinir, ev dizini korunur) (burak kullancs sistemden ev dizini ile birlikte silinir)

# userdel -r burak

Silme ileminden NCE, kullancya ait ve kullancnn ev dizini dnda kalan dier dosyalarn silinmesi iin "bul ve sil" ilemini yerine getirecek aadaki komut satr iletilebilir:
# find -user burak -exec rm {} \;

UNIX dosya ve dizin eriim denetimlerini grup baznda gerekletirir. Ayn dizine ya da dosyaya erimesi gereken kullanc says birden fazla ise bu kullanclarn bir "grup oluturduu" ne srlr ve bu kullanclar iin uygun bir UNIX grup tanmnn yaplmas beklenir. Dosya ve dizinlerin grup baznda eriim denetiminin salanmas sisteme esneklik getirir. Bir niversitenin mhendislik fakltesine bal farkl blmlerinin birlikte kulland bir UNIX sistemini dnelim. Bilgisayar Mhendislii Blm'nn akademik personeli blm ile ilgili dosyalara erimek isterken ayn dosyalara baka kimselerin (blm akademik personeli olmayan) erimesini istememektedir. Benzer biimde Elektronik Mhendislii Blm personeli ise yalnzca kendi blm personelinin kullanm iin tahsis edilecek bir dizin talep etmektedir. Bu durumda doal gruplama Elektronik Mhendislii ve Bilgisayar Mhendislii biiminde olacaktr. Grup mekanizmas, daha girift problemlere de zm oluturmaktadr: Bilgisayar ve Elektronik Mhendislii Blmlerinin ortak bir projesi olduunu ve bu projenin her blmden yalnzca ikier akademisyen tarafndan yrtldn dnelim. Bu durumda ortak projede grevli alanlarn iki grubun birden yesi olmas gerekmektedir. Projede grevli Elektronik Mhendislii personeli hem "Elektronik Mhendislii" hem de "Ortak Proje", grevli Bilgisayar Mhendislii personeli ise hem "Bilgisayar Mhendislii" hem de "Ortak Proje" gruplarna ye edilecektir. UNIX'te yeni bir grup tanmlamak zere groupadd programndan faydalanlr. Bu programn kullanm sistemden sisteme deiiklik gstermektedir; kullandnz sistemin klavuz sayfalarndan detayl bilgi edinebilirsiniz (man groupadd). rnek sistemimiz zerinde program aadaki gibi altrlabilir:
# groupadd elektrik

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI Kullanc tanm yaplrken bir kullancy birden fazla gruba dahil etmek mmkndr. useradd program ile ilgili rnekler arasnda bu trden bir rnei bulabilirsiniz. Bir kullancnn hangi gruplara dahil olduunu sorgulamak zere groups programndan faydalanlr. groups program aadaki gibi altrlr:
$ groups burak users, staff

Sistem zerinde alan bir kullanc, herhangi bir anda yalnz ve yalnz bir grubun yesi olarak davranabilir. Sisteme giri annda, kullancnn ana grubu olarak belirlenen grup yesi olarak almaya balad varsaylr. Kullanc, diledii an newgrp program yardm ile aktif grubunu deitirebilir. rnein burak kullancs, ana grubu olan users grubundan staff grubuna gei yapmak iin aadaki komut satrn iletmelidir:
$ newgrp staff

Kullanclar, halihazrda bal bulunduu grubu sorgulamak zere id komutunu kullanr; bu komut kullancnn kimlii ile ilgili bilgileri grntler:
$ id uid=500(burak) gid=550 groups=500,550

UNIX sistemlerinde kullanc tanmlarna ilikin bilgiler /etc/passwd dosyasnda grup tanmlarna ilikin bilgiler ise /etc/group dosyasnda yer alr. Yeni nesil UNIX trevi iletim sistemleri, gvenlii arttrmak amac ile /etc/passwd dosyas ile birlikte alternatif dzeneklerden de faydalanmaktadr. Linux datmlarnn byk bir ksm /etc/passwd dosyasnn gvenlik ile ilgili hassas kesimlerini /etc/shadow dosyasnda saklar. /etc/passwd dosyasndan bir satr aadaki gibidir:
burak:J2HS4ks$wer9s:500:500:Burak DAYIOLU:/home/burak:/bin/bash

Bu satrdaki kolonlar sras ile kullanc adn, ifrelenmi biimde kullanc parolasn, kullanc kimliini, grup kimliini, ev dizinini ve kabuk yolunu tanmlar. stisnasz olarak her kullanc iin sistem zerinde bu biimde bir satr ile gerekli tanm yaplmaldr; useradd program ok kabaca bu satrlarn doru biimde eklenmesinden sorumludur. /etc/group dosyasndan bir satr aadaki gibidir:
staff::500:berk,murathan,burak

Bu satrdaki kolonlar sras ile grup ad, grup eriim parolas, grup kimlii ve son kolonda ise virgl ile ayrlm biimde bu gruba dahil kullanc adlar biimindedir.
root

kullancs diledii kullancya yeni bir parolay kullancnn bilgisine dahi gerek olmakszn atayabilir:
# passwd burak

Sradan kullanclar, passwd programn parametresiz altrmaldrlar.

3. UNIX Kabuu ve zellikleri


Kabuk, iletim sistemlerinde kullanc ile iletim sistemi ekirdei arasndaki iletiimi salamak zere hazrlanm bir arabirimdir. rnein, MS-DOS temelli iletim sistemlerinde command.com sistemin kabuudur; sisteme hemen her trl komut command.com programnn salad arabirim ile verilir. UNIX sistemlerinde herhangi bir kullancnn sisteme girii ile birlikte kullanc iin atanm kabuk programnn iletimi balatlr ve kullanc sistemde alt srece bu kabuk program vastas ile sistem ile haberleir. Kabuk istediiniz programlar altran, istemlerini uygun biimde ynlendiren bir arabirim olarak ifade edilebilir. UNIX altnda kullanabileceiniz ok sayda ve farkl kabuk olmasna ramen Bourne Again Shell (bash), Linux sistemlerde son derece poplerdir. Sistemdeki her kullancnn kulland kabuk farkl olabilir, herkes kendi zevkine ve ihtiyalarna uygun olan kabuu kullanabilmektedir ve UNIX'in bu zellii nemli bir esneklik salamaktadr. 6

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI Bir ok Linux datm n tanml kabuk olarak bash'i kullanmaktadr. Bu kabuk dnda Bourne Shell (sh), C Shell (csh) ve Korn Shell (ksh) gibi farkl kabuklar saymak mmkndr. Bir kullancnn kabuu genel amal yazlm bir kabuk program olabilecei gibi, UNIX zerinde alabilir herhangi bir program da olabilir. rnein kolaylkla /usr/bin/pine yoluna sahip PINE e-posta istemcisini bir kullanc iin kabuk olarak tanmlayabilirsiniz. Bu durumda kullanc sisteme girdiinde yalnz ve yalnz PINE programn kullanabilecek, bu programn sunduu arabirim ile sistem ile haberleebilecektir. Kullanclar diledikleri anda herhangi bir program altrrcasna bir genel amal kabuk programn balatabilir ve almalarn bu kabuk altnda srdrebilirler. rnein bash kabuunu kullanan bir kullancnn, daha rahat edeceini dnd iin ksa sreliine csh kabuuna gemesi iin aadaki komutu yazmas yeterli olacaktr:
$ /bin/csh

Geici sre ile csh kabuuna geen kullanc ii bittiinde


% exit

komutunu vererek eski kabuuna dnebilir. bash kabuunun yaygnln gz nnde bulundurarak, bu kabuk ile ilgili bir takm becerileri ve zellikleri inceleyeceiz. Kullancnn sisteme girii ile birlikte bash kabuunun al-betikleri (intialization script) iletilir. Bu betikler sras ile /etc/profile, ~/.bash_profile, ~/.bash_login, ~/.profile dosyalar olacaktr. Sisteme farkl bir kabuk ile giri yapar ve bash'i daha sonra altrrsanz, okunacak al betii tektir ve ~/.bashrc dosyasdr. Dosya yollarnn paras olarak grnen ~ simgesi kullanc ev dizinlerini simgelemektedir. Bu anlamda burak kullancsnn ev dizinine gemek iin
$ cd ~burak

yeterli olabilmektedir. Al betii tabir edilen dosyalar ierisinde bash'in anlayabilecei biimde yaplm tanmlar ve komutlar yer almaktadr. rnek bir ~/.bashrc dosyas ierii aadaki gibidir:
PATH=$PATH:/home/burak/bin echo "Selam Burak!" alias odtuweb lynx http://www.metu.edu.tr

lk satrda PATH evre deikeni ile belirlenen yol arama listesine /home/burak/bin dizini eklenmektedir.Bu sayede bu satrn iletilmesinden sonra /home/burak/bin dizininde yer alan programlar tam yol verilmeden altrlabilecektir. kinci satrda ise echo komutu ile ksa bir karlama mesaj grntlenmektedir. nc satrda ise lynx program ile ODT web sitesinin grntlenmesi iin bir ksa yol verilmektedir; bu satrn iletilmesinden sonra odtuweb yazlmas balantnn gerekletirilmesi iin yeterli olacaktr. kullanm olduka kolay bir arabirime sahiptir; altktan sonra ok hzl bir biimde alabilmenize imkan salamaktadr. bash'in bu trden zelliklerinin birisi tamamlama zelliidir. Bir program adnn ilk birka harfini girebilir ve TAB tuuna iki defa ard arda basarak bu harfler ile balayan altrlabilir programlarn bir listesini grntleyebilirsiniz. Eer bu harflerle balayan program yalnzca bir tek ise, dorudan program ad tamamlanacaktr. Sta ile balayan programlarn bir listesi aadaki gibi alnabilir:
bash $ sta <TAB><TAB> startkde startx stat statserial

TAB tuunun kullanm dosya isimlerinde de ayn ekildedir. Bir komutu girdikten sonra parametre olarak dosya ad gireceiniz yerde dilediiniz dosyann ilk birka harfini yazabilir ve gerisini bash'in tamamlamasn salayabilirsiniz.
$ ls butunleme.txt $vi but<TAB> $vi butunleme.txt baris.txt ali.txt

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI Komutun ktsn bir dosyaya yazdrmak iin > ve >> karakterleri kullanlabilir. rnein aadaki rnei altrdnz dizinde surecler isimli bir dosya oluturacak ve bu dosyann ierisine "ps auxw" komutunun ktsn yazacaktr; ekranda hibir kt grmeyeceksiniz nk btn kty dosyaya ynlendirmi olacaksnz:
$ ps auxw > surecler

imdi surecler isimli bir dosyaya sahibiz; bu dosyann sonuna ekleme yapmak zere >> karakterinden faydalanrz. Aadaki rnek, surecler dosyasnn sonuna bir satr eklemektedir:
$ echo "--- BTT ---" >> surecler

UNIX felsefesinin nemli bir ksm, kk ve ilevleri iyi tanmlanm programlarn ard ardna altrlmas yolu ile karmak ilemlerin gerekletirilebilmesidir. Bu sayede, ok farkl ihtiyalara cevap vermek iin yazlm devasa programlara ihtiya duyulmamaktadr. UNIX aralarnn byk bir ksm olduka az beceriye sahiptir ve bu nedenle renilmeleri kolaydr. Sistem ile deneyiminiz ilerledike farkl programlar hakknda da bilgi edinir, bu programlar da daha nce rendikleriniz ile farkl kombinasyonlarda altrabilirsiniz. Bu balamda, bir programn rettii kty bir dierine girdi olarak verebiliyor olmak temel ve nemli bir kavramdr. Bu amac gerekletirmek iin | karakterinden faydalanlr. alan grevler listesinden ierisinde "squid" geenleri bulmak iin aadaki gibi bir komut altrlabilir: Bu rneimizde ps programnn kts grep programna girdi olarak verilmektedir.
$ ps aux|grep squid root squid squid squid 619 622 630 631 0.0 0.0 3308 0 ? SW S S S 2000 2000 2000 2000 0:00 [squid] 3:03 (squid) -D 0:00 (dnsserver) 0:00 (dnsserver)

0.0 18.7 51272 48388 ? 0.0 0.0 0.1 0.1 1480 1480 496 ? 420 ?

Daha sonra kullanmak zere kabuk ierisinde baz deikenler (evre deikeni) tanmlayabilirsiniz. Deiken tanmlama iin bir rnek aada verilmitir:
BEN="Bar Metin"

Bylesi bir tanmdan sonra BEN adnda bir evre deikeni tanmlanm olur. Deikenin kullanm esnasnda nne $ iareti getirilmelidir:
echo $BEN Bar Metin

Sisteme giri yapldnda bir dizi evre deikeni otomatik olarak kabuk tarafndan tanmlanr. printenv komutu ile tanmlanm evre deikenlerinin tam bir listesi alnabilir.
$printenv HOSTNAME=ozgur.beykent.edu.tr LOGNAME=baris TERM=vt100 PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/sbin:/home/baris/bin HOME=/home/baris SHELL=/bin/bash USER=baris

Tanmlanan evre deikenlerinin, kabuktan altrlacak tm dier programlar tarafndan da eriilebilir olmas iin bu deikenlerin ihra edilmesi gerekmektedir:
export BEN

Sisteme giri esnasnda tanmlanan evre deikenlerinden birisi HOME'dur. Bu deiken kullanc ev dizininin yolunu tutar. Dier bir nemli deiken SHELL'dir; SHELL kullanc kabuunun yolunu tutar. 8

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI

4. Dosya ve Dizin Eriim Denetimleri


UNIX dosya sistemi ikincil saklama ortamlarnda yer alan dosyalara eriimi kontrol eder. Hangi kullanclarn hangi dosyalara ve dizinlere nasl ulaabileceinin kontrol UNIX dosya sistemi tarafndan yaplr. Bu nedenle dosya sistemi, UNIX zerinde gvenlii salamak iin denetlenmesi gereken en nemli noktalardan birisidir. Bir ls ktsnda, ktnn ilk stunu dosya ve dizin eriim haklarn gsterir. rnek bir ls kts aada verilmitir:
$ ls -l -rw-r--r-1 bdd staff 20911 Jan 22 01:21 bsd.c

Eriim haklarnn ilk karakteri, dosya ya da dizinin tipini belirler. Bu tip aadakilerden birisi olabilir:
-:

Sradan dosya

d: Dizin c: Karakter Aygt (character device) b: bek Aygt (block device) l: Sembolik Ba (symbolic link) s: Soket (socket) p: FIFO Eriim haklarnn sonraki dokuz karakteri, erli gruplar halinde sistem zerinde kimin neyi yapabileceini belirler. tr hak vardr; okuma (read), yazma (write) ve altrma (execute). Buna paralel olarak farkl snf vardr; dosyann sahibi (owner), dosyann sahibi ile ayn kullanc grubundakiler (group) ve bu ikisinin dnda kalan tm kullanclar (other). rnein, dosya eriim haklar rwxr-xr-- olan bir dosya, sahibi tarafndan okunabilir, yazlabilir ve altrlabilir.(rwx) Dosyann sahibi ile ayn kullanc grubundakiler dosyay okuyabilir ve altrabilir (r-x). Geride kalan dier kullanclar bu dosyay sadece okuyabilecektir (r--). Dosya ve dizinlere ilikin eriim haklarn deitirmek iin chmod komutu kullanlr. Dosyann eriim haklarn yalnzca dosyann sahibi ya da root deitirebilir; dier kullanclar eriim denetim mekanizmasn herhangi bir biimde geersiz klamaz. chmod programnn kullanmna dair bir rnek aada verilmitir:
$ ls -l bsd.c -rw-r--r-1 bdd staff 20911 Jan 22 01:21 bsd.c

$ chmod go-r bsd.c -rw------1 bdd staff 20911 Jan 22 01:21 bsd.c

chmod programna verilen ilk parametre, hangi snfa hangi yetkinin verileceini belirler. rnekte, grup (g) ve dierlerinden (o) okuma (r) yetkisi geri alnmaktadr (-). Sonu, rnekte grld gibi yalnzca sahibi tarafndan okunabilen ve deitirilebilen, baka herhangi bir biimde herhangi birisi tarafndan eriilemeyen bir dosya olacaktr. chmod program ile bir dizin altnda yer alan tm dosya ve dizinlerin eriim haklarnn bir seferde deitirilmesi mmkndr; bu durumda -R parametresi kullanlmaldr. Bir dosyann sahipliini deitirmek zere chown programndan faydalanlr. Kullanc diledii taktirde aadaki gibi bir komutla bu ilemi gerekletirebilir:
# ls -l bsd.c -rw-r--r-1 bdd staff 20911 Jan 22 01:21 bsd.c

# chown burak bsd.c -rw-r--r-1 burak staff 20911 Jan 22 01:21 bsd.c

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI Bir dosyann bal bulunduu grubu deitirmek zere chgrp programndan faydalanlr. Kullanc diledii taktirde aadaki gibi bir komutla bu ilemi gerekletirebilir:
# ls -l bsd.c -rw-r--r-1 bdd staff 20911 Jan 22 01:21 bsd.c

# chgrp users bsd.c -rw-r--r-1 bdd users 20911 Jan 22 01:21 bsd.c

Anlan standart eriim denetim ayarlarnn dnda geniletilmi bir eriim denetim snf daha mevcuttur. Bu snfta SUID, SGID ve Sticky ikilleri mevcuttur. Dosya sistemi zerinde yer alan bir program altrldnda iletim sistemi tarafndan bir srece (process) dntrlr. letime alnan sre, program altran kullancnn yetkileri ile donatlr. rnein root kullancs tarafndan altrlan bir program sahibinin yetkileri nedeni ile alt sre boyunca sistem zerinde her trl yetkiyi elinde bulundurur. Sradan bir kullanc tarafndan ayn program altrldnda, bu kullancnn sistem zerindeki yetkileri programa aktarlr. Ancak bu yetkilendirme dzenei belli durumlarda sistemi zora sokmaktadr. rnein parola deiiklii iin tm kullanclar tarafndan passwd programnn altrlabilmesi gerekmektedir. passwd program, /etc/passwd dosyas zerinde deiiklik yapmak zorunda olduu iin /etc/passwd'nin sahibi olan root kullancsnn yetkilerine ihtiya duyar. zel durumu nedeni ile bu programn almaya balad anda root kullancsnn yetkileri ile almas (program balatan her kim olursa olsun) lazmdr. Bu gibi durumlar iin set user-id (SUID) isimli eriim hakkndan faydalanlr. Bu hakkn verildii /bin/passwd programnn ls kts aada verilmitir:
$ ls -l /bin/passwd -r-s--x--x 1 root root 13536 Jul 12 2000 /usr/bin/passwd

Bir programa SUID hakk vermek zere chmod program ile u+s hak belirleyicisi kullanlabilir:
# chmod u+s /bin/bash -rwsr-xr-x 1 root root 512540 Aug 22 19:46 /bin/bash

Yukardaki komutun root tarafndan altrlmas halinde, komutun iletilmesinden sonra sisteme giri yapan her kullanc root yetkileri ile donatlm olacaktr. Bu rnek, bir retim sisteminde denenmemeyi gerektirecek kadar tehlikelidir. SUID ile benzer biimde, baz programlarn almalar sresince belli bir kullanc grubunun yesi olarak almas gerekli olabilir. rnein yazc hizmetleri ile ilgili yazlmlar bu trden haklara ihtiya duyarlar. Bir programa SGID hakk vermek zere chmod program ile g+s hak belirleyicisi kullanlabilir:
# chmod g+s /bin/bash -rwxr-sr-x 1 root root 512540 Aug 22 19:46 /bin/bash

Tm kullanclarn yaz-boz tahtas olarak kullanabilecei dizin /tmp'dir. Kullanclar tarafndan iletilen tm programlar geici dosyalarn bu dizinde yaratr ve ileri bittiinde siler. Ancak bu dizine tm kullanclarn okuma ve yazma hakk ile erimesi durumunda kullanclarn bu dizini hepten silebilmesi mmkn olacaktr. Kullanclarn yalnzca kendilerine ait dizinleri ve dosyalar silebilmesini salamak zere /tmp dizini Sticky eriim hakk ile donatlmtr:
$ ls -ld /tmp drwxrwxrwt 11 root root 4096 Jan 29 11:48 /tmp

Bir dizine sticky eriim hakk vermek zere chmod u+t hak belirleyicisi kullanlabilir.

5. Dizin Sradzeni ve Yaps


UNIX dosya sistemi tek kkl bir aa yaps biimindedir; MS-Windows trevi iletim sistemleri bunun aksine ok kkl aa yapsnda dosya sistemlerine sahiptir (c:, d:, e: ayr birer kktr). UNIX'te tek bir kk vardr ve / sembol ile gsterilir. Tm dosyalar ve dizinler kk dizin referans alnarak iaretlenir. Tm aa 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 10

TEMEL LINUX SSTEM YNETM KURS NOTLARI tek bir dosya sistemi zerinde olabilecei gibi, aacn baz dallar farkl dosya sistemleri zerinde de depolanyor olabilir. Dizin hiyerarisi ierisinde yer alan dizinlerden bir ksm hemen her UNIX trevi iin zel anlamlar ifade etmektedir. Tipik bir Linux sistemine ilikin nemli dizinler ve bu dizinde depolanan dosya trleri aadaki gibidir: /tmp: Geici dosyalar dizini /lib, /usr/lib: Kitaplk dosyalar dizini /include, /usr/include: C Balk (header) dosyalar /sbin,/usr/sbin: Sistem programlar dizini /bin, /usr/bin: Uygulama programlar /etc: Sistem ayar dosyalar /var: Kuyruk dizinleri (e-posta, yazc vb.) ve kayt (log) dosyalar /usr/local: Yerel uygulamalar ve bileenleri /boot: ekirdek ve al dizini /proc: ekirdek izleme ve ayar dizini /dev: Aygt dosyalar dizini

6. Aygt Dosyalar
UNIX, programlama arabirimini olabildiince kolaylatrmak zere tm aygt eriimlerini bir dosya benzetim yntemi ile gerekletirmektedir. Bu benzetim sayesinde, programc aygt ile ilikilendirilmi dosyay aar ve bu zerinde diledii gibi okuma ve yazma ilemlerini gerekletirir. lemler esnasnda programc eritii aygtn denetim detaylarn bilmek zorunluluundan kurtulmu olur. Aygt dosyalar /dev dizini altnda yer alr. Bu dizin altnda yer alan dosyalar bilinen anlam ile birer dosya deildir; yalnzca eriimlerin aygta ynlendirilmesini salamak zere bulunan birer yer tutacadr. Aadaki rnekte bir grup aygta ilikin ls kts grlmektedir:
$ ls -l /dev/hda* brw-rw---1 root brw-rw---1 root brw-rw---1 root disk disk disk 3, 3, 3, 0 Sep 27 13:31 hda 1 Sep 27 13:31 hda1 2 Sep 27 13:31 hda2

Aygt dosyalar bek aygt dosyalar ve karakter aygt dosyalar olarak iki gruba ayrlr. bek aygt dosyalar, bek tr aygtlara eriim iin kullanlr. Bu aygtlar giri/k ilemleri iin tampon bellek kullanan aygtlardr. Bu biimde alan aygtlar giri/k yaplan verileri bir bek tamamen doluncaya kadar tampon bellekte tutar ve daha sonra bu bei bir seferde aktararak ilemi gerekletirirler. Bu trden aygtlara disk ve teyp tr aygtlar rnek gsterilebilir. Karakter aygt dosyalar, karakter (harf/sembol) baznda iletiim kurulan aygtlar iin kullanlrlar. Seri balant noktasndan bal yazclar bu trden bir rnek olarak grntlenebilir.

7. Ba Dosyalar (Link Files)


Sistem tarafndan depolanan ve ilenen her dosya bir dosya ad ile ilikilendirilir. Yeni bir dosya tanmlandnda bu dosya iin bir de isim atanr. Kullanclar, bir dosyaya farkl konumlardan daha rahat eriebilmek iin ksayollar tanmlamak ihtiyac duyabilirler. UNIX balamnda ksayol belirtmek iin kullanlan dosyalar ba dosyalar olarak anlrlar.

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

11

TEMEL LINUX SSTEM YNETM KURS NOTLARI ki tr ba dosyas mevcuttur; hard-link ve soft-link. Hard-link tr ba dosyalar sistem zerinde yalnzca sistem yneticisi tarafndan yaratlabilirler. Var olan bir dosyaya bir hard-link ile ikincil bir isim atand andan itibaren dosyaya iki farkl isim ile erimek mmkn olacaktr. Bu aamadan sonra isimlerden birisi ile gelecek bir dosya silme talebinde sadece dosyaya eriim iin kullanlan iki isimden birisi silinmi olur, dosyann saklanmas srdrlr ancak artk yalnzca bir isim ile erimek mmkn olacaktr. Bu durumda dosya yalnzca ve yalnzca kendisi ile ilikilendirilen tm isimleri iin birer dosya silme ilemi gerekletikten sonra silinmi ve hibir biimde ulalamaz olacaktr. UNIX sistemleri zerinde ba dosyalar ln program yardm ile tanmlanr:
# ln /raporlar/ocak-satis.txt /cok-satanlar/2001-ocak.txt

Yukardaki rnekte, /raporlar/ocak-satis.txt yolu ile eriilen dosyaya erimek iin ikincil bir yol olarak /cok-satanlar/2001-ocak.txt tanm yaplmaktadr. Bu noktadan sonra dosya isimlerinden birisi silinse de dieri de silinene kadar dosya var oluunu srdrecektir. Aadaki rnekte php.ps ad ile verilen dosyaya bir hard-link oluturulmaktadr:
# ls -l total 239 -rw-r--r-1 root root # ln php.ps php-dokuman.ps # ls -l total 478 -rw-r--r-2 root root -rw-r--r-2 root root

242783 Dec 13 10:50 php.ps

242783 Dec 13 10:50 php-dokuman.ps 242783 Dec 13 10:50 php.ps

Grld gibi, hard-link tr ban (php-dokuman.ps) oluturulmasndan sonra ls ktsnn ikinci kolonunda yer alan referans says ikiye kmtr. Dosyann farkl adlar iin silme talebi geldike referans says azalr ve sfr olduunda dosya sistemden silinir. Sistem zerindeki tm kullanclar tarafndan tanmlanabilen ve daha kolayca anlalp idare edilebilen ba dosyas tr soft-link'lerdir. Soft-link tr bir ba, mevcut bir dosyaya farkl yollardan da ulalabilmesini salar. Ancak hard-link'lerden farkl olarak, kendisine ikincil isimler tanmlanan dosya iin ilk ismine gelen bir silme talebi dosyann tm ile silinmesine yol aacak, ikincil isimler ile dosyaya verilen referanslar anlamsz olacaktr. soft-link tr bir ba ln programna -s parametresi verilerek gerekletirilir. Aadaki rnek soft-link'lerin kullanmn gstermektedir:
$ ln -s /raporlar/ocak-satis.txt /cok-satanlar/2001-ocak.txt $ rm /raporlar/ocak-satis.txt $ cat /cok-satanlar/2001-ocak.txt No Such File or Directory

rnekte, ilk satrda /raporlar/ocak-satis.txt yolu ile eriilen dosyaya erimek iin ikincil bir yol olarak /cok-satanlar/2001-ocak.txt tanm yaplmaktadr. Ancak ikinci satrdaki dosyann ilk ad iin gelen silme talebinden sonra /cok-satanlar/2001-ocak.txt biiminde verilen ikincil dosya ad ile dosyaya erimek mmkn olamayacaktr; nk artk dosya tmyle silinmitir.
$ ln -s /home/httpd/html html $ ls -l html lrwxrwxrwx 1 webmaste users 16 Dec 13 08:56 html -> /home/httpd/html/

Yukardaki iki komutun sistem zerindeki web sitesinin sorumlusu tarafndan verildiini dnelim. Web sorumlusu ilk komutu kendi ev dizininde verdiinde web sayfalarn dzenlemek iin sisteme her giriinde gitmesi gereken /home/httpd/html dizinine kestirme bir yol tanmlam olacaktr. Sisteme giriini yaptktan sonra cd html diyerek /home/httpd/html dizinine daha az tu vuruu ile ulaabilecektir. kinci satrda yer alan ls komutunun ktsnda, dosya eriim haklarnn grntlendii ilk kolonun ilk harfi olan "l" harfi, dosyann bir ba (link) dosyas olduunu gstermektedir. Dosya ad kolonundaki ok iareti de dosyann hangi dosyaya ynelmi bir ba olduunu aka gstermektedir. 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 12

TEMEL LINUX SSTEM YNETM KURS NOTLARI

8. Sreler ve Sre Ynetimi


Sistem zerinde depolanan bir program dosyas, iletime getiinde iletimin balad andan sonland ana dein geen srede sistem iin iletilmesi gereken bir "sre" olarak anlr. UNIX ok kullancl ve ok grevli bir iletim sistemidir. Birden fazla kullancya ait birden fazla sre birbirine paralel olarak iletiliyor olabilir. Herhangi bir anda, genellikle sistemin sahip olduu ana ilem birimi (CPU) saysnn ok zerinde srecin paralel olarak iliyor olmas beklenir; ancak bir ana ilem birimi herhangi bir anda yalnz ve yalnz bir sreci iletiyor olabilir. rnein paralel ilemesi gereken yirmi sre varsa ve bu srelere ev sahiplii yapan UNIX sisteminin drt ileyicisi var ise herhangi bir anda en ok drt sre aktif olabilecek, dier sreler beklemek zorunda kalacaktr. Modern iletim sistemlerinin byk bir ounluu bu problemi, zaman bltrme ad verilen bir teknik ile amaktadrlar. Bu teknik erevesinde her sre uygun bir dzen erevesinde sra ile uygun ana ilem birimlerinden birisine iletilmek zere verilmekte, saniyeden ksa bir srede bu srecin iletimi beklemeye alnarak ana ilem birimine yeni bir srecin iletimi grevi atanmaktadr. Her bir srecin ksa srelerde altrlmas ve bunun bir dng biiminde gerekletirilmesi sayesinde, kullanclar iin bir yanlsama gerekletirilmi olur; kullanclar ok sayda srecin paralel iletildiini zannederler. Sistemde iletilen her srece bir sre numaras atanr. Sre ile ilikili her trl ilemde bu sre numaras referans olarak kullanlr. Sistem zerinde alan srelerin listelenmesi iin ps (sre durumu - process status) programndan faydalanlr. Linux iin rnek kullanm ve kts aadaki gibidir:
$ ps aux USER root root root root root root root root root root root bdd PID %CPU %MEM 1 2 3 4 5 6 287 297 390 447 1202 1203 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6 0.0 0.0 0.0 0.0 0.0 0.6 0.8 0.3 1.2 1.4 1.5 VSZ 1292 0 0 0 0 0 1352 1648 1316 RSS TTY 524 ? 0 ? 0 ? 0 ? 0 ? 0 ? 576 ? 728 ? 344 ? STAT START S SW SW SW SW SW< S S S S S S 10:56 10:56 10:56 10:56 10:56 10:56 10:56 10:56 10:56 10:56 13:41 13:41 TIME COMMAND 0:05 init [3] 0:00 [kflushd] 0:00 [kupdate] 0:00 [kpiod] 0:00 [kswapd] 0:00 [mdrecoveryd] 0:00 syslogd -m 0 0:00 klogd 0:03 gpm -t ps/2 0:00 login root 0:00 login -- bdd 0:00 -bash

2208 1064 tty1 2308 1272 pts/1 2312 1368 pts/1

Grntlenen listede ilk kolonda sreci balatan kullanc kimlii, ikinci kolonda sre numaras ve sondan bir nceki kolonda da srecin imdiye dein kulland toplam ana ilem birimi zaman yer almaktadr. Bu kolonda grntlenen sre, srecin iletimine balanmasndan ps sorgusunun iletildii ana kadar geen gerek zaman gstermez; grntlenen sistemin bu srecin iletimi iin harcad net zamandr. STAT bal ile verilen kolonda, srelerin halihazrdaki durumlar grntlenir. Kolonda, sre durumlarna ilikin tek harflik ksaltmalarn bir kombinasyonu mevcuttur ve ksaltmalar ve aklamalar aadaki listedeki gibidir: R: Sre iletilebilir durumda T: Sre durdurulmu durumda P: Sre diskten bir sayfa yklemesi bekliyor D: Sre diskten bilgi yklenmesini bekliyor S: Sre 20 saniyeden az bir sredir uyuyor I: Sre bota (20 saniyeden fazla bir sredir uyuyor) 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 13

TEMEL LINUX SSTEM YNETM KURS NOTLARI Z: Sre sonland ancak sre lm gerekleemedi (Zombi) W: Sre, diske aktarld (swapped-out) >: Sre kendisine uygulanan bellek limitini at N: Sre dk ncelikle iletiliyor <: Sre yksek ncelikle iletiliyor Zombi sreler sistem kaynaklarn kullanmazlar, bu nedenle sistem zerinde ok sayda zombi srecin bulunmas endie edilecek bir durum deildir. Baz durumlarda iler durumda olan bir srece mdahale gerekli olabilir. Temel mdahaleler arasnda srecin ileyiine son vermek ve sreci geici olarak durdurmak saylabilir. Bu amalar iin kullanlmak zere UNIX sistemlerinde "sinyal mekanizmas" mevcuttur. Sinyaller srelere ok ilkel bir biimde hkmedilebilmesine imkan vermektedirler. UNIX sistemlerinde tanml onun (10) zerinde sinyal vardr. Hangi sinyalin alnmas durumunda ne biimde davranlaca tm ile ileyen sreci gelitiren programcnn seimine baldr. Temel olarak bir sre, ald bir sinyal sonrasnda aadaki davranlardan birisini sergileyebilir: Sinyali Grmezden Gelme: Sre, sanki hi sinyali almamasna ilemeyi srdrebilir. Toparlanma ve k: Sre, sinyali aldnda srdrd ii hzla toparlar ve kar. Dinamik Yaplandrma: Sre, sinyali aldnda yaplandrma dosyalarn yeniden okuyacak alma dzeni ayarlarnn son durumuna gre kendisini ayarlar; yazlmn durdurulup tekrar balatlmasndan kurtulunmu olur. Durum Raporlamas: Sinyali alan sre, ileyi durumuna ilikin bir takm bilgileri bir rapor biiminde dkebilir. Hata Ayklamay Durdur/Balat: Sre, sinyali aldnda hata ayklama kipine geer ya da bu kipten kar Hangi davrann sergilenecei, daha nce de akland gibi, tm ile yazlm gelitiren kiinin/ekibin seimidir. Ska kullanlan baz sinyaller ve genel olarak bu sinyallere yklenen anlamlar aadaki gibidir: HUP: Dinamik yaplandrma amac ile youn biimde kullanlr TERM: Sre iletiminin toparlanp sonlandrlmas salanr KILL: Sre ileminin toparlanmaya dahi msaade edilmeden acilen sonlanmas salanr Srelere sinyal gnderebilmek zere kill programndan faydalanlr. Aadaki rnekte 87 sre numarasna sahip inetd srecine HUP sinyali gnderilmektedir:
# kill -HUP 87

Sinyali alan sre programcsnn seimi dorultusunda sinyal sonrasnda gereini yapar. leyen bir sreci durdurmak zere kill program -TERM parametresi ile ya da parametresiz olarak altrlmaldr. Aadaki iki satr tm ile ayn ii yapmaktadr:
# kill -TERM 87 # kill 87

Tm sinyallerin bir listesini edinmek zere kill -l komut satr iletilebilir.

9. Diskler ve Dosya Sistemleri


Bu blmde diskler, disk blmleri, dosya sistemleri ve bu kavramlarn UNIX ile ilikisi irdelenecektir. Bir disk, veri depolama amac ile kullanlan herhangi bir tr ortamdr. Disk blm (partition), bir diskin farkl amalar ile kullanm iin mantksal anlamda blnmesi ilemi sonucunda ortaya kan paralarn her birine verilen addr. 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 14

TEMEL LINUX SSTEM YNETM KURS NOTLARI Bir dosya sistemi, en az bir disk blm zerine yerleen ve dosya ve dizinlerin belirli bir sistematik ierisinde depolanmas iin gerekli kataloglama ve eriim denetimi temel altyap hizmetlerini salayan yapdr. Zaman ierisinde ihtiyalar gelitike ve/veya deitike ok farkl dosya sistemleri gelitirilmi ve kullanlmtr, ancak temel olan hemen her tr dosya sisteminin amacnn bir biimde depolanan dosyalarn kataloglama ve eriim denetimi srelerini gerekletirmek olduudur. htiyalar dorultusunda her iletim sistemi ile uyumlu alabilen ok farkl dosya sistemlerinin olabilmesi mmkn olmaktadr; Linux iletim sistemi onun zerinde farkl dosya sistemi ile uyumlu bir biimde alabilmektedir. Ext2 ad verilen dosya sistemi, Linux datmlar tarafndan en youn biimde kullanlan dosya sistemidir. Geleneksel UNIX dosya sisteminin tm zelliklerini ve bir takm gelimi zellikleri iinde barndrmaktadr. Bu gelimi zellikler arasnda yksek performans iin bir takm dzenlemeleri ve veri kaybn nlemek iin alnm tedbirleri saymak mmkndr. Bir Ext2 dosya sistemi 4TB'lk (TeraBayt) bir bykle kadar genileyebilmekte ve 255 harfe kadar uzun dosya isimlerine destek sunmaktadr. Linux tarafndan desteklenen bir dosya sistemi ailesi Microsoft MS-DOS ve Windows ailesi iletim sistemleri tarafndan kullanlan dosya sistemleridir. FAT ve VFAT dosya sistemleri MS-DOS ve Windows 95/98 iin gelitirilmi birer dosya sistemidir. FAT sisteminde dosya isimleri 8+3 kuralna uygun biimde verilebilmektedir; uzun dosya isimleri desteklenmez. VFAT sisteminde ise uzun dosya isimleri iin destek sisteme eklenmi durumdadr. Windows NT tarafndan kullanlan NTFS dosya sistemi de Linux tarafndan desteklenen dosya sistemleri arasndadr. ISO9660 dosya sistemi CD-ROM'larda kullanlmak zere gelitirilmi bir sistemdir ve ISO9660 dosya sistemi de Linux tarafndan desteklenmektedir. Modern dosya sistemlerinin hemen tm "transaction" temellidir. Journaling File System ad verilen bu tr sistemler elektrik kesintisi vb. durumlarda veri kaybn en aza indirmek zere tasarlanmtr ve gelimi veritaban ynetim sistemleri tarafndan kullanlan biimde ilem kaytlar temelli almaktadrlar. Bu trden dosya sistemlerinin kararll, dierleri ile mukayese edilemeyecek kadar yksektir. Linux iin gelitirilen Reiser FS, IBM'in JFS'i, SGI'n XFS'i ve Ext3 bu kategoride Linux iin altrlabilir durumdaki dosya sistemleridir. Linux datmlarnn byk blm diskler zerinde disk blmlendirilmesinin gerekletirimi ve dosya sistemlerinin tanmlanmas iin fdisk programnn kullanlmasna imkan verir. Bu program kullanarak disk blmlerinin ve disk blmleri zerine yerleen dosya sistemlerinin idaresi salanr. Program parametresiz balattnzda
# fdisk Usage: fdisk [-l] [-b SSZ] [-u] device E.g.: fdisk /dev/hda or: fdisk /dev/sdc or: fdisk /dev/eda (for the first IDE disk) (for the third SCSI disk) (for the first PS/2 ESDI drive) or: fdisk /dev/ida/c0d0 (for RAID devices)

or: fdisk /dev/rd/c0d0

biiminde kullanmna ilikin bilgiler grntlenecektir. Disk blmlerinin ve dosya sistemlerinin her trl ynetim yetkisi yalnzca sistem yneticisine aittir; bu nedenle fdisk program sistem yneticileri dnda herhangi bir kullanc tarafndan altrlamaz. Fdisk ile IBM PC uyumlu sistemimizde "Primary IDE Master" durumundaki sabit diskin zerinde ilemler yapmak zere uygun komut satr
# fdisk /dev/hda

biiminde olmaldr. Program balattktan sonra fdisk komut satr grntlenir:


Command (m for help):

Komut satrnda iken yaplabileceklerin ilki mevcut disk blmlerinin ve dosya sistemlerinin bir listesinin alnmasdr. Bu amala p (print) komutu kullanlr:
Command (m for help): p

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

15

TEMEL LINUX SSTEM YNETM KURS NOTLARI


Disk /dev/hda: 255 heads, 63 sectors, 1582 cylinders Units = cylinders of 16065 * 512 bytes Device Boot /dev/hda1 /dev/hda2 /dev/hda3 /dev/hda5 /dev/hda6 * Start 1 591 610 610 1097 End 590 609 1582 1096 1340 Blocks 4891761 145585 7815622+ 3911796 1959898+ Id 83 82 f b b System Linux Linux swap Win95 Ext'd (LBA) Win95 FAT32 Win95 FAT32

Disk /dev/hda: 255 heads, 63 sectors, 1340 cylinders Units = cylinders of 16065 * 512 bytes

Yukardaki ktda disk zerindeki blmler ve bu blmler zerine yerletirilmi dosya sistemleri grntlenmektedir. lk kolonda disk blmnn aygt dosyas olarak ad, ikinci kolonda bu blmde yer alan dosya sisteminin aln gerekletirilecei- dosya sistemi olup olmad, beinci ve Blocks olarak adlandrlan kolonda bu disk blmnn bek cinsinden boyu ve son kolonda da bu blm zerine yerleen dosya sisteminin tr grntlenmektedir. Yeni bir disk blm tanmlamak zere fdisk komut satrnda n (new) komutunun kullanlmas gerekir:
Command (m for help): n Command action e p extended primary partition (1-4)

Bu ekranda yaratlacak olan disk blmnn tipi sorulmaktadr.. Yaratlacak olan blm says 4 veya daha az ise hepsi birincil (primary) bir disk blm olabilir.Ancak drtten fazla blm yaratlacaksa o zaman extended blm tipini kullanmak gerekir. Extended tipinde yaratlan disk blmlerinin numaralar 5'den balayarak artmaktadr. Birincil bir blm yaratmak zere verilecek yant "p" olmaldr.. Bu giriin ardndan blm numaras sorulur:
Partition number (1-4):

Bu alana bo blm numaralarnn birisinin atanmas yeterli olacaktr. Blm numarasnn girilmesinden sonra diskin byklne gre deimek ile birlikte aadaki gibi bir ekran grntlenecektir:
First cylinder (1-1340, default 1): Last cylinder or +size or +sizeM or +sizeK (1-1340, default 1340):

lk satrda yeni blmn balayaca silindir numaras, ikinci satrda ise blm boyu ya da blmn son silindiri sorulmaktadr. Blme belirli bir byklk atamak ikinci satra zere aadaki rneklerde grlen biimde girilerin yaplmas mmkndr: 5MB'lk bir blm iin +5000K 500MB'lk bir blm iin +500M 5GB'lk bir blm iin +5000M Deer girildikten sonra disk blmmz tanmlanm olacaktr. fdisk program ile tanmlanan her disk blmnn varsaylan dosya sistemi ext2 olacaktr (Linux yeni tanmlanan her blmn ext2 trnde olacan VARSAYAR; bu davran deitirmek mmkndr). Disk blm zerinde tanmlanan dosya sisteminin trn deitirmek zere t (type) komutu kullanlr. Youn biimde kullanlan dosya sistemlerine ilikin tr numaralar aadaki gibidir: 82: Linux swap 83: Linux (ext2) Mevcut bir disk blmn silmek iin d (delete) komutu kullanlr: 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 16

TEMEL LINUX SSTEM YNETM KURS NOTLARI


Command (m for help): d Partition number (1-4): fdisk

silme istemi sonrasnda silinecek blm numarasn sorar ve belirtilen blmn silinmesini salar.

UNIX dizin hiyerarisinin temelini oluturan kk dizininin zerinde bulunduu dosya sistemine kk dosya sistemi ad verilir. Bu dosya sisteminin zerinde bulunduu disk blmnn aln yaplaca disk blm olarak iaretlenmesi gerekmektedir. Bu ileme fdisk balamnda aktivasyon denir. Bir disk blmn aktif hale getirmek zere fdisk komut satrnda a komutu kullanlr:
Command (m for help): a Partition number (1-4):

Hangi blmn aktif hale getirilecei seildikten sonra blm aktif olarak iaretlenir. Aktif blm aadaki gibi bir kt zerinde Boot kolonunda * ile iaretlenmi olacaktr:
Command (m for help): p Disk /dev/hda: 255 heads, 63 sectors, 1582 cylinders Units = cylinders of 16065 * 512 bytes Device Boot /dev/hda1 /dev/hda2 /dev/hda3 /dev/hda5 /dev/hda6 * Start 1 591 610 610 1097 End 590 609 1582 1096 1340 Blocks 4891761 145585 7815622+ 3911796 1959898+ Id 83 82 f b b System Linux Linux swap Win95 Ext'd (LBA) Win95 FAT32 Win95 FAT32

Disk /dev/hda: 255 heads, 63 sectors, 1340 cylinders Units = cylinders of 16065 * 512 bytes

Grntlenen rnek disk zerinde /dev/hda1 blm aktif olarak iaretlenmitir. ile bir disk zerinde yaplan deiikliklerin sonunda, deiikliklerin kalc duruma getirilmesi iin w (write) komutu kullanlr. Herhangi bir anda fdisk'ten q (quit) komutu ile klabilir. k komutu verildiinde henz kalc duruma getirilmemi tm deiiklikler iptal edilmi varsaylr.
fdisk

Bir disk zerinde yeni bir disk blm ve ilgili dosya sistemi tanmlandktan sonra bu dosya sisteminin, iletim sisteminin kullanmna hazr duruma getirilmesi gerekmektedir. Bu ilem ska "formatlama" olarak anlr. Yeni bir dosya sistemini kullanma hazr duruma getirmek iin kullanlan program mkfs programdr. rnein /dev/hda5 disk blmnn tanmlanmasndan ve ext2 tr bir dosya sisteminin bu blm zerinde alacak biimde dzenlemesinin fdisk ile yaplmasndan sonra mkfs program aadaki gibi altrlmaldr:
# mkfs /dev/hda5

Bu komut iletildiinde sistem birka dakika sre ile dosya sisteminin tanmlanmas iin alacak ve bu ilemin sonrasnda dosya sistemi kullanlabilir duruma gelecektir. Sistem ana belleinin yeterli olmad durumlarda kullanlmak zere, bellei olduundan daha bykmesine kullanmak zere takas (swapping) ileminden faydalanlr. Ana bellein az kullanlan blmleri geici olarak diske saklanr ve dier srelerin kullanm iin yer almas salanr. Diske saklanan bellek blgesinin gerekli olmas durumunda baka bir blm diskteki ile takas edilir. Linux iletim sistemi altran sistemlerde bu trden bir kullanm iin takas dosya sistemi (swap file system) vardr. Takas dosya sistemi trnde bir dosya sistemi tanmlanmasndan sonra dosya sisteminin kullanlabilir hale gelmesi iin mkswap programndan faydalanlr; mkfs takas dosya sistemleri iin uygun deildir. rnein /dev/hda3 disk blm zerinde bir takas dosya sistemi tanmlandnda
# mkswap /dev/hda3

komutu iletilerek dosya sisteminin kullanma hazr hale getirilmesi salanabilir.

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

17

TEMEL LINUX SSTEM YNETM KURS NOTLARI


mkfs program yeni bir dosya sistemi tanmlandnda yalnzca bir kez altrlmaldr. zerinde bilgilerin bulunduu bir dosya sistemi iin bu programn altrlmas dosya sistemlerinde depolanan verilerin tmyle silinmesi anlamna geleceinden dikkatli davranlmaldr.

Kk dosya sistemi yada / Linux iletim sistemi iin ok nemli bir yere sahiptir. Sistemin kk dosya sisteminin al esnasnda balanamamas durumunda sistemin al mmkn olmaz. Kk dosya sisteminin dolmas durumunda sistemin davran kestirilemez. Sistemde tanml dosya sistemlerinin ve bu dosya sistemlerine ilikin seimlerin bulunduu yaplandrma dosyas /etc/fstab yolundadr. Doal olarak dier dosya sistemlerinin al esnasnda balanabilmesi iin bu dosyann kk dosya sistemi zerinde yer almas gerekmektedir. Dosyann rnek ierii aadaki gibidir:
/dev/hda1 /dev/hda2 /dev/hda3 /dev/cdrom /dev/fd0 / /home swap /mnt/cdrom /mnt/floppy ext2 ext2 swap iso9660 auto defaults defaults defaults noauto,owner,ro noauto,owner 1 1 1 2 0 0 0 0 0 0

Bu tablonun ilk kolonu aygt dosyasn belirler. kinci kolon, bu dosya sisteminin dizin hiyerarisinin hangi dalna balanacana iaret eder. nc kolonda bu blmde yer alan dosya sisteminin tipi belirlenir. Drdnc kolonda belirtilen dosya sisteminin "balanmas" srasnda geerli klnacak seenekler virgl ile ayrlm biimde sunulur. Son iki kolon ise dosya sistemi snanmas esnasnda etkinletirilecek seenekleri belirler. Bir dosya sistemi ancak balama ilemi sonrasnda eriilebilir. Bal dosya sistemlerinden birisinin sistemden "ayrlmasndan" sonra bu dosya sistemine yeniden balanmasna dein ulamak mmkn olmayacaktr. UNIX'te balama ilemi mount program yardm ile gerekletirilir. mount programnn kullanmna ilikin rnekler ve aklamalar aada verilmitir:
# mount /dev/hda5 /digerdisk

Bu komut ile /dev/hda5 yolundaki disk blm iinde yer alan dosya sistemi /digerdisk yolundan eriilebilecek duruma getirilmitir. Bu dosya sisteminin ieriini incelemek iin /digerdisk dizinine gemek yeterli olacaktr.
# mount /dev/cdrom /mnt/cdrom

Bu komut ile sisteme bal CD-ROM okuyucusuna takl CD'nin ieriine /mnt/cdrom dizininden ulalabilecektir.
# mount -t vfat /dev/hda2 /mnt/dos /dev/hda2 yolundaki disk blm ierisinde yer alan VFAT tr dosya sistemi (-t vfat ile belirtilmektedir) /mnt/dos yolu ile eriilebilir klnmaktadr. # mount -o ro /dev/hda5 /digerdisk /dev/hda5 yolundaki disk blm ierisinde /digerdisk yolu ile eriilebilir klnmaktadr.

yer alan dosya sistemi salt okunur (-o ro ile belirtilmektedir)

Bal bir dosya sistemini ayrmak zere umount program kullanlr. Programa parametre olarak ayrlacak dosya sisteminin balama noktasn ya da ayrlacak dosya sisteminin zerinde bulunduu disk blmn temsil eden aygt dosyasnn yolunun verilmesi yeterli olacaktr: rnein
# mount -t vfat /dev/hda2 /mnt/dos

komutu ile balanan bir dosya sistemini ayrmak iin aadaki komutlarn herhangi birisinin altrlmas yeterli olacaktr:
# umount /dev/hda2 # umount /mnt/dos

Sistemden ayrlmas istenen bir dosya sistemi zerinde alan herhangi bir srecin var olmas durumunda, dosya sistemi sistemden ayrlamaz. 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 18

TEMEL LINUX SSTEM YNETM KURS NOTLARI Dosya sistemlerinin btnln snamak zere UNIX sistemlerinde fsck (file system check) program bulunmaktadr. Bu program sistemin hatal biimde kapanmas, elektrik kesintisi vb. durumlarda oluabilecek dosya sistemi tutarszlklarn tespit etmek ve mmkn olduu durumlarda da onarmak iin kullanlr. rnek kullanm aadaki gibidir:
# fsck /dev/hda3 fsck ile dosya sistemleri zerinde denetim yaparken dikkat edilmesi gereken nokta, denetim yaplacak dosya sisteminin ya sisteme balanmam olmas ya da salt-okunur biimde balanm olmas gereidir. Hata ile okunur-yazlr biimde balanm bir dosya sistemi zerinde fsck ile denetim yaplmas durumunda dosya sistemi btnl bozulabilir.

Dosya sistemlerinin doluluuna ilikin bilgiler df (disk free) program yardm ile edinilebilir. Parametre olarak bir dosya sistemi verilebilir; parametre verilmemesi durumunda bal tm dosya sistemlerine ilikin bo alan bilgileri bir rapor biiminde sunulur:
# df Filesystem /dev/hda1 /dev/hda2 1k-blocks 1011928 806368 Used Available Use% Mounted on 734300 548 226224 764856 76% / 0% /home

Drdnc (Available olarak iaretlenmi) kolonda dosya sistemlerinin bo alanlar Kilobayt (KB) cinsinden verilmitir. Linux iletim sistemini daha etkin bir ekilde kullanabilmek iin mevcut disklerin uygun biimde disk blmlerine ve dosya sistemlerine blnerek datlmas gerekmektedir. Bu konuda, sistemin kuruluu ncesinde strateji belirlenmeli ve bu stratejiye gre dalm gerekletirilmelidir. Ev kullanclar iin mevcut ana bellek ile ayn byklkte bir takas dosya sisteminin tanmlanmas ve ayrlabilecek tm dier alann tek bir dosya sistemi biiminde kk dosya sistemi olarak atanmas uygun olacaktr. Sistem tek bir kullanc tarafndan kullanlaca iin farkl dosya sistemlerine blme konusunda zel bir aba sarfedilmesine gerek yoktur. Herhangi bir biimde sunucu olarak kullanlacak bir sistemin (dosya sunucusu, e-posta sunucusu, uygulama sunucusu, web sunucusu vb.) ncelikle geici dosyalar iin kullanlan dosya sisteminin /tmp ayrlmas gereklidir. Bu dizinin kk dosya sistemi zerinde bulunmas durumunda kk dosya sisteminin tmyle dolmas mmkn olacaktr ve byle bir durumda sistemin ilevselliini korumas beklenemez. Sunucu olarak kullanlacak sistemlerde /var ve /usr dizinleri kanlmaz olarak ayr dosya sistemlerine yerletirilmelidir. Verilecek hizmetin zelliine gre farkl dizinlerin de ayr birer dosya sistemine yerletirilebilmesi ngrlebilir. rnein Apache ile web hizmetleri veren byk lekli bir sunucuda /usr/local/apache dizini iin de ayr bir dosya sistemi tanmlanmas dnlebilir.

10. Init Sreci ve alma Dzeyleri


Init program UNIX sistemleri iin zel bir nem tar. Bu program, sistemin al srecinde bir (1) numaral sre olarak iletime alnr ve sistemin kapanna dein almasn srdrr. Bu sre, al esnasnda balatlacak al betiklerini ve sonrasnda iletimi denetlenecek sreleri ynetir. Bir sistemin alma dzeyi, kullanclara sunulan hizmetlerin ve kaynaklarn belirli bir kmesini tanmlar. Bir alma dzeyinde X hizmeti alyor iken, bir dierinde ayn hizmet almyor olabilir. Herhangi bir anda bir sistem ancak ve ancak bir alma dzeyinde bulunabilir. Linux sistemlerinde yedi farkl alma dzeyi tanmlanmtr:

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

19

TEMEL LINUX SSTEM YNETM KURS NOTLARI

0 1 2 3 4 5 6

Sistem durdurulmu Sistem ynetimi durumu ok kullancl durum NFS destekli ok kullancl durum KULLANILMIYOR

Sistemin g anahtarnn kapatlmasna uygun hali Kullanc girilerine ak sistem bakm durumu; bu durumda a hizmetleri almamaktadr NFS hari tm a hizmetlerinin iler durumda olduu ok kullancl durum NFS dahil tm a hizmetlerinin iler durumda olduu ok kullancl durum KULLANILMIYOR

X Window destekli ok Sistem X Window pencereleme hizmeti sunmaktadr kullancl durum Yeniden balatma Sistem nce alma dzeyi 0'a indirilir ve daha sonra yeniden balatlmas salanr

Sistemin herhangi bir anda hangi alma dzeyinde olduunu renmek zere runlevel -program ile sorgulanabilir, program sonu olarak nce bir nceki alma dzeyini daha sonra ise gncel alma dzeyini grntleyecektir:
# runlevel N 3

Sistemin alma dzeyi yalnzca sfr (0) dzeyinde iken sorgulanamaz, bu dzeydeki bir sistem yalnzca g anahtar ile kapatlabilir. Sistemin alma dzeyi init program vastas ile deitirilebilir:
# init 1

Sistem alnda ya da init program ile alma dzeyinin deimesi esnasnda, /etc/inittab dosyasnn ierii bu yazlm tarafndan incelenerek ilenir. Bu dosya ierisinde init iin kritik neme sahip bilgi yer alr: a. Sistemin alta varsaylacak alma dzeyi b. altrlacak, takip edilecek ve durduunda yeniden balatlacak programlar c. Sistem yeni bir alma dzeyine getiinde altrlacak programlar Bu dosyada yer alan her satr : iareti ile ayrlm drt temel bileenden oluur.
kimlik:alma dzeyi listesi:altrma biimi:sre

Kimlik kolonunda iletilecek sre iin seilmi ve /etc/inittab dosyasnda biricik olmas salanm bir tanmlayc bulunur. Birden fazla satrn kimlik kolonu ayn olmamaldr. kinci kolonda, belirtilen srecin hangi alma dzeylerinde iletileceinin bir listesi yer alr. Son kolonda srecin balatlmasnda kullanlacak komut satr belirtilmektedir. nc kolon olan altrma biimi aadakilerden birisi olabilir:1 respawn: alr durumda deil ise sreci balat, durursa yeniden balat wait: Sreci balat ve sonlanana dein bekle once: Sreci bir seferliine balat; sonlanmasn bekleme, sonlandrsa da yeniden balatma sysinit: Bu sreci sistem konsollarn aktif hale getirmeden nce iletmi ol ve sonlanmasn bekle

Liste eksiksiz deildir, sadece ska kullanlan trleri gstermek iin verilmitir.

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

20

TEMEL LINUX SSTEM YNETM KURS NOTLARI powerfail: G kaynann kt durumda olduuna ilikin sinyal aldnda ilet, sonucunu bekleme powerwait: G kaynann kt durumda olduuna ilikin sinyal aldnda ilet, sonucunu bekle initdefault: Bu satrda belirtilen alma dzeyinin varsaylan al alma dzeyi olmasn sala rnek inittab satrlar aada verilmitir:
acilis:3:initdefault: si:S:sysinit:/etc/rc.d/rc.S rc:23456:wait:/etc/rc.d/rc.M c1:1235:respawn:/sbin/agetty 38400 tty1 linux

11. Sistem Al ve Kapan Sreleri


"Sistem al sreci", ileyicinin (CPU) elektrik ile beslenmeye balamas ile balar ve bir iletim sisteminin yklenerek kullanc grevlerini kabul edebilir hale ulamasna kadar devam eden srece verilen isimdir. IBM PC uyumlu sistemlerde bu sre kapsamnda ileyicinin beslemesinin salanmas ile birlikte BIOS olarak bilinen al ROM' unda yer alan programn iletilmesi salanr. BIOS programnn iletilmesi ve bu program tarafndan sistem snamalarnn tamamlanmasndan sonra, ala uygun cihazlar taranr ve BIOS ayarlar erevesinde ncelik verilen ilk cihazdan balayarak bir al kayd yklemeye allr. Aln yaplaca cihaz, IDE ya da SCSI sabit disk, CDROM nitesi ya da disket olabilir. Linux datmlarnn byk bir ksmnda al kaydn LILO ad verilen Linux ykleyicisi oluturur. BIOS, LILO'yu yklendikten ve balattktan sonra LILO kullancsnn karsna (arzu ediliyor ise) al mnsn getirir ve kullancdan tercihlerini alr. Bu tercihler dorultusunda LILO, Linux ekirdeini ykler ve ekirdein balatlmasn salar. almaya balayan ekirdek, kullanaca kk dosya sistemini bilir; kk dosya sisteminin hangisi olaca ekirdein ierisinde belirtilmektedir. ekirdek, kk dosya sistemini salt okunur biimde balar ve init programn ykleyerek altrr. Init program almaya baladnda, sistem zerinde balatlan ilk UNIX srecidir ve bir (1) numaral sre olarak kayt altna alnr. init sreci, nceki blmde anlatlan biimde /etc/inittab ayar dosyasnda belirlenen "sistem al" ilevlerini yerine getirir. ok kabaca, takas dosya sistemlerinin balatlmas ve kk dosya sisteminin fsck program aracl ile tutarllnn snanmas init iin sistem al ilevselliini oluturur. Tutarllk snamas esnasnda bulunan hatalar otomatik olarak ya da bunun baarlamad durumlarda operatr destei ile gerekletirilir. Hata snamasnn gerekletirilmesinden sonra kk dosya sistemi bu kez "yazlr-okunur" olarak yeniden balanr. Ve /etc/inittab dosyasnda belirlenen "varsaylan al dzeyi"'ne uygun al betiklerinin altrlmasna geilir.
/etc/rc.d/init.d dizininde sistem alnda balatlabilecek hizmetler iin birer betik bulunur. Bu betikleri altrarak hizmetlerin balatlmas ya da durdurulmas mmkn olacaktr. Bu dizinin bir listesi aadakine benzer: $ ls /etc/rc.d/init.d alsasound sobeled anacron apmd arpwatch atd crond dhsd functions gpm halt httpd identd ipchains kdcrotate keytable killall kudzu linuxconf nylogd lpd netfs network nfs nfslock pcmcia portmap postgresql pvmd random rawdevices rhnsd sendmail single smb snmpd sshd syslog xfs xinetd ypbind

Bu betikler ile ilgili hizmetleri balatmak iin parametre olarak start, durdurmak iin ise stop verilmelidir:
# /etc/rc.d/init.d/httpd stop # /etc/rc.d/init.d/httpd start

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

21

TEMEL LINUX SSTEM YNETM KURS NOTLARI rneinYykardaki iki satr ile web sunucu sisteminin durdurulmas ve balatlmas mmkn olacaktr. te bu dizinde yer alan betikler, dolayl olarak init sreci tarafndan iletilir. alma dzeyine gre alta altrlacak betiklerin bir listesi /etc/rc.d/rc3.d ve /etc/rc.d/rc2.d gibi adlandrlm dizinlerde yer alr. Bu dizinlerde ad S ile balayan betikler bu alma dzeyine geite, K ile balayan betikler ise bu al dzeyinden bir baka al dzeyine geerken iletilirler. alma dzeyine geite ve alma dzeyinden kta iletilen betikler say sras ile iletilirler. rnein /etc/rc.d/rc3.d dizininde yer alan S40network S10kudzu betiklerinden nce S10Kuzdu betii iletilecektir.

12. Yazlm Ynetimi ve RPM


Modern iletim sistemlerinin tm, yeni yazlmlarn sistem zerine birer "paket" olarak yklenebilmesine imkan veren dzenekler iermektedirler. Bir paket, yazlm ile ilgili tm dosyalar ierdii gibi yazlma ilikin dosyalarn hangi dizinlere ne biimde yerletirileceini ve mevcut sistem ayarlarnda ne gibi deiiklikler yaplmas gerektiine ilikin bilgileri de ierir. Kiisel bilgisayarlar zerinde MS-Windows iletim sistemini altranlarn kolayca anmsayabilecei gibi bu iletim sisteminin Denetim Masas altnda "Program Ekle/Kaldr" seenei yer almaktadr. Yazlmlarn sisteme kurulmas ve/veya sistemden kaldrlmas bu program aracl ile gerekletirilir. Paket yneticisi sayesinde "X kurulmadan Y'nin kurulmasna izin verme" biiminde kurallarn tanmlanabilmesi mmkn olmaktadr. Yeni nesil UNIX'lerin hemen hepsi bir paket yneticisi iermektedir. Paket yneticisi temel olarak yeni yazlmlarn kolayca yklenmesini, kurulu paketlerin btnlnn snanmasn ve artk gereksinim duyulmayan paketlerin sistemden silinmesini kolaylatracak bir yazlmdr. Bir sisteme paket halinde kurulacak yazlmlarn byk bir blm /usr dizinine kurulmak isteyecektir. Bu nedenle paket yneticisinin sistem yneticisi dnda bir kullanc tarafndan kullanlmas ve yazlm kurulmas genellikle mmkn olmaz. Red Hat Linux ve bu datmdan tretilen datmlarda (Mandrake, Immunix vb.) Red Hat Package Manager (RPM) isimli paket yneticisini kullanr. Bu yazlm kullanlarak paketlenmi tm yazlmlar .rpm uzantsna sahiptir. RPM sayesinde web zerinde, ftp zerinde ya da bir disk zerinde yer alan paketlerin kurulmas mmkn olmaktadr; paketlerin sistem ile uyumluluu ya da uyumsuzluu RPM tarafndan denetlenebilmektedir. Komut satrndan rpm programnn farkl parametreler ile altrlmas yolu ile farkl amalar gerekletirilebilir. KDE ve Gnome grafik arayzleri ile birlikte RPM'in daha kolay kullanlabilmesine izin veren grsel arabirime sahip uygulamalar da datlmaktadr. Sistem zerinde kurulu tm paketlerin listelenmesini salamak zere aadaki komutun verilmesi yeterli olacaktr:
# rpm -qa

Ad belirli bir paketin sistemde kurulu olup olmadn renmek zere rpm'i grep ile birlikte aadaki gibi kullanmak mmkndr:
# rpm -qa|grep apache

Disk zerindeki bir paketi sisteme kurmak iin aadaki gibi bir komut uygun olacaktr:
# rpm -i apache-1.3.14-i386.rpm

Ftp ya da web zerinden bir paketi kurmak zere paket adnn yerine paket URL'si yazmanz yeterli olacaktr:
# rpm -i

ftp://ftp.linux.org.tr/deneme/apache-1.3.14-i386.rpm

# rpm -i http://www.linux.org.tr/deneme/apache-1.3.14-i386.rpm

Kurulu bir paketi sistemden kaldrmak zere aadaki gibi bir komut yeterli olacaktr:
# rpm -e apache

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

22

TEMEL LINUX SSTEM YNETM KURS NOTLARI Kurulu bir paket ile ilgili bilgi almak zere aadaki gibi bir komut satr kullanlmaldr:
# rpm -qi apache

Henz kurulmam bir paket ile ilgili bilgilere erimek zere aadaki gibi bir komut satr uygun olacaktr:
# rpm -qpi apache-1.3.14-i386.rpm

13. Kullanc Kotalar


ok sayda kullancya hizmet veren bir sistemde kullanclarn dosya sistemleri zerinde depolayabilecei bilgi miktarnn snrlanmas gereklidir; aksi durumda dikkatsiz ya da art niyetli bir kullanc dosya sistemini sonuna dein doldurabilir. Depolama alan snrlamas UNIX sistemlerinde oka "kota" olarak anlr. Kullanc ya da grup baznda kota tanmlar dosya sistemi baznda verilebilir. Bu balamda, /home ve /calisma iki ayr dosya sistemi ise, ikisi iin de ayr kota tanmlamas gerekli olabilir. Aksi halde /home dosya sistemi iin tanmlanan kotalar /calisma dosya sistemi iin geerli olamayacaktr. Kullanc ve gruplar iin kotalar tanmlamadan nce ilk yaplmas gereken kota desteinin sisteme verilmesidir. Sistem ile birlikte gelen standart ekirdek ok yksek ihtimalle kota desteini ieriyor olacaktr. ermemesi durumunda kota destekli yeni bir ekirdein hazrlanmas gerekli olacaktr. Dosya sistemi baznda kotalar aktif hale getirmek zere /etc/fstab dosyas ierisinde kk deiikliklerin yaplmas gerekecektir. Kullanc kotalarn aktif hale getirmek iin usrquota, grup kotalarn aktif hale getirmek iin ise grpquota szckleri dosya sistemlerine ilikin parametre kolonuna eklenmelidir:
# cat /etc/fstab /dev/sda1 /dev/sda3 /dev/sda4 none / /home swap /proc ext2 ext2 swap proc defaults,usrquota defaults,usrquota defaults defaults 1 1 0 0 1 2 0 0

rnekte, / ve /home dosya sistemleri iin kullanc kotalar aktif hale getirilmitir. Dosya zerinde bu deiiklikler yapldktan sonra dosya sistemleri ya ayrlp yeniden balanmal ya da sistemin yeniden balatlmas salanmaldr. Bu ilemin ardndan kotalar aktif hale getirmek iin gerekli son adm olan quotacheck program iletilmeli ve kota kaytlarn tutacak dosyalarn yaratlmas salanmaldr. Komut iin uygun parametreler ile birlikte ilgili satr aadaki gibi olmaldr:
# quotacheck -auvg

Bu komutun iletiminden sonra kotann aktif hale getirildii dosya sistemlerinin kk dizinlerinde (rnekte / ve /home) quota.user ve/veya quota.group isimli dosyalar oluacaktr. Kotalarn aktif hale getirilmesinden sonra quotaon program ile kota dzeneinin geerli klnmas, quotaoff ile ise geersiz klnmas salanabilir. Komut satrlar aadaki gibi olmaldr:
# quotaon -auvg # quotaoff -auvg

Kota dzeneini alta otomatik balatmak zere quotaon programnn uygun parametreler ile al betiklerinden birisinin ierisine yazlmas nerilmektedir. RedHat Linux datmnda quotaon program alta n tanml olarak balatlmaktadr. Bir kullancnn belli srelerde kota snrn esnetmesi gerekebilir. rnein 20MB'lk bir kota atadnz kullancnn gnlne kotasn 25MB'a esnetebiliyor olmas her defasnda kota arttrm talebi ile sistem yneticisine gitmesini engelleyebilir. Bu esneklii salamak zere kavramdan faydalanlr: Esnek (soft) kota, kat (hard) kota ve esnetme sresi (grace period). Kullanclara atanan esnek kotalar, esnetme sresi kadar bir sre boyunca kat kota ile belirlenen snra dein alabilir. rnein 5MB esnek kotas, 10MB kat kotas olan ve esnetme sresi 7 gn olan bir kullanc, 5MB'lk kotasn doldurduktan sonra 7 gn amamak kayd ile 10MB'a kadar veri depolayabilir. Ancak kullanc 7 23

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

TEMEL LINUX SSTEM YNETM KURS NOTLARI gnlk esnetme srecinin sonunda esnek kota snrnn altna inmedii taktirde dosya sistemine herhangi bir biimde yazma hakkna sahip olmayacaktr. Varsaylan esnetme sresi ayarlarn gzlemlemek ve deitirmek zere edquota program aadaki gibi altrlmaldr:
# edquota -t Time units may be: days, hours, minutes, or seconds Grace period before enforcing soft limits for users: /dev/sda3: block grace period: 7 days, file grace period: 0 days /dev/sda2: block grace period: 7 days, file grace period: 0 days

Verilen rnekte /dev/sda3 ve /dev/sda2 dosya sistemleri yedi gnlk esnetme sreleri ile kullanlacak biimde ayarlanmtr. Kullanc baznda esnetme sresi ayarlarn deitirmek iin edquota aadaki gibi balatlmaldr:
# edquota -t selami

Kullanc baznda kota atamak ve atanan deeri gncellemek iin edquota aadaki gibi iletilmelidir:
# edquota selami Quotas for user selami: /dev/sda3: blocks in use: 153588, limits (soft = 10000, hard = 12000) inodes in use: 3359, limits (soft = 0, hard = 0) /dev/sda2: blocks in use: 8568, limits (soft = 10000, hard = 12000) inodes in use: 7, limits (soft = 0, hard = 0)

Verilen rnekte selami kullancs iin her iki dosya sistemi zerinde de 10MB'lk esnek ve 12MB'lk kat olmak zere kotalar tanmlanmtr. Kotalar dzenlemek iin zellikle bir dzenleyici yazlm tanmlamadysanz vi program balatlacaktr. Bu program ile rahat alamyor olmanz durumunda aadaki gibi iki satrn iletilmesini salayacak pico programnn kullanlmasn salayabilirsiniz:
# EDITOR=/usr/bin/pico # export EDITOR

Sistemdeki kotalar ile ilgili istatistiksel bilgilere erimek zere repquota program kullanlr. Tm dosya sistemleri ile ilgili kota raporu edinmek iin aadaki komut satr uygun olacaktr:
# repquota -a Block limits User root -bin -uucp -man -selami -burak -used 175419 18000 729 57 13046 2838 File limits soft hard grace 0 0 0 0 0 0 0 0 15360 19200 5120 6400 used soft hard grace 14679 0 0 735 0 0 23 0 0 10 0 0 806 1500 2250 377 1000 1500

14. Sistem Bilgileri ve Baarm


Sistem yneticisinin sistem kaynaklar ve genel durumu hakknda bilgi alabilmesi iin bir ok kaynak mevcuttur.
/proc dosya sistemi eer ekirdekten destek verilmise sistem her aldnda oluturulur. Sanal bir dosya sistemi olan /proc, sistem yneticisinin baz ekirdek parametrelerini alma srasnda deitirebilmesine ve sistemin genel durumu ile ilgili olarak bilgi alabilmesine yardmc olur. /proc

dizini altnda yer alan baz dosyalar ve ierikleri aadaki listede verilmitir: 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 24

TEMEL LINUX SSTEM YNETM KURS NOTLARI


/proc/cpuinfo: /proc/meminfo: /proc/modules: /proc/mounts: /proc/pci:

ilemci hakknda detayl bilgi sistemin hafza kullanmu hakknda detayl bilgi o anda kullanmda olan ekirdek modlleri

o anda sisteme bal blok aygtlar ve dosya sistemleri

sistemin PCI kaynaklar hakknda detayl bilgi

Sistem yneticisi veya normal bir kullanc sistemin hafza kullanm ile ilgili detayli bilgilere ulamak iin free programn kullanabilir. Sistemde alan srelerin sistem kaynaklarnn kullanm hakknda detayl bilgi almak iin top program kullanlabilir. top program varsaylan ayarlarna gre srelerin dizilimi en fazla ilemci gc kullanan en yukarda olmak zere yukardan aaya doru yapar.
uptime komutu ile sistemin aldndan bu yana geen zaman grlebilecei gibi, yk ortalamas (load average) ad altnda sistemdeki ilemci gcnn kullanm oran 1, 5, 15 dakikalk istatistikler ile verilmektedir. Yk ortalamasnn 1.00 olmas ilemci gcnn tam kapasite ile kullanldn belirtir, daha yksek olmas ise sistemin ar yklenmeye baladn gsterir. Yk ortalamas bilgisine top program vastas ile de eriilebilir.

Sistem kaynaklarnn grntlenmesi ile ilgili bir dier program vmstat'tr. Sanal hafza kullanm, giri/k ilemleri ve ilemci aktivitesi ile ilgili bilgiler verir. vmstat'n onemli bir kts son kolonunda yer alan ilemcinin bo geirdii zaman yzdesidir (idle time). vmstat program belirli aralklarla altrlrsa ok daha salkl bilgi alnabilir. zellikle CPU Idle Time iin vmstat programnn ardarda almas gerekmektedir. Bu ardarda alma periyodunu salamak iin vmstat komutuna verilecek saysal bir parametre, vmstat'n ka saniye aralkla altrlacan belirtir:
$ vmstat 1

Yukardaki komut satr ile vmstat'n 1 saniye aralkla sistem zerinde lm yapmas salanm olur.

15. Sistem Kayt Sunucusu ve Kaytlarn ncelenmesi


UNIX sistemlerinde alan sunucular durum raporu, uyar mesaj ve hata mesaj ktlarn, sistem kayt sunucusuna gnderirler. Sistem kayt sunucusu, kendisine gelen sistem gnlne ekleme bavurularn alarak ilgili sistem gnl dosyasna eklerler. Sistem yneticisi, hatal alan bir sunucuyu tespit etmek iin ya da hatal alt bilinen bir sunucunun tam olarak nerede ve nasl bir hata yaptn grmek iin sistem gnl dosyalarndan faydalanr. alan sunucularn diledikleri bilgileri sistem gnlne yazabilmeleri iin sistem kayt sunucusu (syslogd) alr durumda olmaldr. Sistem kayt sunucusunun almyor durumda olmas halinde aadaki komut ile almasnn salanmas mmkndr:
# /etc/rc.d/init.d/syslog start

Sistem kayt sunucusu belirli hizmetlerin belirli ncelik gruplarna gre ayrtrlmas yolu ile sistem gnln tutar. rnein kayt sunucusu, posta sunucu yazlmna ilikin hata mesajlarn filtreleyerek bunlar ayrca ileyebilir. Sistem gnlne eklenen her kayt hizmet tr ve hizmet ncelii bilgileri ile iaretlenir. Hizmet trlerinin bir listesi aada verilmitir: auth: Kullanc tanmlamas (authentication) authrpiv: Kullanc yetkileri ykseltmesi cron: Cron ve at sunucusu ile ilintili daemon: Hizmet sunucu yazlmlar ile ilintili kern: ekirdek ile ilintili 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 25

TEMEL LINUX SSTEM YNETM KURS NOTLARI lpr: Yazc hizmetleri ile ilintili mail: Posta sistemi ile ilintili news: Haber bekleri hizmetleri (NNTP) ile ilgili local0 local7: Yerel kullanm iin ayrlm hizmet tr belirteleri Olas hizmet ncelii belirtelerinin bir listesi artan ncelik sras ile aada verilmitir: debug: Hata ayklama bilgisi info: Muhtelif bilgi notice: Not edilmeye deer bilgi warning: Uyar niteliindeki bilgi error: Hatalar crit: Kritik hatalar alert: Alarmlar emerg: Acil durumlar
syslogdnin ayar

dosyas /etc/syslogd.conftur. Bu dosyadaki her satr aadaki biimdedir:


kaytdosyas

hizmettr.ncelik

Aada ayar dosyasndan rnek satrlar ve aklamalar yer almaktadr:


*.emerg *

Her hizmet tr iin acil durum nceliine sahip gnlk kaytlarnn sisteme giri yapm tm kullanclarn ekranlarnda grntlenmesi salanr.
authpriv.* /var/log/secure

Yetki ykseltimine ilikin her ncelikteki gnlk kaydnn /var/log/secure dosyasna ynlendirilmesi salanr.
kern.!=info /dev/console

ekirdek tr hizmetlerden gelen ve ncelik bilgisi info olmayan tm mesajlarn /dev/console aygtna ynlendirilmesi salanr.
Daemon.notice /var/log/messages

Hizmet sunucu yazlmlar ile ilintili not edilmeye deer bilgiler ve daha ncelikli tm bilgiler /var/log/messages dosyasna ynlendirilir.
/etc/syslog.conf dosyas zerinde yaplan her deiiklikten sonra yazlma HUP sinyalinin gnderilmesi gerekmektedir. Bu ilemi kolayca gerekletirmek zere aadaki gibi bir komut satrnn iletilmesi uygun olacaktr: # /etc/rc.d/init.d/syslog restart

16. leri Tarihe Grev Atama


leri tarihe grev atamas, kullancnn bilgisayar banda olamad zamanlarda ya da periyodik olarak belli zamanlarda programlarn altrlabilmesi iin kullanlr. Geceleri nternet balantsnn bo olduu saatlerde gerekletirilecek bir dosya transfer ilemi iin ileri tarihe grev atamas istenebilir. Benzer biimde her gece sistem zerinde rutin kontrolleri gerekletirecek bir betik de sistem yneticisi tarafndan ileri bir tarihten itibaren periyodik olarak iletilmek zere atanabilir. leri tarihte yalnzca bir seferliine iletilecek komutlar iin at program kullanlr. rnein bir dakika sonra bir komut iletmek iin
$ at now + 1 minute "cp /etc/hosts >/tmp"

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

26

TEMEL LINUX SSTEM YNETM KURS NOTLARI biiminde bir giri yaplmas yeterli olacaktr. rnek komut, /etc/hosts dosyasnn bir kopyasnn /tmp dizini altnda oluturulmasn salamaktadr.
$ at 10am Jan 1 "/usr/local/bin/kartgonder burak@linux.org.tr"

Yukardaki gibi bir komut ile nmzdeki ilk yln ilk gnnde saat 10:00'da /usr/local/bin/kartgonder programnn belirtilen parametreler ile iletilmesi salanabilir. rnekte, programn kendisine verilen adrese standart bir doum gn kutlama mesaj gnderdii varsaylmtr.
atq program altrlmak zere kuyrukta bekleyen ilerin bir listesini grntler; ilk kolonda greve atanan sra numaras grlmektedir: $ atq 4 2001-01-27 20:17 a

leri tarihte iletilmek zere atanm bir grevden vazgemek ve bu grevi iptal etmek iin atrm program kullanlr:
$ atrm 4 at ile ileri tarihe atanan grevlerin altrlabilmesi iin atd (at sunucusu) alr durumda olmaldr. almaz durumda ise aadaki gibi bir komut ile balatlabilir: /etc/rc.d/init.d/atd start

Dzenli iletilecek grevler iin cron mekanizmasndan faydalanlr. Cron grevleri, periyodik olarak iletilecek grevlerdir ve crond (cron sunucusu) tarafndan iletilirler. Cron sunucusu almaz durumda ise aadaki gibi bir komut ile balatlabilir:
/etc/rc.d/init.d/crond start

Dzenli olarak iletilecek grevlerin bir listesini almak zere crontab program -l parametresi ile iletilmelidir. Komutun kullanmna ilikin rnek kt aadaki gibidir:
# crontab -l 0 0 * * * /usr/local/bin/disktemizle 0,12 * * * 1 /usr/local/bin/denetle

Cron ile atanan grevlerin belirlenmesinde ve sorgulanmasnda kullanlan format alt kolondan oluan bir liste biimindedir. Listenin son kolonu, nceki be kolon aracl ile belirlenen tarih/saatte altrlacak komut satrn gstermektedir. Zaman belirteci olarak kullanlan ilk be kolonun aklamas aada verilmitir: Dakika: 0-59 arasnda dakika belirleyici Saat: 0-23 arasnda saat belirleyici Ayn gn: 1-31 arasnda gn belirleyici Ay: 1-12 arasnda ay belirleyici Haftann gn: 0-6 arasnda haftann gn belirleyici (0=Pazar, 1=Pazartesi ...) Zaman belirleyici olarak kullanlan alanlar boluk sembol ile ayrlmaldr. Yldz (*) iareti "olas tm deerler" anlamnda kullanlmaktadr. Birden fazla deer virgl (,) iareti ile ayrlabilir. Bir deer aral eksi (-) iareti ile belirtilebilir. Yukarda verilen iki rnek satr aklamalar ile birlikte aada grlmektedir:
0 0 * * * /usr/local/bin/disktemizle

Bu satrda, disktemizle programnn her gece yars (00:00) altrlmas salanmaktadr.


0,12 * * * 1 /usr/local/bin/denetle

Bu satrda denetle programnn her hafta haftann ilk gn (Pazartesi) gece yars (00:00) ve gn ortasnda (12:00) altrlmas salanmaktadr.

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

27

TEMEL LINUX SSTEM YNETM KURS NOTLARI Dzenli iletilecek grevler listesinde gncelleme yapmak zere crontab program -e parametresi ile altrlmaldr:
# crontab -e

Dzenli iletilecek grevleri dzenlemek iin zellikle bir dzenleyici yazlm tanmlamadysanz vi program balatlacaktr. Bu program ile rahat alamyor olmanz durumunda aadaki gibi iki satrn iletilmesini salayacak pico programnn kullanlmasn salayabilirsiniz:
# EDITOR=/usr/bin/pico # export EDITOR

17. A Ayarlar
Modern bir iletim sisteminin salamak ile ykml olduu hizmetlerin ilki a balantsnn salanmasdr. UNIX, tarihsel geliimi erevesinde ilk TCP/IP gerekletiriminin hazrland iletim sistemidir ve bu zellii nedeni ile nternetin geliiminde nemli rol oynamtr. Linux altnda a ayarlarnn yaplandrlmas iin bir ok farkl seenek mevcuttur. A ayarlarnn yaplandrlmasnda kullanlan dosyalar dzenleyen, kullanm son derece kolay programlar tercih edilebilecei gibi, ayarlar ilgili yaplandrma dosyalarnn elle deitirilmesi yolu ile gerekletirmek de mmkndr. A ayarlarn hzla ve kolayca gerekletirmek zere netconfig program kullanlabilir. netconfig program her Linux datmnda bulunmayabilir, ancak popler datmlardan Red Hat ve trevlerinin tm bu program barndrmaktadr.
netconfig program /etc/sysconfig/network dosyasn ve /etc/sysconfig/network-scripts dizini altnda yer alan dosyalar kullancdan alnan parametreler aracl ile yeniden dzenleyen bir arac programdr.

Program balatldnda birincil a badatrcsna verilmek istenen IP adresini, bu IP adresi iin ilgili a maskesini ve a geidini soracaktr. Verilen yantlar dorultusunda /etc/sysconfig/network ve /etc/sysconfig/network-script/ifcfg-eth0 dosyalar yeniden dzenlenecektir. IP adresinin bir DHCP havuzundan alnyor olmas durumunda yaplandrma dosyalar buna uygun biimde dzenlenecektir. A ayarlar ile birlikte DNS sunucu bilgileri de netconfig tarafndan /etc/resolv.conf dosyas ierisine eklenecektir. An alr durumda olmas iin gereksinim duyulan a ayarlar ifconfig program ile yaplr. ifconfig, a badatrcnzn kullanaca balant kapslleme modelinden, donanm adresine (MAC), kulland protokol adresinden protokol yayn (broadcast) adresi, a maskesi ve yayn durumuna dein bir ok deikeni dzenlemenize imkan veren bir programdr. Sistemin a ayarlar yaplandrlm ise, sistem aldnda ilgili a badatrcsnn ayarlar otomatik olarak yaplr ve aksi zellikle istenmedike a badatrcs aktif hale getirilir. alan sistem zerinde aktif olan ve olmayan bir badatrcnn ayarlarn yapmak zere ifconfig program kullanlr. eth0 isimli ethernet a badatrcsna bir IP adresi atamak zere aadaki gibi bir komut satr iletilmelidir:
# ifconfig eth0 192.168.1.1 up

Yukardaki komut iletildiinde eth0 ad ile kullanlan badatrcya 192.168.1.1 IP adresi verilecek ve eer aktif deil ise up parametresi ile badatrcnn aktif hale getirilmesi salanacaktr. ifconfig program, verilmeyen baz seenekler iin kendi varsaylan deerlerini atayacaktr. Yukardaki rnekte IP adresinin 192.168.1.1 olarak seilmi olmas nedeni ile a maskesi 255.255.255.0 olarak kabul edilmitir. Eer sistem alt alara blnm bir a zerinde yer alyor ise 255.255.255.0 yerine farkl bir a maskesi kullanm gerekli olabilir; bu durumda IP adresi ile birlikte a maskesinin de bildirilmesi gerekecektir. Bu durumda aadaki komut satr uygun olacaktr:
# ifconfig eth0 192.168.1.1 netmask 255.255.255.128 up

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

28

TEMEL LINUX SSTEM YNETM KURS NOTLARI


ifconfig program yalnzca a badatrcs ayarlarn gerekletirmek iin deil, mevcut yaplandrmay incelemek iin de kullanlabilir. ifconfig eth0

biimindeki bir komut satr ile eth0 isimli badatrcnn ayarlarnn grntlenmesi salanacaktr.
ifconfig -a

komutu ise sistemde aktif tm badatrclarn ayarlarn grntlemek amacyla kullanlabilir.


ifconfig program bir ok ileve sahip olduu iin ok sayda parametreye sahiptir. Program hakknda daha detayl bilgi edinmek zere programn klavuz sayfasn incelemek uygun olacaktr. Klavuz sayfalar yalnzca ifconfig iin deil, sistem zerinde var olan hemen her ayar dosyas ve program iin de temel bavuru kayna nitelii tamaktadr.

Yerel adaki veya nternetteki sistemlere isimleri ile ulalmaya alldnda sistem bu isimleri IP adreslerine dntrecektir. Sistem isimlerini IP adreslerine dntrmek iin sistemin bavuraca kaynaklar /etc/hosts dosyas, NIS ve an DNS sunucusudur.
/etc/hosts dosyas, sistem isimlerini IP adresleri ile eletirme iini duraan bir biimde gerekletirmek iin kullanlabilir. rnek bir dosya aada verilmitir: 127.0.0.1 192.168.1.1 192.168.1.2 192.168.1.3 212.50.50.30 localhost laetitia laetitia.homenet trust trust.homenet pengo pengo.bddx.net ankara ankara.linux.org.tr

/etc/hosts dosyasnn yazm kurallarna gre birinci kolon IP adresi ve ayn satrda yer alan boluk ile ayrlm isimler ise bu IP adresi ile elenen sistem isimleridir. Buna gre rnein telnet trust gibi bir komut verildiinde sistem /etc/hosts dosyas kaytlarndan bu sistemin IP adresinin 192.168.1.2 olduunu renecek ve balanty bu IP adresine gerekletirecektir. Bu anlamda telnet trust ve telnet trust.homenet komutlar arasnda sonu asndan herhangi bir fark yoktur.

dosyasnn kullanm ile yalnzca duraan IP adresi ve sistem ad elemesi gerekletirilebilir. rnein IP adresinin 212.50.50.30 olarak bilindii ankara.linux.org.tr isimli sistemin sistem yneticisinin ani bir kararla sistemin IP adresini deitirdiini dnelim. Byle bir deiiklik sonrasnda elimizdeki IP adresi bilgisi yanl olacak ve balanmak mmkn olamayacaktr. Bu nedenle kk yerel alar iin /etc/hosts dosyas ile isim ve IP adresi elemeleri uygun olurken byk alar ve nternet iin DNS kullanm zorunluluk arzetmektedir.
/etc/hosts

Sistemin isimleri IP adreslerine ve IP adreslerini isimlere eleme konusundaki almas isim zme olarak adlandrlr. sim zme sreci srasnda kullanlacak DNS sunuculara ilikin IP adresleri /etc/resolv.conf dosyasnda yer alr. Bu dosyadan DNS sunuculara ilikin satrlar aadaki biimdedir:
nameserver 192.168.1.5

rnek satrda sistemin DNS sorgularnn 192.168.1.5 adresli DNS sunucusuna ynlendirilmesi salanmaktadr. Bu dosyaya birden fazla nameserver satr ile birden ok DNS sunucu tanmnn girilmesi mmkndr; sistem her zaman en stteki satra yksek ncelik atayacak ve ancak bu sunucuya eriilememesi durumunda bir alttaki satrda belirlenen sunucuya balanlmaya allacaktr. Ayn alanda (domain) bulunan sistemler birbirlerine sadece isimlerini (alan ad hari) vererek ulaabilirler. Bunu salamak zere kullanlan sisteme, hangi alan ad ierisinde yer aldnn bildirilmesi gerekmektedir. Aadaki satr bu konuda bir rnek tekil eder:
domain linux.org.tr

Yukardaki satr /etc/hosts dosyasna eklendikten sonra adresinin son ksm .linux.org.tr olan sistemlere yalnzca sistem adnn ilk ksmnn verilmesi yolu ile eriilmesi mmkn olacaktr.

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

29

TEMEL LINUX SSTEM YNETM KURS NOTLARI

18. Temel A Hizmetleri ve inetd


Sunucu kaynaklarnn ok kt olduu gnlerde gelitirilen bir teknoloji olan inetd sunucusu, en az kaynak kullanm ile olabildiince ok a hizmetinin salanmasna imkan verecek bir dzenek tekil eder. Ska nternet Sper Sunucusu olarak da anlan inetd, birden ok a hizmeti iin kukla vazifesi grr. inetd, almaya baladnda birden fazla a hizmetini kendi bana veriyormuasna a balant noktalarn dinlemeye balar. Dinledii balant noktalarndan herhangi birine bir hizmet talebi geldiinde bu istei alr ve ilgili hizmet salayc program altrarak istein karlanmasn salar. Hizmetin karlanmasndan sonra hizmeti salayan program sonlanr ve inetd almasn srdrr. Bu alma biimi sayesinde, herhangi bir anda tm hizmet salayc yazlmlarn almasnn nne geilmi olur; hizmet salayc yazlmlar yalnzca gerektiinde altrlacaktr ve bu ok ciddi miktarda bellek tasarrufu salayacaktr.
inetd nin sunduu modelin alternatifi, tm hizmet salayc yazlmlarn ayr birer sunucu olarak altrlmasdr. Bu modelde, arada inetd ya da benzeri bir arac olmayacandan hizmet daha yksek performans ile sunulabilecek, ancak bellek tketimi ciddi biimde artacaktr. Hangi hizmetlerin inetd aracl ile, hangilerinin dorudan ayrk sunucu yazlmlar ile salanaca konusundaki kararn belirleyicisi yazlmn kullanm skl olmaldr. Youn biimde kullanlan hizmetler iin ayrk sunucu yazlmlar tercih edilmelidir. inetd

sunucusu sistemde almaz durumda olmas halinde aadaki komut ile balatlabilir:
# /etc/rc.d/init.d/inet start

Sunucu, altrlmas ile birlikte /etc/inetd.conf yolundaki ayar dosyasn okur ve iinde tanmlanan hizmetleri sunmaya balar. /etc/inetd.conf dosyasnn her bir satr sras ile aadaki alanlardan oluur:
hizmet_ad soket_tr protokol seimler kullanc sunucu_yazlm parametreler

Aada, bu dosyadan satr rnek olarak verilmitir:


ftp stream tcp tcp nowait nowait root root /usr/sbin/in.ftpd /usr/sbin/in.telnetd in.ftpd in.telnetd telnet stream

Bu dosyadaki ilk kolon hizmet adn belirler. Hizmet ad, /etc/services dosyasnda bir hizmet balant noktas ile eletirilmi olmaldr. Drdnc kolonda sunucu yazlmnn hangi kullancnn yetkileri ile altrlacana ilikin bilgiler yer almaktadr. Beinci kolonda altrlacak programn tam yolu, son kolonda ise programn parametreler listesi yer alr. dosyasnda, hizmet isimlerinin a balant noktas tanmlar ile elemesi yer alr. Bu dosya ieriinden rnekler aada yer almaktadr:
/etc/services ftp telnet talk /etc/inetd.conf 21/tcp 23/tcp 517/udp

dosyasnda verilen her satr, yeni bir hizmeti tanmlamaktadr. Aa alan her farkl balant noktas yeni gvenlik risklerini de beraberinde getirmektedir. Bu nedenle, kullanlmayan tm a hizmetlerinin kapatlmas nerilir; /etc/inetd.conf dosyas bu trden hizmetlerin kapatlmas iin balang noktas tekil eder.
inetdnin ayar dosyasnn deiikliinden haberdar olmasn salamak zere HUP sinyalinin her deiiklik sonrasnra inetd srecine gnderilmesi gerekmektedir. Bu amala nce ps program vastas ile inetd srecinin sre numarasnn tespit edilmeli ve sonrasnda kill program ile bu srece HUP sinyali gnderilmelidir. Bu ilemi basitletirmek zere aadaki komut satr iletilebilir: # /etc/rc.d/init.d/inet restart

19. Linux ekirdei


letim sisteminin ekirdei kullanc yazlmlar ile donanm arasnda bir arac olarak alr. UNIX ekirdeinin temel grevleri arasnda sistem kaynaklarn kullanclar ve kullanc sreleri arasnda etkin biimde paylatrmak yer alr. 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 30

TEMEL LINUX SSTEM YNETM KURS NOTLARI Linux ekirdei, monolitik bir yapya sahiptir; tm ekirdek tek ve byk bir program biimindedir. Byle bir yapda ekirdei oluturan tm bileenler birbirleri iin tanmlanan alanlara eriebilmekte ve ilem yapabilmektedir; bu nedenle monolitik yaplarn karmak olduunu ne srmek mmkndr. Alternatif ekirdek mimarisi mikro-ekirdek mimarisidir. Bu trden bir ekirdek mimarisinde, ekirdein ilevsel bileenleri kendi balarna bir btn tekil eden paralardan olumutur. ekirdein en kritik kesimi bu bileenler arasnda mesajlamay salayan kesimidir. Teorik olarak kusursuz ve daha esnek olarak grnen bu mimari ou durumda yeni bileenleri sisteme eklemeyi zorlatrmaktadr. Linux, monolitik yapsn daha esnek bir biime getirmek zere dinamik olarak yklenebilir ekirdek modllerini kullanmaktadr. Modller gerek duyulduunda ekirdee eklenebilir, kullanlmadklar zaman ise kartlabilir. Bu biimde ekirdein dinamik olarak yaplandrlmas salanmaktadr. Linux ekirdeinde modl olarak derlenen paralar genellikle aygt srcleri (ses kart, cd-rom, USB aygtlar, vb...) ve temsili aygtlardr (a aygtlar, dosya sistemleri vb). Normal artlar altnda, Linux datm ile birlikte gelen ekirdek pek ok aygt iin destek salyor ve kararl bir biimde alyor olacaktr. Desteklenmeyen aygtlar iin destek eklemek ya da performans arttrmak zere gelimi ayarlar gerekletirmek zere mevcut ekirdei yeniden derlemek uygun olacaktr. ekirdein yeni srmnn derlenmesi ve kurulmas yolu ile de daha yksek performansl, daha kararl ve daha fazla aygt destekleyen bir dzenein kurulmas salanabilir. Ancak ekirdein yeniden derlenmesi ya da yenilenmesi yalnzca deneyimli sistem yneticileri iin tavsiye edilen bir faaliyettir; ekirdek yenileme srecinde yaplacak bir hata sistemi almaz hale getirebilir. Deneyim sknts ierisindeki sistem yneticilerine tavsiye edilmez. Sistem yneticisi ne denli tecrbe sahibi olsa da, ekirdek ayarlarnda gzden kaan bir seenek yznden (ya da verilmeyen bir bileen destei nedeniyle) sistem yeni derlenen ekirdei hi bir zaman aamayabilir. Bir dier olaslk, sistemin almas ancak beklenmedik bir anda ilemeyi durdurmas olabilir Bu yzden grev-kritik makinelerde ve retimde kullanlan makinelerde, sistem salaycs tarafndan derlenmi ve paketlenmi bir ekirdein kurulmas ya da daha nceden benzer bir makinede derlenip sorunsuz altndan emin olunan bir ekirdein esas sunucuya tanmas nerilir. Bir ekirdek srmnn destekledii donanmlarn tam bir listesine http://www.linuxdoc.org/ adresindeki HARDWARE-HOWTO belgesinden ulalabilir. Sistemde alan mevcut ekirdein srmne ilikin bilgileri edinmek zere uname program -r parametresi ile kullanlabilir:
$ uname r 2.2.16-22

ekirdek srm numaras blmden oluur, her blm dierlerinden nokta (.) iareti ile ayrlmtr; A.B.C biimindedir. A, ekirdein ana srm numarasdr. ok seyrek deiir; ekirdekte ok radikal deiiklikler yaplrsa ana srm ksm bir arttrlr. B, ekirdein alt srm numarasdr. Alt srm numaras, ana srm numarasndan daha sk bir biimde deiir. Alt srm numarasnn ift bir say olmas o ekirdek srmnn kararl durumda olduunu belirtir. Her trl platformda, beklenmeyen sorunlar kartmayacak ekilde alacak ekirdek srmdr. Eger bu say tek say ise, o ekirdek srmnn gelitirme amal olan kararsz (unstable) ekirdek olduuna iaret eder. Grev-kritik makinelerde ve retim makinelerinde bu tip ekirdeklerin kullanlmasndan kesinlikle kanlmaldr. Bu ekirdekler, gelitiricilerin ve son gelimeleri takip etmek isteyenleri makinelerine kurmalar, denemeleri ve doal olarak hatalar bulup, rapor etmeleri iindir. Gelitirme bu ekirdekler zerinde devam eder. Kararl duruma geen zellikler, bir sonraki kararl ekirdee dahil edilir. Ana srm numarasnn deimesi durumda alt srm numaras yeniden sfrdan balatlr. C, ekirdek revizyon numarasna iaret eder. ekirdekteki her kk deiiklikte revizyon numaras bir arttrlr. Alt srm numarasnn ya da ana srm numarasnn deimesi durumunda revizyon numaras yeniden sfrdan balatlr.

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

31

TEMEL LINUX SSTEM YNETM KURS NOTLARI Linux ekirdeini kaynak kodu sktrlm olarak datlmaktadr ve u anda en gncel kararl srm olan 2.2.18 ekirdeinin sktrlms boyutu 15 MB'dir. Bu dosya aldnda, sabit diskte yaklak olarak 70 MB yer kaplamaktadr. ekirdein zelliklerini ayarlamakta geirdiiniz zaman gz ard edilerek, "AMD K6 / 466" ilemcili bir makinede tipik bir ekirdek ayar 2.2.X serisi bir ekirdei derleme sresi 3 dakika almaktadr. 1995 ylna ait AMIGA 1200 (50 mhz ilemci) sistemde 2.0.X serisi bir ekirdei derlemek 8,5 saat alrken, Intel 386 ilemcili bir makinede ayn ekirdei derlemek 1 gn bulabilir. ekirdei kaynak kodundan kendiniz derleyerek nelerin nasl derleyeceine (modler/gml) kendiniz karar vermek istiyorsanz ve derleme ileminin, kullandnz ilemciye gre zel olarak optimize edilmesini istiyorsanz ekirdein kaynak kodlarna ihtiyacnz olacaktr. Eer sadece yeni donanm desteklerinden yararlanmak ve eski srmdeki hatalar giderilmi bir ekirdee ulamak istiyorsanz, ekirdek ayarlar ve derleme ilemleri ile de uramak istemiyorsanz, RPM olarak datlan daha nceden bilgisayarnzn ilemcisine uygun olarak derlenmi bir ekirdei sisteminize hi zahmetsiz olarak kurabilir, ekirdek derleme srasnda yapabileceiniz baz hatalardan dolay sisteminizin hi almamas veya kilitlenmesi gibi hatalar da ortadan kaldrm olursunuz. RPM paket sistemi kullanan bir Linux datmna sahipseniz RPM tabanl bir ekirdei sisteminize kurmanz iin hi bir engel yoktur. RPM hakknda daha fazla bilgi ve hangi Linux datmlarnn RPM paket sistemi ile geldiini grmek iin http://www.rpm.org sitesini ziyaret edebilir, RPM paket sistemi kurulu olan bir Linux datm kullanyorsanz, /usr/share/doc veya /usr/doc dizini altnda bulunan RPM yardmc dokmanlarna ve RPM man sayfalarna gz atabilirsiniz. RPM olarak paketlenmi bir ekirdee ulaabileceiniz en iyi kaynaklar Internet ya da sistem salaycnzn (Linux datmnz reten grup/irket) salad CD'dir. nternet'ten ekirdek RPM paketlerine ulaabileceiniz en gvenilir yer sistem salaycnzn FTP sitesi olacaktr. rnek olarak Red Hat Linux datm ele alnrsa, ftp://ftp.redhat.com/pub/updates dizini iinden, kurulu olan datm srmne ve kullanlan ilemci tipine gre ekirdek gncellemesi ulalabilir. ftp://ftp.linux.org.tr adresi altndan Linux Kullanclar Dernei'nin FTP sunucusuna ulaabilirsiniz. ftp://ftp.linux.org.tr/pub/redhat dizininde ftp://ftp.redhat.com/ adresinden ulatnz Red Hat FTP'nin bir yerel yanss bulunmaktadr. Trkiye iinden balantlarda ftp://ftp.redhat.com/ adresi yerine ftp://ftp.linux.org.tr/pub/redhat adresinin kullanlmas hzl bir balant ve yurtd hatlarnn etkin kullanm asndan tavsiye edilmektedir. Byk Linux sistem salayclar genellikle en son kan ekirdekleri, kararl ekirdekler olmasna ramen, hemen paketlemezler. ekirdein gvenli olduuna inanlmas iin geen bir sreden sonra bu gruplar/irketler ekirdek iin bir gncelleme paketi kartrlar. Tabii bu sistem salayclarnn haricinde bakalarnn paketledii ekirdekler de olacaktr. Bunlara gvenip gvenmemek tamamen gvenlik politikanza baldr. RPM haldeki bir ekirdein sisteme kuruluu birka admdan oluur. ekirdein RPM paketinin /root dizininde yer aldn varsayacaz. Paketi kurabilmek iin sistem yneticisi (root) yetkilerine sahip olunmas gerekmektedir.
# rpm -ivh kernel-2.2.16-3.i386.rpm kernel ##################################################

Komutun iletilmesinden sonra hemen alt satrnda kurulan paketin ismini ve kurulum ileminin o anki durumu grntlenecektir. Kurulum sonrasnda /boot dizininizde sktrlm Linux ekirdei ve dier baz gerekli dosyalar yer alm olacaktr. Ayrca /lib/modules/2.2.16-3 dizini altna da ekirdee dinamik olarak yklenebilen modller yer alacaktr. Yeni ekirdei sisteminize kurduktan sonra Initial RAMDISK'i oluturmanz gerekecektir. Initial RAMDISK, ekirdein yklenmesinden nce sistemin baz srclere ihtiyac olmas durumunda kullanlr. rnein SCSI bir sabit diskiniz varsa varsa, bu diskte yer alan ekirdee ulalmas iin o SCSI arabiriminin srcsne ihtiya duyulacaktr. RAMDISK sayesinde bir sabit disk src gibi kullanlabilen hafza alanna 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 32

TEMEL LINUX SSTEM YNETM KURS NOTLARI bu SCSI arabiriminin srcs yklenir ve ekirdek ile ilgili SCSI diske ulaabilmek iin buradak srcy kullanr. ekirdek kendini ykledikten sonra bu kullanlmayan alan boaltacak ve sistemin kullanmna sunacaktr. Initial RAMDISK oluturmak iin :
# mkinitrd /boot/initrd-2.2.16-3.img 2.2.16-3

LILO'yu yeni derlediiz ekirdei balatacak ekilde ayarlamanz gerekmektedir. LILO'nun ayar dosyas genellikle /etc/lilo.conf dosyasdr. Kullandnz metin editr yardm ile /etc/lilo.conf doysas iine yeni ekirdeiniz ile ilgili satrlar eklemeniz gerekiyor. Mutlaka eklenmesi gereken satrlar aadaki gibidir:
image=/boot/vmlinuz-<buraya ekirdek srmn yaznz> label=linux-yeni root=<buraya kk blm (partition) gelecek> initrd=/boot/initrd-<buraya ekirdek srmn yaznz>.img read-only

rneimize gre bu satirlar aadaki gibi olmaldr:


image=/boot/vmlinuz-2.2.16-3 label=linux.yeni root=/dev/hda1 initrd=/boot/initrd-2.2.16-3.img read-only

RPM olarak kuracanz ekirdekler, /boot/vmlinuz adl sembolik balanty kurduklar yeni ekirdei iaret edecek biimde gncelleyeceklerdir. Eer /etc/lilo.conf iinde yer alan eski ekirdeiniz ile ilgili satrlardaki image= ksm, /boot/vmlinuz 'u gsteriyorsa, bunu da eski ekirdeinizin asl dosyasnn bulunduu yer ile deitirin. nk artk /boot/vmlinuz eski ekirdeinizi deil yeni kurulan gsteriyor durumdadr. imdi yeni LILO ayarlarn etkin klmak iin komut satrnda "lilo" komutunu verin:
# lilo Added linux * Added linux.yeni

Grdnz gibi, LILO yeni ayarlar etkin hale getirdi. Yeni derlediiniz ekirdei kullaranak istemi balatmak iin, sistem alrken "LILO: " yazsn grdkten sonra "linux.yeni" yazp "ENTER" tuuna basn. Yeni ekirdein sorunsuz altna emin olduktan sonra, sistemin her zaman bu yeni ekirdek ile almasn salamak iin gene /etc/lilo.conf dosyasn dzenlemeniz ve deilikleri etkin klmak iin lilo komutunu altrmanz gerekiyor. Yeni ekirdei, varsaylan ekirdek yapmak iin, /etc/lilo.conf dosyasn kullandnz metin editr yardm ile an. LILO, hangi etiket adna (label) sahip ekirdei varsaylan ekirdek olarak ykleyeceini
default=linux

satrnda renmektedir. Grld gibi LILO, etiket ismi "linux" olan ekirdei -aksi belirtilmedikebalatacaktr. Bu satr
default=linux.yeni

olarak deitirmeniz iinizi grecektir; ancak tavsiye edilmez. Bunun yerine bu satra dokunmadan, varsaylan ekirdek olarak balatlmasn istediiniz ekirdein etiket ismini linux yapar ve eski ekirdein etiket ismini linux'dan linux.eski gibi baka bir etiket ismine evirirseniz yeni ekirdeiniz -aksi belirtilmedike- sistem aldnda balatlan ekirdek olacaktr. Ne zaman eski ekirdei kullanarak sistemi balatmak isterseniz, sistem alrken "LILO: " yazsn grdkten sonra linux.eski yazp "ENTER" tuuna basarsanz sistem eski ekirdek ile alacaktr. Yeni bir ekirdek ile almann ikinci yolu kaynak kod paketi olarak ekirdei edinmek ve derlemektir. ekirdek kaynak koduna ulamak iin en uygun yer ftp://ftp.kernel.org adresidir. Linux ekirdeinin resmi olarak bulunduu yer olan Kernel.ORG'un FTP sitesinde ilk Linux ekirdeklerinden son Linux ekirdeine kadar tm srmlere ulamanz mmkndr. rnek olarak 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 33

TEMEL LINUX SSTEM YNETM KURS NOTLARI ftp://ftp.kernel.org/pub/linux/kernel/vA.B adresinde A.B serisi ekirdek srmlerinin tmne ulaabilirsiniz. Yani 2.2 serisi ekirdeklere ulaabileceiniz adres ftp://ftp.kernel.org/pub/linux/kernel/v2.2 adresidir. Bu adrese girdiinizde linux-A.B.C.tar.gz isimli dosyalar greceksinizdir. A.B.C ekirdein srmn belirtir. linux-2.2.16.tar.gz isimli dosya, 2.2.16 srm ekirdei ieren tar arividir. Bu dizin iinde aynen sonu .tar.gz ile biten dosyalar gibi sonu .tar.bz2 ile biten dosyalar da greceksiniz. Ayn ekirdek srmn ieren bu dosyalara arasndaki tek fark, sktrlrken kullanlm algoritmadr. Eer sisteminizde bz2 tipi sktrlm dosyalar aabilecek yazlm varsa (genellikle tm Linux datmlarnda mevcuttur) sonu .tar.bz2 olan dosyalar tercih edebilirsiniz. Boyutlar daha kk olduu iin bunlar nternet'ten indirme sreniz azalacaktr. nternet'ten indirdiiniz ekirdei /usr/src/ dizininine kopyalayn ya da tayn. Eer daha nceden makinenize bir ekirdek kaynak kodu yklenmi ise (bir ok Linux datm kurulum srasnda bunu yapar) bu dizin iinde linux diye bir dizin olacaktr veya gene bu isimde bir sembolik balant bulunacaktr. Aacanz sktrlm yeni ekirdek de kendini linux/ dizinine amak isteyeceinden dolay; olas bir karmaaya zemin hazrlamamak iin bu eski dosyalarn bulunduu dizin artk linux/ olmamaldr. Eer linux bir sembolik balant ise, ekinmeden silebilirsiniz; ancak bir dizin ise ve eski ekirdek kaynak kodlarnz saklamak istiyorsanz ismini linux-A.B.C olarak (burada A.B.C ekirdek srmn belirtiyor) deitirebilirsiniz. Eer eski ekirdek kodlarn saklamak istemiyorsanz bu dizini silebilirsiniz. /usr/src/ dizininde linux adnda bir dizin/dosya/balant olmadnda emin olduktan sonra, sktrlm ekirdek kaynak kodlarn aabilirsiniz. Eer .tar.gz ile arivlenip sktrlm bir ekirdek ektiyseniz tar zxvpf linux-A.B.C.tar.gz .tar.bz2 ile arivlenip sktrlm bir ekirdek ektiyseniz tar Ixvpf linux-A.B.C.tar.bz2 komutu ile, sktrlm ekirdei aabilirsiniz. Alan dosyalarn isimlerini ekranda greceksiniz. Dosyalarn ve dizinlerin tm /usr/src/linux dizini altna yerleecektir. Yukarda da bahsettiimiz gibi, /usr/src/linux geleneksel olarak /usr/src/linux-A.B.C (burada A.B.C ekirdek srmn belirtiyor) dizinine bir sembolik balantdr. Bunu yapmak iin aadaki gibi bir komutu iletmelisiniz:
mv linux linux-A.B.C ln -s linux-A.B.C linux

Yeni ekirdek paketinin ayarlarn yapmak zere aadaki komutlar iletmelisiniz:


cd /usr/src/linux make config

ekirdek seeneklerini yazn. Size ekirdek opsiyonlarnn derlenecek ekirdee katlp katlmamasn ve eer katlacaksa, modl olarak m katlacan soracaktr ve sizden bir cevap bekleycektir. Verebileceiniz cevaplar : n (HAYIR anlamndadr. Bu zellik/src/vb... ekirdee katlmayacaktr) y (EVET anlamndadr. Bu zellik/src/vb... ekirdee katlacaktr) m (Eer bir src ise, bu src modl olarak derlenecektir) ? (Bu zellik/src/vb... hakknda detayl bilgi verir) Size sorulan sorularnda sonunda '[' ']' iaretleri arasnda verebileceiniz cevaplar gsterilmektedir. Bu cevaplar arasnda bata yer alan ve byk harf ile yazlm olan, varsaylan cevaptr. Bu cevab vermek iin ilgili harfini girmek yerine sadece "ENTER" tuuna basabilirsiniz. rnein :
BSD Process Accounting (CONFIG_BSD_PROCESS_ACCT) [N/y/?]

sorusuna sadece "ENTER" tuuna basarak cevap verirseniz cevabnzn 'n' yani HAYIR olduu kabul edilecektir. make config ile ekirdek ayarlarn yapmak pek de kolay deildir. Daha nce verdiiniz bir cevab geri dnp dzeltme ansnz olamad gibi, tamamen metinden oluan arabirim bazen ok kark bir hal alabilir. Bu yzden make config'e alternatif baka make seeneklerini kullanabilirsiniz. Bunlar make menuconfig ve make xconfig komutlardr. make menuconfig, gene metin tabanl ama renkli ve yn tular ile ayar menleri arasnda gezebileceiniz ve bu menler iinde gene yn tular ile ayar opsiyonlar arasnda 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 34

TEMEL LINUX SSTEM YNETM KURS NOTLARI gezebileceiniz bir arabirim sunmaktadr. Bir ok kii bu menuconfig'i tercih etmek isteyecektir. make komutu ise, X Window System altndan ekirdek ayarlarn farenizi (mouse) kullanarak yapmanza imkan verecektir. Bu komutu verebilmek iin o anda X Window kullanyor olmanz gerekmektedir. Ayrca sisteminizde Tk ktphanelerinin de ykl olmas gerekmektedir. ekirdek ayarlarnz bu alternatif yntemden birini kullanarak yapn ve kaydederek kn.
xconfig

ekirdek ayarlar yaplrken dikkat gsterilmesi gereken ayarlardr. Yanl ve eksik seimleriniz sistemin yeni ekirdek ile hi almamasna ya da aldktan sonra istenildii gibi davran sergilememesine yol aabilir. Bu yzden ayar yaparken ok emin olmadnz tm seimler hakknda ayar programndan yardm isteyiniz. Dikkatli bir ekilde okuduktan sonra karar veriniz. Eer ne olduunu hala anlamadysanz ve karar veremiyorsanz yardm metninde tavsiye edilen cevab veriniz. ekirdek ayarlarnz istediiniz gibi yaptktan sonra sra ekirdei derlemeye geldi. ekirdei derlemeye balamadan nce derleme ncesi bir kontrol ve temizlik yaplmas gerekecektir.
make dep make clean

Yukarda verilen komutlar sras ile; derleme iin gereken dosyalarn yerinde olup olmadn kontrol eder ve daha nceden derlenmi dosyalarn silinmesini salar. Eer ekirdek kaynaklarn yeni ektiyseniz ve bu kaynaklar zerinde ilk defa derleme yapyorsanz make clean komutunu kullanmak zorunda deilsiniz; ancak yeniden ekirdek derliyorsanz, mutlaka bu komutu da vermelisiniz. Kontrol ve temizliin ardndan derleme ilemine geilebilir. Derleme yapmak iin gene dier ilerde yaptmz gibi make programna bir parametre geirecei. ekirdei derlemeniz iin bir ka parametre seeneiniz var. Bunlardan bazlar
make zImage

(ekirdei derler ve gzip ile sktrr) (ekirdei derler ve bzip2 ile sktrr) derler, bzip2 ile sktrr ve diskete yazar) derler, bzip2 ile sktrr, LILO'yu altrr)

make bzImage

make bzdisk.(ekirdei make bzlilo.(ekirdei

derleme ilemi eer hatasz sona ererse, dosyas yeni ekirdeiniz olacaktr."i386" isimli dizin, makinenizin zerindeki ilemcinin mimarisine gre deiebilir (sparc, alpha, ppc vs...) Eer Intel veya Intel uyumlu bir ilemci kullanyorsanz buras her zaman "i386" olacaktr. yi bir ekirdek kurulumu iin, kan bzImage dosyasn ve gene ayn dizin altnda bulunan System.map dosyasn sras ile /boot dizini altna vmlinuz-A.B.C ve System.map-A.B.C eklinde kopyalayabilir ve /boot/System.map sembolik balantsn yeni System.map-A.B.C dosyanz gsterecek ekilde ayarlayabilirsiniz.
make bzdisk'i kullandnzda, ekirdek bir diskete yazlacak ve bu disket balatlabilir bir hale (bootable) getirilecektir. Yeni ekirdekleri gvenlice denemek iin en ideal yol budur. make bzlilo komutunu kullanrken dikkat etmeniz gereken noktalar, LILO ayarlarnzda varsaylan ekirdek imajnn /vmlinuz olmas ve isim etiketinin "linux" olmas gereidir. Modern Linux datmlar ekirdek imajlarn /boot adl ayr bir disk blmnde tuttuklar iin bu seenek tanabilir deildir ve kullanmaktan kanlmaldr.

kullandnzda, make bzImage'i /usr/src/linux/arch/i386/boot/bzImage

Eer ekirdek ayarlar srasnda, derlenebilir ekirdek modllerine destek verdiyseniz ve en az bir seenei modl olarak derlediyseniz :
make modules make modules_install

komutlarn vermeniz gerekecektir. Bu komutlar sras ile, seimi gerekletirilen seenekleri modl olarak derleyecek ve sabit diskte ilgili alana yerletirecektir. Eer alr durumdaki ekirdeinizi yeninden derliyorsanz, eski modllerinizin yedeini alarak /lib/modules/A.B.C (A.B.C ekirdek srmnz) dizinini make modules_install ileminden nce boaltnz. 30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN 35

TEMEL LINUX SSTEM YNETM KURS NOTLARI Bu ilemler sona erdikten sonra, yeni ekirdeinizi LILO'ya tantmanz ve LILO'yu yeniden altrmanz gerekmektedir. Burada yaplmas gereken ilemler, LILO ayarlarnn yaplmas bal ile anlatlan blmdekilerin aynsdr. LILO ayarlarnz yaptktan sonra ve "lilo" komutunu verdikten sonra sisteminizi yeniden balatarak yeni ekirdeinizi LILO ayarnza bal olarak altrabilirsiniz.

30-31 OCAK 2001, AKADEMK BLM KONFERANSI, SAMSUN

36

Вам также может понравиться