Professional Documents
Culture Documents
NDEKLER
Donanm Tanma ve Yaplandrma.................................1
Donanm...............................................................................................2
ekirdek Modlleri...........................................................................4
sysfs Dosya Sistemi...........................................................................6
Udev Dosya Sistemi..........................................................................6
HAL ve D-Bus......................................................................................7
Sistem Al....................................................................8
Al Kayd Ykleyici (Boot Loader)............................................9
Grub.......................................................................................................11
Al Gnl....................................................................................13
alma Seviyeleri............................................................14
Init...........................................................................................................15
SysV Init.................................................................................................15
Upstart..................................................................................................19
Paket Ynetimi.................................................................21
Paket Ynetimi....................................................................................22
Pardus Paket Ynetimi....................................................................22
Paket sorgulama................................................................................24
Paket Kurma........................................................................................26
Paket Silme..........................................................................................26
Paket Gncelleme.............................................................................28
Red Hat Paket Ynetimi...................................................................28
RPM.........................................................................................................28
rpm2cpio..............................................................................................30
Yum Yaplandrma.............................................................................31
yumdownloader................................................................................33
Yum........................................................................................................34
Kaynak Kodundan Paket Derleme..............................................39
Ktphaneler......................................................................................40
LD Ykleyici..........................................................................................41
i
LPI Sertifikasyon Kitab
ii
LPI Sertifikasyon Kitab
cut...........................................................................................................67
tr..............................................................................................................68
expand, unexpand............................................................................69
fmt..........................................................................................................70
pr.............................................................................................................70
od............................................................................................................70
paste.......................................................................................................72
join..........................................................................................................73
split.........................................................................................................75
sed..........................................................................................................76
awk.........................................................................................................79
sort..........................................................................................................81
uniq........................................................................................................81
Dosya smi rntleri......................................................................82
file...........................................................................................................83
tee...........................................................................................................83
xargs.......................................................................................................84
Disk Blmlendirmesi.....................................................86
Blmlendirme..................................................................................87
MBR........................................................................................................87
GPT GUID Disk Blmlendirme Tablosu................................87
Oluturulabilecek Disk Blmleri................................................88
Al Ykleyicisi..................................................................................89
fdisk ile Disk Blmleme.................................................................91
Dosya Sistemi Oluturma...............................................................92
Swap Alan Oluturma.....................................................................92
Dosya Sistemi Bakm.......................................................................93
fsck..........................................................................................................95
Fstab Parametreleri...........................................................................99
iii
LPI Sertifikasyon Kitab
Kota yaplandrmas..........................................................................99
Sembolik ve Hard Balantlar........................................................100
Dosya Arama.......................................................................................101
which komutu....................................................................................101
locate komutu....................................................................................102
whereis komutu.................................................................................102
Linux Yetkilendirme Modeli............................................103
Yetkiler...................................................................................................104
chown....................................................................................................106
chgrp......................................................................................................107
zel zinler(t ve s bitleri)..................................................................107
Linux Dizin Yaps.............................................................108
Hiyerari................................................................................................109
/bin.........................................................................................................110
/boot......................................................................................................110
/dev........................................................................................................110
/etc..........................................................................................................110
/home....................................................................................................111
/lib...........................................................................................................111
/lost+found..........................................................................................111
/media...................................................................................................111
/mnt........................................................................................................111
/opt.........................................................................................................112
/proc.......................................................................................................112
/root.......................................................................................................112
/sbin.......................................................................................................112
/usr..........................................................................................................113
/var..........................................................................................................113
/tmp.......................................................................................................113
Ariv ve Yedekleme..........................................................114
tar............................................................................................................115
iv
LPI Sertifikasyon Kitab
cpio.........................................................................................................116
dd............................................................................................................117
gzip, gunzip, zcat, bzip2..................................................................119
alan Sreler...............................................................120
Sreler.................................................................................................121
ps , pstree.............................................................................................121
top...........................................................................................................122
htop........................................................................................................123
free..........................................................................................................124
uptime...................................................................................................125
screen....................................................................................................125
nohup....................................................................................................128
& bg fg jobs..........................................................................................128
nice, renice...........................................................................................129
Sre Oluturma ve Sonlandrma................................................131
Sinyaller.................................................................................................132
Kill, killall...............................................................................................133
Pkill, pgrep...........................................................................................133
Dosya Dzenleyiciler.......................................................135
Nano.......................................................................................................136
Vi Dosya Dzenleyici........................................................................138
Genel......................................................................................................138
Dosya amak iin...............................................................................138
Dosyadan kmak.............................................................................139
alma Modlar.................................................................................139
Basit Vi Komutlar...............................................................................140
Kesme ve Yaptrma Komutlar....................................................140
Arama....................................................................................................141
Gelitiricilere zel..............................................................................142
BASH Betik Yazma...........................................................144
Kabuk Ortam......................................................................................145
v
LPI Sertifikasyon Kitab
Kabuk Deikenleri...........................................................................147
Alias Tanmlama.................................................................................149
Fonksiyon Tanmlama......................................................................149
Bash Kabuk Programlama..............................................................150
Parametreler........................................................................................151
Okuma Yazma.....................................................................................152
artl fadeler.......................................................................................153
Case-Esac Yaps.................................................................................157
Dng Kurmak...................................................................................158
for done...........................................................................................158
while done.....................................................................................159
until done.......................................................................................160
SQL ile Veri Ynetimi.......................................................161
SQL Veritabanlar...............................................................................162
Insert......................................................................................................163
Update...................................................................................................163
Select.....................................................................................................164
Inner Join..............................................................................................165
Delete....................................................................................................166
Order By................................................................................................166
Group By...............................................................................................168
X Grafik Sunucu...............................................................169
X Window Sunucu.............................................................................170
Xorg.conf..............................................................................................171
xwininfo................................................................................................174
xdpyinfo................................................................................................175
X Windowu Balatma......................................................................175
X Gvenlik............................................................................................176
Xhost ve DISPLAY..............................................................................176
Grafik Giri Yneticisi........................................................................178
Sistem Ynetimi...............................................................179
Kullanclar...........................................................................................180
usermod...............................................................................................182
Grup ynetimi....................................................................................182
vi
LPI Sertifikasyon Kitab
Kullanc Silme....................................................................................183
Kullanc Girilerini Kstlama.........................................................183
su ve sudo komutu...........................................................................184
Cron Grevleri....................................................................................185
Crontabn Yklenmesi.....................................................................187
Kullanclar iin Crontab Snrlamas...........................................188
at komutu.............................................................................................188
Yerelletirme ve Saat Dilmi Ayarlar............................................188
Temel Sistem Hizmetleri.................................................194
Sistem Saati.........................................................................................195
Date komutu.......................................................................................195
Hwlock komutu..................................................................................196
Zaman Dilimi Yaplandrmas........................................................197
NTP Yaplandrmas...........................................................................199
Sistem Gnlkleri..............................................................................201
Syslog servisi.......................................................................................201
Logger Komutu..................................................................................203
Gnlk Dosyalarnn Dndrlmesi...........................................204
E-posta Ynetimi................................................................................206
Temel E-posta Sunucu Ayarlar.....................................................207
E-posta stemcileri.............................................................................207
Yazc Sistemi.......................................................................................208
lpr Komutu...........................................................................................209
lpq Komutu..........................................................................................209
lprm/cancel.........................................................................................209
cupsenable/cupsdisable.................................................................209
A Ynetimi......................................................................210
Adresleme............................................................................................211
zel IPler................................................................................................. 211
Protokoller...........................................................................................213
TCP Protokol.....................................................................................213
UDP Protokol....................................................................................214
ICMP Protokol..................................................................................214
Port Numaralar..................................................................................215
vii
LPI Sertifikasyon Kitab
A Arayzleri.......................................................................................216
ethtool, mii-tool.................................................................................217
A Yaplandrmas..............................................................................219
ip komutu.............................................................................................222
IPv6.........................................................................................................225
Host DNS Yaplandrmas................................................................226
host Komutu......................................................................................227
dig Komutu.........................................................................................228
A Sorunlarn zme......................................................................229
ping Komutu......................................................................................229
traceroute Komutu..........................................................................231
netstat...................................................................................................232
netcat Komutu....................................................................................233
Gvenlik...........................................................................237
Dosya Sistemi Gvenlii.................................................................238
Glge Parola Sistemi........................................................................240
Parola Gvenlii.................................................................................240
Usermod...............................................................................................241
Kullanc Eriimini Kapatma...........................................................242
Chage.....................................................................................................242
/etc/login.defs....................................................................................243
Passwd...................................................................................................247
Ulimit ve limit.conf............................................................................247
su.............................................................................................................248
sudo ve sudoers.................................................................................249
lsof..........................................................................................................251
nmap......................................................................................................253
Tcp Wrapper........................................................................................256
/etc/hosts.{allow,deny}....................................................................258
GPG ile ifreleme ve Saysal mza................................................260
SSH Hizmeti.........................................................................................261
SSH Sunucu Yaplandrmas...........................................................262
Parolasz SSH eriimi.........................................................................263
SCP ile Dosya Transferi.....................................................................264
viii
LPI Sertifikasyon Kitab
Hedefler:
PCI veri yoluna takl donanmlar bulmak
USB aygtlar hakknda bilgi almak
Sabit disklerin isimlendirilmesini renmek
ekirdek modllerini yklemek, kaldrmak
Donanmla ilgili soyut ekirdek arayzleri
Anahtar Kelimeler:
USB, lsusb, PCI, lspci, /sys, /proc, /dev, modprobe, lsmod, lspci,
lsusb, sysfs, udev, hald, dbus
1
LPI Sertifikasyon Kitab
Donanm
Linux, navigasyon cihazndan TV kutusuna, akll tahtaya; tabletten sper bilgisayar-
lara, a ynlendiricilere kadar ok sayda mimari ve platformu desteklemektedir. En
ok kullanlan platform Intel x86 ilemcili IBM PC ve benzerleridir.
lcpci komutu, PCI veri yoluna bal aygtlarn listesini almak iin kullanlr. Datm-
larn kurulum programlar bu verileri kullanarak doru aygt srclerini ykleyebil-
mektedir.
$ lspci -v
00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX -
82443BX/ZX/DX Host bridge (rev 01)
Subsystem: VMware Virtual Machine Chipset
Flags: bus master, medium devsel, latency 0
Kernel driver in use: agpgart-intel
Eski PS/2 klavye ve fare, seri porttan bal modemler ve paralel porttan taklan yaz-
clar iin ortak olarak USB balant arayz gelitirilmitir. USB, hotplug olarak canl
sisteme balanmay ve balanty kesmeyi destekler.
2
LPI Sertifikasyon Kitab
Bir USB cihaz sisteme balandnda 1-127 arasnda bir numara atanr. Bal USB ci-
hazlarn listesini almak iin:
$ lsusb
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate
Matching Hub
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate
Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0781:5567 SanDisk Corp. Cruzer Blade
# find /dev/bus/
/dev/bus/
/dev/bus/usb
/dev/bus/usb/002
/dev/bus/usb/002/006
/dev/bus/usb/002/005
/dev/bus/usb/002/004
# lsusb -D /dev/bus/usb/002/005
Device: ID 0951:1643 Kingston Technology DataTraveler G3 4GB
Couldnt open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 00951 Kingston Technology
idProduct 01643 DataTraveler G3 4GB
[...]
3
LPI Sertifikasyon Kitab
Linux iin nemli donanm bileenlerinden biri de disklerdir. IDE (P-ATA), SATA ve
SCSI olarak deiik balant arayzleri gelitirilmitir.
IDE disk, silindir, sektr ve okuma/yazma kafasndan bamsz yazlan sral bloklar
eklinde kullanlr. 40 veya 80 pinlik paralel veri yolu ierir. SATA ise 7 hattan ibaret
seri haberleme kullanr. SATA diskler hotplug kullanlabildiinden RAID-5 ve RAID
1 gibi yaplandrmalar iin elverilidir. Ayrca 2.5 ve 3.5 iin ayn balant kablosunu
kullanr. Dier nemli zellii ise daha hzl olmasdr.
Linux, P-ATA diskleri /dev/hdX eklinde isimlendirir. lk kablo zerindekiler hda, hdb
ve ikinci kablo zerindekiler hdc, hdd eklinde isimlendirilir. Bunlar da kendi iinde
primary veya mantksal blmler ierebilir. Primary blmler 1-4 arasnda bir numara
alrken, mantksal blmler 5-63 arasnda bir numara alr. rnein: /dev/hda1, /dev/
hdc5...
SCSI, disk ve teyp src gibi cihazlar iin uzun yllardan beri kullanlan bir tekno-
lojidir. Bugnlerde SCSI yerine daha hzl olan SAS (Serial Attached SCSI) daha ok
tercih edilmekte. SAS, teknoloji olarak SATAya ok benzemekte ve bu nedenle ayn
backplanei kullanabilmektedirler.
IDE ve SATA daha uygun maliyeti nedeniyle masast bilgisayarlarda tercih edilirken
SCSI ve SATA daha kararl ve performansl olmas nedeniyle sunucu bilgisayarlarda
kullanlmaktadr.
SCSI diskler /dev altnda sda, sdb, sdX eklinde isimlendirilirken CD-ROM src /
dev/st0, teyp src /dev/sg0 eklinde isimlendirilir.
ekirdek Modlleri
Linux iletim sistemi ok geni evre cihaz destei sunmaktadr. evre cihazlar, bil-
gisayarlar tamamlayan ilemci ve bellek gibi ana donanmlarn dnda kalan pek
ok donanm ifade etmek iin kullanlr. Ses kart, ekran kart, USB arayzler, seri ve
4
LPI Sertifikasyon Kitab
paralel port, sabit diskler, RAID kartlar, ethernet kartlar... gibi pek ok donanm ve bu
donanmlar reten pek ok retici marka desteklenmektedir.
# modprobe modlad
$ lsmod
Module Size Used by
iptable_filter 12536 0
ip_tables 22042 1 iptable_filter
x_tables 19118 2 ip_tables,iptable_filter
mperf 12453 0
[...]
# modprobe r modlad
5
LPI Sertifikasyon Kitab
# ls -l /sys/devices/
toplam 0
drwxr-xr-x 3 root root 0 Kas 9 16:54 breakpoint
drwxr-xr-x 3 root root 0 Kas 9 16:54 cpu
drwxr-xr-x 6 root root 0 Kas 9 16:54 LNXSYSTM:00
drwxr-xr-x 45 root root 0 Kas 9 16:54 pci0000:00
drwxr-xr-x 10 root root 0 Kas 9 16:54 platform
drwxr-xr-x 17 root root 0 Kas 9 16:54 pnp0
drwxr-xr-x 3 root root 0 Kas 9 16:54 software
drwxr-xr-x 7 root root 0 Kas 9 16:54 system
drwxr-xr-x 3 root root 0 Kas 9 16:54 tracepoint
drwxr-xr-x 15 root root 0 Kas 9 16:54 virtual
6
LPI Sertifikasyon Kitab
ekirdek tarafndan retilen olay mesajlar (bir USB cihazn taklmas veya kartlmas
gibi) kullanc ortamnda rastgele srada ular. Udevd servisi, hotplug olaylarn sra-
ya sokulmasn da salar. Udevd servisi balamadan nce olan olaylara ait mesajlar,
udevd baladktan sonra ekirdek tarafndan gnderilir. Sistem balamadan taklan
cihazlar coldplug, sistem alrken taklan cihazlar hotplug olarak adlandrlr.
HAL ve D-Bus
HAL (Hardware Abstraction Layer), ekirdekte aygtlarla ilgili olan bir olayn kullanc
ortamndaki bir yazlmla ilikilendirilebilmesi iin gelitirilmitir. rnein bir dijital
kamera takldnda yeni fotoraflarn otomatik indirilmesi gibi.
Programlar bilgilendirmek iin HAL, sreler aras haberleme (IPC) teknii ile olu-
turulan D-Bus kullanr. Programlar D-Bus zerinden donanm olaylarn dinler ve bil-
gi alrlar. Ayn olay iin birden fazla programa bilgi verilebilir.
7
LPI Sertifikasyon Kitab
Sistem Al
Konu:
Donanmn alndan kontroln ekirdee ve ordan kullancya
geene kadar geen sreci anlama
Hedefler:
PC ve iletim sistemi aln anlamak
Al parametrelerini ihtiyaca gre zelletirebilmeyi ren-
mek
Ala dair gnlk dosyasn okuyabilmek
Anahtar Kelimeler:
MBR, Grub, /var/log/messages, dmesg, BIOS, bootloader, kernel,
init, syslog, initrd
8
LPI Sertifikasyon Kitab
letim sistemi olmadan iletim sistemini yklemek zor bir ilemdir. O nedenle ykle-
me birka admdan olumaktadr. nk iletim sistemi henz ortada olmad iin
dosya sistemi, disk ynetimi, istenen her kodun altrlmas sz konusu deildir.
Yklemenin her admnda kazanlan bir yetenek ile daha fazlas yaplr ve bir sonraki
adma geilir.
BIOSun tespit ettii ve iletim sistemini yklemeye balayacak zel kod ieren yk-
leme medyasnn ilk 512 bytelk ksm boot sector veya MBR (Master Boot Recor)
olarak adlandrlr. Henz ortada iletim sistemi olmad ve dosya sistemi tannmad-
iin diskin herhangi bir yerindeki iletim sistemini bulmak imkanszdr. O nedenle
disklerin ilk 512 byte sabittir ve ykleme ileminin balad noktadr. MBR boyutu
kk olduu iin, burada ykleme iini balatacak ve grevi ykleme iini yapacak
asl programa devredecek kk bir uygulama bulunmaktadr.
9
LPI Sertifikasyon Kitab
Linux altnda yaygn olarak kullanlan iki al kayd ykleyicisi vardr: LILO (Linux
Loader) ve GRUB (Grand Unified Boot Loader). Al kayd ykleyicileri temel ola-
rak ekirdein yerini bulur ve balatr. Bunun yannda al yneticisi olarak alr
ve birden fazla ekirdek ykleyip onlar arasnda seim yaplmasn da salar. GRUB,
LILOnun baz dezavantajl noktalarn kapatan daha profesyonel bir zm olarak
daha ok tercih edilmektedir.
Powe-up / Reset
Kemel Linux
Init User-space
Operation
Asl disk balandktan sonra artk disk zerindeki program ve betiklere ulalabilmek-
tedir. Bu aamada Linux, kullanc ortamnn (user space) ilk alan sreci olacak initi
altrr. Init, /etc/inittab yaplandrmasna gre al betiklerini altrarak ayarlan-
m alma seviyesinden iletim sisteminin dier bileenlerini altrarak kullanc
giri ekranna kadar gelir. Bu aamadan sonra kontrol kullancya devredilir.
10
LPI Sertifikasyon Kitab
Grub
Grub, ekirdekten bamsz oklu nykleme yapabilen kk bir iletim sistemidir.
Dosya sistemlerini tanmlar, al yapacak ekirdek imajlarn ykler ve ykleme i-
lemini ynetecek komut satr sunar. Birden fazla iletim sistemi ve birden fazla disk
arasnda seim yapmay salad gibi kullancdan ald parametreleri ekirdee
geer.
GRUB, ext2 dosya sistemlere ulaabilir. Bu sayede LILOda olduu gibi /boot/grub/
grub.conf ta yaplan deiiklikler iin her defasnda MBRye ykleme yapmaya gerek
yok. nk ykleme esnasnda bu dosyaya kendisi ulaarak yaplandrmay okuya-
bilmektedir. GRUB yalnzca /boot un bulunduu disk blm deiirse yklemeye
ihtiya duyar.
# /sbin/grub-install /dev/hda
GRUB komut satr yklemeyle ilgili birok komutu kullanma sunar. Bunlardan bir
ksm aada verilmitir:
boot
letim sistemini ykler.
11
LPI Sertifikasyon Kitab
displaymem
BIOStan alnan bilgilere gre mevcut bellek kullanm gsterilir.
initrd /initrd-2.6.4.img
Kullancnn balang iin ram disk belirtmesini salar.
install <stage-1> <install-disk> <stage-2> p <config-file>
GRUBu MBRye ykler.
Stage-1: Birincil nykleyicinin bulunduu yer. rnek: (hd0,0)/grub/stage1
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Pardus (2.6.4)
root (hd0,0)
kernel /boot/vmlinuz-2.6.4 ro root=LABEL=/1 rhgb quiet
initrd /boot/initrd-2.6.4.img
12
LPI Sertifikasyon Kitab
Al Gnl
Al sorunlarnn zm, aratrma imkanlar snrl olduundan baz durumlarda
zor olabilmektedir. Linux sistemler alrken ekirdek ekrana bir takm mesajlar basar.
Bazen bu mesajlar, alta kullanlan bir grafiin arkasnda kalmaktadr. ESC tuuna
basarak bu grafik kaldrlp alttaki mesajlar grlebilir.
ekirdek lolar alta zel bir tampon alana yazlr ve daha sonra dmesg komutu
ile grntlenir. Sistem gnln tutan syslogd hizmeti devreye girdikten sonra ise
bu lolar syslogd zerinden gnlk dosyalarna yazlr. Balang mesajlar da dahil,
bu gnlkler /var/log/syslog dosyasnda bulunur.
# tail /var/log/syslog
Dec 14 22:43:29 pardus postfix/local[9759]: 513CA17FAC1:
to=<root@pardus>, orig_to=<root>, relay=local, delay=0.62,
delays=0.32/0.27/0/0.03, dsn=2.0.0, status=sent (delivered
to command: procmail -a $EXTENSION)
Dec 14 22:43:29 pardus postfix/qmgr[3296]: 513CA17FAC1:
removed
Dec 14 22:45:01 pardus /USR/SBiN/CRON[9817]: (root) CMD
(command -v debian-sa1 > /dev/null && debian-sa1 1 1)
Dec 14 22:45:32 pardus dbus[2423]: [system] Activating
service name=org.freedesktop.PackageKit (using
servicehelper)
Dec 14 22:45:32 pardus AptDaemon: INFO: Initializing
daemon
Dec 14 22:45:32 pardus AptDaemon.PackageKit: INFO:
Initializing PackageKit compat layer
Dec 14 22:45:32 pardus dbus[2423]: [system] Successfully
activated service org.freedesktop.PackageKit
Dec 14 22:50:32 pardus AptDaemon: INFO: Quitting due to
inactivity
Dec 14 22:50:32 pardus AptDaemon: INFO: Quitting was
requested
Dec 14 22:55:01 pardus /USR/SBiN/CRON[9854]: (root) CMD
(command -v debian-sa1 > /dev/null && debian-sa1 1 1)
13
LPI Sertifikasyon Kitab
alma Seviyeleri
Konu:
Kontroln ekirdekten kullancya gemesi ve farkl alma sevi-
yeleri iin kullanc ortamnn hazrlanmas
Hedefler:
Init programn anlamak
alma seviyesini belirleyebilmek
Bilgisayar kapatmak, yeniden balatmak
Al betiklerini anlamak
Anahtar Kelimeler:
/etc/inittab, shutdown, init, telinit, /etc/init.d
14
LPI Sertifikasyon Kitab
Init
ekirdek aln tamamlayp kullanc ortamna gei yaptnda alan ilk program
/sbin/init olup PID numaras daima 1dir. Bu sre teorik olarak hibir zaman lmez
ve btn dier srelerin anasdr. init sreci lse de ekirdek almaya devam eder.
ekirdein baka bir init program altrmas iin al esnasnda parametre geil-
mesi gerekir. init=/sbin/sysinit
SysV Init
Linux datmlarn pek ou UNIX SysV init yapsn kullanr. Bu yapda alma seviye-
leri vardr (run levels) ve her bir alma seviyesini hazr edecek betikler vardr. Byle-
ce farkl farkl alma ortamlar elde edilir. rnein sunucu sistemler genelde grafik
arayzn olmad bir seviyeden alrken, disk bakm yapacak bir sistem yneticisi
diske yazmann en alt dzeyde olduu bir seviyeden al yapar.
0 Halt
1 Tek kullancl minimal al, bakm veya kurtarma modu
2, 3, 4, 5 ok kullancl al. 3 text konsol, 5 grafik arayz.
6 Reboot
# Level to run in
id:2:initdefault:
15
LPI Sertifikasyon Kitab
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
16
LPI Sertifikasyon Kitab
kernel/boot/vmlinuz-2.6.30root=/dev/sda2ro3
alma seviyesine ait btn betikler /etc/init.d altnda yer alr. Her bir alma sevi-
yesi iin /etc/rcX.d eklinde bir dizin olup o seviyede altrlacak yada durdurulacak
betiklere ait sembolinkler linkeri ierir. Yani /etc/init.d altndaki btn betikler al-
trlmaz, sadece ilgili alma seviyesinden linklenmi betikler alr. alma seviyesi
dizinleri unlardr:
$ ls /etc/rc2.d/
README S19binfmt-support S21acpid
S21loadcpufreq S21ssh S22postfix
S25bootlogs
S01decnet S19dnet-progs S21acpi-support
S21mysql S21sysstat S23openvpn
S25samba
S01motd S19preload S21atd
S21ntp S21xinetd S24cups
S26winbind
S01nvidia-kernel S19rsyslog S21cron
S21quotarpc S22avahi-daemon S24gdm3
S27plymouth
S16rpcbind S19sudo S21dbus
17
LPI Sertifikasyon Kitab
Sembolik link isimleri S (Start) veya K (Kill) ile balar. S ile balayanlar bir servisi bala-
trken K ile balayanlar sonlandrr. S ile balayanlarda betie start, K ile balayanlar-
da stop parametresi gnderilir. Rakamlar (01-99), bir sralama olumas iindir. Baz
servislerin dierlerinden once balamas gerekebilir. Bu durumda daha kk rakam
verilir.
rnein:
# runlevel
N 2
18
LPI Sertifikasyon Kitab
alma seviyesini bir seferliine deitirmek iin init veya telinit komutu kullanla-
bilir:
# telinit 3
Sistemi kapatmak (halt) veya yeniden balatmak (reboot) iin telinit kullanlabilir. An-
cak daha gvenli yok olarak shutdown komutu kullanlabilir. halt ve reboot komut-
lar da ayn ilevi grrler. Bu iki komut da nihayetinde shutdownu farkl paramet-
relerde aran ksaltmalardr. Ayn ekilde poweroff komutu da yine shutdownu
kullanan farkl bir ksaltmadr.
sre parametresi olarak now denirse ilem hemen gerekletirilir. stenirse ileri bir
zaman verilebilir. Genel kullanma ak sunucularda system kapamalar planldr ve
nceden duyurulur.
Aada farkl shutdown kullanmlar grlmektedir.
# shutdown -h now
# shutdown -r now
#shutdown -h 16:30
#shutdown -r +10
Btn komutlar verebilmek iin sisteme root olarak giri yapmak gerekmektedir.
Bilgisayar kapatmann dier yolu da, sisteme hi giri yapmadan Ctrl+Alt+Del tu
kombinasyonuna baslarak yaplr. Bunun iin sistemin klavyesine fiziksel olarak eri-
mek gerekmektedir.
Upstart
SysV init modelinde sral ve senkron bir yap vardr. Balang betiklerinin belli bir
srada ve yalnzca kullancnn alma seviyesi deitirmesi durumunda almasna
karn Upstart, asenkron ve olay (event) bazldr. SysV init modelindeki betikler yerine
19
LPI Sertifikasyon Kitab
burada grevler (Jobs) vardr. Ubuntu tarafndan desteklenen Upstart uyumluluk iin
SysV betikleri desteklemektedir.
Upstart, arkaplanda srekli alacak hizmetler ile geici sreyle alan grevleri bir-
birinden ayrmaktadr. Upstartn en nemli fark SysV init betiklerinde olduu gibi
karmak ve uzun ablonlu betiklere ihtiya duymamasdr. Aada rnek bir betik
grlmektedir:
expect fork
respawn
exec servis d9 r
# initctl list
20
LPI Sertifikasyon Kitab
Paket Ynetimi
Konu:
Pardus ve Red Hat paket ynetim sistemlerini tanmak
Hedefler:
Pardus altnda paket kurmak, kaldrmak ve gncelleyebilmek
Red Hat altnda paket kurmak, kaldrmak ve gncelleyebilmek
Kaynak kodundan program kurmak
Anahtar Kelimeler:
apt-get, dpkg, yum, rpm, rpm2cpio, ldconfig, LD_LIBRARY_PATH
21
LPI Sertifikasyon Kitab
Paket Ynetimi
Linux altnda paket ynetimi pakete ait tm operasyonlar(kurma, gncelleme ve
kaldrma) kapsar. Bir uygulama kurulumu iki trl yaplabilmektedir.
1. Hazr paketlerden kurulum yapmak.
2. Ak kod uygulamay kaynak kodundan derleyerek kurmak.
Paketten kurulum olduka kolay olup tm gereksinimler ve kurulum sonras yaplacak
kinci yntem olan kaynak kodundan derleme baz avantajlar olsada birinciye gre
fazla tercih edilmemektedir. Bir pakedi kaynak kodundan derlerken, derleyici para-
metreleri sistemdeki ilemciye gre deitirilerek uygulamann daha hzl almas
salanabilir. Bazen de hazr paket ihtiya duyduumuz bir parametre ile derlenmedi-
i iin kaynak koddan kurmak gerekebiliyor..Ancak kod derlemek, derleme sonrasn-
da al betiklerini ayarlamak gibi iler yeni balayanlar iin zor olabilir.
# cat /etc/apt/sources.list
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
anahavuz wheezy main contrib non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
anahavuz wheezy-proposed-updates main contrib non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
cokluortam wheezy main non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
guvenlik wheezy/updates main contrib non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
ozelhavuz wheezy main non-free
22
LPI Sertifikasyon Kitab
Dpkg komutu RPM datmlarndaki rpm komutuna karlk gelir. Apt-get ve apt-cac-
he komutlar da yum elenii denilebilir. Aptitude metin tabanl arayz ile paket y-
netimi yapmaktadr. Alien komutu ile deb/rpm paket dnm yaplabilmektedir.
Bir yazlm rpm paketi var fakat deb formatnda paketi yoksa alien komutu sayesinde
rpm paketinden debian paketine dnm yaplabilir. Tam tersi olarak deb paketin-
den de rpm paketi yaplabilmektedir.
Grafik arayznde synaptic paket yneticisi sayesinde grsel olarak paket kurulumu
yaplabilir.
23
LPI Sertifikasyon Kitab
Sonraki blmlerde kabuk zerinde altrlabilecek komutlar ile paket ynetimi an-
latlacaktr.
Paket sorgulama
dpkg -l veya --list paremetresi ile sistemde kurulu tm paketler listelenir.
# dpkg l
dpkg S parametresi ile bir dosyann hangi paket tarafndan kurulduu renilir.
# dpkg -S /bin/ls
coreutils: /bin/ls
Yukardaki ktya gre /bin/ls dosyas coreutils isimli paket ile birlikte gelmektedir.
dpkg L komutu ile bir paketin kurduu tm dosya ve komutlar listelenir.
# dpkg -L vim
/.
/usr
/usr/bin
/usr/bin/vim.basic
/usr/share
/usr/share/doc
24
LPI Sertifikasyon Kitab
/usr/share/bug
/usr/share/bug/vim
/usr/share/bug/vim/script
/usr/share/bug/vim/presubj
/usr/share/lintian
/usr/share/lintian/overrides
/usr/share/lintian/overrides/vim
/usr/share/doc/vim
Bir paketin ihtiya duyduu tm baml paketleri listelemek iin apt-cache depends
komutu kullanlr.
apt-cache search komutu ile tanml paket depolarnda bulunan paket listesinde ara-
mas yaplabilir. Aadaki rnekte iinde vim geen tm paketler listelenmitir.
25
LPI Sertifikasyon Kitab
Paket Kurma
Pardus paket depolar /etc/apt/sources.list dosyasnda tanmlanr.
# cat /etc/apt/sources.list
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
anahavuz wheezy main contrib non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
anahavuz wheezy-proposed-updates main contrib non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
cokluortam wheezy main non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
guvenlik wheezy/updates main contrib non-free
deb [arch=amd64,i386] ftp://depo.pardus.org.tr/kurumsal/
ozelhavuz wheezy main non-free
apt-get install parametresi veya dpkg --install ile Aadaki komutlarla paket kuru-
labilir.
apt-get install paketad
dpkg i paketad.deb veya dpkg install paketad.deb
Paket Silme
dpkg r veya apt-get remove komutu ile yaplandrma dosyalar hari tm dosyalar
silinir. Her eyi silmek iin de apt-get purge parametresi kullanlr.
26
LPI Sertifikasyon Kitab
27
LPI Sertifikasyon Kitab
Paket Gncelleme
apt-get update komutu ile gerek manada bir paket gncellemesi yaplmaz. Sadece
paketin indeks dosyalar ve kaynaklar gncellenir. apt-get upgrade ile de yeni s-
rmler kurulur.
# apt-get update
Get:1 ftp://depo.pardus.org.tr wheezy Release.gpg [1.672 B]
Get:2 http://download.opensuse.org ./ Release.gpg [189 B]
Get:3 ftp://depo.pardus.org.tr wheezy-proposed-updates
Release.gpg [836 B]
Hit http://download.opensuse.org ./ Release
Hit ftp://depo.pardus.org.tr wheezy Release.gpg
..
RPM
RPM, Red Hatin klasik paket ynetim aracdr. Paket kurmak, kaldrmak ve gncelle-
mek iin kullanlr.
Temel rpm komutlar aadaki tabloda yer almaktadr.
28
LPI Sertifikasyon Kitab
Paket zaten kurulu ise aadaki gibi bir hata mesaj alnr:
# rpm -e xsnow
error: removing these packages would break dependencies:
/usr/X11R6/bin/xsnow is needed by x-amusements-1.0-1
Bir pakete ait yazlmlar bir baka paket tarafndan kullanlyorsa rpm dorudan silin-
mesine izin vermez. ncelikle silinecek pakete ihtiya duyan paketin silinmesi gere-
kir. Eer ne yaptmzdan eminsek rpmi aadaki gibi --force ile zorlayabiliriz:
Mevcut paketin yeni srm km ise aadaki komut ile mevcut paket gncellenir:
Eer paket kurulu deilse, gncelleme anlamndaki -U, ykleme anlamndaki -i gibi
alr.
# rpm -q xsnow
xsnow-1.41-1
29
LPI Sertifikasyon Kitab
rpm2cpio
RPM olarak paketlenmi bir dosyay cpio ariv formatna evirir. Genel olarak RPM
paketten istenen bir dosyay kartmak iin kullanlr.
rpm2cpio, tpk cpio gibi Stdouta yazdndan ktnn bir dosyaya ynlendirilmesi
gerekmektedir.
30
LPI Sertifikasyon Kitab
Dier yntem:
Yum Yaplandrma
Yum yaplandrma dosyas /etc/yum.conf dosyasdr. ntanml dosya aadaki gi-
bidir:
[main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=2
31
LPI Sertifikasyon Kitab
cachedir:
Yumun nbellek ve dosya veritabann tutaca dizin
keepcache:
1 veya 0 olabilir.
logfile:
Yumun gnlklerini yazaca dosya
exactarch:
1 veya 0 olabilir. Yalnzca bilgisayar mimarisine (i386, i686, x64 gibi) ait
paketleri ykleme karar
gpgcheck:
1 veya 0 olabilir. Paketin saysal imzasn kontrol etme karar
[repository]
name=repository_name
baseurl=repository_url
name:
Depo ad
baseurl:
Deponun tam yolu
Baseurl aadaki biimdedir:
baseurl=http://path/to/repo/rel/$releasever/server/$basearch/os/
Depoyu etkin veya devre d yapmak iin enabled tanm yaplr. 1 veya 0 olur. 1 ol-
mas durumunda paket yklemelerinde kaynak olarak kullanlacaktr.
enabled=1
32
LPI Sertifikasyon Kitab
rnek:
[red-hat-enterprise-linux-sfs]
name = Red Hat Enterprise Linux Scalable FS
baseurl = https://cdn.redhat.com/content/dist/
rhel/entitlement-6/releases/$releasever/$basearch/
scalablefilesystem/os
enabled = 1
gpgcheck = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
sslverify = 1
sslcacert = /etc/rhsm/ca/redhat-uep.pem
sslclientkey = /etc/pki/entitlement/key.pem
sslclientcert = /etc/pki/entitlement/11300387955690106.pem
yumdownloader
Yum-utils paketi gelen bu programck ihtiya duyulan rpm paketi indirmek iin kul-
lanlr. Normalde Yum gncel olan paketi indirmez. Ancak bu pakete ihtiyacnz varsa
yumdownloader kullanabilirsiniz.
Yum dosyay indirmiyor:
$ yum --downloadonly install openssh-server
Loading downloadonly plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Nothing to do
$ yumdownloader openssh-server
openssh-server-4.3p2-19.f 100% |=========================|
252 kB 00:01
33
LPI Sertifikasyon Kitab
Yum
Yum, Red Hatin paket yneticisi olup paketler hakknda sorgular yaplmasna, pa-
ketlerin depolardan ekilmesine, yklenmeleri ve kaldrlmalarna ve btn sistemin
gncellenmesine imkan tanr.
Yum ayn zamanda paket bamllklarn otomatik tespit ederek kaldrlan yada yk-
lenen paketin ihtiya duyduu dier paketleri de ykler.
34
LPI Sertifikasyon Kitab
Paket Gncelleme
Tek bir paketi gncellemek iin:
Paket Arama
Btn RPM paketlerinin isminde, tanmnda ve zet bilgisinde anahtar kelime kulla-
nlarak arama yaplabilir. Birden fazla anahtar kelime belirtilebilir.
Arama, hangi paketi kuracanzdan emin olmadnz ancak neyle ilgili olduunu
tahmin ettiinizde kullanlabilirsiniz.
35
LPI Sertifikasyon Kitab
Paket Listeleme
Paket veya paket gruplar hakknda bilgi almak iin list kullanlr. Arama yaparken ifa-
deler kullanlabilir.
Arama, hangi paketi kuracanzdan emin olmadnz ancak neyle ilgili olduunu
tahmin ettiinizde kullanlabilirsiniz.
Paket Bilgisi
Bir veya daha fazla paket hakknda bilgi almak iin info kullanlr.
36
LPI Sertifikasyon Kitab
Paket Kurmak
Bir veya daha fazla paketi kurmak iin install kullanlr.
Paket adn bilmiyorsanz yklemek istediiniz programn tam yolunu vererek de ku-
rulum yapabilirsiniz.
Paket Gruplar
Ayn amaca ynelik paketler ayn Grup IDsi altnda gruplanmlardr. Bylece tek ko-
mutla birbiriyle ilgili btn paketler kurulabilir.
37
LPI Sertifikasyon Kitab
Gemi Hareketler
history parametresi yum ile yaplan hareketleri grmenizi salar.
38
LPI Sertifikasyon Kitab
http://www.sourceforge.net
http://www.freshmeat.net
tar komutuna verilen z parametresi gzip ile sktrlm dosyay amak iindir. x ise
tar ile birletirilmi dosyay paralamak iindir. Baz programlar gzip yerine daha ok
sktrma salayan bzip2 ile sktrlr. Byle bir dosyay amak iin z yerine j kulla-
nlr:
39
LPI Sertifikasyon Kitab
# ./configure
# make
# make install
Bunlara make config veya make test gibi ilave kontroller de eklendii oluyor. Ancak
genel kurulm bu ekildedir. Configure betii genel ve her programa zel olmak zere
parametreler alabilir. rnein --prefix parametresi genel bir parametre olup prog-
ramn nereye kurulacan gsterir. Parametreler hakknda bilgi almak iin kaynak
kodun olduu dizinde aadaki komutu verin:
# ./configure help
Installation directories:
--prefix=PREFIX install architecture-independent
files in PREFIX
[/usr/local]
--exec-prefix=EPREFIX install architecture-dependent
files in EPREFIX
[PREFIX]
Optional Features:
--enable-debug Enable debug messages
--disable-local-users Disable the filters for
local users
--enable-syslog Enable syslog messages
--enable-backup Enable backup
Ktphaneler
Linux programlar ya dinamik yada statik derlenirler. Statik olarak derlenen program-
lar, her ne fonksiyona ihtiya duyarsalar kendi ierisinde onu barndrrlar. Yani tam
ve bamsz olarak alabilecek ekildedirler. Dinamik olarak derlenen programlar,
almas iin harici ktphanelere ihtiya duyarlar. Ktphaneler, programclarn sk
kullanlan fonksiyonlar topladklar kodlardr.
40
LPI Sertifikasyon Kitab
ldd komutu bir programn statik mi yoksa dinamik mi olduunu; dinamikse hangi
ktphanelere ihtiya duyduunu belirler.
# ldd /bin/ln
linux-vdso.so.1 (0x00007fffae5ff000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
(0x00007f52a6ccb000)
/lib64/ld-linux-x86-64.so.2 (0x00007f52a7096000)
LD Ykleyici
Dinamik derlenmi programlar baz fonksiyonlar harici ktphanelerden kullanr;
kendi iinde bulundurmaz. Dinamik bir program altrldnda ihtya duyduu k-
tphaneleri ykleyen programa dinamik ykleyici denir. Bu program ld-linux prog-
ramdr:
# ls -l /lib/ld-linux.so.2
# cat /etc/ld.so.conf
include /etc/ld.so.conf.d/*.conf
# ls /etc/ld.so.conf.d
i486-linux-gnu.conf libc.conf x86_64-linux-gnu.conf zz_
i386-biarch-compat.conf
41
LPI Sertifikasyon Kitab
# cat /etc/ld.so.conf.d/x86_64-linux-gnu.conf
# Multiarch support
/lib/x86_64-linux-gnu
/usr/lib/x86_64-linux-gnu
# ldconfig
# ldconfig -p
1292 kitaplk, `/etc/ld.so.cache arabelleinde bulundu
libzvbi.so.0 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/
libzvbi.so.0
libzvbi-chains.so.0 (libc6,x86-64) => /usr/lib/x86_64-
linux-gnu/libzvbi-chains.so.0
libzbar.so.0 (libc6,x86-64) => /usr/lib/libzbar.so.0
libz.so.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libz.so.1
.....
# export LD_LIBRARY_PATH=/usr/lib/dizin1:/usr/local/lib/
dizin2
42
LPI Sertifikasyon Kitab
Konu:
Kabuk, komut satr ve temel Linux komutlar
Hedefler:
Kabuk hakknda bilgi sahibi olmak
evre deikenlerini grntlemek, atamak, kullanmak
Komut satrnda alabilmek
Komut altrmak, komutlar birbirine balamak
Temel Linux komutlarn tanmak
Anahtar Kelimeler:
Bash, export, env, echo, cd, pwd, ls, sed, awk, xargs, tr, find, cat, wc
43
LPI Sertifikasyon Kitab
Kabuk
Kullanclarn iletim sistemi ile etkileebilecei iki ana ortam mevcuttur. Bunlardan
birisi grafik masast, dieri de komut satrdr. Komut satrn sunan ve komutlar
yorumlayp altran kabuk programdr.
En yaygn kullanlan kabuk program Bash olmakla birlikte ksh, csh, zsh gibi farkl
kabuklar da bulunmaktadr.
Sisteme giri yaparken her kullanc iin tanml bir kabuk alr. Kabuk program kul-
lancya bir komut satr (prompt da denir) sunar ve komut girmesi iin bekler. Bash
bu komutu yorumlayp gerekli programlar altrr ve sonlanmalarn bekler. lem-
ler bittikten sonra kontrol yeniden kabua geer ve kabuk yeniden komut girii iin
bekler. Kabuktan k yaplana kadar bu dng devam eder.
$ echo $SHELL
/bin/bash
$ chsh -s /bin/sh
Changing shell for user1.
Password:
Shell changed.
Yeni kabuun aktif hale gemesi iin sistemden kp yeniden giri yapmak gerekir.
Eer kullanlan kabuk yalnzca mevcut oturum iin deitirilmek istenirse dorudan
kabuk altrlr:
$ bash
user1@pardus $
44
LPI Sertifikasyon Kitab
Yardm Alma
Linux, konsol altnda text tabanl yardm alnabilecek man (manual) olarak bilinen bir
sistem sunmaktadr. Programlar, biimlendirilmi manual yardm dosyalar ile birlikte
datlmaktadr. man komutu bu sayfalar biimli bir ekilde okumaya ve kullancya
gstermeye yarar. rnein aadaki man komutuyla mann kendisi hakknda yar-
dm alnabilir:
$ man man
Ayn konu ad iki farkl anlam ierebildiinden (komut olan read ile system ars
olan read gibi) yardm sayfalar aadaki gibi blmlendirilmitir:
Blm No Aklama
1 Komutlar (sistem yneticileri iin)
2 ekirdek sistem arlar (ekirdek programclar iin)
3 Ktphane fonksiyonlar (kullanc ortam programclar iin)
4 Aygt dosyalar
5 Dosya biimleri
6 Oyunlar
7 Dier
8 Sistem ynetim komutlar (root kullancs iin)
9 ekirdek rutinleri
Komut Gemii
Kullancnn verdii komutlar ev dizini altndaki .bash_history dosyasnda tutulur.
history komutu bu dosyay grntler. Yakn bir zamanda kullandnz uzunca bir
komutu bu ekilde tekrar geri arabilirsiniz.
45
LPI Sertifikasyon Kitab
Daha once verilmi bir komutu geri getirmenin en kolay tuu yukar ve aa ok tu-
uyla komutlar zerinde dolamaktr. Dier bir yntem ise Ctrl-R ile geriye doru
komutlar zerinde arama yapmaktr. Komutla alakal birka harf yaznca ilgili btn
gemi komutlar bulacaktr. Birden fazla alternative sonu ktnda tekrar tekrar
Ctrl-R yaplarak istenen komut bulunana kadar dolalabilir.
Komut Satr
Kabuk programn kullancya sunduu iki komut satr vardr: Esas komut satr, yar-
dmc komut satr. Bunlar PS1 ve PS2 deikenlerinde tutulur.
\u kullanc (user), \h host, \W ise alma dizini anlamndadr. Byle bir prompt user1
kullancsnda $ ile biterken root kullancsnda # ile biter.
$ ve # komut girii iin beklenildiini gsteren simgelerdir. Yetkili kullanc sisteme
giri yapm ise #, normal kullanc giri yapm ise $ grecektir.
$ ls | \
> grep conf*
httpd.conf
\ simgesi komut satrnn bitmediini ve bir alt satrdan devam ettiini gsterir. Ge-
nelde bir satra smayacak kadar uzun olan komutlar iin veya komutlarn gzel g-
rnmesi iin kullanlr. Bu durumda bir sonraki satrda yardmc prompt (>) karak
komutun devam ettiini ve hala girdi yaplmas gerektiini bildirir.
46
LPI Sertifikasyon Kitab
Yukardaki komutta yardmc prompt kmasnn nedeni tek trnak () iaretinin ko-
rumasz kullanmdr. Kabuk trnak atnza kanaat getirdiinden trna kapatana
kadar sizden komut girdisi isteyecektir. Komutun devam etmesi gerektiini gster-
mek iin yardmc prompt sunmutur. Trnak burada ayra olarak kullanlmtr. Ayra
olarak kullanlan trnan \ katakteri ile korunmas gerekir:
$ echo Kullanicilar:
> user1 user8 user15
Kullanicilar:
user1 user8 user15
Komut satrndan girilen komut eer zel anlam olan fonksiyonlardan biri deilse
diskte bulunarak altrlr. rnein:
$ ls
dosya.txt sirala.sh
Eer komutun zel anlam var ise Bash tarafndan yorumlanarak gerei bash tarafn-
dan yerine getirilir. Aadaki ifadeler Bash iin zel anlamldr. Bunlar zel anlaml
olup kabuu yetenekli klan zel fonksiyonlar sunar. rnein for ve while ile dng
kurulabilir. if-then-else-fi yaps ile arta bal ilem yaplabilir.
47
LPI Sertifikasyon Kitab
evre Deikenleri
evre deikenleri, programlama dillerindeki deikenler (variable) gibi belirli bilgi-
leri tayan zel stringlerdir. Uygulamalar, bu evre deikenlerinin deerlerine gre
davranlarn deitirebilir.
root@pardus:~# env
TERM=xterm
SHELL=/bin/bash
XDG_SESSION_IE=9076065b0c479abada74f8f6524155ec-
1386782093.179827-446063787
SSH_CLIENT=10.41.255.17 55148 22
SSH_TTY=/dev/pts/0
USER=root
MAIL=/var/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/
bin:/sbin:/bin
PWD=/root
LANG=tr_TR.UTF8
SHLVL=1
HOME=/root
LOGNAME=root
SSH_CONNECTION=10.41.255.17 55148 172.16.45.219 22
DISPLAY=localhost:10.0
_=/usr/bin/env
48
LPI Sertifikasyon Kitab
Bir deiken sadece iinde bulunulan kabuk iinde kullanlacaksa u ekilde tanm-
lanr:
$VAR1=15
$ echo $VAR1
15
Eer deiken global olacaksa alan alt srelerde de bu deerin geerli olmas iste-
niyorsa export komutu kullanlr.
$ export VAR1=15
Bir betikten baka bir betik arldnda yeni bir kabuk ortamna girilir. Baka kulla-
nclarn iinde bulunduu kabuklarn her biri de ayr bir ortam saylr.
Tanml olan bir evre deikenini silmek iin ise unset komutu kullanlr. Bu komut
parametre olarak deiken adn banda $ iareti olmadan- alr.
$ echo $A
5
$ unset A
$ echo $A
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
49
LPI Sertifikasyon Kitab
$ echo $HOME
/home/user1
$ echo $SHELL
/bin/bash
$ echo $LANG
tr_TR.UTF8
Program altrma
Linux altnda bir program, komutu veya betii altrabilmek iin programa ait dos-
yann altrma yetkisinin olmas gerekmektedir. Yetkiler ls -l komutuyla grlebilir.
$ ls -l /bin/cat
-rwxr-xr-x 1 root root 51856 Oca 26 2013 /bin/cat
Bir komut eer alma yolunda(PATH) ise herhangi bir dizinden altrlabilir. PATH
kabukta komut tam yol verilmeden yazldnda komutun sra ile hangi dizinlerde
aranacan belirleyen zel bir evre deikenidir. Sistem komutlar alma PATHine
yerletirildii iin tam yolunu vermeden altrlabilir. Ancak kendi programlarmz
veya betikler genelde standart sistem PATHinde olmad iin tam yolu verilerek a-
ltrlmal.
50
LPI Sertifikasyon Kitab
$ ls
$ /home/ahmet/scripts/script2.sh
$ ./script2.sh
Yukardaki kullanmlardan ilkinde altrlacak betiin tam yolu verilmitir. Tam yolu
verilmezse sistem tarafndan betiin bulunmas mmkn deildir. kinci kullanmda
ise altrlmak istenen betik bulunulan dizindedir. . sembol bulunulan dizini sim-
gelemektedir.
$ ../script2.sh
Yukardaki kullanmda ise .. ile bir st dizin simgelenmektedir. Siz bir alt dizinde yer
alyor ve bir st dizindeki betii altrmak istiyorsanz bu ekilde kullanlabilir.
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Eer bir dosya veya dizine erimek iin dosya/dizin ad / ksmndan balayarak yaz-
lrsa buna tam yol denir. Bunun dndaki tm dosya yollarna( . .. ./ vb) greceli yol
ad verilir.
51
LPI Sertifikasyon Kitab
k Ynlendirme
Bashgelimi bir kabuk program olup pek ok ileri kolaylatrc zellikler sunmak-
tadr. Bash kabuk altnda bir komutun ktlar bir dosyaya ynlendirilebilir. Bu sayede
komut ktlar kalc olarak diske yazlp daha sonra zerlerinde allabilir.
Linuxde 3 adet ntanml dosya tanmlaycs (file descriptor) vardr:
Standart Girdi (stdin) : alan programn dosya vb kaynaklar amadan veri oku-
mak iin kullanaca kayna belirtir. n tanml olarak stdin klavyeden veri alr.
Stdin dosya numaras 0dr.
Standart kt (stdout) : alan programn ktlarn gnderecei hedefi belirtir.
n tanml olarak kt terminale baslr. Stdout dosya tanmlama numaras 1dir.
Standart Hata (stderr) : alan programn hata ktlarn gnderecei hedefi be-
lirtir. n tanml olarak hata terminale baslr. Hata dosya tanmlama numaras 2dir.
Stderr ynlendirmesi iin stdoutdan farkl olarak 2 nolu standart hata numaras be-
lirtilerek 2> eklinde yaplr.
52
LPI Sertifikasyon Kitab
rnekler:
Ps komutu alan sreleri gsterir. Bu komutun kts grld gibi ekrana deil
procs.txt dosyasna yazlmtr.
Yukarda > yerine >> karakterleri kullanlmtr. Bu karakter mevcut dosyann sonuna
ekleme yapar. Dosyann eski ierii silinmez, onun hemen ardndan eklenir. Tek >
karakteri ise daha nceki ierii temizler ve dosyann ierisinde yalnzca son alan
komutun kts yer alr.
> /dev/null 2>&1 : Stdoutu /dev/nulla ynlendirir. Stderryi de stdouta ynlendi-
rir. Stdout /dev/nulla ynlendirildii iin stderr ve stdout /dev/nulla ynlendirilir.
2>&1 > /dev/null: Stderr, stdouta ynlendirilir. Sonra sadece stdout /dev/nulla
ynlendirilir.
1>&2 > /dev/null: stdout, stderrye ynlendirilir. Sonra stdout /dev/nulla ynlendi-
rilir. Stderra dokunulmaz.
53
LPI Sertifikasyon Kitab
Burada komut2 ve komut3 n girdileri standart giriten alan programlar olmas ge-
rekir. rnein grep komutu giriten verilen metin ierisinde istenen kelimeleri arar
ve bulursa ekrana yazar.
Yalnzca ls komutu verildiinde kt u ekilde:
$ ls
a.txt beni.oku procs.txt program sirala.sh surecler.
txt yedek.tar.gz
$ ls | grep s
procs.txt
sirala.sh
surecler.txt
ls komutunun kts ekrana baslmad fakat grep komutuna gnderildi. grep komu-
tu ise kendine gelen ierikte s harfini arad ve bulduunu ekrana bast.
Bu komutlar srayla altrlr. Yani nce ls altrlr, sonra kts grepe verilerek grep
altrlr.
Bal Komutlar
Birbirine bal iki komut && karakterleri kullanlarak altrlr. rnein make komu-
tu baarl olursa make install komutu altrlacaksa:
eklinde iki komut balanr. Eer make ilemi hata verirse make install yaplmaz.
54
LPI Sertifikasyon Kitab
Temel Komutlar
Linux altnda kullanlabilecek yzlerce komut ve yardmc ara vardr. Aada bunlar-
dan Linuxu ynetmek iin gerekli olanlar anlatlmtr.
ls
Dizin ieriini (dosya ve alt dizinleri) listeler.
ls komutunun pek ok parametresi vardr. Yardm sayfalar (man ls) kullanlarak de-
tayl bilgi alnabilir.
-a
. ile balayan dosyalar da listeler.
-A
. (iinde olunan dizin) ve .. (bir st dizin) hari tm dosyalar listeler.
-F
Dosyalar birbirinden ayrt etmek iin dizinlerin sonuna (/), altrlabilir
dosyalarn sonuna (*), sembolik linklerin sonuna (@), soket dosyalarn so-
nuna (=) ve FIFO dosyalarn sonuna (|) ekler.
# ls -F
dosya.txt* sirala.sh*
-R
Alt dizinleri de zyinelemeli olarak gsterir.
-S
sim sralamasndan nce boyut sralamas (en byk dosya nce) yapar.
-i
l ile birlikte her bir dosya iin seri numaras olarak kullanlabilecek inode
numarasn gsterir.
-l
Detayl biimde dosyalar listeler.
-p
Dizin olan dosyalarn sonuna / karakteri ekler.
# ls -p
dizin1/ dosya.txt sirala.sh
-n
-l ile kullanldnda kullanc ad yerine kullanc IDsi grntlenir.
-r
Ters srada listeler.
55
LPI Sertifikasyon Kitab
# ls -l
toplam 8
drwxr-xr-x 2 root root 4096 Ara 13 20:56 dizin1
-rwxr-xr-x 1 root root 18 Ara 11 19:19 dosya.txt
-rwxr-xr-- 1 root root 0 Ara 11 20:10 sirala.sh
Detayl gsterimde sol bata dosya trn belirten bir karakter yer alr. Bu karakter-
lerin anlamlar yledir:
b Blok dosya.
c Karakter dosya.
d Dizin.
l Sembolik balant.
s Soket haberleme dosyas.
p FIFO, pipe.
- Normal dosya.
pwd
inde bulunulan dizinin yolunu verir. Baz kabuklarda bu komut dahili komut olarak
da bulunmaktadr.
-L
allan dizini Mantksal(logical) olarak gsterir.
-P
Btn sembolik balantlar zerek fiziksel alma dizinini gster.
# pwd
/root/test
# ln -s / /home/user1/temp /tmp
# cd /tmp/temp
# ls
# pwd -L
/tmp/temp
# pwd -P
/home/user1/temp
56
LPI Sertifikasyon Kitab
cd
Komut satrnda dizinler arasndaki geiler cd komutuyla yaplr.
$ cd /
$ pwd
/
cd komutu dizin deitirmek iin kullanlr. Bu komut sayesinde komut satrnda iken
dosya sisteminde dolaabiliriz. Parametre olarak hedef yolu alr.
/etc
/etc/X11
/sbin
/usr/local/sbin
Mutlak yollar / simgesi ile balar. Bu ekilde balamayan yollar ise greceli (relative)
yollardr.
$ cd /usr
$ cd local/bin
$ pwd
/usr/local/bin
kinci cd komutu greceli bir yol iin verilmitir. Greceli yollar kkten itibaren deil,
bulunulan dizinden itibaren ileme konur.
Yollar, bir st dizin anlamnda .. ierebilir.
$ pwd
/usr/local/bin
$ cd ..
$ pwd
/usr/local
$ cd ../local/bin
$ pwd
/usr/local/bin
57
LPI Sertifikasyon Kitab
# cd ~ahmet
# pwd
/home/ahmet
cp
Dosya ve dizin kopyalar. Bir dosyay baka bir dosya olarak kopyalayaca gibi birka
dosyay bir dizine de kopyalayabilir.
-i
Eer hedef dosya mevcut ise kullancy uyarr. Eer kullanc y tuuna basar-
sa kopyalama gerekletirilir. n tuuna basarsa kopyalama iptal edilir.
-f
Eer hedef dosya mevcut ise kullancy uyarmadan zerine yazar.
-p
Dosya zelliklerini korur. Korunan dosya zellikleri: deitirilme zaman, eri-
im zaman, dosya bayraklar, dosya eriim modu, kullanc IDsi ve grup IDsi.
-r
Dizini alt dizinlerle birlikte kopyalar.
-v
Ekrana ne yaptna dair bilgi basar.
find
Dosya ve dizin aramak iin kullanlr.
Kullanm:
58
LPI Sertifikasyon Kitab
Seenekler:
-name isim: Aranlacak dosyann ismi.
-iname isim: Aranlacak dosya ismi byk/kk harf duyarsz
-type tip: Aranan dosyann tipini belirler. Tip aadaki deerlerden biri olabilir.
f: Normal Dosya
d: Dizin
b: Blok dosyas
c: Karakter dosyas
l: Sembolik balant
rnekler:
Tm disk zerinde httpd.conf dosyasn aramak iin:
59
LPI Sertifikasyon Kitab
/tmp dizinde son eriim tarihi 30 gnden fazla olan dosyalar grntlemek iin.
mkdir
Dizin oluturmak iin kullanlr.
-p
Oluturulacak dizinin st dizinleri yoksa onlar da oluturur.
$ mkdir arsiv
$ mkdir p 2013/02/17/18/00
60
LPI Sertifikasyon Kitab
mv
Bir dosyay veya dizini baka bir dosya veya dizin olarak tar. Veya birka dosya veya
dizini baka bir dizine tar.
-i
Hedef dosya varsa kullancya sorar. Eer kullanc y veya Y tuuna basarsa
zerine yazar. n veya N tuuna basarsa yazmaktan vazgeer.
--reply={yes,no,query}
Etkileimli durumda sorulara otomatik olarak belirtilen cevap verilir.
-f
Hedef dosya var ise kullancya sormadan zerine yazar.
-u
Yalnzca kaynak dosya hedef dosyadan daha yeni ise veya hedef dosya eri-
elemez ise ta.
$ mv kaynak hedef
rm
Dosya veya dizin siler.
-f
Silerken sormaz, varolmayan bir dosya iin bilgi vermez.
-i
Silmeden nce sorar.
-R -r
Dizinlerin ve alt dizinlerin ieriklerini ardarda siler.
-v
Yaplan ilem hakknda daha ayrntl bilgi verir.
$ rm f beni.oku
$ rm fr dizin1
$ rm -v ciro.txt
removed `ciro.txt
61
LPI Sertifikasyon Kitab
rmdir
Bo dizin silmek iin kullanlr. Dizin iinde dosya varsa bu komut dizini silmez. Bunun
yerine rm fr komutu verilmelidir.
$ rmdir mydir
$ rmdir p a/b/c
touch
Eer belirtilen dosya mevcut ise dosya eriim ve deitirilme zamanlarn gnceller.
Eer belirtilen dosya mevcut deilse dosyay oluturur.
-a
Eriim zamann gnceller.
-c
Dosya mevcut deilse dosyay oluturma.
-m
Deitirilme zamann deitir.
-t
Eriim ve deitirilme zamann belirtildii ekilde deitir: [ [ C C ] Y Y ]
MMDDhhmm[.ss]
$ ls -l sirala.sh
-rw-r--r-- 1 ahmet ahmet 44 Ara 10 20:12 sirala.sh
$ touch sirala.sh
$ ls -l sirala.sh
-rwxr-xr-- 1 root root 44 Ara 11 20:10 sirala.sh
cat
Dosyalar birletirmek ve standart ktya basmak iin kullanlr.
$ cat 1.txt
Ben 1.dosyayim
$ cat 2.txt
Ben 2.dosyayim
Dosyalar komut satrnda belirtildii srada okunur. Eer dosya olarak eksi (-) karakteri
kullanlrsa standart giriten okur (yani klavyeden yazmanz bekler). Eer dosya ola-
rak UNIX domain soket verilmi ise sokete balanr ve EOF(Dosya sonu, End Of File)
grene kadar soketten okur.
63
LPI Sertifikasyon Kitab
$ cat -b beni.oku
1 Ben bir dosyayim.
2 Bende toplam 3 satir vardir.
3 Iste bu da son satir.
$ cat -n beni.oku
1 Ben bir dosyayim.
2 Bende toplam 3 satir vardir.
3
4 Iste bu da son satir.
wc
Kelime, satr, karakter ve byte sayar. Girdiyi standart giriten veya parametre olarak
verilen dosyadan alr.
-c
Karakter saysn verir.
-l
Satr saysn verir.
-m
Karakter saysn verir.
-w
Kelime saysn sayar.
$ cat beni.oku
Ben bir dosyayim.
Bende toplam 3 satir vardir.
64
LPI Sertifikasyon Kitab
head
Verilen dosyann ilk satrlarn grntler. n ile ilk ka satrn grntlenmesi gerek-
tii belirtilir. Eer satr says verilmez ise n tanml olarak ilk 10 satr gsterir.
$ head n 2 beni.oku
Ben bir dosyayim.
Bende toplam 3 satir vardir.
$ head -c 3 beni.oku
Ben
Eer birden fazla dosya verilirse verili srasna gre dosyalarn ilk satrlar gsterilir ve
her dosyann satrlarnn bana ==> XXX <== biiminde ayra koyar.
tail
Dosyann son ksmlarn gsterir. c ile byte says, -n ile satr says verilebilir. Eer
dosya verilmez ise standart giriten okur.
$ cat beni.oku
Ben sevimli bir dosyayim.
Bende toplam 3 satir vardir.
Iste bu da son satir.
$ tail -c 7 beni.oku
satir.
$ tail -n 1 beni.oku
Iste bu da son satir.
65
LPI Sertifikasyon Kitab
Eer f parametresi verilirse tail komutu EOF (dosya sonu) karakterini okuyunca dur-
maz. Yeni veriler iin bekler ve veri hazr olur olmaz okuyup ekrana basar. Genellikle
srekli akan bir log dosyasn grntlemek iin kullanlr:
# tail f /var/log/messages
$ tail -r beni.oku
Iste bu da son satir.
more
Dosyann ieriini sayfa sayfa grmek iin kullanlr. Eer dosya uzunluu bir sayfa-
dan fazla ise ekrana sadece bir sayfalk ksmn gsterir. Enter tuu ile bir satr ilerlenir,
boluk(space) tuu ile de bir sayfa ilerlenir.
# more /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
..
--Baka--(73%)
66
LPI Sertifikasyon Kitab
less
more komutunun daha gelimiidir. More komutu ile geriye doru gidelemezken
less ile gidilebilmektedir.
$ less /etc/passwd
nl
Satr balarna satr numarasn ekler.
$ cat a.txt
linux
101
pardus
business
academy
linux
101
$ nl a.txt
1 linux
2 101
3 pardus
4 business
5 academy
6 linux
7 101
cut
Standart giriten okuduu satrlar iindeki istenen stunlar gsterir. Stun seme
ilemi bir ayraca gre yaplabilecei gibi sabit boyda da yaplabilir.
-c
Karakter olarak seilecek stunlar belirler.
-d
Ayra belirlemek iin kullanlr.
67
LPI Sertifikasyon Kitab
-f
Ayra gre stunlara ayrldnda grntlenmek istenen stunlar seer.
Aada /etc/password dosyasnn bir ksm grlmektedir. Grld gibi bilgiler
: karakteri ile birbirinden ayrlm. d ile ayra olarak : belirtildiinde soldan saa
kullanc ismi 1. stun, parola 2.stun, UID 3. stun, GID 4.stun, aklama 5.stun, ev
dizini 6.stun ve kabuk 7.stun olarak yerleir. rnein kullanc ad ve kabuk bilgi-
lerini ekrana yazmak iin:
$ cat /etc/passwd
....
sshd:x:117:65534::/var/run/sshd:/usr/sbin/nologin
postfix:x:118:123::/var/spool/postfix:/bin/false
ahmet:x:1001:1001::/data/ahmet:/bin/sh
pardus:x:1004:1006::/home/pardus:/bin/sh
tr
Tekrar eden karakterleri deitirmek, silmek veya sktrmak iin kullanlr. STDINden
okur, STDOUTa yazar.
Hem SET1, hem de SET2 belirtilmise SET1deki her bir karakter karlk gelen SET2de-
ki karakterle deitirilir. rnekler:
$ tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ
pardus
1. Kk harfleri byk harflerle deitirmek:
PARDUS
68
LPI Sertifikasyon Kitab
$ tr a-z A-Z
pardus
PARDUS
$ tr [:space:] \t
Pardus Linux
Pardus Linux
expand, unexpand
Bu komut, giri metnindeki sekmeleri(TAB) boluklarla deitirir.
$ unexpand out
69
LPI Sertifikasyon Kitab
fmt
Paragraf metnini yeniden biimlendirir.
Bir satrda n tanml olarak en fazla 75 karakter olacak ekilde biimlendirme yapar.
$ fmt myfile.txt
$ fmt w 80 myfile.txt
$ fmt s myfile.txt
-u: Boluklar tekdze olsun. Kelimeler aras tek, cmleler aras iki boluk.
$ fmt u myfile.txt
pr
Bask iin kty biimlendirir, sayfalandrr. Satr veya stn saysn dzenleyen, ke-
nar boluklarn ayarlayan, satrlar numaralandran, sayfa bal ekleyen seeneklere
sahiptir.
$ pr d myfile.txt
od
cat veya dier komutlarla bir girdi grntlendiinde baz zamanlar kta anlamsz
karakterler ve hizalama bozulmalar grr. Bunun sebebi okunabilir bir anlam olma-
yan kontrol karakterleridir. Bunlarn ne olduu cat benzeri komutlarla anlalmaz. Bu
karakterlerin ne olduunu grmek iin od (Octal Dump) komutu kullanlr.
70
LPI Sertifikasyon Kitab
$ od text2
0000000 004471 066160 066565 031412 061011 067141 067141 005141
0000020 030061 060411 070160 062554 000012
0000031
$ od -A d -t c text2
0000000 9 \t p l u m \n 3 \t b a n a n a \n
0000016 1 0 \t a p p l e \n
0000025
Aadaki rnekte offset olmad gibi t ile baz kontrol karakterlerin yerine zel
isimleri ktya konulmutur. (nl: new line, ht: horizontal tab gibi.)
$ od -A n -t a text2
9 ht p l u m nl 3 ht b a n a n a nl
1 0 ht a p p l e nl
71
LPI Sertifikasyon Kitab
paste
ki dosyay satr satr veya stun stun birletirmek iin kullanlr.
$ cat 1.txt
GNU
Linux
Debian
Mint
Ubuntu
$ paste 1.txt
GNU
Linux
Debian
Mint
Ubuntu
72
LPI Sertifikasyon Kitab
$ cat 2.txt
1 A
2 B
3 C
4 D
join
Paste gibi iki dosyay birletirmekle birlikte biraz daha ileri bir komut olan join, iki
dosyadaki stunlar eletirerek birletirir. Hi bir parametre verilmediinde aada-
ki gibi bir sonu ortaya kar:
$ cat A.txt
1 A
2 B
3 C
73
LPI Sertifikasyon Kitab
$ cat B.txt
1 Ali
2 Yusuf
3 Selim
$ join A.txt B.txt
1 A Ali
2 B Yusuf
3 C Selim
Alan seme
Dosyalardaki ortak alanlar kullanlarak birleme yaplabilir.
$ cat 1.txt
06 ANKARA 1
21 DIYARBAKIR 2
34 ISTANBUL 3
61 TRABZON 4
$ cat 2.txt
06 CANKAYA
21 KULP
34 USKUDAR
61 AKCAABAT
Grld gibi plaka numaralar ortak alan olarak kullanlarak illerle ileler eletiril-
mi oldu.
74
LPI Sertifikasyon Kitab
Ayra Belirtme
Yukardaki rneklerde alanlar (dier deyile stunlar) birbirinden boluk ile ayrlm-
tr. Boluk ve TAB ntanml ayra olduundan join komutu stunlar bu ikisinden
hangisi varsa ona gre ayrr ve numaralandrr. Eer stunlar baka bir ayrala ayrl-
msa (virgl, noktal virgl, iki nokta st ste gibi) t parametresi kullanlarak ayra
belirtilebilir.
Harf Duyarll
Birletirme iin eletirme yaplrken normalde kk harf ile byk harf elemez.
rnein bir dosyadaki A ile dierindeki a karakteri elemez. Byk-kk harf du-
yarlln iptal etmek iin i parametresi kullanlr.
kt Biimlendirme
join normalde dosyalardaki sraya gre satrlar ve stunlar sralar. Sadece sralama
kriteri olan ortak stunu baa alr. Alanlar istenilen srada ktya yazmak iin o pa-
rametresi kullanlr.
split
split komutu dosyay iki veya daha fazla paraya blmek iin kullanlr.
-l parametresi ile satr saysna gre b parametresi ile byte miktarna gre paralanr.
75
LPI Sertifikasyon Kitab
$ split split.zip
$ ls
split.zip xab xad xaf xah xaj xal xan
$ wc -l *
40947 split.zip
1000 xaa
1000 xab
1000 xac
Grld gibi ntanml olarak 1000 satrl dosyalara bler. l parametresi ile b-
lnm dosyalarn satr says deitirilebilir. Veya b parametresi ile dosya boyutu
verilebilir.
$ ls dosya*
dosyaaa dosyaab dosyaac
$ cat dosyaaa
linux
101
Pardus
$ cat dosyaab
business
academy
Linux
$ cat dosyaac
101
sed
Metin ve stringler zerinde ilem yapan bir programdr. Genel olarak programlarn
ktlarn dzenlemek veya pek ok dosyay otomatik olarak dzenlemek iin kulla-
nlr. Metin zerinden tek geite istenen kriterlere uygun deiiklikleri yapabildiin-
den olduka etkin ve hzl bir aratr.
76
LPI Sertifikasyon Kitab
Deitirme
eski dosyasndaki gun metnini bulup gece ile deitirir, sonucu yeni dosyasna yazar:
$ cat numbers.txt
bir iki uc, bir iki uc
dort uc iki bir
bir yuz
77
LPI Sertifikasyon Kitab
Birden ok eleme olsa da bunlardan setiimiz bir tanesi iin ilem yapabiliriz. \(
ve \) ile patternleri belirleyebilir, \1 ve \2 eklinde eleen patterni seip kullanabili-
riz. Bu durumda sadece seilenler ekrana baslacaktr, dier ktlar silinecektir.
\2 ve /2 kartrlmamal. lki ifade iinde, ikincisi ise ifade sonundaki kullanm eklidir.
Ayra (delimiter) ed, more ve vida olduu gibi slash (/) dr. Bir dosya yolu verilirken
yolun ierdii slashler korunmal:
lk ksmda bulunacak pattern var, & ise bulunan her ne ise onu gsterir. Bu simgeyi
birden fazla kullanabiliriz:
123 eletii iin iki kere tekrar edildi, abc iin herhangi birey yaplmad.
78
LPI Sertifikasyon Kitab
rnekler:
foo veya bar desenlerini ieren satrlar silmek iin:
$ cat del.txt
satir 1
satir 2 foo 56
satir 3
satir 4 bar 34
$ cat space.txt
satir 1
satir 4
satir 3
Sed komutu i parametresiyle deiiklikleri tandart ktya yazmak yerine dosya ie-
risinde gerekletirilir. Yukardaki deiiklikler ekran ktsnda olmakla birlikte orjinal
dosyada olmamtr.
awk
Awk, gl bir desen arama aracdr. Sed gibi benzerlerinden ayran zellik ise mate-
matik ilemler, artl ifadeler, deikenler ve dosya G/ ilemleri gibi script dillerinde
olan temel ilevlere sahip olmasdr. Genelde yaplandrma dosyalarn okumak veya
komut ktlarn ilemek iin kullanlr. Dosyalarla ilem yapmak iin f parametresi
kullanlr. arlma ekli:
79
LPI Sertifikasyon Kitab
Eer desen belirtilmezse btn satrlar eleir. Sonda verilen dosya parametresi yeri-
ne metin akm zerinde de ilem yapabilir.
Awk n tanml olarak boluk ve Taba gre stunlara ayrr. Bunu deitirmek iin F
parametresi kullanlr.
Bash ile biten satrlardaki birinci kolonu (kullanc ad) gsterir. Komuttaki $1, birinci
kolonu gsteriyor. /etc/passwd dosyasnda stunlar : ile ayrldndan ayra olarak F
ile tanmlanmtr.
awk ile matematik ilemler yaplabilir. Aadaki rnek Fahrenheitten Celsiusa scak-
lk evrimi yapar:
80
LPI Sertifikasyon Kitab
sort
sort komutu dosyadaki satrlar sralamak iin kullanlr.
-n: saysal(numeric) sralama yapar.
-f: Byk/kk harf ayrm olmadan sralar.
-r: sralama sonucunu tersler listeler.
$ cat a.txt
Linux
101
pardus
business
academy
$ sort a.txt
101
Academy
business
Linux
pardus
$ sort -n a.txt
Academy
business
Linux
pardus
101
uniq
uniq komutu birden fazla olan ayn satrlar tek satra drmek iin kullanlr. Genel-
likle sort komutu ile sralama yapldktan sonra ayn ifte kaytlar silmek iin kullanlr.
$ sort a.txt
101
101
academy
business
Linux
Linux
pardus
81
LPI Sertifikasyon Kitab
[ ] Aralk gsterir.
a[1-9], a1, a2a9 isimleriyle eleir.
a[6,8], a6 ve a8 isimleriyle eleir.
82
LPI Sertifikasyon Kitab
file
Dosya trn belirlemek iin kullanlr. /usr/share/file/magic dosyasndaki dosya tr-
lerinin imzas olan sihirli numaralar kullanr.
$ file test.tar.gz
test.tar.gz: gzip compressed data, deflated,
last modified: Sun Sep 16 13:34:51 2001, os: Unix
$ file -z test.tar.gz
test.tar.gz: GNU tar archive (gzip compressed data, deflated,
last modified: Sun Sep 16 13:34:51 2001, os: Unix)
tee
Komut ktsn hem dosyaya hem de Stdouta yazar.
-a: Dosyann sonuna ekleme yapar, mevcut dosyay sfrlamaz.
Aadaki komut dizisinde lsin kts hem dosyaya hem de Stdouta yazlr.
$ ls | tee file.txt
Stdouta yazd iin Stdinden okuyan herhangi bir komuta da kty gnderebilir.
Aadaki komut dizisinde kt hem dosyaya yazlr hem de sort komutuna girdi ola-
rak geilir.
83
LPI Sertifikasyon Kitab
xargs
Bir komutu parametrelerini standart girdiden(stdin) alp baka komutlara geebi-
lecek ekilde altrr. Bylece bir defada ileyebilecei parametreden daha fazlas
komuta aktarlabilir. Genelde ls veya find komutu tarafndan retilmi uzun dosya
listesini, bu dosyalarn herbirinde tek tek ilem yapacak bir baka komuta parametre
olarak gemek iin kullanlr.
rnek: Bir patterni btn dosyalarda aramakta iin:
Xargsn en uygun kullanm yerlerinden birisi de bir dizindeki belli dosyalar silmektir.
Bunlar tek satrda rm komutuna parametre olarak verilemediinden xargsa ihtiya
vardr:
$ ls *.tmp | xargs rm
$ ls | xargs n2 diff
$ echo 1 2 3 4 | xargs -n 2
1 2
3 4
$ cat 1.txt
GNU
Linux
Debian
Mint
Ubuntu
84
LPI Sertifikasyon Kitab
Bir dizindeki tm dosyalar baka bir dizine tek tek tamak iin:
-i: { } bulunan her yere Stdinden okunan deeri (rnekte ls ktsndaki dosya
ismi) yazar.
Normalde Bash kabukta ters tek trnak ile komut altrlabilir. Ancak bu ok karmak
olabilmektedir. xargs komutu ters tek trnak ihtiyacn ortadan kaldrd gibi daha
fazlasn sunar.
85
LPI Sertifikasyon Kitab
Disk Blmlendirmesi
Konu:
Sabit diskin blmlendirilmesi ve kullanma hazr hale getirilmesi
ve bakm
Hedefler:
Amaca uygun disk blmlendirmesini yapabilmek
Al ykleyicisini yaplandrmak ve yklemek
Disk sorunlarn zmek
Kullanc kotalarn aktif etme
Disk blmlerini bir dizine balama
Anahtar Kelimeler:
MBR, fdisk, GRUB, LILO, mkfs, tune2fs, fsck, mount, /etc/fstab, qu-
otaon, which, locate, whereis
86
LPI Sertifikasyon Kitab
Blmlendirme
Sabit diskler birden fazla blmlere ayrlarak her bir blm ayr bir iletim sistemine
veya bir iletim sisteminin ayr bir dizinine tahsis edilebilir. Disk blmlendirmenin
amalar:
letim sisteminin temel bileenleri ile kullanclara veya kuruma ait bilgilerin
ayrlmas. rnein kullanc ev dizinleri, irketin veri taban vs Bu sayede
iletim sisteminde yaplacak gncelleme gibi ilemler kullanc verisini
etkilemeyecektir.
Farkl karakteristikteki kullanmlar ayrmak iin. rnein /var dizini srekli ya-
zlan log dosyalarn ierirken, veritabanlar arlkl olarak sorgu iin kullanlr.
Bunlar iin ayr blmlendirme yaplarak ayr biimlendirilebilir, gereksinime
uygun iyiletirmeler yaplabilir.
Ynetim kolayl. rnein /boot blm ayr tutarak iletim sisteminin al
problemlerini ynetmek daha kolay hale getirilir. rnein a zerinden pay-
latrlacak bir dosya sunucusunun dosyalar ieren blm ayr bir blm
yaplabilir.
MBR
Linux Intel tabanl donanmlarda Microsoft Windows letim sisteminin kulland
ayn MBR(Master Book Record) tablosunu kullanr. Bu disk blmlendirmesi en faz-
la 4 adet birincil(primary) disk blmlendirmesine(partititon) izin verir. Bu emay
geniletmek iin geniletilmi(extended) ad verilen zel bir birincil disk blmlen-
dirmesi oluturulmaldr. Geniletilmi blmlendirme ile mantksal disk blmleri
oluturulabilmektedir. IDE disklerde Linux en fazla 63 adet kullanlabilir disk blm-
lendirmesine izin verirken bu limit SCSI disklerde en fazla 15 adet olmaktadr.
87
LPI Sertifikasyon Kitab
kincisi ise geici bellek olarak kullanlan swap alandr. Bu alan eskiden bellek mik-
tarna gre ayarlanrken gnmzde donanmlarn ok fazla bellei olduu bellek
ile orantl bir ekilde boyut vermeye gerek yoktur. Makinede altrlacak servislere
gre bu deer deiebilir fakat asla fiziksel bellek miktar kadar yer ayrmaya gerek
yoktur. nk bir sistem eer swap alann kullanmaya balamsa orada ciddi bir
performans sorunu var demektir. Ya sorunu karan uygulama tespit edilerek gerekli
dzeltmeler yaplmal ya da ilave RAM takviyesi yaplmaldr.
88
LPI Sertifikasyon Kitab
Al Ykleyicisi
Eski Linux datmlarnda n tanml olarak LILO geliyordu. Gnmzde yerini GRUB
al ykleyicisine brakt. GRUB(GRand Unified Bootloader) yklenicisinin yaplan-
drmas /boot/grub/grub.cfg dosyasnda tanmldr. Fakat bunun dorudan dzen-
lenmesi tavsiye edilmez. /etc/default/grub dosyasnda gerekli dzenlemeler yapl-
dktan sonra update-grub komutu ile /boot/grub/grub.cfg dosyas gncellenir.
Fakat orijinal GRUB dosyas /boot/grub/menu.lst dosyasdr. Redhat vb baz datm-
larda aklda kalc olmas iin /boot/grub/grub.conf dosyasn /boot/grub/menu.lst
dosyasna balant olarak tanmlamtr.
# more /etc/default/grub
update
# /boot/grub/grub.cfg.
GRUB_DEFAULT=0
GRUB_TIMEOUT=7
GRUB_HIDDEN_TIMEOUT=0
GRUB_DISTRIBUTOR=Pardus
Bu yaplandrma GRUB ile gelen standart yaplandrma olmayp Debian tabanl da-
tmlara zel bir yapdr.
89
LPI Sertifikasyon Kitab
# ls /etc/grub.d/
00_header 05_debian_theme 10_linux 20_linux_xen 30_os-
prober 40_custom 41_custom README
# grub.conf/menu.lst
# Global Options:
#
default=0
timeout=15
splashimage=/grub/bootimage.xpm.gz
#
title Fedora (2.6.25)
root (hd0,0)
kernel /vmlinuz-2.6.25 ro root=/dev/hda5 mem=2048M
initrd /initrd-2.6.25
title Debian (2.6.26-experimental)
root (hd0,0)
kernel (hd0,0)/bzImage-2.6.26-experimental ro root=/dev/
hda6
(hd0,0) ifadesi yklenecek ekirdein hangi diskin hangi blmnde olduunu ifade
eder.
90
LPI Sertifikasyon Kitab
91
LPI Sertifikasyon Kitab
Aslnda mkfs komutu farkl komutlar iin bir arac komut durumundadr. Kendisi
herhangi bir dosya sistemi oluturmaz. Verilen parametreye gre ilgili dosya sistemi
oluturma komutunu altrr. Yukardaki rnekteki t msdos parametresinden dola-
y aslnda mkdosfs komutunu altrr. t parametresi verilmediinde ext2 dosya sis-
temini ise mke2fs komutunu altrarak oluturur. Mkfs yerine dorudan ilgili dosya
sistemine ait komutu da altrabilirsiiz. Bu komutlardan bazlar:
# mke2fs -j /dev/sdb2
92
LPI Sertifikasyon Kitab
rnein 512 MB swap dosyas oluturup etkinletirmek iin aadaki komutlar ve-
rilir.
# tune2fs j /dev/sda1
fsck ileminin yaplmas iin gemesi gereken zaman aral veya mount saysn
belirler (-c ve i parametreleri)
Mevcut dosya sistemi hakknda bilgiler verir. (-l parametresi)
93
LPI Sertifikasyon Kitab
94
LPI Sertifikasyon Kitab
tune2fs hem mevcut verileri gsterme hem de dzenleme zelliine sahipken dum-
pe2fs komutu ise tune2fs l ktsnn aynsn vermektedir. Dosya sistemini detayl
incelemek(debug) ve dosya sisteminin durumunu deitirmek iin de debugfs ko-
mutu kullanlr.
fsck
Eer dosya sistemininde elektrik kesintisi vs gibi arzalardan dolay sorunlar oluursa
fsck komutu ile dosya sistemi kurtarlmaya allabilir. Bu komut parametre olarak
disk blm ad veya disk blmnn /etc/fstab dosyasnda belirlenmi balanma
noktasn alr. Fsck komutu ek bir parametre kullanmadan altrldnda bulduu
her bir hatann dzeltmesi iin onay isteyecektir. Bu da byk boyutlu dosya sistem-
lerinde ok zaman alabilmektedir. Tespit edilen tm hatalarn dzeltilmesi iin y
parametresi kullanlmaldr. fsck komutu mutlaka okuma-yazma modunda balan-
mam dosya sisteminde altrlmaldr.Eer okuma ve yazmak iin balanlm bir
dosya sisteminde altrlsa beklenmedik hatalar oluabilir.
rnein /dev/sda2 disk blmnn dosya sistemini dzeltmek iin aadaki komut
verilir.
# fsck y /dev/sda2
95
LPI Sertifikasyon Kitab
# cat /etc/fstab
# /dev/sda1
UUID=6e856a2a-be08-4a1d-85ab-8d345d7a5c65 swap swap sw
0 0
# /dev/sda2
UUID=da02cb85-f80b-4283-ab4e-30079b03d14d / e x t 4
rw,errors=remount-ro 0 1
fstab dosyasnn eski formatnda UUID yerine fiziksel disk blmnn ad yazard(/
dev/sda2 gibi). Hangi UUID deerinin hangi disk blmne ait olduunu renmek
iin blkid komutu kullanlabilir.
# blkid
/dev/sda1: UUID=6e856a2a-be08-4a1d-85ab-8d345d7a5c65 TYPE=swap
/dev/sda2: UUID=da02cb85-f80b-4283-ab4e-30079b03d14d TYPE=ext4
96
LPI Sertifikasyon Kitab
# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_
inodes=125513,mode=755)
devpts on /dev/pts type devpts
(rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs
(rw,nosuid,noexec,relatime,size=102704k,mode=755)
/dev/disk/by-uuid/da02cb85-f80b-4283-ab4e-30079b03d14d
on / type ext4 (rw,relatime,errors=remount-ro,user_
xattr,barrier=1,data=ordered)
tmpfs on /run/lock type tmpfs
(rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /run/shm type tmpfs
(rw,nosuid,nodev,noexec,relatime,size=513640k)
rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs
(rw,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc
(rw,nosuid,nodev,noexec,relatime)
Yukardaki komut ext3 dosya sistemli /dev/sdb2 disk blmn /mnt dizinine ba-
lar. Bu dosya sistemine ait dosyalara artk /mnt zerinden eriilebilir.
Eer bir dosya sistemi /etc/fstab dosyasnda tanml ise mount ilemi iin herhangi
bir parametre kullanmadan sadece balama noktas veya disk blm ad yazmak
yeterlidir. rnein /etc/fstab dosyasnda /dev/sdb2 disk blm /mnt blmne
balanacak ekilde yaplandrld ise aadaki iki komutta ayn ii yapacaktr.
97
LPI Sertifikasyon Kitab
CD-ROM iin Linuxde /dev/cdrom aygt kullanlr. CDyi balamak iin de genelde /
media dizini kullanlr.
Dosya sistemi kullanlmad durumda umount komutu ile dosyaya eriim kapatlr.
# umount /dev/cdrom
Eer dosya sistemi kullanc veya bir proses tarafndan eriilmekte ise umount komu-
tu dosya sistemi megul diye hata verecektir. Hangi dosyann hangi prosesler tara-
fndan kullanldn lsof komutu ile grebilirsiniz. Bu komut n tanml olarak hangi
dosyann ve port numarasnn hangi prosesler ve kullanclar tarafndan kullanldn
listelemektedir.
root@pardus:~# lsof
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
init 1 root cwd DIR 8,2 4096 2 /
init 1 root rtd DIR 8,2 4096 2 /
init 1 root txt REG 8,2 36992 664455 /sbin/init
init 1 root mem REG 8,2 14664 654765
/lib/x86_64-linux-gnu/libdl-2.17.so
init 1 root mem REG 8,2 1742520 654762
/lib/x86_64-linux-gnu/libc-2.17.so
init 1 root mem REG 8,2 126232 658039
/lib/x86_64-linux-gnu/libselinux.so.1
init 1 root mem REG 8,2 261184 658040
/lib/x86_64-linux-gnu/libsepol.so.1
init 1 root mem REG 8,2 145160 654759
/lib/x86_64-linux-gnu/ld-2.17.so
init 1
98
LPI Sertifikasyon Kitab
Fstab Parametreleri
/etc/fstab dosyasndaki 4. Ksm seenekleri ifade eder.
n tanml olarak dosya sistemlerini sadece root kullancs mount veya umount ya-
pabilir. Eer kullanclarnda bu ilemleri yapabilmesi isteniyorsa /etc/fstab dosyasn-
daki seenekler ksmna user parametresi eklenmelidir. rnek:
Kota yaplandrmas
Linux dosya sistemleri iin kota destei vardr. Kota ile kullanc ve gruplarn disk kul-
lanmn kstlayabilirsiniz. Kota yaplandrmas iin zetle aadaki sre uygulanr.
Dosya sisteminin kota destei ile almas iin /etc/fstab dosyasnda ilgili dosya siste-
minin seenekler ksmna usrquota ve/veya grpquota parametresi ekli olmaldr. Bu
parametre eklendikten sonra ilgili dosya sistemi yeniden mount edilmelidir.
99
LPI Sertifikasyon Kitab
Bu ilemden sonar quotaon komutu ile dosya sisteminde kota aktif edilmi olur.Eer
bu komut aktsnda /home altnda aquota.user.new.tmp dosyas oluturulamad
gibi bir hata alnrsa sebebi SELinux olabilir. Kota yaplandrmas iin SELinux zellii
aktif ise kapatlmas gerekir.
# quotaon /home
Geici olarak kota zelliini iptal etmek iin de quotaoff komutu kullanlr.
# quotaoff /home
100
LPI Sertifikasyon Kitab
Kullanm:
Hard linkte ise orijinal dosya ile link oluturulan dosyann birebir ayns iki farkl dos-
ya oluur. Birisinde yaplan ilem dierine de yansr. Bu durumu disklerde kullanlan
RAID-1 teknolojisine benzetebiliriz. Orijinal dosya silinse bile verilere dier dosya
zerinden eriilebilir. Kat linkteki bu zellik Linux inode yapsndaki dosyaya yaplan
link says zellii ile salanmaktadr. Dosyann biri silindiinde link says deeri bir
azaltlmakta. Dier dosya(lar) silindiinde ise link says sfr olduunda dosya tama-
men silinmektedir. Dolaysyla hard link dosya sistem ile dorudan alakaldr. Farkl
dosya sistemlerinin(disk blmleri) farkl inode yaps olduu iin hard link farkl dos-
ya sistemleri arasnda yaplamaz. Sadece ayn dosya sistemi zerinde yaplabilir.
Farkl dosya sistemleri arasnda link oluturulacaksa sadece sembolik link kullanla-
bilir.
Dosya Arama
Linuxde find ile dosya isminde ve ieriinde arama yaplabilmektedir. Buna ek olarak
bir ka farkl komut ile de arama yaplabilmektedir.
which komutu
$PATH deikeni ierisinde tanml altrlabilir komutlarn tam yolunu gsterir. Sa-
dece komutlar ve shell scriptler iin alr.
# which cut
/bin/cut
101
LPI Sertifikasyon Kitab
locate komutu
find komutu arama yaparken her seferinde belirtilen dizinde tarama yapt iin ok
fazla dosya olan sistemlerde yava alabilir. Daha hzl dosya aramak iin locate ko-
mutu kullanlabilir. Bu komut dosya ad aramalarn direkt dosya sisteminde tarama
yapmak yerine zel bir veritabanndan getirmektedir. Locate komutu aramay /var/
cache/locate/locatedb veritaban dosyasnda yapmaktadr. Bu dosya locate dnda
ayr olarak alan updatedb komutu tarafndan gncellenmektedir. Eer en gncel
dosyalarnda aramaya dahil olmasn istiyorsanz belirli aralklarla updatedb komutu
altrlmaldr. Her gece veritaban dosyasn gncellemek iin Pardus tarafndan
otomatik olarak /etc/cron.daily/locate dosyasndaki cron ii altrlmaktadr. Arama
yapmak iin dosyann ad veya adnn getii kelimeleri yazmak yeterlidir.
whereis komutu
Parametre olarak verilen program, kaynak kodu ve yardm dosyalarnn yerlerini gsterir.
# whereis pwd
pwd: /bin/pwd /usr/include/pwd.h /usr/share/man/man1/pwd.1.gz
102
LPI Sertifikasyon Kitab
Hedefler:
Yetkilendirme modelini anlamak
Dosyalara eriim gerekli izinlerini tanmlamak
s ve t bitleri
Anahtar Kelimeler:
chmod, chown, chgrp
103
LPI Sertifikasyon Kitab
Yetkiler
Linux yetkilendirme modeli, UNIX ve BSDden alnmtr.
# ls -l /bin/cp
-rwxr-xr-x 1 root root 130128 Oca 26 2013 /bin/cp
lk ksmn hemen banda tek bir simgeyle dosyann tr ifade edilmektedir. Yukar-
daki gibi eer bo ise (yani -) normal dosyadr.
d directory (dizin)
l symbolic link (sembolik ba)
c character special device (karakter aygt)
b block special device (blok aygt)
p fifo
s socket
lk ksm dosya sahibine ait haklar, ikinci ksm ayn gruptaki kullanclara ait haklar,
son ksm ise dier kullanclara ait haklar belirlemektedir.
r okuma izni(4)
w yazma izni(2)
x altrma izni(1)
rnein: 754 modu Dosya sahibi iin 7 (4 + 2 + 1, yani rwx), grubu iin 5 (4 + 1, yani
rx) ve herkes iin 4 (yani r) hakk vermektedir.
104
LPI Sertifikasyon Kitab
# ls -al dosya.txt
-rw-r--r-- 1 root root 0 Kas 29 16:34 file
# chmod 755 dosya.txt
# ls -al dosya.txt
-rwxr-xr-x 1 root root 0 Kas 29 16:35 dosya.txt
755 belirtilen grup iin 7, 5, 5 haklarn vermektedir. Her bir yetkinin rakamsal de-
eri vardr. 7, 5 ve 5 bu rakamlarn toplamdr.
r 4
w 2
x 1
rnekler:
Hi haklar olmayan dosya aadaki gibi grnr:
# ls -al sirala.sh
---------- 1 root root 0 Kas 29 16:37 sirala.sh
# chmod +r sirala.sh
# ls -al sirala.sh
-r--r--r-- 1 root root 0 Kas 29 16:37 sirala.sh
105
LPI Sertifikasyon Kitab
Eer gruba (g) ve dierlerine (o) altrma hakk verilecekse aadaki komut kulla-
nlr:
chown
Dosya sahibi ve grubunu deitirir.
-R
Belirtilen dizinin tm dosyalar ve alt dizinleriyle birlikte sahip ve grup bilgilerini
deitirir.
Aadaki rnekte imdiki sahibi root:wheel olan beni.oku dosyasnn sahibi sim-
sek:admin olarak deitirilmitir.
# ls -l beni.oku
-rw-r--r-- 1 root root 0 Kas 29 16:38 beni.oku
# chown simsek:admin beni.oku
# ls -al beni.oku
-rw-r--r-- 1 simsek admin 0 Kas 29 16:38 beni.oku
106
LPI Sertifikasyon Kitab
chgrp
Sadece dosya ve dizinin grubunu deitirmede kullanr. Chown komutu gibi R pa-
rametresi kullanlabilir. Aadaki rnekte dosyann sahibi users grubu yaplmtr.
# ls -ald /tmp
drwxrwxrwt 11 root root 4096 Kas 29 16:15 /tmp
altrma hakk olmayan dizin veya dosyaya sticky bit hakk verilirse sondaki t yerine
T gsterilir.
Suid bit(s) ise normal kullanclarn bir komutu altrrken sadece o komut iin geici
olarak daha yetkili bir kullanc haklaryla i yapmasn salar. Bu hak chmod 4755
komutu ile verilir.
107
LPI Sertifikasyon Kitab
Hedefler:
Dosya sisteminin hiyerarik dzenini anlamak
Hangi dizinin hangi amala kullanldn renmek
Anahtar Kelimeler:
/boot, /root, /etc, /usr, /bin, /sbin, /mnt, /lib, /dev, /proc, /tmp, /
var, /home
108
LPI Sertifikasyon Kitab
Hiyerari
Gnmzde yzlerce linux datm bulunmaktadr. Her bir datm kendi dizin ya-
ps hiyerarisi kullanmaya baladnda her bir linux datmna zel dizin yapsn
bilmek gerekiyordu. Bu sorunu amak iin Dosya sistemi hiyerari standart( Filesys-
tem Hierarchy Standard( FHS) belirlendi. Bu standartn amac kurulan yazlmlarn ve
kullanclarn kullanaca dosya ve dizinleri belirlemektir. Bu standartlara gre man
dosyalarnn, programlarn yeri, veri tutan dizinlerin yeri vs hepsi belli bir kurala gre
dzenlenmitir. http://www.pathname.com/fhs/ adresinden en gncel standart in-
celeyebilirsiniz.
its scs
ee51vn ma51ik
109
LPI Sertifikasyon Kitab
/bin
/bin dizini sistem yneticileri ve normal sistem kullanclar iin kullanl temel ko-
mutlar barndrr. Kullanc kabuu bash ve ls, cp, rm, cat gibi pek ok temel komutu
iermesi nedeni ile en basit sistem kurulumunda bile oluturulur.
/boot
letim sisteminin almas iin gerekli btn dosyalar bu dizindedir. ekirdekler ve
initrd kalplar bu dizinde yer alr.
# ls /boot/
config-3.2.0-4-amd64 grub initrd.img-3.2.0-4-amd64
System.map-3.2.0-4-amd64 vmlinuz-3.2.0-4-
/dev
Bu dizin zel veya aygt dosyalarnn konumudur. UNIX dnyasndaki herey bir dos-
yadr kuralnn bir gstergesi olarak bilgisayara bal aygtlar, donanmlar /dev altn-
da kendilerine eriimi salayan bir dosyaya sahiptirler.
/etc
Sistemin nemli yaplandrma dosyalar bu dizindedir. Yaplandrma dosyalar alt-
rlamayan fakat okunan ve yorumlanan dosyalardr. Bir programn nasl alacan
belirlerler. Buradaki dosyalar olmadan sistem programlar dzgn almayacaktr.
O nedenle /etc iin sistemin kalbidir diyebiliriz. Her zaman yedeklemede ncelie
sahiptir.
110
LPI Sertifikasyon Kitab
/home
Linux ok kullancl bir iletim sistemi olarak kullanclarn dosyalarn bakalarna
kar koruduu gibi herkese almas iin bir ev (home) dizini sunar. Linuxta stan-
dart olarak kullanc dizinleri /home altnda yer alr. Buraya kullanc istedii dosyalar
yerletirir, programlar kurar veya siler. ok fazla kullanc olan sistemlerde bu dizinin
ayr bir disk blm olmas tavsiye edilmektedir.
Bir kullanc alrken kullanc dizinine baz dosyalar otomatik olarak kopyalanr. Bu
dosyalar /etc/skel altndaki dosyalardr.
/lib
Bu dizin ekirdek modlleri ve sistem ktphanelerini ierir. ekirdek modlleri sis-
temin al iin gerekli olup baz donanmlarn sistem tarafndan tannmasn salar.
Sistem ktphaneleri ise /bin ve /sbin altndaki programlarn almas iin gerekli C
ktphaneleridir.
Ktphane dosyalarnn uzants *.so eklindedir.
ekirdek modlleri ve aygt srcleri /lib/modules/kernel-version dizini altnda-
dr. Linux altnda birden fazla ekirdek olabilecei iin bu ekilde ekirdek srm
ile dizinler ayrlmaktadr. Al zamannda hangi ekirdek seilirse onun dizinindeki
modller yklenir.
/lost+found
Baz zamanlar bilgisayar doru kapanmam olabilir, elektrik kesintisi nedeni ile ani-
den kapanm olabilir. Bu durumda bir sonraki alta iletim sistemi dosya sistemi
kontrol (fsck program ile) yapacaktr. Bu kontrol sonucunda bozulmu veya kaybol-
mu bir ey varsa dzeltip veya bulup bu dizin altna koymaktadr.
Her disk blm kendi lost+found dizinine sahiptir. lost+found dizinindeki dosyalar
eer dzgn ise olmalar gereken dizine geri tanrlar.
/media
Disket, cd-rom, dv-rom, cd/dvd-rw gibi sklp taklabilir dosya sistemleri bu dizine
balanmaktadr.
/mnt
Dosya sistemlerini veya aygtlar balamak iin kullanlan genel balama noktasdr.
Balama ilemi mount komutuyla yaplr:
111
LPI Sertifikasyon Kitab
/opt
letim sisteminin ntanml kurulumu ile gelmeyen tm yazlm ve paketlerin ku-
rulumu iin /opt dizini tahsis edilmitir. rnein, Kylix, StarOffice, WordPErfect vb...
Bu dizin Windows altndaki Program Files dizinine benzetilebilir. Her retici bu dizin
altnda kendi adyla veya programn adyla bir dizin aar ve programlarn bu dizinin
ierisine kurar. /opt/surgate, /opt/endersys veya /opt/ecm gibi.
/proc
/proc sanal bir dosya sistemidir. Linuxun sunduu en gl zelliklerden biri de /
proc dosya sistemidir. Buradaki dosyalar gerek ierik tamaz. alma zamannda
ekirdek tarafndan ierikler gncellenebilir. Sistem bellei, balanm aygtlar, do-
nanm bilgisi, srelerin durumu gibi ekirdee ait bilgileri barndrr. Pek ok sistem
program bilgilerini bu dizinden alrlar:
/root
Sistem yneticisinin ev dizinidir. Sistem kullancs root isimli hesaba sahiptir ve bu
hesabn ev dizini /root dizinidir. /home dizini genelde farkl disklerde olduundan
herhangi bir nedenle yetkili kullancnn sisteme eriememe problemi yaamamas
iin ev dizini kke alnmtr.
/sbin
Sistem programlar (system binary) bu dizinde bulunur. Sistem programlarnn nor-
mal programlardan (/bin) fark sistem ynetimine ynelik olmalardr. Byk bir ks-
mn altrmaya normal kullanclar yetkili deildir. altrabildikleri ise sistemden
bilgi almaya ynelik, sistemde deiiklik yapmayan sistem komutlardr.
mkfs disk biimlendirme komutu, lspci, lsmod, service, sysctl, syslogd, grub, fsck,
dump, init, modprobe gibi sistem komutlar bu dizindedir.
112
LPI Sertifikasyon Kitab
/usr
Sistemde en ok yer kaplayan dizin /usr dizinidir. Bu dizin kullanc iin ikinci bir kk
dizin olarak dnlebilir. Nasl ki sistemin /bin, /sbin dizinleri var; /usr/bin ve /usr/
sbin dizinleri de vardr. Sisteme sonradan kullanc tarafndan kurulan programlar /
usr kk kabul ederek dosya sistemine yerleirler. rnein kullanc programlar /usr/
bine, sistem programlar /usr/sbine, yaplandrma dosyalar /usr/etc veya /usr/local/
etcye yerletirilir.
# ls /usr/
bin games include lib lib32 local sbin share src
/var
Genel olarak deiken (variable) veriler/dosyalar bu dizinde tutulur. rnein sistem
gnlkleri, mail kuyruu, gelen mailler, yazc kuyruu, programlarn kilit dosyalar
vs...
# ls /var/
backups cache data lib local lock log mail opt run spool
tmp www
/var ve /usrn ayr blmlerde olmas sistem ynetimini kolaylatrr. nk /usr yal-
nz okunur ekilde balanp korumaya alnabilir. nk /usr altna dosya eklemek
veya ordaki dosyalar deitirmek ok nadiren gerekleir. /var ise her saniye dei-
ebilir. Srekli gelen emailler, srekli gnlk yazan programlar dnlrse ne kadar
youn yazmaya tabi tutulduu daha kolay anlalr.
/tmp
Geici olarak kullanlacak dosyalar bu dizinde oluturulur. Btn programlar ve kulla-
nclar bu dizine yazabilirler. Buradaki dosyalar ne yaptnza emin olmadan silme-
niz tehlikeli olabilir. nk silinen dosyalar o an alan srelerden biri kullanyor
olabilir.
113
LPI Sertifikasyon Kitab
Ariv ve Yedekleme
Konu:
Linux altnda dosya ve dosya sistemi yedekleme
Hedefler:
Dosya yedekleme aralarn tanmak
Dosya sktrmak
Disk imaj almak
Anahtar Kelimeler:
tar, gzip, gunzip, zcat, bzip2, dd, cpio
114
LPI Sertifikasyon Kitab
tar
Btn UNIX iletim sistemleri tar (Tape Archive) ile arivleme yapmay destekler. Tar
aslnda teyp birimlerine arivleme amacyla gelitirilmitir. Teyp niteleri gelien yeni
teknoloji ile birlikte kullanmdan yava yava kalkmaktadr. Fakat tar program halen
daha deiik amalarla dosya sisteminde kullanlabilmektedir.
Tar kendisi veri sktrmas yapmaz. Veri sktrmas iin gzip veya bzip2 biimlerini
kullanabilmektedir.
$ ls -lh yedek.tar.gz
-rw-r--r-- 1 ahmet ahmet 176 Ara 13 23:22 yedek.tar.gz
f parametresi ile arivleme sonucu oluacak veya mevcut ariv dosyann adn belirt-
mek iindir. Dsya ismini bu parametreden hemen sonra belirtmek gerekir.
Gzip ile sktrlm ariv alrken yine z parametresi kullanlmaldr. Bzip iin ise ayn
ekilde j parametresi kullanlr:
rnein Gzip ile sktrlm dosyay Bzip2 ile amaya alrsanz aadaki gibi hata
alrsnz:
115
LPI Sertifikasyon Kitab
cpio
Dosyalar arive kopyalamak, arivdeki dosyalar kartmak iin kullanlr. Arivlene-
cek dosyalarn listesini STDINden alr ve arivi STDOUTa yazar. Bu nedenle dosya
listesinin oluturulmas ve kn ynlendirilmesi gerekmektedir.
-o seenei ariv oluturmak, -v seenei ise yaplan ilemler hakknda bilgi vermek
iin kullanlr.
Bir dizini alt klasrleriyle tamamen yedeklemek iin dosya isimleri find komutuyla
oluturulabilir.
116
LPI Sertifikasyon Kitab
-I seenei arivi amak, -d seenei ise arivin ierdii klasrleri oluturmak iin kul-
lanlr. Normalde cpio klasrleri oluturmaz.
Cpionun bir kullanm ekli de bir dizini digger bir dizine kopyalamasdr.
cpio komutu kullanlarak tar ariv oluturulabilir. F seenei ile ktnn yazlaca
ariv dosyasnn ismi, -H ile ariv biimi belirtilir.
dd
ntanml olarak Stdinden Stdouta belirtilen blok boyutlarnda dosya kopyalar. Ge-
nel kullanm aadaki gibidir:
117
LPI Sertifikasyon Kitab
dd komutu genel olarak disk imaj almak iin yedekleme amalaryla kullanlr. Aa-
daki komutla sda diski sdb diskine dump edilmektedir.
# dd if=/dev/sda of=/dev/sdb
# dd if=/dev/hda of=haddisk.img
Alnm imaj herhangi bir diske (rnekte hdb) dump etmek iin:
# dd if=hdadisk.img of=/dev/hdb
Bir disk tamamen dump edilebildii gibi iindeki bir disk blm yalnz bana dump
edilebilir.
# dd if=/dev/hda1 of=hda1.img
MBR ilk 512 byte olduundan 512 bytelk tek bir blok kopyalanmaldr.
118
LPI Sertifikasyon Kitab
$ gzip test.c
Sktrlma sonucunda skmam dosya dnr, yani skmam hali diskten silinir.
c parametresiyle kt STDOUTa yazlr ve orjinal dosya muhafaza edilir. Ariv dosya-
snn saklanmas iin STDOUTun bir dosyaya ynlendirilmesi gerekmektedir.
Gzip ile sktrlm dosya, gzip d veya gunzip veya zcat ile alr.
$ gunzip test.c.gz
Gunzip komutu, gzip, zip, compress ve pack sktrma biimlerini otomatik olarak
tanyarak aar. Gunzip c parametresiyle kty STDOUTa yazar. Zcat komutu Gunzip
c ile ayn ilevi grr.
Sktrma ilemini bir dosyaya deil de alt klasrleriyle birlikte bir dizine yapmak iin
r seenei kullanlr.
$ gzip -r directory
119
LPI Sertifikasyon Kitab
alan Sreler
Konu:
Sre balatma ve alan sreleri ynetme
Hedefler:
Sreleri balatma ve sonlandrma
Sreleri grntleme ve izleme
Srelere sinyal gnderme
E zamanl sanal terminaller ama
Arkaplanda yrtlen grevler
Srelerde ncelik
Anahtar Kelimeler:
ps, pstree, top, htop, free, uptime, screen, nohup, bg, fg, jobs, &,
nice, renice, kill, killall, pkill, pgrep
120
LPI Sertifikasyon Kitab
Sreler
Sre (process) genel tanmla alan bir programdr. Sreler, komut satrndan al-
trlan ksa sreli komut olabilecei gibi iletim sisteminin ak olduu sre boyunca
alan bir a servisi de olabilir.
Kullanclarn sreleri ynetebilmesi iin her srece ait bir PID numaras vardr. S-
rele ilgili yaplacak ilemler bu PID numaras zerinden gerekletirilir. Linux altnda
alan ilk sre init olup PID numaras her zaman 1dir. Init ilk sre olduu iin kulla-
nc tarafndan balatlan dier srelerin aksine ekirdek tarafndan balatlr.
Baz sreler e zamanl alan alt threadlere sahip olabilir. Threadler ayn PID al-
tndadr, kendilerina ait bir PID numaras olmaz. rnein Mozilla Firefoxta bir thread
DNS sorgularn zerken dier thread sunucuyla konuur.
ps , pstree
alan kendine ait sreleri grntlemek iin temel olarak ps komutu kullanlr.
$ ps
PID TTY TIME CMD
6082 pts/0 00:00:00 bash
6190 pts/0 00:00:00 ps
a: Btn sreler
- u: Belirtilen kullancya ait sreler
- t: Belirtilen terminale ait kullanclar
121
LPI Sertifikasyon Kitab
$ ps axjf
top
En ok CPU kullanan sreleri gsterir. Ayn zamanda sreleri dzenleyebilecek et-
kileimli bir arayz sunar. Grevleri CPU kullanmna, bellek kullanmna ve alma
sresine gre sralar ve sistem yneticisinin kaynak kullanmn analiz etmesini salar.
122
LPI Sertifikasyon Kitab
Mem satr: Toplam bellek, bo bellek ve kullanlan bellek miktar gibi bellekle ilgili
istatistikleri ierir.
PID : Process ID
PPID : Ana srecin PID numaras
User : Srecin sahibi kullanc
PRI : Srecin ncelii
Time : Sre baladndan beri tkettii CPU zaman
%CPU : Tm sreler iinde CPU zamannn % ne kadarn kulland
%MEM : Toplam sreler iinde fiziksel bellei % ne kadar kulland
htop
htop, ncurses tabanl top benzeri alan sreleri gsteren bir uygulamadr.
Htop program sistemle birlikte kurulu olmayabilir. Aadaki ekilde kurulur:
123
LPI Sertifikasyon Kitab
Balk ksm: lemci, bellek ve Swap kullanm gsteren barlar ve alan sre says,
ilemci yk durumu ve sistemin ne kadar sredir ak olduu gibi bilgileri iermekte-
dir. Bu grnt htop mensnden deitirilebilir.
Gvde ksm: topa benzer olarak srelerin ilemci kullanmna gre listelendii k-
smdr.
free
Kullanlabilir bo veya kullanlm bellek alann grntler. Ayn zamanda swap kul-
lanm hakknda da bilgi verir.
#free
total used free shared buffers
cached
Mem: 1006708 935872 70836 0 148244
346656
-/+ buffers/cache: 440972 565736
Swap: 262140 130084 132056
# free ms 5
124
LPI Sertifikasyon Kitab
uptime
Sistemin ne kadar sredir altn gsterir. Sistem yneticileri genelde bilgileri d-
nda sistem kapanmas olmu mu olmam m bu komutla kontrol eder.
$ uptime
21:54:11 up 13 days, 4:29, 1 user, load average: 0.21, 0.21, 0.12
screen
Metin terminal ve emlatrler iin ekran yneticidir. Tek bir pencereden bir fazla
balanty yeni terminal penceresi amaya gerek kalmadan ynetebilir. Screen genel
olarak, zellikle uzak sunucu balants ile yaplan ve uzun zaman alacak ilemlerin,
balantnn kopmas durumunda yarda kesilmesine kar zm olarak kullanlr.
Uzun srecek bir ilemden nce (rnein wget ile dosya indirme) screen komutu ve-
rilerek oturum oaltlr.
$ screen
Balant koptuunda screen ile yaplan ilemler yarda kesilmez. Alan screen pen-
ceresindeki ilem devam ederken Ctrl-a + d tularna baslarak ekran zlr (deta-
ch) ve asl terminale geri dnlr. Bu ekilde birden fazla terminal alarak ilemler
yaplabilir.
zlen terminaller arka planda screen tarafndan sanal olarak iletilmeye devam
edilir. Kullanc sistemden k yaparak baka ilerine devam edebilir.
125
LPI Sertifikasyon Kitab
$ screen -ls
There are screens on:
19019.pts-1.elastix (Detached)
19079.pts-1.elastix (Detached)
2 Sockets in /var/run/screen/S-user1.
$ screen r
$ screen r 19079
Birden fazla screen terminal amak iin iki yol vardr: 1. Yeni bir screen oluturup z-
mek ve ana terminalden yeni bir screen daha amak. 2. Ctrl-A + c ile i ie screen
oluturmak. Bu durumda bir sonraki terminal iin Ctrl-A + n, bir nceki terminal iin
Ctrl-A + p tular kullanlr.
Screen, yaplan ilemleri loglayabilir. Bunun iin Ctrl-A + H (byk H) tular kullanlr.
Bu komutu kullandnzda aadaki gibi bir mesaj greceksiniz. Bu mesajda logla-
mann yaplaca dosya ad verilmektedir. Bu dosya kullanc ev dizinindedir.
$ screen -L
O anki terminal grntsn almak iin Ctrl-A + h yaplr. kt yine ev dizininde har-
dcopy.0 eklinde bir dosyada saklanmaktadr.
126
LPI Sertifikasyon Kitab
Screen ile ekran bandan ayrlacanz zaman terminal ekranna hzlca parola ko-
rumas koyabilirsiniz. Bunun iin Ctrl-A + X (byk X) ikilisi kullanlr. Aadaki gibi
parola soran bir ekran kartr. Tekrar parola yazlarak sisteme girilir.
Screen, herhangi bir oturumu tekrar aabilmek iin (re-attach) de giri parolasndan
bamsz parola koyabilir. Bu durumda r ile eski screen terminaline ulamadan nce
parola sorulur.
Bunun iin ncelikle $HOME/.screenrc dosyasnda aadaki gibi parolann ifreli hali
(crypted) olmal:
password crypt_password
Screenin gelimi bir zellii de bir terminali baka bir kullanc ile paylaabilmesidir.
Bylece bir bakas terminal ierisinde yaplanlar izleme ansna sahip olacaktr.
Dier kullanc (user2) ayn sunucuya balanarak aadaki komutla paylalm ter-
minali alr:
$ screen x user1/
Screen ekrann sonlandrmak iin iki yol bulunmaktadr. Ya Ctrl-A + d (detach) yada
Ctrl-A + K (kill) kullanlr.
127
LPI Sertifikasyon Kitab
nohup
Verilecek komutlar herhangi bir kesintiye uramadan altrmay salar. Btn
sinyalleri devre d brakarak alan srecin sinyallerden etkilenmesini engeller. Ge-
nelde uzak balantlarda uzun srecek komutlarn balant sonlandnda bile arka
planda devam etmesi iin kullanlr. Kullanc sistemden ksa ve terminali kapatsa
bile komut almasna devam edecektir. nk nohup komutu terminalin rettii
ve sreci de sonlandracak sinyalleri engeller.
rnein ok uzun srecek bir ilem olan SUID biti set edilmi dosyalarn
bulunmasn nohup ile balatp terminal kapatlabilir. Normalde ekrana
(Stdout) baslacak ktlar nohup.txt dosyasna yazlr. Arka planda ne olduunu
grmek iin bu dosyaya baklabilir.
Nohup komutu sadece arka planda sinyallere maruz kalmadan almay engeller.
Screen gibi bir terminal yneticisi deildir.
& bg fg jobs
Bash kabuk altnda alan bir sre yarda kesilebilir, arka plana gnderilebilir, tekrar
nplana alnabilir veya arka planda sonlandrlabilir.
Aadaki gibi uzun srecek bir grev arka plana gnderilebilir. Arka plana gnder-
mek iin komut sonuna & simgesi eklenir.
Bir komutu altrp, bir sre izledikten sonra Ctrl-Z ile kesilip bg komutu verilerek de
arka plana gnderilebilir.
128
LPI Sertifikasyon Kitab
$ wget http://www.google.com
[1]+ Stopped wget http://www.google.com
$ bg
[1]+ wget http://www.google.com &
# jobs
[1] Running bash script.sh &
[2]- Running sample-soft &
[3]+ Done browser .
Arka plandaki bir ii tekrar n plana almak iin fg komutu kullanlr. Hibir parametre
verilmezse en son arka plana gnderilen komutu n plana alr.
$ fg %1
Arka plandaki bir ii sonlandrmak iin kill komutu kullanlr. Aadaki komut arka
plandaki 2 numaral ii sonlandrr:
$ kill %2
nice, renice
Bir komutu ilemci nceliini deitirmi olarak balatr.
129
LPI Sertifikasyon Kitab
ncelik -20 ile 19 arasnda bir tamsaydr. -20 en yksek ncelik demek oluyorken 19
en dk ncelik demektir. Komut verilmez ise mevcut ncelik deerini ekrana basar.
ncelik deeri bir deer belirtilmezse ntanml olarak 10 artrlr.
$ nice
0
$ nice nice
10
$ nice -n 10 nice
10
$ nice nice -n 3 nice
13
$ nice -n 1000000 nice
19
$ nice -n -1 nice
nice: cannot set niceness: Permission denied
0
$ sudo nice -n -1 nice
-1
alan bir srecin nceliini deitirmek iin renice kullanlr. Parametre olarak al-
an srecin PID numaras verilir.
# renice -n 5 -g grp1
# renice -n 5 -u bala
130
LPI Sertifikasyon Kitab
1. atallanma (fork): Ana sre kendi kopyasn kartarak yeni i bu kopyaya yap-
trtlr. lk alan sre olan init kendi kopyasn kartarak yeni ileri bu kopyaya
yaptrr. Bu ekilde bir soyaac ile yeni sreler oluturulur.
2. Yeni sre balatma (exec): exec komutuyla yeni bir sre balatlr. Bu sre ana
srecin yerini alr. Komut satrndan exec ile bir komut altrldnda, komut
bitince tekrar komut satrna dnlmez. nk yeni sre ana srecin yerini al-
mtr, artk ana sre kalmamtr. Buna en gzel rnek komut satrndan exec
komutuyla ssh komutunu altrmaktr. Kar sunuya balant kuran ssh komutu
exec ile altrldndan kendi ana sreci olan kabuun yerini almtr. Kar ta-
raftan exit yaplp ssh sonlandrldnda konsol penceresi kapanr. nk artk
dnlecek bir kabuk yoktur.
Bash kabuu komut altrrken fork + exec yapar. Yani kendisinin bir klonunu kar-
tr ve bu klon exec yaparak yeni sreci balatr. Yeni sre klonun yerini alr. Dolaysyla
komut bittiinde klon kabuk olmayacak ancak klonu kartan esas kabuk hala var
olacak.
Ana sre oluturduu alt srecin sonlanmasn wait(2) veya waitpid(2) sistem a-
rsyla bekler. Eer bir alt sre sonland halde ana sreci tarafndan beklenmiyor
ise o alt sre zombi durumuna geer. Sistem kayna tketmez ancak ok sayda ol-
malar durumunda PID numaralar karmaklaacaktr. Byle bir durumda ana srece
SIGCHLD sinyali gnderilerek alt srecini takip etmesi istenir. Sinyal gndermek iin
kill komutu kullanlr. Eer ana sre halen daha alt srecinin kendisine dnmesini
beklemiyorsa artk ana sre ldrlr. Bu durumda zombi sre sahipsiz (orphan)
sre pozisyonuna geer. Btn srelerin atas olan init sreci belli aralklarla sahip-
siz sreleri sahiplenerek yok eder.
Programlar, programclarn kodlarndaki exit fonksiyonlaryla yada dardan gelecek
kesmelerle (interrupt) sonlanr. Programlar sonlanrken 0-255 aras bir k deeri
ile sonlanrlar. Bu deer programn neden ktn gstermesi asndan nemlidir.
Genel olarak 0 ile kan programlar baaryla grevini tamamlayarak, 1-255 aras bir
rakamla kan programlar ise bir hata ile karlaarak sonlanmtr demektir. Hangi
kodun hangi anlam tad genel olarak programcnn belgelendirmesinde belirtil-
mektedir.
131
LPI Sertifikasyon Kitab
Sinyaller
Kullanc ortamnda kill komutuyla srelere ellen sinyal gnderilebilir. Sinyallerin her
birinin zel bir anlam olup srecle haberlemeyi salar. rnein bir sre SIGFPE
(Floating Point Error) almsa sfra blmek gibi anlamsz bir ilem yaptn haber
verir.
132
LPI Sertifikasyon Kitab
Kill, killall
Komut satrndan ellen srelere sinyal gndermek iin kill komutu kullanlr.
Aadaki komut 1120 PID numaral srece 9 numaral (SIGKILL) sinyali gnderir. Do-
laysyla sreci ldrr.
$ kill -9 1120
Linux altnda bir srecin yaplandrma dosyasn yeniden okumas iin normalde s-
recin sonlandrlp yeniden balatlmas gerekmektedir. Sreci sonlandrmadan bunu
yapmann yolu alan srece SIGHUP gndermektir. Bu sinyali alan srec kendini
askya alr ve ayn PID numaras ierisinde almasna en batan balar.
# kill -1 1531
# killall HUP httpd
killall komutu PID numarasna bakmadan ismiyle srece sinyal gndermek iin kul-
lanlr.
Pkill, pgrep
Srecin ad veya sahibi gibi deiik patternler verilerek belirtilen srece sinyal gn-
dermek iin pkill kullanlr.
# pkill http
133
LPI Sertifikasyon Kitab
Verilen kritere hangi srelerin uyduunu grmek iin pgrep komutu kullanlr. By-
lece verilen komuttan etkilenecek srelerin istenen sreler olduundan emin olu-
nur.
rnek:
# pgrep u user4
6081
6082
# pkill u user4
veya
# pgrep http
3077
3531
3532
3533
3534
# pkill http
134
LPI Sertifikasyon Kitab
Dosya Dzenleyiciler
Konu:
Linux altnda dosya dzenleme
Hedefler:
nano
vi
Gelitiricilere zel vi kullanm
Anahtar Kelimeler:
nano, vi
135
LPI Sertifikasyon Kitab
Nano
Nano, Piconun kullanc dostu kabiliyetlerini sunacak ancak daha basit ve kk bir
dosya dzenleyicisi olmas amacyla gelitirilmitir.
$ nano /var/www/index.html
nano komutuyla beraber var olan bir dosya ad verilirse o dosyay aar. Olmayan bir
dosya ad verilirse o isimde dosya oluturulur. Hibir isim verilmezse yeni ve bo bir
dosya aar ve kaydederken ismini sorar.
136
LPI Sertifikasyon Kitab
Ctrl-O: Dosyay kaydetmek iin kullanlr. Kaydedilecek dosya ismini sorar. Grafik d-
zenleyicilerde kullanlan Save As benzeri bir ilevi var.
Ctrl-R: Baka bir dosyann ieriini mevcut dosyann iine aktarr. e alnacak dosya-
nn yolunu sorar.
Ctrl-C: O an yaplan ilemi kesmek iin kullanlr.
Ctrl-X: Dosyadan kmak iin kullanlr. Eer dosya ierii deitirilmise ieriin kay-
dedilip edilmeyeceini soracaktr.
Ctrl-A: Satr bana gider (Home tuu).
Ctrl-E: Satr sonuna gider (End tuu).
Ctrl-V: Aa doru sayfa sayfa gider.
Ctrl-Y: Yukar doru sayfa sayfa gider.
Ctrl-Space: Kelime kelime dosya iinde ilerler.
137
LPI Sertifikasyon Kitab
Vi Dosya Dzenleyici
Genel
Vi editr tm UNIX ve Linux datmlaryla birlikte gelen ve yaygn bir kullanc kit-
lesi olan bir metin editrdr. Komut satrndan almaktadr ve dosya oluturmak,
var olan dosyada deiik yapmak iin kullanlr.
Yaz alannda ESC ile geilen ve karakterlerin zel fonksiyon icra ettii komut modu.
Komut modunda editre sadece komutlar gnderilir. Verilen komutlar ekranda yaz
olarak gzkmez. Bu komutlar satr, kelime silme, dosyada aa,yukar, saa, sola
hareket etme, dosyada kelime arama vs amal verilebilir.
Yaz modunda ise baslan her karakter ekrana veri olarak yazlr. Yaz modundan ko-
mut moduna gemek iin ESC tuu kullanlr. Fakat komut modunda iken bir baka
komut altrmak iin ESC tuuna basmaya gerek yoktur.
# vi [parametreler] dosyaad
# vi dosyaad
Bu komutla istediiniz isimde bir dosya vi ile alm olur. Bu komut ayn zamanda sizi,
bu dosyay dzenlemek zere vi dosya dzenleyicisinin iine sokar. Verdiiniz dosya
diskte yoksa ve yeni oluturulacak aadaki gibi bir bilgilendirme ile karlarsnz:
138
LPI Sertifikasyon Kitab
# vi deneme
~
~
~
deneme: new file: line 1
Buradaki ~ ifadesi bo satrlar ifade eder. Satrlara yaz yazldkta bu ifade kaybolur.
En altta da dosyann adnn deneme olduu ve yeni oluturulan bir dosya olduu be-
lirtiliyor. Yukarda belirtildii gibi vi u anda komut modundandr. Bu durumda iken i
tuuna baslarak yazma moduna geilir ve yazlmak istenen metin yazlr.
Dosyadan kmak
ncelikle komut moduna gemek iin ESC tuuna baslr. Komut modunda : (iki nok-
ta st ste) karakterine basarak nasl k yapacanz belirtebilirsiniz:
alma Modlar
Vi dzenleyicisi iki alma moduna sahiptir. Birincisi, baslan her tuun zel bir ileve
sahip olduu komut modudur. Dieri ise baslan her tuun dosyaya ayn ekilde ya-
zld yazma modudur.
139
LPI Sertifikasyon Kitab
Basit Vi Komutlar
a Ekleme moduna geer. mlein bulunduu pozisyondan itibaren baslan ka-
rakterler dosyaya yazlr.
h mleci bir karakter sola tar.
j mleci bir satr aa alr.
k mleci bir karakter yukar alr.
l mleci bir karakter saa alr.
r mlecin altndaki karakteri baslan karakter ile deitirir.
u En son yaplan deiiklii geri alr (undo). Tekrar baslrsa yaplan deiiklii
yeniden yapar. (redo)
x mlecin altndaki karakteri siler.
Kesme ve Yaptrma Komutlar
Kesmek iin kullanlan komut genelde d komutudur.
d^ mlecin konumundan satr bana kadar siler.
d$ mlecin konumundan satr sonuna kadar siler.
dw mlecin konumundan kelime sonuna kadar siler.
3dd mlecin konumundan itibaren 3 satr siler.
Kesme ve Yaptrma Komutlar
Kesilen verileri yaptrmak iin p veya P komutu kullanlr. P komutu imlecten geriye
yaptrrken, p komutu imlecin nne yaptrr.
Kopyalama iinse aadaki komutlar kullanlr.
y Yakalamak (yank) manasna gelir. Tek bir karakteri kopyalar.
yy mlecin olduu satr kopyalanr. Yine p komutu ile yaptrlr.
rnein
Aadaki dosyann ilk satrn dosyann sonuna kopyalamak iin birinci satrda iken
yy komutu verilir dosyann sonuna :$ ile geilir ve p komutu verilir.
140
LPI Sertifikasyon Kitab
Dosyann en son satrnda iken p yerine P komutu verilseydi sonu aadaki gibi
olacaktr:
Hata yapldnda yaplan deiiklik u komutu ile geri alnr. Bu komut ile sadece son
komutta yaplan deiiklikler geri alnr. Tekrar u komutu verilirse yaplan deiiklik
tekrar gelir (redo).
Arama
Vi dzenleyici iki eit arama imkan sunar: Kelime arama ve karakter arama.
Kelime arama iin / ve ? Komutlar kullanlr. Bu iki komuttan herhangi birine bast-
nzda aramak istediiniz kelimeyi girmeniz istenecektir. Her ikisi de arama yaparak
bulduu ilk kelimenin zerine konumlanr. Aralarndaki tek fark, / komutu ileri doru
arama yaparken, ? Komutu geri doru arama yapar. N ve n komutlar, bir nceki ko-
mutu ters ynde veya ayn ynde tekraren arama yapmay salar.
Not: Vi iin zel anlam olan karakterleri aramak iin \ iareti ile korumaya almak ge-
rekir.
zel karakterler:
^
Satr ba
.
Tek bir karakterle eleir.
*
Bir nceki karakterden sfr veya daha fazla adet eletirir.
$
Satr sonu
141
LPI Sertifikasyon Kitab
[
fade yazmak iin kullanlr.
<>
Kelimenin ban veya sonunu bulmak iin kullanlrlar.
Harf aramak iin f ve F komutlar kullanlr. Harf arama yalnzca zerinde bulunulan
satrda yaplr. F komutu geri doru ararken, f komutu ileri doru arar.
Metinde geen bir kelimeyi deitirmek iin :%s komutu kullanlr. Komutun kullanm
ekli aadaki gibidir.
:s/eski/yeni Sadece imlecin bulunduu satrdaki eski deeri yeni olarak deitirir.
:%s/eski/yeni/g Tm metin ierisinde deiiklik yapar. g deerinin yanna c deeri de
eklenerek :%s/eski/yeni/gc) deiiklik yaplmadan nce onay alnabilir.
Aslnda buradaki eski ve yeni deerleri birer dzenli ifadedir (regular expression). D-
zenli ifadeler kullanlarak ileri seviye deiiklikler yaplabilir.
Gelitiricilere zel
Vi dzenleyicisi programclara yardmc olacak pek ok zellie sahiptir. Bunlardan
birisi de kod bloklarnn ieri atlmas veya dar ekilmesidir. Bu ekilde kodlarnz
daha okunakl hale getirebilirsiniz.
<<
Satr belirlenen kaydrma genilii kadar sola kaydrr.
>>
Satr belirlenen kaydrma genilii kadar saa kaydrr.
Kaydrma geniliini tanmlamak iin:
142
LPI Sertifikasyon Kitab
:set sw=4
:set nu
komutu verilir.
143
LPI Sertifikasyon Kitab
Hedefler:
Bash al yaplandrma dosyalar
Kabuk programlarn genel yaps
Kabuk programlar altrma
Global ve yerel evre deikenleri
Fonksiyonlar
artl ifadeler
Dosya ve deiken test etme
Dngler
Anahtar Kelimeler:
source, set, unset, /etc/profile, .bashrc, echo, read, alias, if, case, while, for, until
144
LPI Sertifikasyon Kitab
Kabuk Ortam
Bash ilk baladnda eer varsa /etc/profile dosyasn okur. Daha sonra kullanc
ev dizinindeki ~/.bash_profile, ~/.bash_login ve ~/.profile dosyalar
okunur. Bu dosyalarla kullanclar kendi ortamlarn zelletirebilir.
Profile dosyalar evre deikenlerinin ayarlanmas iin, rc dosyalar ise alias ve fonk-
siyon tanmlar iin kullanlr.
# ls -l /etc/profile.d/
toplam 4
-rw-r--r-- 1 root root 660 Haz 17 2012 bash_completion.sh
Kabuk altnda bir komut verildiinde kabuk nce kendi klonunu oluturur ve komutu
bu klon altrr. Bylece klon kabuk istei yerine getirirken kabuun kendisi yeni
istekleri almaya devam edebilir. Bu alma eklinde alt kabuklarn alma ortamn-
da yapt deiiklikler ana kabuu etkilemeyecektir. Alt kabuk sonlanr sonlanmaz
ortamlar da silinecektir. Eer bir betiin mevcut kabuk ortamnda altrlmas iste-
niyorsa nokta (.) veya source komutu kullanlr.
$ . script.sh [parametre]
$ source script.sh [parametre]
Bu ekilde balatlan bir betik mevcut kabuk iinde altrr ve betiin oluturduu
deikenler, betik sonlandktan sonra da kullanlabilir.
145
LPI Sertifikasyon Kitab
$ source ~/.profile
Kabuun balama ekline gre farkl dosyalar kullanlr: Interaktif ve giri kabuklar,
interaktif ve giri olmayan kabuklar, interaktif olmayan kabuklar.
Interaktif ve giri kabuu: Baarl bir giri ileminden sonra balatlan kabuk. Termi-
nalden veya uzaktan sisteme giri, su komutuyla giri. Bu durumda /etc/profile ve
~/.bash_profile okunur.
Interaktif ve giri olmayan kabuk: Komut satrndan kabuk balatlarak (kabuk iinde
bash komutunu vererek) veya su komutunu olmadan altrarak balayan ka-
buktur. Grafik arayzden balatlan xterm konsole programlar da bu snfa girer.
Buna alt kabuk da denilebilir. Byle bir kabuk ana kabuun ortamn kopyalar ve
~/.bashrc dosyasn altrr.
Interaktif olmayan bir kabuk, betik altran kabuktur. Bu durumda kullancdan giri
beklenmez.
146
LPI Sertifikasyon Kitab
Kabuk Deikenleri
Kabuk deikenleri anahtar-deer ikilisi eklindeki deikenlerdir. Tanml btn de-
ikenlerin listesi iin:
# set
BASH=/bin/bash
BASH_VERSION=3.2.25(1)-release
COLORS=/etc/DIR_COLORS
COLUMNS=125
[...]
$ echo $VAR
$ echo $PS1
[\u@\h \W]\$
Aada bir deiken tanmlanmakta ve sonra baka bir kabua geilip bu deiken
deeri gsterilmekte ancak alt kabukta deiken deeri grlmemitir.
$ FILE=/tmp/x.out
$ echo $FILE
/tmp/x.out
$ bash
$ echo $FILE
147
LPI Sertifikasyon Kitab
Tanmlanan deikenler kendi kabuklar iin geerlidir. Baka bir kabua gei yapl-
dnda global olmayan deikenler geerli olmazlar. Global olacak evre deiken-
leri export ile tanmlanr.
$ export FILE=/tmp/x.out
$ bash
$ echo $FILE
/tmp/x.out
$ unset FILE
# env
HOSTNAME=beta.pardus.org.tr
SHELL=/bin/bash
HISTSIZE=1000
USER=root
MAIL=/var/spool/mail/root
# EDITOR=nano crontab -e
Normalde evre deikenler alt srelere de geer. Belli bir deikenin alt srece ge-
mesini engellemek iin:
148
LPI Sertifikasyon Kitab
$ env i command
Alias Tanmlama
Alias, bir komutun yerini alacak ksayoldur. Genel olarak .bashrc dosyasnda tanmla-
nrlar. Aadaki gibi tanmlanr:
$ alias ll=ls -l
$ ll
toplam 0
-rw-r--r-- 1 simsek simsek 0 Ara 15 18:32 config.sh
-rw-r--r-- 1 simsek simsek 0 Ara 15 18:32 dosyalar.txt
$ unalias ll
$ ll
-bash: ll: command not found
Fonksiyon Tanmlama
Fonksiyonlar belirli grevleri yapan betik program paralardr.
myecho () {
echo > $1
}
149
LPI Sertifikasyon Kitab
Betikler C programlardaki gibi derlemeli deil yorumlamaldr. Betik dosyas satr satr
kabuk program tarafndan yorumlanr.
Aada ok basit bir betik grlmektedir. Bu betii bir dosya dzenleyici ile yazp
merhaba.sh diye kaydedin.
#!/bin/bash
# chmod +x merhaba.sh
# ./merhaba.sh
Merhaba dnya.
Bu benim ilk betiim.
Betik dosyasnn .sh eklinde bir uzants olma zorunluluu yoktur. Programn doru
olmas ve dosyann alabilir olmas yeterlidir. Ancak dier dosyalardan ayrt etmek
iin .sh uzants vermek yararl olacaktr.
lk satrda yer alan #! /bin/bash bu betii yorumlayacak programn tam yoludur. rnek
bash betii olduu iin bash in yolu yazld. Eer bu bir perl betik olsayd oraya #!/
usr/bin/perl yazmak gerekecekti.
Zorunluluk olmamakla birlikte, btn betiklerin bir k deeri ile exit yapmas tav-
siye edilir. Programlarn hangi durumda kt bu k deerlerine bakarak anlalr.
150
LPI Sertifikasyon Kitab
$ echo $?
1
# Print filename
echo $filename # filename in /etc/
Parametreler
Komut satrndan altrlacak betiin ardna parametreler eklenerek betiin davra-
n deitirilebilir.
$ cat param.sh
#!/bin/bash
echo parametre 0: $0
echo parametre 1: $1
echo parametre 2: $2
151
LPI Sertifikasyon Kitab
Okuma Yazma
Programlarda olduu gibi betiklerde de asl ama kullanc girdilerini alp elde edilen
sonular ekrana basmaktr.
Kabuk read satrna geldiinde kullancdan bir girdi bekler. Kullanc girdi yapp EN-
TERa bastnda bu girdi name deikenine aktarlr.
Read komutunun dier parametreleri:
echo $name
Echo normalde satr satr ekrana basar. Yani her echo dan sonra bir sonraki satra de-
vam eder. Ayn satrda devam etmesi iin n parametresi kullanlr.
$ cat inout.sh
#!/bin/bash
152
LPI Sertifikasyon Kitab
artl fadeler
Bir ilemi yapp yapmayacana karar vermek iin artl ifadeler kullanlr. artl ifade-
ler u ekilde bina edilir:
if [ artl ifade ]
then
fade doru olduunda alacak ksm
command 1
command 2
...
else
command 3
command 4
...
fi
153
LPI Sertifikasyon Kitab
rnek 1:
rnek 2:
rnek 3:
# cat sartli.sh
#!/bin/bash
SAYAC=6
LIMIT=5
if [ $SAYAC -lt $LIMIT ]; then
echo Sayac limitten kk
else
echo Sayac limitten kk deil
fi
exit 0
# ./sartli.sh
Sayac limitten kk deil
154
LPI Sertifikasyon Kitab
-lt
Less than: Daha kk ise.
-gt
Great than. Daha byk ise.
=
Eit ise.
Birden fazla artl durumlar iin aadaki gibi if-elif yaps kullanlr:
if [ condition1 ]
then
command1
command2
command3
elif [ condition2 ]
then
command4
command5
else
default-command
fi
155
LPI Sertifikasyon Kitab
Kyaslamak iin test artlar kullanlabilir. Pek ok test art vardr. Bazlar:
[-b file]
Dosya var ve blok dosya ise.
[-c file]
Dosya var ve karakter dosya ise.
[-d path]
Belirtilen path var ve dizin ise.
[-e file]
Eer dosya var ise.
[-f file]
Eer dosya var ve normal dosya ise.
[-z string]
String boyu 0 ise.
[-x file]
Dosya var ve altrlabilir ise.
[string]
String bo deil ise.
[s1 = s2]
s1 ve s2 stringleri birbirinin ayn ise.
[s1!= s2]
s1 ve s2 stringleri birbirinin ayn deil ise.
[s1 < s2]
Karakter sralamasna gre s1, s2den nce geliyor ise.
[s1 > s2]
Karakter sralamasna gre s1, s2den sonra geliyorsa.
[n1 -eq n2]
n1 ve n2 tamsaylar eit ise.
[n1 -ne n2]
n1 ve n2 tamsaylar farkl ise.
[n1 -gt n2]
n1, n2den byk ise.
[n1 -ge n2]
n1, n2den byk veya eit ise.
[n1 -lt n2]
n1, n2den kk ise.
[n1 -le n2]
N1, n2den kk veya eit ise.
156
LPI Sertifikasyon Kitab
rnek:
file=/etc/passwd
if [[ -e $file ]]
then
echo Password file exists.
fi
Case-Esac Yaps
artl ifadeler iin daha anlalr ve okunakl bir yap sunar. Belirtilen deikenin de-
erine gre bloklardan biri altrlr. Aada Linux altndaki pekok start/stop beti-
inin kulland case yaps rnei grlmektedir.
case $1 in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo $Usage: $0 {start|stop|restart}
exit 1
esac
Dng Kurmak
Gelimi programlama dillerinde kullanlan dngleri Bash ierisinde de kullanma
imkan vardr. Bu sayede bir algoritma ercevesinde yzlerce admdan oluan bir he-
sab tek bir dng ile yapabiliriz.
for done
Programlama dillerindeki for dngsnden farkl olarak seri halindeki kelimeler ze-
rinde hareket eder.
# cat for.sh
#!/bin/bash
for i in $( ls ); do
echo File: $i
done
exit 0
# ./for.sh
File: secret.txt
File: sartli.sh
File: zZZ.txt
For ifadesi, ls komutunun rettii kelime katar zerinde kelime kelime hareket ede-
rek dng yapmtr. Bu nedenle dosya says kadar dng altrlmtr.
Dng for ile balayp done ile biter. Kabuk, done zel kelimesini grdnde keli-
me katarndan bir sonraki kelimeyi alarak dngye yeniden girer. Bu ilem katardaki
kelimeler bitene kadar devam eder.
158
LPI Sertifikasyon Kitab
while done
artl dng salar. While szc ile belirtilen art salandka dng devam eder.
# cat while.sh
#!/bin/bash
COUNTER=0
LIMIT=5
exit 0
# ./while.sh
Sayac: 0
Sayac: 1
Sayac: 2
Sayac: 3
Sayac: 4
Buradaki art [ $COUNTER -lt $LIMIT ] dr; yani birer birer artan saya LIMITden (bu-
rada limit 5) kk olduka dn.
Dng while ile balayp done ile biter. Kabuk done szcn grdnde belirti-
len artn hala geerli olup olmadna bakar. Eer geerli ise yeniden dngye girer.
Aksi halde dngden kp devam eder.
Not: let komutu COUNTER deerini her defasnda 1 arttrmak iin kullanlmtr.
159
LPI Sertifikasyon Kitab
until done
Olumsuz artl dng kurmak iin kullanlr. Yani belirtilen art geerli olmadka
dngye girer:
# cat until.sh
#!/bin/bash
COUNTER=10
LIMIT=5
exit 0
# ./until.sh
Sayac: 10
Sayac: 9
Sayac: 8
Sayac: 7
Sayac: 6
Sayac: 5
Belirtilen art sayacn limitten kk olmas artdr. Until dngs olduu iin ka-
buk bunu saya limitten kk olmad srece dn eklinde yorumlayacaktr. While
olsa idi saya limitten kk olduu srece dn yorumunu yapacakt.
Saya 10dan balayp let ile birer birer azaltlmaktadr. Limit ise 5dir. Dolaysyla 5den
kk olmadka dnecektir. 5den kk olduu an dng kesilecektir. Komutun
ktsndan da anlalaca zere drde kadar dngye girecektir. Saya 4 olduunda
dngden kacaktr.
160
LPI Sertifikasyon Kitab
Hedefler:
Veritaban ve tablo emas
Temel SQL ifadeleri
Anahtar Kelimeler:
Insert, Update, Select, Inner Join, Delete, Order By, Group by
161
LPI Sertifikasyon Kitab
SQL Veritabanlar
SQL (Structured Query Language), ilikisel veritaban sunucularnda verilerin ynetil-
mesi iin gelitirilmi amaca zel programlama dilidir. En temel amac, veri sorgula-
mak ve veri yazmaktr.
SQLite
PostgreSQL
MySQL
Btn veritaban sunucular standart bir SQL dili kullanarak veri zerinde alrlar.
162
LPI Sertifikasyon Kitab
Insert
Var olan bir veritaban tablosuna veri eklemek iin kullanlr. Hangi alana hangi dee-
rin yazlaca belirtilir.
Burada tbl_name tablonun ad, tablodaki col1 alan yada stunu iin 15 deeri, col2
alan iin ise col1*2 deeri yazlr.
Aadaki rnekte ise ayn tabloya 3 satr eklenmektedir:
Aadaki INSERT yaps hata verecektir. nk stun says ile girilecek veri says
uyumuyor. Tabloda yer alan stundan fazla deer girilmek istenmektedir.
Update
Veritabanndaki belirli kriterlere uyan satr veya satrlardaki verileri gncellemek iin
kullanlr.
Aadaki rnekte col1 stunundaki deerler mevcut col1 deerlerinin bir fazlas ola-
rak gncellenir.
Ayn anda iki alan gncellenebilir. Aada col1 ve col2 birlikte gncelleniyor.
163
LPI Sertifikasyon Kitab
Belli kriterleri salayan satrlar gncellemek iin aadaki genel yap kullanlr:
UPDATE Customers
SET ContactName=Ali Al, City=Istanbul
WHERE CustomerName=Computer Co;
Select
Veritaban tablosundan veri satrlarn ekmek iin kullanlr.
164
LPI Sertifikasyon Kitab
Aadaki rnekte blm Finance olup maa 6000 veya st olanlar ekilir.
Inner Join
yi tasarlanm bir veritaban gereksiz ve ift kayt tutulmasna engel olmaldr. O ne-
denle bir veri baka bir tabloda varsa, ihtiya duyulsa bile dier bir tabloda da tutul-
maz.
rnein bir tabloda (ismi articles olsun) sadece yaz ve yazya ait kategori IDsi olsun.
Dier tabloda (ismi cats olsun) ise kategori IDlerine karlk gelen kategori ismi olsun.
Bu rnekte articles tablosundan yazy, cats tablosundan ise kategori ismini alyoruz.
Kategori ismi olarak articlesda belirtilen kategori ID ile catsde belirtilen kategori IDsi
ayn olan deer seilir.
165
LPI Sertifikasyon Kitab
Delete
Veritaban tablosundan veri satr silmek iin kullanlr. Dier yaplarda olduu gibi
WHERE artyla kullanlabilir.
Delete yaps WHERE olmadan genel olarak kullanlmaz. nk WHERE olmadan yaz-
lacak bir delete ifadesi tablodaki btn satrlarn silinmesine neden olur.
Order By
ekilen verileri sralamak iin Order By kullanlr ve bir sralama kriteri verilir.
166
LPI Sertifikasyon Kitab
167
LPI Sertifikasyon Kitab
Group By
Verileri belli bir alana gre gruplamak iin kullanlr. Sonular grup adna gsterilir.
Orders tablosunda yzlerce satr vardr ve her satrn bir statusu vardr. Ancak bu SE-
LECT cmlesi statuse gre grupland iin her bir status eidi iin tek satr gsterilir.
rnein kt u ekilde olur:
Cancelled
In Progress
On Hold
Resolved
Shipped
Aslnda tm bu statuslerden onlarca satrda var. Grup yapld iin her tr status iin
tek bir satr yazlmtr.
168
LPI Sertifikasyon Kitab
X Grafik Sunucu
Konu:
X grafik sunucu mimarisi
Hedefler:
X istemci/sunucu mimarisi
X grafik kart ve monitor yaplandrma
xorg.conf
X sunucuyu balatma ve grafik al
Giri yneticileri
Anahtar Kelimeler:
X, xinit, startx, /etc/X11/xorg.conf, xhost, DISPLAY, xwininfo, xdp-
yinfo, xdm, gdm, kdm
169
LPI Sertifikasyon Kitab
X Window Sunucu
MS Windows iletim sisteminden farkl olarak Linux altnda grafik ortam iletim sis-
teminin ana paras olmayp herhangi bir uygulama gibi ayrca bir bileendir. letim
sistemi grafik ortama ihtiya duymadan tm fonksiyonlaryla i grebilmektedir. Bu
mimari sayesinde bilgisayar kaynaklarn en ok tketen ksm olan grafik arayz bir
ihtiya olmaktan km, ayrca grafik ortamda kacak bir sorun iletim sisteminin
almasn etkilemeyecektir.
Linux altnda yaygn olarak kullanlan grafik ortam X Windowdur. X Window, ekran
kartn kontrol etmenin yan sra ierisinde uzak bilgisayarlara grafik ucu vermek iin
gelitirilmi a protokolleri de ieren gelimi bir sistemdir. Sunucu-istemci mimari
ile farkl bir iletim sistemindeki ayn protokol kullanan X istemcilerine de hizmet
verebilir.
X Window sistemi 1984te MIT niversitesi tarafndan gelitirilmi olup haklar 1993te
X Consontiuma, 1997de Open Groupa gemi, bu el deitirmeler nedeniyle proje
yavalamtr. 1992de itibaren faaliyet gsteren Xfree86 projesi (http://www.xfree86.
org) X kodlarn iyiletirmi, pek ok grafik kart destei eklemi, OpenGL grafik hz-
landrma gibi gelimi zellikleri eklemitir. Uzunca sre Linux lerin n tanml X su-
nucusu olarak kullanlmtr. XFree86 projesi de bir sre sonra yavalad ve 2004te
lisans deiiklikleri nedeniyle bir grup gelitirici tarafndan X.Org Foundation kuru-
larak kaynak kod atallanmtr. Mevcut Linux datmlar XFree86dan X.orga gei
yapmtr.
X Window, olduka esnek modler bir yapda tasarlanmtr. rnein fontlar bilgisa-
yarn kendi diskinden yklenebilecei gibi uzak sistemden de yklenebilir. Bu sayede
bir font sunucusu kurarak btn organizasyona bu fontlar sunulabilir.
X Window iinde pencere yneticisi (window manager) denen bileen mutlaka al-
mas gerekmektedir. Pencere yneticisi, uygulamalarn grafik ekrana yerleimi, sanal
masastleri, pencere kltme bytme, yeni pencerelerin almas ve yerletirilme-
si gibi masastnn organizasyonunu yapar. Modler yap sayesinde gelitiriciler X
Window zerinde alacak kendi pencere yneticilerini yazmtr. Pek ok pencere
yneticisi gelitirilmi olup kullanclar kendi beenilerine gre istedii pencere y-
neticisini kullanabilir. rnek: Window Maker, Enlightenment, Sawfish, Blackbox
170
LPI Sertifikasyon Kitab
1. Eer al seviyesi grafik arayzden alacak ekilde ayarlanmsa (init 5) iletim sis-
temi aldktan sonra init program grafik alla ilgili betikleri altrarak dorudan
grafik arayz aar.
Eer init dorudan grafik arayze geerse text konsolda yaplan kullanc ad ve paro-
la sorma ileminin grafik arayzde yaplmas gerekecektir. Giri yneticileri bu ilemi
yapmak iindir. Xdm, Kdm ve Gdm gibi farkl farkl giri yneticileri bulunmaktadr.
X Window modllerinden bir dieri grafik arayzdeki widget denilen butonlar, kay-
drma ubuklar, mesaj kutucuklar gibi grafik elerdir. QT ve GTK gibi farkl widget
ktphaneleri bulunmaktadr.
Xorg.conf
X yaplandrma dosyas /etc/X11/xorg.conf dosyasdr. Bu dosya Section anahtar ke-
limesiyle balayp EndSection anahtar kelimesiyle biten blmlerden olumaktadr.
Section SectionName
SectionEntry
...
EndSection
Files
Sunucu tarafndan gereken dosyalarn yolunu belirtmek iin kullanlr.
FontPath /usr/X11R6/lib/X11/fonts/misc/
FontPath /usr/X11R6/lib/X11/fonts/75dpi/
FontPath /usr/X11R6/lib/X11/fonts/100dpi/
171
LPI Sertifikasyon Kitab
ServerFlags
Sunucunun davranlarn etkileyen bayraklar belirler.
Module
Hangi dinamik modllerin ykleneceini (Load) veya yklenmeyeceini (Disable)
belirler.
Load modulename
Disable modulename
InputDevice
Klavye fare gibi girdi aygtlarn tanmlamak iin kullanlr.
Section InputDevice
Identifier name
Driver inputdriver
options
...
EndSection
Device
Grafik kart tanmlamak iin kullanlr. En az bir tane tanmlanmas gerekmektedir.
Section Device
Identifier name
Driver driver
entries
...
EndSection
172
LPI Sertifikasyon Kitab
ServerLayout
Genel yaplandrmann olduu ksmdr. Identifier ve Screen mecburidir.
Section ServerLayout
Identifier 1600x1200
Screen Screen0 0 0
InputDevice Mouse0 CorePointer
InputDevice Keyboard0 CoreKeyboard
EndSection
Monitor
Monitrlerin tanm bu blmde yaplr.
Section Monitor
Identifier name
entries
...
EndSection
Screen
En az bir tane olmas gereken ekran yaplandrma blmdr. Birden fazla olabilir
olabilir.
Section Screen
Identifier name
Device devid
Monitor monid
entries
...
SubSection Display
entries
...
EndSubSection
...
EndSection
173
LPI Sertifikasyon Kitab
Section Screen
Identifier Screen0
Device S3 Savage/MX
Monitor Monitor0
DefaultDepth 16
Subsection Display
Depth 16
Modes 1600x1200 1280x1024 1024x768
EndSubsection
EndSection
xwininfo
X pencereleri hakknda bilgi verir. Hibir parametre verilmezse stats varsaylr.
$ xwininfo
Absolute upper-left X: 2
Absolute upper-left Y: 85
Relative upper-left X: 0
Relative upper-left Y: 25
Width: 579
Height: 316
Depth: 8
Visual: 0x1e
Visual Class: PseudoColor
Border width: 0
Class: InputOutput
Colormap: 0x27 (installed)
Bit Gravity State: NorthWestGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners: +2+85 -699+85 -699-623 +2-623
-geometry 80x24+0+58
174
LPI Sertifikasyon Kitab
xdpyinfo
X sunucu hakknda bilgi gsterir. Sunucunun yeteneklerini anlamak, ntanml de-
erleri grmek ve ekran trlerini listelemek gibi amalarla kullanlr. rnein X sunu-
cunun znrln kontrol etmek iin:
X Windowu Balatma
X pencere sunucusu komut satrndan altrlabildii gibi bilgisayar al grafik ola-
rak yaplabilir.
id:5:initdefault:
$ startx
startx komutu aslnda xinit komutunu altran bir betiktir. Xinit, pencere yneticisi
olmadan bo bir grafik ekran aar. Kullanc ev dizininde .xinitrc dosyas varsa bunun
ieriini altrarak masastn donatr. Eer bu dosya yoksa u komutu altrarak
ilk alta bir terminal yerletirir:
175
LPI Sertifikasyon Kitab
X Gvenlik
X sunucu a zerinden hizmet verebilen gelimi bir grafik sunucudur. A zerinden
almann getirdii iki gvenlik sorunu vardr:
Xhost ve DISPLAY
X sunucuya eriim yapacak veya yapmas engellenecek hostlar veya kullanclar ta-
nmlamak iin kullanlr. Herhangi bir parametresiz verildiinde mevcut eriim kont-
rol listesini gsterir:
$ xhost
access control enabled, only authorized clients can connect
SI:localuser:user
SI:localuser:gdm
SI:localuser:root
176
LPI Sertifikasyon Kitab
$ xhost +foo.example.com
$ xhost -foo.example.com
$ xhost +
access control disabled, clients can connect from any host
$ xhost
access control disabled, clients can connect from any host
INET:platon
xhost komutu btn hostlara eriimi kapatr ancak daha nce verilmi yetkileri iptal
etmez. Daha nce verilmi yetkiler, tek tek host adlar yazlarak iptal edilebilir.
X Sunucu ok gelimi a protokolleri ierir. Uzak bir bilgisayarda altrlan bir X
istemci uygulama baka bilgisayarn fiziksel ekrannda gsterilebilir. Bir X istemci a-
ltrldnda hangi ekrann kullanlacana DISPLAY evre deikenine bakarak karar
verilir. DISPLAY yerel veya uzak bir monitr olabilir.
$ export DISPLAY=remote.example.com
Bu tanmdan sonra rnein xterm veya xclock gibi bir X istemci program altrlrsa
grnt kendi bilgisayarnzn monitrnde deil remote.example.com isimli bilgi-
sayarn monitrnde gzkr. Bunun gerekleebilmesi iin uzak bilgisayarda X su-
nucu almas ve balanacak bilgisayara eriim izni verilmesi gerekmektedir.
$ xhost +me.example.com
$ xclock
177
LPI Sertifikasyon Kitab
Xin modler yaps sayesinde grafik giri yneticileri de ayr bir modldr ve baka-
larnn da benzer modl gelitirmesini salamaktadr. X ile birlikte ntanml olarak
Xdm giri yneticisi gelmektedir. Bununla birlikte Linux dnyasnda yaygn olarak
Gdm (Gnome Display Manager) ve KDM (Kde Display Manager) kullanlmaktadr.
XDM, X11R3 srmyle gelitirilen X sunucuyla gelen grafik giri yneticisidir. Yap-
landrma dosyalar /etc/X11/xdm altndadr.
GDM, Gnome masast projesi iin tamamen sfrdan yazlm bir grafik giri yneti-
cisidir. Yaplandrma dosyalar /etc/gdm altndadr.
KDM, KDE masast projesi iin tamamen sfrdan yazlm bir grafik giri yneticisi-
dir. Yaplandrma dosyas /usr/share/kde.X altnda kdmrc dosyasdr.
178
LPI Sertifikasyon Kitab
Sistem Ynetimi
Konu:
Linux sistem ynetimi
Hedefler:
Kullanc ynetimi
Grev zamanlama
Trke yerelletirme ayarlar
Zaman ayarlar
Anahtar Kelimeler:
useradd, userdel, /etc/skel, cron, crontab, at, locale, tzselect
179
LPI Sertifikasyon Kitab
Kullanclar
Linux sisteme giri yapabilmeniz iin bir kullanc adnz olmas gerekir. n tanml
olarak sadece root kullancs gelmektedir. Tm yetkilendirmeler kullanc ad veya
kullanc grubu zerinden yaplmaktadr.
root:$6$cFNz8/e8$z9cQK3sUC0OPVWw6nu/
QGV1cnKpBJj20ESD2RnWRNWylvLQW5q.
kmeAHrrOfAPLB33JpoqpEQTkFiovqDbFe50:15972:0:99999:7:::
daemon:*:15788:0:99999:7:::
bin:*:15788:0:99999:7:::
Kullanc ad
ifrelenmi parola
Parolann en son deiim tarihi
Asgari parola deitirme periyodu
En uzun parola geerlilik sresi
Parolann son kullanma tarihi
Parolann etkisizletirilmesinden sonraki toplam gn says
rnek bir /etc/passwd dosyas aadaki gibidir.
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
180
LPI Sertifikasyon Kitab
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:
# useradd ismail
# useradd s /bin/csh m -d /home/ismail g admin ismail
181
LPI Sertifikasyon Kitab
Kullanc tanmlandktan sonra parola atamas yaplmaldr. Parola tanmlamak iin ise
passwd komutu kullanlr.
# passwd ismail
usermod
Bu komut ile kullanc ilave gruplara eklenebilir , mevcut kullanc ad baka bir kulla-
nc ile deitirilebilir, kullanc hesab kilitlenebilir veya hesap kilidi kaldrlabilir.
# usermod L ahmet
Pardus kullancsn admin ve apache grubuna eklemek iin aadaki komut kulla-
nlr.
Grup Ynetimi
Grup eklemek iin groupadd, silmek iin de groupdel komutu kullanlr. Groupadd
komutu otomatik olarak sradan bir Grup numaras(GID) atar. Farkl bir GID vermek
iin g parametresi kullanlr.
# groupadd sistemci
# id pardus
uid=1004(pardus) gid=1006(pardus) gruplar=1006(pardus),
1003(admin),1007(apache)
182
LPI Sertifikasyon Kitab
-M parametresi ile azami gn says belirtilir. m ile de parola deiiklii iin geecek
asgari sre belirtilir.
Kullanc Silme
Kullancy silmek iin userdel komutu kullanlr. Bu komut sadece kullanc ad verile-
rek kullanldnda kullancnn /etc/passwd /etc/shadow dosyalarndan kaydn siler.
# userdel ahmet
# userdel r ahmet
Her yeni kullanc aldnda kullanc ev dizinine otomatik olarak baz dosyalar kop-
yalamak iin /etc/skel dizini kullanlr.
# ls -al /etc/skel/
toplam 40
drwxr-xr-x 5 root root 4096 Kas 9 16:48 .
drwxr-xr-x 153 root root 12288 Ara 4 14:00 ..
-rw-r--r-- 1 root root 220 Ara 30 2012 .bash_logout
-rw-r--r-- 1 root root 3206 Eki 10 2012 .bashrc
drwxr-xr-x 3 root root 4096 Mar 24 2013 .config
drwxr-xr-x 4 root root 4096 Mar 24 2013 .mozilla
-rw-r--r-- 1 root root 675 Ara 30 2012 .profile
drwxr-xr-x 4 root root 4096 Mar 24 2013 .thunderbird
root@pardus:~#
Bu dizine alacak her bir yeni dosya yeni kullanclarn ev dizinine kullanc haklar ile
kopyalanacaktr.
su ve sudo komutu
su komutu mevcut kabukta iken kmadan baka bir kullanc haklar ile kabuk amak
iin kullanlr. Gei yaplmak istenen kullanc ise genelde root kullancsdr. Bu ko-
mutun en yaygn parametresi dir. Bu parametre kabuk geiinde yeni kullancnn
evre deikenleri ile gei yaplmasn salar.
$ su -
Parola:
Cron Grevleri
Cron sistemi UNIX dnyasndaki zamanlaycnn addr. Zamanlanan i olup olmad
crond servisi tarafndan dakikada bir kontrol edilir. Vakti geldiinde belirtilen komut-
lar iletilir. Sistem genelinde olduu gibi her bir kullanc da izin verilmise- kendi
zamanlaycsn tanmlayabilir. Sistem geneline ait iler /etc/crontab dosyasnda ta-
nmlanr.
# cat /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you dont have to run the `crontab
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
SHELL, PATH ve HOME evre deikenleridir, tanml olmaldrlar. Eer SHELL tanml
olmazsa geerli olan sh kabuu kullanlacaktr. PATH deikeni tanmlanmazsa ge-
erli bir path deeri kullanlmaz, btn dosya yollar mutlak olarak verilir. HOME de-
ikeni tanml deilse cron, kendisini altran kullancnn ev dizinini kullanr.
185
LPI Sertifikasyon Kitab
Dosyada da grlecei gibi crontab satrnn hangi formatta olaca u ekilde ta-
nmlanyor:
Yukardaki deerlerin yerine * sembol konulursa geerli btn deerler iin altr
anlamna gelir. Her bir stun iin 2-6 gibi aralk belirtilebildii gibi, 1, 5, 7 gibi birden
fazla deer de belirtilebilir. Periyodik yaplacak iler iin 0-59/15, */5 gibi kullanmlar
da geerlidir. Kullanc ksm, komutun hangi sistem kullancs yetkileriyle altrla-
can belirler. Bunlar daha iyi anlayabilmek iin aadaki rneklere baknz.
/etc/crontab dosyasnda Pardusun kendisiyle ilgili gnlk, haftalk ve aylk iler aa-
daki satrlarla tanmlanmtr.
186
LPI Sertifikasyon Kitab
# ls /etc/cron.daily/
apache2 apt aptitude apt-show-versions bsdmainutils dpkg
locate logrotate man-db ntp passwd quota samba sysstat
# ls /etc/cron.weekly/
apt-xapian-index man-db
# ls /etc/cron.monthly/
readahead-monthly
Crontabn Yklenmesi
Bir nceki blmde anlatlan iler /etc/crontab dosyasnda tanmlanarak yaplmt.
stenirse her bir kullanc kendi ilerini crontab komutunu kullanarak tanmlayabilir.
Crontab komutuna l parametresi verildiinde var olan iler listelenir.
# crontab l
# Her gn gece 02:18 de yedekle.sh altr
18 2 * * * /root/scripts/yedekle.sh > /dev/null 2>&1
187
LPI Sertifikasyon Kitab
# crontab e u pardus
# ls /var/spool/cron/crontabs/
pardus root
at komutu
Crontab servisine tanmlanan komut belirlenen zaman aralklarnda tekrar tekrar a-
ltrlr. Eer bir i ileri bir zaman diliminde sadece bir kere altrlmak isteniyorsa
cron yerine at komutu kullanlmaldr. At komutu ile tanmlam ileri listelemek iin
atq komutu kullanlrken, tanml bir ii silmek iin atrm komutu kullanlr. Crontabda
olduu gibi kullanclarn bu servisi kullanmalarn engellemek iin /etc/at.deny, izin
vermek iin /etc/at.allow dosyalar kullanlr.
188
LPI Sertifikasyon Kitab
# locale
LANG=tr_TR.UTF8
LANGUAGE=
LC_CTYPE=tr_TR.UTF8
LC_NUMERIC=tr_TR.UTF8
LC_TIME=tr_TR.UTF8
LC_COLLATE=tr_TR.UTF8
LC_MONETARY=tr_TR.UTF8
LC_MESSAGES=tr_TR.UTF8
LC_PAPER=tr_TR.UTF8
LC_NAME=tr_TR.UTF8
LC_ADDRESS=tr_TR.UTF8
LC_TELEPHONE=tr_TR.UTF8
LC_MEASUREMENT=tr_TR.UTF8
LC_IDENTIFICATION=tr_TR.UTF8
LC_ALL=
Bu deerlere gre sistem saati, hata mesajlar vb bilgilerin hangi dil de gsterilecei
belirlenir. Sistemde tanmlanabilecek tm locale deerlerini listelemek iin a para-
metresi kullanlr.
# locale -a
aa_DJ
aa_DJ.utf8
aa_ER
aa_ER@saaho
aa_ET
...
189
LPI Sertifikasyon Kitab
rnek olarak date komutunun farkl dil ayarlarndaki ktlar aadaki gibidir.
root@pardus:~ # date
Pr Ara 5 11:56:32 EET 2013
root@pardus:~ # LANG=en_US.UTf8 date
Thu Dec 5 11:56:45 EET 2013
iconv komutu ile bir karakter kodlamasnda oluturulmu dosyay baka bir karakter
kodlamasna evirebilirsiniz. f ile kaynak karakter kodlamas t ile de hedef karakter
kodlamas tanmlanr.
# ls -al /etc/localtime
-rw-r--r-- 1 root root 2721 Kas 9 16:47 /etc/localtime
Bu dosya bir saat dilimi dosyas olabilir veya /usr/share/zoneinfo dizini altnda tanml
bir saat dilimi dosyasna link olabilir.
# ls -al /etc/localtime
lrwxrwxrwx 1 root root 35 Ara 5 12:11 /etc/localtime ->
/usr/share/zoneinfo/Europe/Istanbul
# cat /etc/timezone
Europe/Istanbul
190
LPI Sertifikasyon Kitab
# ls /usr/share/zoneinfo/Europe/
Amsterdam Berlin Busingen Guernsey
Kaliningrad Luxembourg Monaco Podgorica San_Marino
Stockholm Vaduz Warsaw
Andorra Bratislava Chisinau Helsinki Kiev
Madrid Moscow Prague Sarajevo Tallinn
Vatican Zagreb
Athens Brussels Copenhagen Isle_of_Man Lisbon
Malta Nicosia Riga Simferopol Tirane
Vienna Zaporozhye
Belfast Bucharest Dublin Istanbul Ljubljana
Mariehamn Oslo Rome Skopje Tiraspol Vilnius
Zurich
Belgrade Budapest Gibraltar Jersey London
Minsk Paris Samara Sofia Uzhgorod Volgograd
root@pardus:~#
root@pardus:~# tzselect
Please identify a location so that time zone rules can be
set correctly.
Please select a continent or ocean.
1) Africa
2) Americas
3) Antarctica
4) Arctic Ocean
5) Asia
6) Atlantic Ocean
7) Australia
8) Europe
9) Indian Ocean
10) Pacific Ocean
11) none - I want to specify the time zone using the Posix
TZ format.
191
LPI Sertifikasyon Kitab
#? 8
Please select a country.
1) Aaland Islands 18) Greece 35) Norway
2) Albania 19) Guernsey 36) Poland
3) Andorra 20) Hungary 37) Portugal
4) Austria 21) Ireland 38) Romania
5) Belarus 22) Isle of Man 39) Russia
6) Belgium 23) Italy 40) San Marino
7) Bosnia & Herzegovina 24) Jersey 41) Serbia
8) Britain (UK) 25) Latvia 42) Slovakia
9) Bulgaria 26) Liechtenstein 43) Slovenia
10) Croatia 27) Lithuania 44) Spain
11) Czech Republic 28) Luxembourg 45) Sweden
12) Denmark 29) Macedonia 46) Switzerland
13) Estonia 30) Malta 47) Turkey
14) Finland 31) Moldova 48) Ukraine
15) France 32) Monaco 49) Vatican City
16) Germany 33) Montenegro
17) Gibraltar 34) Netherlands
#? 47
The following information has been given:
Turkey
Therefore TZ=Europe/Istanbul will be used.
Local time is now: Thu Dec 5 12:14:02 EET 2013.
Universal Time is now: Thu Dec 5 10:14:02 UTC 2013.
Is the above information OK?
1) Yes
2) No
Please enter 1 for Yes, or 2 for No.
#? 1
192
LPI Sertifikasyon Kitab
Kabukta TZ deikeni ile de aadaki gibi saat dilimi(time zone) bilgisi tanmlana-
bilir.
# export TZ=Europe/Istanbul
193
LPI Sertifikasyon Kitab
Hedefler:
Sistem tarihi ve saatinin ayarlanmas
Donanm saatinin ayarlanmas
NTP sunucusu kullanm
Saat dilimi(timezone) ayar
Sistem ve ekirdek loglama hizmeti
Mail gnderim hizmetleri
Printer sunucu yaplandrmas ve ynetimi
Anahtar Kelimeler:
date, ntpd, ntpdate, hwclock, /etc/localtime, /etc/timezone, /etc/ntp.conf, /
usr/share/zoneinfo, pool.ntp.org, syslog,conf, syslogd, klogd, logger, forward,
mail, mailq, sendmail, qmail, exim, postfix, CUPS, lpr, lprm, lpq
194
LPI Sertifikasyon Kitab
Sistem Saati
X86 tabanl donanmlarda alan Linux iletim sistemi iin donanm saati ve yazlm
saati olmak iki farkl saat tr vardr. Yazlm saati date komutu ile donanm saati de
hwclock komutu ile grlebilir.
root@pardus:~# date
Cts Kas 9 12:52:45 EET 2013
root@pardus:~# hwclock
Cts 09 Kas 2013 12:52:40 EET -0.645602 saniye
root@pardus:~#
Date komutu
Bu komut ile sistem saatini grebilir ve deitirebilirsiniz. Ayrca sadece gnn saati,
dakikas, ayn gn gibi deerleri de sorgulayabilirsiniz. Bu tr sorgulamalar genellik-
le betik(script) ierisinde ska kullanlmaktadr.
Sadece o anki tarihe ait bir deeri ekmek iin ise date +%deiken parametresi
kullanlr. Yaygn olarak kullanlan deikenler unlardr:
%M Dakika (00..59)
%m Ay (01..12)
%k saat ( 0..23)
%l Saat ( 1..12)
%H Saat (00..23)
%I Saat (01..12)
%d Ayn gn(01..31)
195
LPI Sertifikasyon Kitab
rnekler:
root@pardus:~# date
Cts Kas 9 14:20:24 EET 2013
root@pardus:~# date +%M
20
root@pardus:~# date +%m
11
root@pardus:~# date +%H
14
root@pardus:~# date +%I
02
root@pardus:~# date +%d
09
Bu komutumuz ile sistem tarihini deitirmek de mmkn, bunun iin aadaki for-
mat kullanlr.
# date AyGnSaatDakikaYl
# date 111015352014
# date 1110153520114
Pzt Kas 10 15:35:00 EET 2014
Hwclock komutu
Bu komut ile sistem saatini donanm tarihini gsterdii tarih olarak tanmlayabilir
veya tam tersi tanmlamay yapabilirsiniz.
hwclock s veya --hctosys (hardware clock to system) komutu ile Sistem saatini dona-
nm saatinden almas salanr.
hwclock w veya --systohc komutu donanm saatini sistemin u anki saati olarak
tanmlar.
196
LPI Sertifikasyon Kitab
rnek olarak nce sistem tarihini ileri bir tarih alalm sonrasnda sistem tarihini dona-
nm tarihinden alacak komutu verelim.
Aadaki iki komut ise BIOS saatini sistem saatini baz alarak yerel saat veya UTCye
gre ayarlar.
# cat /etc/timezone
Europe/Istanbul
197
LPI Sertifikasyon Kitab
Saat dilimi Pardusta zaman dilimi tanmlamak iin bir ka yntem vardr. En kolay
dpkg-reconfigure tzdata komutu ile grafiksel olarak yaplandrmak.
# dpkg-reconfigure tzdata
198
LPI Sertifikasyon Kitab
root@pardus:~# date
Cts Kas 9 15:21:25 EET 2013
root@pardus:~# ln -sf /usr/share/zoneinfo/Europe/Berlin /
etc/localtime
root@pardus:~# echo Europe/Berlin > /etc/timezone
root@pardus:~# date
Cts Kas 9 14:21:49 CET 2013
root@pardus:~#
Yukardaki date komutlarndan da grlecei gibi sistem saati Berline gre ayarlan-
mtr.
NTP Yaplandrmas
Adaki tm bilgisayarlarn ayn saat bilgisine sahip olmas iin NTP(Network Time
Protocol) kullanlmas gerekmektedir. NTP servisini kullanmak iin Linux sistemle-
rinde ntpd isimli bir servis bulunmaktadr. NTP servisinin durumu renmek, servisi
durdurup balatmak iin /etc/init.d/ntp servis dosyas kullanlr veya service ntp ko-
mutu kullanlr.
199
LPI Sertifikasyon Kitab
Elle ntp sunucusundan saati gncellemek iin ise ntpdate komutu kullanlr. Bu ko-
muta parametre olarak kullanlmak istenilen ntp sunucu ad verilir. Fakat bu komutun
almas iin ntp servisinin kapal olmas gerekir.
# ntpdate 0.debian.pool.ntp.org
9 Nov 14:36:18 ntpdate[11936]: the NTP socket is in use, exiting
Uzak NTP sunuculardan saatin gncellenebilmesi iin gvenlik duvar zerinde ntp
port numarasna (UDP 123) eriim verilmelidir.
200
LPI Sertifikasyon Kitab
Sistem Gnlkleri
Syslog servisi
Linux gnlk ynetimi iin syslogd servisini kullanmaktadr. Gnmzde rsyslogd
servisin ek olarak yeni nesil syslog servisi olan syslog-ng servisi de yaygn olarak kul-
lanlmaktadr. Debian tabanl sistemlerde n tanml syslog sunucusu olarak rsyslogd
gelmektedir.
#
# Logging for the mail system. Split it up so that
# it is easy to write scripts to parse these files.
#
mail.info -/var/log/mail.info
mail.warn -/var/log/mail.warn
mail.err /var/log/mail.err
201
LPI Sertifikasyon Kitab
Yukarda grld gibi dosya iki ana blmden olumaktadr. Soldaki blmde
servis ve artlar(facility) tanmlanmakta, sa tarafta ise gnlklerin nasl ilenecei
tanmlanmaktadr. Sa tarafa eylem (action) blm de denilir. Sol taraf ile sa taraf
birbirinden TAB komutlaryla ayrlmtr.
Sol taraftaki servisler de servis ad.ncelik eklinde iki ksmdan oluur. Bu ncelik
deerleri emerg, alert, crit, err, warning, notice, info ve debug olabilir. Servis ad ise
auth, authpriv, console, cron, daemon, ftp, kern, lpr, mail, mark, news, ntp, security,
syslog, user, uucp, ve local0 dan local7 ye kadar olan herhangi bir deer olabilir. Tm
servisleri veya ncelikleri ifade etmek iin * karakteri kullanlr. Sa taraftaki eylem
ksmnda dosya belirtilirse gnlkler dosyaya yazlr, uzak sunucu , konsol da tanm-
lanabilir.
mail.* -/var/log/mail.log
Eer bir gnlk tr, ayrca uzak bir syslog sunucusuna iletilmek istenirse dosya ad
yerine sunucu ad, bana @ iareti konularak belirtilir.
mail.* @172.16.1.10
n tanml olarak syslog sunucular UDP 514 portu kullanlr. Eer sunucu farkl bir
port numaras kullanyorsa :port ile port numaras belirlenir. rnein 5410 nolu port
numarasna gndermek iin:
mail.* @172.16.1.10:5140
202
LPI Sertifikasyon Kitab
# ls /etc/rsyslog.d
postfix.conf
Logger Komutu
Bu komut elle syslog kayd oluturmak iin kullanlr. Genelde yaplandrmann doru
bir ekilde olup olmadn kontrol amacyla kullanlr.
203
LPI Sertifikasyon Kitab
/var/log/btmp {
missingok
monthly
create 0660 root utmp
rotate 1
}
root@pardus:~# ls /etc/logrotate.d
apache2 apt aptitude consolekit cups dpkg pm-utils ppp
preload rsyslog samba speech-dispatcher unattended-
upgrades winbind
# ls /var/log/
alternatives.log bootstrap.log daemon.log.1 dpkg.log.1
lpr.log messages.3.gz syslog user.log.1
alternatives.log.1 btmp daemon.log.2.gz dpkg.log.2.gz
lpr.log.1 messages.4.gz syslog.1 user.log.2.gz
alternatives.log.2.gz btmp.1 daemon.log.3.gz error
mail.err news syslog.2.gz wtmp
apache2 ConsoleKit daemon.log.4.gz faillog
mail.info ntpstats syslog.3.gz wtmp.1
apt cron.log debug fontconfig.log
mail.log pm-powersave.log syslog.4.gz Xorg.0.log
auth.log cron.log.1 debug.1 fsck
mail.log.1 pm-powersave.log.1 syslog.5.gz
Xorg.0.log.old
auth.log.1 cron.log.2.gz dmesg gdm3
mail.log.2.gz preload.log syslog.6.gz
auth.log.2.gz cron.log.3.gz dmesg.0 hp
mail.warn preload.log.1.gz syslog.7.gz
auth.log.3.gz cron.log.4.gz dmesg.1.gz kern.log
messages pycentral.log sysstat
auth.log.4.gz cups dmesg.2.gz kern.log.1
messages.1 samba unattended-upgrades
boot.log daemon.log dpkg.log lastlog
messages.2.gz speech-dispatcher user.log
205
LPI Sertifikasyon Kitab
E-posta Ynetimi
Bir linux sistem hem e-posta sunucusu hem de e-posta istemcisi olarak hizmet ve-
rebilir. Linux zerinde kullanlabilecek bir ok e-posta sunucusu ve yazlm vardr.
Burada ksaca bu yazlmlar hakknda bilgiler verilecektir.
E-posta Sunucular
Sendmail: Linux zerinde alan en eski e-posta sunucusudur. Sendmail hala yay-
gn olarak kullanlsa da performans,gvenlik sorunlar ve yaplandrmasnn dierler-
ine gre biraz kompleks olmasndan dolay eskisi kadar tercih edilmemektedir. Send-
mail hakknda detayl bilgiyi www.sendmail.org sitesinden edinebilirsiniz. Tm ii tek
bir proses yapmaktadr.
Postfix: Sendmaile alternatif,modler bir dizayn ile gelitirildi. Postfix birden fazla
program kullanarak farkl ileri farkl prosesler ile yapmaktadr. Sendmaile gre daha
kolay bir yaplandrmas vardr. Gnmzde bir ok Linux datmnn n tanml
e-posta sunucusudur. Web sayfas: www.postfix.org
Exim: Sendmail gibi tek bir proses ile tm sreci ynetmektedir. Sendmaile gre
daha kolay bir yaplandrmas vardr. Bir ka Linux datm tarafndan n tanml
e-posta sunucusu olarak kullanlmaktadr. Web sayfas:www.exim.org
E-postalar ekmek iin bir IMAP/POP3 sunucusuna ihtiya vardr. Gnmzde yay-
gn olarak Dovecot(www.dovecot.org) sonrasnda ise Cyrus IMAP(http://www.cyrusi-
map.org/) sunucular kullanlmaktadr. Bu sunuculardan farkl olarak uzaktaki e-pos-
talar belirli aralklarla bilgisayara indirip size ait bir SMTP sunucusu kuyruuna veren
fetchmail yazlm vard. Fetchmail bir sunucu yazlm olmayp, uzak sunucu ile yerel
sunucu arasndaki balanty salamaktadr.Fakat gnmzde her geen gn geer-
liliini yitirmektedir.
206
LPI Sertifikasyon Kitab
Sistem genelinde ise /etc/aliases dosyas kullanlr. Bu dosyann n tanml hali aa-
daki gibidir:
# cat /etc/aliases
# See man 5 aliases for format
postmaster: root
# mailq
Mail queue is empty
E-posta stemcileri
Linuxde hem komut satrndan hem de grafik arayzden kullanabileceiniz bir ok
e-posta istemcisi vardr. En yaygn grafik tabanl e-posta istemcileri:
Thunderbird (www.mozilla.org/tr/thunderbird)
Evolution (https://projects.gnome.org/evolution/)
Kmail (http://userbase.kde.org/KMail).
207
LPI Sertifikasyon Kitab
Komut satrndan e-posta okumak iin ise mutt, alpine ve mail komutu bulunmak-
tadr.
Mail komutu parametre vermeden altrlrsa kullancya ait okunmam e-posta var
m yok mu diye kontrol eder. Aadaki gibi parametrelerle de bir e-posta adresine
bir dosyann ieriini gnderebilir.
-s ile e-posta konusu belirlenir. < ile de belirtilen dosyadaki ierik e-postann gvdesi
olarak kar tarafa iletilir.
Yazc Sistemi
Linux sistemlerde yazc ilemleri CUPS(Comon Unix Printing System) servisi tarafn-
dan ynetilir. Yaplandrmalar /etc/cups dizininde bulunur.
# ls /etc/cups
cupsd.conf cups-files.conf ppd raw.types ssl
subscriptions.conf.O cupsd.conf.default cups-pdf.conf
raw.convs snmp.conf subscriptions.conf
208
LPI Sertifikasyon Kitab
Yazc komutlar:
lpr Komutu
Bu komut yazcya i gndermek iin kullanlr. Bu komutu kullanmadan once yazc
ayarlarnn yaplm olmas gerekir. Grafik arayz zerinden kt alnacaksa bu de-
taylar bilmeye gerek yoktur. Arayz lpr komutlarn daha aklayc bir ekilde tanm-
lamaktadr.
En yaygn parametreleri:
-r Bu parametre ile yazma ilemi bittikten sonra dosyann silinmesini salanr.
-h ile banner yazlmas iptal edilir
-# say: Yazmann ka kopya olacan belirtir.
-P hangi yazc kuyruunun kullanlacan belirtir.
rnek:
HPLazer kuyruunda dosya.txt dosyasndan 3 kopya kt almak iin:
lpq Komutu
lpq komutu ile yazc kuyruu istatistikleri grntlenir. P parametresi ile kuyruk ad
belirtilir.
lprm/cancel
lprm ve cancel komutlar ayn ii yapmaktadr.Bu komutlar ile de kuyruktaki bekleyen
iler silinebilir. Parametre olarak i numaras(job id) alr.
Silinecek ie ait i numaras ise yukarda anlatlan lpq veya lpstat komutu ile grn-
tlenebilir.
cupsenable/cupsdisable
cupsenable ve cupsdisable komutu ile de yazc kapatlp alabilir. Ayrca cpudisable
komutuna c parametresi verilecek yazc kuyruundaki tm iler iptal edilebilir. ptal
mesajn tm kullanclara bildirmek iin ise r parametresi ile mesaj tanmlanabilir.
209
LPI Sertifikasyon Kitab
A Ynetimi
Konu:
Linux a ynetimi
Hedefler:
IP adresleme
Temel protokoller, TCP ve UDP farklar
Temel portlar ve zerlerinde alan hizmetler
A arayzlerinin yaplandrlmas
Ynlendirme
IPv6
Host DNS yaplandrmas ve sorgulama
A sorunlarn zme aralar
Anahtar Kelimeler:
IPv4, IPv6, /etc/services, ftp, telnet, ifconfig, ifup, ifdown, route, /etc/network/
interfaces, ethtool, ip, /etc/hosts, /etc/resolv.conf, /etc/nsswitch.conf, host,
dig, ping, traceroute, netstat, netcat
210
LPI Sertifikasyon Kitab
Adresleme
TCP/IP alarnn oluturulmas srasnda yaplmas gereken ilk grev a zerinde bu-
lunan tm noktalara a adreslerinin atanmasdr. IPV4 (32 bit) ve IPV6 (128 bit) olmak
zere iki eit IP adresi vardr.
IP adresleri 4 oktetlik birimler halinde gsterilir. Onluk tabanda IP adresi, drt paraya
ayrlm noktal (194.27.200.20) gsterimle tanmlanr. Noktalar ile ayrlm olan her
bir para 0-255 arasnda deer alabilir. Bu yapya onluk tabanda noktal gsterim
ad verilir.
IP adresleri temel olarak A, B, C olmak zere 3 snfa ayrlr.
A Snf 127 adet a ve her a ierisinde yer alabilecek olan 16,777,214 milyon bil-
gisayar tanmlayabilir.
B Snf 16,383 adet a ve her a ierisinde yer alabilecek olan 65,534 bilgisayar
tanmlayabilir.
C Snf 2,097,151 milyon a ve her a ierisinde yer alabilecek olan 254 bilgisayar
tanmlayabilir.
211
LPI Sertifikasyon Kitab
D snf IPler multicast iin, E snf IPler ise test amal kullanlan zel IPlerdir.
Alt alarn tanmlanmas durumunda Hedef IP Adres alann alt a maskesi ile &
(and) ([1 &1 = 1], [1 & 0 = 0]) mantksal ilemine sokar. & ileminden sonra elde edi-
len deer a adresi ile ayn deilse ynlendirme ilemi yaplr.
zel IPler
zel alarda adreslemeyi basitletirmek, internet alaryla akmay nlemek iin
baz IPler rezerve edilmitir. zel IPler internet a geitleri tarafndan ynlendiril-
mez, yalnzca i alarda kullanlrlar. RFC 1918de tanmlanan zel alar:
10.0.0.8/8
172.16.0.0/12
192.168.0.0/16
212
LPI Sertifikasyon Kitab
Protokoller
Protokol iki a bilgisayarnn birbiriyle konuma dilidir. TCP/IP katmanl bir mimari
olup her protokol, gerek pakete bir takm bilgiler ekleyerek sarmalar ve bir sonraki
katmann protokolne iletir. Bu ekilde sarlp sarlp en son fiziksel katmandan (bu
genelde bir ethernet veya fiber kart oluyor) kar tarafa iletilir. Kar tarafta en d-
tan balanarak paket alr. Bir katmanda ynlendirme bilgisi varken, dier katmanda
hangi hizmetin (portun) hedeflendii bilgisi bulunur. Tm bunlarn yannda mesajla-
rn doru gelip gelmediini kontrol eden hata kontrol mekanizmalar ve bu mekaniz-
malara ait ilave alanlar vardr.
Kaynak bilgisayarda bir katmandaki bir protokol tarafndan pakete eklenmi veriyi
ancak hedef bilgisayardaki ayn katmandaki ayn protokol zmleyebilir, anlayabilir.
TCP Protokol
TCP protokol, balant bazl gvenli veri akn salayarak iletim katmanna (trans-
mission layer) ok nemli hizmetler sunar. ou uygulama kendi veri iletiim kontrol
mekanizmasn oluturmaktansa TCP protokolnn salam olduu hizmetleri kul-
lanr. TCP sunduu hata denetimi, veri ak kontrol gibi hizmetler sayesinde ken-
disini kullanan uygulamalara tatmin edici dzeyde gvenlik, hata denetimi ve ak
kontrol salar.
213
LPI Sertifikasyon Kitab
UDP Protokol
UDP gvenli olmayan, balantsz veri ak salar. Balantnn almas, kapatlma-
s gibi operasyonlara gerek yoktur. Datagramlarn hedeflerine varmalar farkl olarak
ynlendirilmeleri sebebi deiik zamanlarda olabilir. Bu nedenle UDP protokol kul-
lanlarak gnderilen verilerin ayn sra ile hedeflerine ulamas mmkn olmayabilir.
UDP protokol, TCP protokolnden daha hzl ve daha kolaydr. Buna karn salam-
lk, gvenilirlik gibi kriterler gz nne alnd zaman TCP protokolne nazaran ok
fazla dezavantaj vardr.
UDP toplu yayn (broadcast) grup yayn (multicast) mesajlar iin son derece kulla-
nldr.
UDP protokol ierisinde sadece istee bal olarak hata kontrol mekanizmas yr-
tlr.
UDP protokol, TCP protokolnden daha hzl ve daha kolaydr. Buna karn salam-
lk, gvenilirlik gibi kriterler gz nne alnd zaman TCP protokolne nazaran ok
fazla dezavantaj vardr.
ICMP Protokol
Internet Protokol, ICMP Protokoln kullanarak ilem gren datagramlarn iletimi
srasnda meydana gelen hatalar, uyar ve kontrol bilgilerini iletir. Bu mesajlar a
yneticileri tarafndan deerlendirilerek a ierisinde meydana gelen aksaklklarn
belirlenmesinde kullanlabilir.
214
LPI Sertifikasyon Kitab
Port Numaralar
Ayn hedefte birden fazla servis altrmak iin port numaras kullanlr. IP adresi bir
bilgisayar adreslerken, port numaras o bilgisayardaki alan servisi adresler. IP ad-
resi bir binann kap numaras ise, port numaras kanc kat olduunu veya daireyi
gsterir. Bylece ayn hedefte birden fazla servis varsa bunlar birbirinden ayrt edilir.
rnein ayn bilgisayarda hem mail gnderim (SMTP) hem de web sunma (HTTP)
hizmetleri ayn anda bulunabilir. Mail gnderim iin rnein Thunderbird uygulama-
sn, sunulan web sayfasn grntlemek iin rnein Chrome uygulamas kullanlr.
Her iki uygulamada ayn sunucuya balanacak. Ancak iki uygulamann konuma dili
(protokol) birbirinden farkldr. Thunderbird, 25 numaral porttaki SMTP sunucuya
balanrken Chrome 80 numaral porttaki web sunucuya balanr.
1024den kk port numaralar standarttr ve belli protokollere tahsis edilmitir. Li-
nux altnda standart hizmetlerin listesi /etc/services dosyasnda bulunur.
$ cat /etc/services
[...]
ftp-data 20/tcp
ftp 21/tcp
fsp 21/udp
ssh 22/tcp
ssh 22/udp
telnet 23/tcp
smtp 25/tcp
time 37/tcp
time 37/udp
[...]
215
LPI Sertifikasyon Kitab
A Arayzleri
Linux altnda a arayzleri /dev altnda sanal bir aygt olarak ynetilir. Fiziksel eriim
trne gre arayzler farkl isimlerle arlr:
lo: loopback
eth: Ethernet kartlar
slip: Seri port modemler
ppp: Noktadan noktaya
isdn: ISDN hat
fddi: Fiber hat
Arayzler srasyla isimlendirilir. rnein bir sunucuda iki adet Ethernet kart varsa
bunlar ana kart zerindeki srasna gre eth0 ve eth1 olarak isimlendirilirler. Numara-
landrma her zaman 0dan balar.
Loopback (lo) arayz makinann kendisine dnen zel bir arayzdr. A testlerini
yapmak iin kullanlr. Bu aygta yaplacak eriimlere yine kendisi cevap verir. Bylece
TCP/IP protokol gerek bir IP olmadan altrlm olur. Baz uygulamalar gerek an-
lamda bu arayz kullanyor olabilir. rnein sunucu stndeki bir kullancya mail
gndermek isteyen mail transfer ajan.
216
LPI Sertifikasyon Kitab
Linux altnda 127.0.0.1/8 zel andaki btn aygtlar loopback aygtna atanm-
tr. Genelde 127.0.0.1 IP adresi kullanlr. Baz Linux d iletim sistemleri sadece
127.0.0.1i kullanyor.
ethtool, mii-tool
Ethtool, kart hzn, portu, auto-negotiation, PCI lokasyonu gibi deerleri sorgulamak
ve deitirmek iin kullanlan a kart yaplandrma aracdr.
# ethtool S eth0
# ethtool -i em1
driver: e1000e
version: 2.0.0-k
firmware-version: 0.13-3
bus-info: 0000:00:19.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
217
LPI Sertifikasyon Kitab
# mii-tool
eth0: negotiated 1000baseT-FD flow-control, link ok
218
LPI Sertifikasyon Kitab
A Yaplandrmas
A kartlarna IP vermek ve devreye almak iin ifconfig komutu kullanlr. Hibir para-
metre vermeden kullanlrsa mevcut yaplandrmay gsterir.
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:50:56:b2:6d:8a
inet addr:172.16.45.219 Bcast:172.16.47.255 Mask:255.255.248.0
inet6 addr: fe80::250:56ff:feb2:6d8a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:7811035 errors:0 dropped:1879 overruns:0 frame:0
TX packets:136191 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:549190868 (523.7 MiB) TX bytes:27303204 (26.0 MiB)
219
LPI Sertifikasyon Kitab
Bilgisayarn IP adresi olmas a zerinde paket alverii yapmasn temin eder. Ancak
baka alara ulaamaz. Bir adaki bilgisayarn kendi anda olmayan bir hedefe ula-
abilmesi iin ynlendirme girilmesi gerekmektedir.
Bunun dnda belirli alar veya IPler iin ayn komut kullanlarak ynlendirme yap-
labilir.
Aadaki rnekte 10.0.2.5 IPli hosta eriimleri eth1 zerinden yapmak zere bir yn-
lendirme yaplyor:
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
220
LPI Sertifikasyon Kitab
0.0.0.0 ile belirtilen hedef btn a anlamna gelip varsaylan a geidine ynlendi-
rilir. Dolaysyla yukardaki ynlendirme tablosunda varsaylan a geidi son satrdaki
tanm olup 10.0.0.1dir. netstat rn komutu da ayn kty verir.
# cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.16.45.219
netmask 21
Bu dosyada her bir a arayz iin bir blok oluturulur ve bu blokta IP adresi, netmask
ve varsaylan a geidi tanmlanr. A maskesi CIDR veya 4 noktal biimde olabilir.
Kalc zel ynlendirmeler eklemek iin ilgili arayz blouna aadaki gibi post-up
(arayz up olduktan sonra) ve pre-down (arayz down olmadan nce) satrlar eklenir:
221
LPI Sertifikasyon Kitab
# ifup
# ifdown
# /etc/init.d/networking start
# /etc/init.d/networking restart
ip komutu
Linux 2.2 ekirdek srmyle birlikte gelimi fonksiyonlar sunan iproute2 paketi ge-
tirildi. Bu paketin iindeki ana ara ip komutu olup, a balantlarn ve arayzlerini,
ynlendirme tablolarn, ynlendirme politikalarn, ARP tablolarn ve a tnellerini
yaplandrmak iin esneklik sunmaktadr.
ifconfig, route gibi komutlarn yerini artk daha gl ve esnek olan ip komutu almak-
ta, al betikleri bu komutu kullanmaktadr.
222
LPI Sertifikasyon Kitab
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state
UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfi-
fo_fast state UP qlen 1000
link/ether 00:50:56:b2:6d:8a brd ff:ff:ff:ff:ff:ff
inet 172.16.45.219/21 brd 172.16.47.255 scope global eth0
inet6 fe80::250:56ff:feb2:6d8a/64 scope link
valid_lft forever preferred_lft forever
223
LPI Sertifikasyon Kitab
# ip route show
Aadaki tabloda net-tools paketinde yer alan komutlara karlk gelen ip komutlar
verilmitir:
net-tools iproute2
ifconfig ip addr
route ip route
arp ip neigh
ipmaddr ip maddr
iptunnel ip tunnel
nameif ifrename
mii-tool ethtool
224
LPI Sertifikasyon Kitab
IPv6
IPv4 protokolnn tasarmndan kaynaklanan sorunlarn almas ve verimliliin sa-
lanmas IPv6 protokolnn tasarmnda grlmtr. IPv6 datagramlar ierisinde ta-
nabilecek verinin IPv6 balna oran IPv4 protokolnde hesaplanandan ok daha
fazladr.
IPv6 128 bitlik adres byklne sahiptir. Bu nedenle 32 bitlik IPv4 yapsna oranla
daha byk miktarlarda adres tanmlanmasna olanak salar.
IPv4 balk alan ierisinde yer alan baz blmler bu protokol ierisinde istee bal
olarak tanmlanarak performans artrlmtr.
Tercih alanlarnda meydana gelen deiim IP datagramlarn daha kolay ynlendiril-
mesini salar.
225
LPI Sertifikasyon Kitab
# ip -6 route show
# ping6 ipv6.google.com
Bir bilgisayara ismiyle ulamann en kolay yolu /etc/hosts dosyasnda isim adres e-
lemesi yapmaktr.
# cat /etc/hosts
127.0.0.1 localhost
10.34.1.21 wless21.example.com
172.16.45.2 pardus
DNS cache, istemcilerin zmleme isteklerine cevap veren, DNS sunuculara sorgu
yapan, yapt sorgular tekrar kullanmak zere saklayan sunuculardr.
226
LPI Sertifikasyon Kitab
# cat /etc/resolv.conf
nameserver 8.8.8.8
nameserver 4.4.4.4
Birden fazla isim zmleme mekanizmas olduundan (dosyalar, DNS, NIS...) bunla-
rn hangi srayla baklacan belirlemek lazm.
# cat /etc/nsswitch.conf
passwd: compat
group: compat
shadow: compat
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
host Komutu
DNS sorgular yapan basit bir aratr. simleri IP adresine evirir.
227
LPI Sertifikasyon Kitab
$ host www.pardus.org.tr
www.pardus.org.tr is an alias for portal.pardus.org.tr.
portal.pardus.org.tr has address 193.140.100.202
$ host -t mx pardus.org.tr
pardus.org.tr mail is handled by 5 mail.pardus.org.tr.
$ host -t ns pardus.org.tr
pardus.org.tr name server ns2.ulakbim.gov.tr.
pardus.org.tr name server ns1.ulakbim.gov.tr.
dig Komutu
DNS sorgularn yapmak iin kullanlan nslookupn yerini alm daha kapsaml bir ko-
muttur. Genel biimi:
$dig www.google.com
228
LPI Sertifikasyon Kitab
+[no]tcp
TCP kullan veya kullanma, normalde DNS sorgular UDP ile
yaplr
+[no]all
Btn grntlme seeneklerini a veya kapat
+time=T
Sorgu iin T snlik bir zaman am
+[no]answer
DNS cevabn grntle veya grntleme
A Sorunlarn zme
ping Komutu
Hedef bilgisayara ICMP ECHO_REQUEST gndererek ICMP_ECHO_RESPONSE bek-
ler. Basit bir ICMP haberlemesidir. Ping komutunun amac hedef bilgisayarn ayakta
olup olmadn, paket kayb orann ve cevap sresini tespit etmektir.
229
LPI Sertifikasyon Kitab
$ ping www.example.com
PING www.example.com (93.184.216.119) 56(84) bytes of data.
64 bytes from 93.184.216.119: icmp_req=1 ttl=47 time=156 ms
64 bytes from 93.184.216.119: icmp_req=2 ttl=47 time=155 ms
64 bytes from 93.184.216.119: icmp_req=3 ttl=47 time=156 ms
$ping -i 5 www.google.com
Belli sayda ICMP istei gndererek sonlandrmak iin (rnekte 2 istek gnderilmekte):
$ ping -c 2 173.194.39.169
PING 173.194.39.169 (173.194.39.169) 56(84) bytes of data.
64 bytes from 173.194.39.169: icmp_req=1 ttl=44 time=84.0 ms
64 bytes from 173.194.39.169: icmp_req=2 ttl=44 time=84.9 ms
230
LPI Sertifikasyon Kitab
$ ping -c 5 -q 127.0.0.1
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
traceroute Komutu
Hedef bilgisayara giderken paketlerin ynlendirme neticesinde hangi geitlerden
geerek ilerlediini grmek iin kullanlr. Bu sayede hedef bilgisayara ulamada bir
sknt varsa skntnn aradaki hangi noktada olduu tespit edilebilir.
# traceroute www.pardus.org.tr -n
traceroute to www.pardus.org.tr (193.140.100.202), 30 hops
max, 60 byte packets
1 172.16.41.1 0.397 ms 0.471 ms 0.519 ms
2 195.214.145.105 3.385 ms 3.390 ms 3.387 ms
3 172.16.0.1 0.987 ms 1.030 ms 1.075 ms
4 85.29.23.97 3.551 ms 3.586 ms 3.583 ms
5 82.222.224.9 4.660 ms 4.661 ms 10.36.1.109 4.761 ms
6 10.36.2.94 9.379 ms 9.249 ms 9.195 ms
7 10.36.1.54 8.407 ms 7.972 ms 7.935 ms
8 85.29.25.10 9.596 ms 8.992 ms 7.992 ms
9 193.140.100.202 7.265 ms 7.169 ms 7.139 ms
231
LPI Sertifikasyon Kitab
netstat
A balantlarn, ynlendirme tablolarn ve a arayzlerinin istatistiklerini grnt-
ler. Parametreler:
# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt
Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0
0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0
0 eth0
0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0
0 eth0
# netstat -s
Ip:
2374203 total packets received
9728 with invalid addresses
0 forwarded
0 incoming packets discarded
2364474 incoming packets delivered
2196461 requests sent out
232
LPI Sertifikasyon Kitab
Icmp:
5375 ICMP messages received
1487 input ICMP message failed.
ICMP input histogram:
destination unreachable: 2706
timeout in transit: 324
redirects: 48
[...]
# netstat -ta
-ape: TCP, UDP ve UNIX soket balantlar ile bu balantlarn durumlarn gsterir
netcat Komutu
netcat, istemci/sunucu mimarisiyle alan a trafiini analiz etmeye yarayan bir
aratr. A sorunlarn zmek iin kardaki bir porta istemci olarak balanarak su-
nucunun cevaplarn analiz edebilir veya bir sunucu gibi bir portu dinleyip istemci-
lerden gelen istekleri analiz edebilirsiniz. Bylece haberlemeden kaynakl sorunlar
zebilirsiniz.
233
LPI Sertifikasyon Kitab
$ nc -v google.com 80
GET /
Location: http://www.google.com.tr/?gws_rd=cr&ei=u12sUu-
72AcXBswbt-IGYBw
Cache-Control: private
[...]
$ nc -l -v 1234
Listening on [0.0.0.0] (family 0, port 1234)
Ncnin dinledii porta dardan veya zerinden telnet ile balanp veri gnderelim:
234
LPI Sertifikasyon Kitab
$ nc -l -v 1234
Listening on [0.0.0.0] (family 0, port 1234)
Connection from [127.0.0.1] port 1234 [tcp/*] accepted (fa-
mily 2, sport 36652)
Mrb server
$ nc -vz 127.0.0.1 22
Connection to 127.0.0.1 22 port [tcp/ssh] succeeded!
$ nc -vz 127.0.0.1 23
nc: connect to 127.0.0.1 port 23 (tcp) failed: Connection
refused
$ nc -v -w 1 10.0.0.10 -z 20-25
nc: connect to 10.0.0.10 port 20 (tcp) failed: Connection
refused
Connection to 10.0.0.10 21 port [tcp/ftp] succeeded!
Connection to 10.0.0.10 22 port [tcp/ssh] succeeded!
nc: connect to 10.0.0.10 port 23 (tcp) failed: Connection
refused
nc: connect to 10.0.0.10 port 24 (tcp) failed: Connection
refused
nc: connect to 10.0.0.10 port 25 (tcp) failed: Connection
refused
235
LPI Sertifikasyon Kitab
$ nc -vt 10.0.0.10 21
Connection to 10.0.0.10 21 port [tcp/ftp] succeeded!
220 (vsFTPd 2.0.5)
QUIT
221 Goodbye.
236
LPI Sertifikasyon Kitab
Gvenlik
Konu:
Linux a ynetimi
Hedefler:
Dosya gvenlii
SUID bitli dosyalarn bulunmas
Parola gvenlii ve glge parola sistemi
Kullanc eriimini kapatma
Kaynak kullanmn snrlandrma
Ak dosya ve portlar grntleme
Uzak sunucudaki ak hizmetleri tespit etme
Tcpwrapper ile hizmetlere eriimleri snrlandrmak
Glge parola sistemi
Dosya imzalama ve ifreleme
SSH hizmetinin yaplandrlmas
Anahtar Kelimeler:
find, passwd, pwconv, lsof, nmap, chage, /etc/nologin, sudo,
ulimit, usermod, lsof, nmap, xinetd, /etc/hosts.allow, /etc/hosts.
deny, gpg, ssh, sshd, ssh-keygen, scp
237
LPI Sertifikasyon Kitab
Byle bir eye neden ihtiya duyulduunu anlamak iin passwd rneini inceleyelim:
$ ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 27936 Aug 11 2010 /usr/bin/passwd
Grld gibi komut dosyasnn sahibi root ve yetkiler ierisinde SUID bit de (s)
vardr. SUID bit olduundan dolay passwd komutunu altran herhangi bir komut,
kendi yetkileriyle deil komut dosyasnn sahibi olan root yetkileriyle ilem yapar. Bu
durumda normal bir kullanc /etc/passwdde deiiklik yapacak parola deitirme
ilemini gerekletirebilir.
238
LPI Sertifikasyon Kitab
SUID bit yetkisi fazla olduundan yalnzca bilinen programlarda olmal. SUID bitli bir
programdaki ak, saldrgann root yetkileriyle istedii ii yapmasna neden olabilir.
Find komutu kullanlarak sistemdeki SUID/SGID bitli dosyalar tespit edilmeli ve ge-
reksiz olanlar kaldrlmaldr.
Belli dosya sistemleri iin SUID biti veya altrma yetkisini devre d brakmak iin /
etc/fstab kullanlabilir. Ilgili dosya sistemine ait satra zellik olarak nosuid veya no-
exec eklenebilir. Bylece sistem alrken bu dosya sistemi iin SUID bit veya altr-
ma yetkisi verme iptal edilebilir.
Gvenlik iin dier tehlikeli dosyalar ise herkesin yazmasna ak (chmod 777) dosya
ve dizinlerdir. Bu dosyalar saldrganlarn hedefi olabilir ve istedikleri kodlar ykleye-
bilecekleri bir ortam onlara sunabilir. Herkesin yazmasna ak dosyalar tespit etmek
iin:
Tespit edilmesi gereken gvenlik a ortaya kartabilecek dier bir dosya grubu ise
sahibi olmayan dosyalardr.
239
LPI Sertifikasyon Kitab
Shadow parola sisteminde kullanclara ait ifreli parola dndaki bilgiler /etc/pas-
swdte tutulmaya devam ederken ifreli parolalar root dnda kimsenin okuyamaya-
ca /etc/shadow dosyasnda tutulmaktadr. Yetkisiz kullanclar sisteme girilerinde
veya parola deitirdiklerinde bu dosyaya SUID bit sayesinde eriir. SUID bit iin lt-
fen 10.1 blmne baknz.
Normal passwd dosyasn Shadow dosyasna evirmek iin pwconv komutu kullanlr.
Parola Gvenlii
Linux altnda kullanclar root tarafndan useradd komutuyla eklenir. Useradd komu-
tunun nasl davranacan aadakiler belirler:
240
LPI Sertifikasyon Kitab
Kullanc hesabnn bir sre sonra kapanmas iin e (expire) parametresi kullanlr.
Biimi:
-e {yyyy-mm-dd}
Usermod
Linux altnda var olan kullanc bilgilerini ve zelliklerini deitirmek iin usermod
komutu kullanlr. Useradd komutuyla neredeyse ayndr. Tek fark useradd sfrdan
kullanc olutururken usermod mevcut kullanc bilgilerini dzenler:
# usermod L user18
241
LPI Sertifikasyon Kitab
Kabuu /bin/false olan bir kullanc sisteme giri yapar yapmaz kabuk sonlanr ve 1
ile k yapar. /sbin/nologins ise bir hata mesajyla k yapar. Her iki durumda da
kullanc Bashe ulaamaz.
$ ssh user13@10.0.0.10
user13@10.0.0.100s password:
Welcome to Pardus
Eer sistemde /etc/nologin dosyas varsa root hari btn kullanclarn eriimleri en-
gellenecek ve kullanclara bu dosyann ierii gsterilecektir. Pam_nologin.so mo-
dlnn aktif olmasn gerektirir.
Chage
Kullanc, parolasn belirli zaman aralklarnda deitirtmek zorunda braklabilir.
Chage komutu ile en son parola deiikliinden ka gn sonra parolann deitiril-
mesi gerektii ayarlanabilir.
242
LPI Sertifikasyon Kitab
$ chage -l user1
Last password change : Sep 26,
2013
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change :
99999
Number of days of warning before password expires : 7
243
LPI Sertifikasyon Kitab
user1@10.0.0.100s password:
Your account has expired; please contact your system
administrator
/etc/login.defs
Linux shadow parola sisteminin yaplandrma /etc/login.defs dosyasdr. Bu dosyann
olmamas sistemin ilememesine neden olur. Global oturum ama kurallar buradan
tanmlanr.
Bu deer yeni oluturulacak hesaplara etki eder, mevcutlar zerinde herhangi bir
etkisi yoktur.
244
LPI Sertifikasyon Kitab
Passwd
Parola deitirmek iin passwd komutu kullanlr:
$ passwd
Changing password for user user1.
Changing password for user1
(current) UNIX password:
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
# passwd user1
Ulimit ve limit.conf
Kabuk ve kabuk tarafndan balatlm srelerin kullanaca sistem kaynaklarn s-
nrlandrmak iin kullanlr. Bashin gml komutlarndandr yani bu komutun gere-
ini Bash kabuk yapar, ayrca ulimit isimli bir komut dosyas yoktur.
Eer snr verilmezse mevcut snr deeri gsterilir. Btn geerli snr deerlerini
gstermek iin:
245
LPI Sertifikasyon Kitab
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 8192
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 8192
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
# ulimit u 64
246
LPI Sertifikasyon Kitab
Kaynak Aklama
247
LPI Sertifikasyon Kitab
rnekler:
* soft core 0
* hard nofile 512
@student hard nproc 20
@faculty soft nproc 20
@faculty hard nproc 50
ftp hard nproc 0
@student - maxlogins 4
:123 hard cpu 5000
@500: soft cpu 10000
600:700 hard locks 10
su
Baka bir kullancya gei yapmak iin kullanlr.
Su komutu verildiinde sistem root parolasn sorar. Parola dorulandktan sonra kul-
lanc artk yetkili kullanc (root) olarak ilem yapar. Parametre verilirse herhangi bir
normal kullancya da gei yaplabilir.
BSD gibi UNIX trevi iletim sistemlerinde su komutunu herkes kullanamasn diye
belirli gruba (wheel) su komutu altrma yetkisi tannmtr. Linuxta da bu zellii
kullanabilmek iin /etc/pam.d/su dosyasnda aadaki tanm yaplmaldr:
Artk bu komutu kullanmasna izin verilecek kullanclar wheel grubuna eklemek ge-
rekir:
248
LPI Sertifikasyon Kitab
$ su user13
Password:
$ su - user13
Bu durumda user13 kullancsna sfrdan giri yaplm gibi balang betikleri alt-
rlr ve evre deikenleri ayarlanr.
sudo ve sudoers
Sudo ile gvenilir bir kullanc kendi ifresini girerek istenen bir yetki ile ilem yapa-
bilir.
$ cat /etc/shadow
cat: /etc/shadow: Permission denied
$ sudo cat /etc/shadow
root:$1$RweCoHMa$r9/977cwKrigKplI/Wdnv1:15974:0:99999:7:::
bin:*:15701:0:99999:7:::
daemon:*:15701:0:99999:7:::
Sudo daha esnek bir yap sunar. Sadece /etc/sudoers dosyasnda yer alan kullanclar
yetki kazanr ve bu kullanclar yetkili ilemleri kullanc kabuunda yapar, root ka-
buunda deil. Root kullanm tamamen kaldrlr.
Sudonun dier bir avantaj da kullanc bazl yetki snrlandrmas yaplabiliyor olma-
sdr. Farkl kullanclar farkl komutlar iin yetkilendirilebilir.
249
LPI Sertifikasyon Kitab
Sudo yaplandrma dosyas /etc/sudoers iinde hangi kullanc hangi komutu hangi
IPden ve parola gerekip gerekmedii tanmlar yaplr:
Users grubu yeleri shutdown komutunu localhost (yani sunucunun kendisi) zerin-
den parola girerek verebilir.
Sudoers dosyasn daha okunabilir yapmak iin aliaslar tanmlanabilir. Bu sayede bel-
li komut seti, kullanc listesi ve balant noktas tanmlanabilir.
250
LPI Sertifikasyon Kitab
Yada kabua giri yapmadan sudo ile komutu altrp kendi kabuuna dnmek:
Tabi bu ikincisi iin sudo yapacak kullancya sudoers iinde bu komut iin yetki ve-
rilmi olmas gerekir.
lsof
Ak dosyalar grntlemek iin kullanlr.
# lsof
COMMAND PID USER FD TYPE DEVICE SIZE NODE
NAME
init 1 root cwd DI 253,0 4096 2 /
init 1 root rtd DIR 253,0 4096 2 /
init 1 root txt REG 253,0 43496 451683
/sbin/init
init 1 root mem REG 253,0 23360 999947
/lib64/libdl-2.5.so
# lsof /var/log/messages
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
syslogd 2302 root 1w REG 253,0 37826 70887
/var/log/messages
# lsof +D /var/log/
# lsof -c httpd
# lsof -u simsek
# lsof -p 15653
252
LPI Sertifikasyon Kitab
Linux altnda hereyin bir dosya olduunu ve a balantlarnn da buna dahil oldu-
unu unutmayn. A balantlarn tespit etmek iin:
# lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
portmap 2336 rpc 3u IPv4 7001 UDP *:sunrpc
rpc.statd 2376 rpcuser 3u IPv4 7173 UDP *:859
rpc.statd 2376 rpcuser 6u IPv4 7159 UDP *:856
sshd 2616 root 3u IPv4 8968 TCP *:ssh
(LISTEN)
xinetd 2634 root 5u IPv4 9036 UDP *:tftp
ntpd 2650 ntp 16u IPv4 9052 UDP *:ntp
mysqld 2743 mysql 10u IPv4 9212 TCP *:mysql
(LISTEN)
# lsof -i :25
nmap
lsof komutu yerel makina zerinde hangi hizmetlerin ve portlarn ak olduunu gs-
terirken nmap, uzak sunucular tarayarak ak port ve hizmetleri tespit eder.
253
LPI Sertifikasyon Kitab
$ nmap www.microsoft.com
Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2013-
12-07 13:10 EET
Interesting ports on 65.55.57.27:
Not shown: 1678 filtered ports
PORT STATE SERVICE
80/tcp open http
443/tcp open https
OS ve Srm bilgisi (-A) verecek daha hzl (-T4) alacak bir komut:
254
LPI Sertifikasyon Kitab
-sS: SYN taramas, yarm balantl tarama da denir. Sadece SYN gnderilerek cevap
alnr, TCP balant kurulmaz
-sT: TCP balant taramas
-sU: UDP balant taramas, DNS gibi UDP hizmetler iin
-sA: TCP ACK taramas
-sO: IP protokol taramas
QUITTING!
$ sudo su -
# nmap -sU 10.0.0.10
255
LPI Sertifikasyon Kitab
Tcp Wrapper
Linux, aa dahil olup bir istemci olarak a hizmetlerinden yararlanabildii gibi uygun
yaplandrma ile kendisi de pek ok a hizmeti sunabilmektedir. rnein telnet, ftp,
ssh, talk vs...
Linux altnda btn a isteklerini kabul eden ve ilgili uygulamaya aktaran super-dae-
mon veya TCP wrapper olarak isimlendirilen yada servislerin servisi diyebileceimiz
bir servis bulunmaktadr.
TCP Wrapper, btn hizmetleri tek bir merkezden ynetmeyi salar. Btn hizmetler
TCP Wrapper yaplandrma dosyas ile aktif edilirken /etc/hosts.{allow,deny} dosyalar
ile de eriim denetlenir.
Baz a hizmetleri (http gibi) inetd dnda kendi balarna alabilirler. Bu durumda
bu hizmet alt portu kendisi dinlemektedir. Bu tr sunuculara standalone sunucu
denmektedir. Bir uygulama istenildiinde stand-alone veya TCP wrapper ile alacak
ekilde yaplandrlabilir.
256
LPI Sertifikasyon Kitab
Inetd eski, yava ve gvenlik zaafiyetine neden olan bir tasarma sahiptir. Bunun yeri-
ne alternatif olarak xinetd gelitirilmitir. Xinetdnin sunduklar:
257
LPI Sertifikasyon Kitab
defaults
{
instances = 60
log_type = SYSLOG authpriv
log_on_success = HOST PID
log_on_failure = HOST
cps = 25 30
}
includedir /etc/xinetd.d
service telnet
{
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/kerberos/sbin/telnetd
log_on_failure += USERID
disable = yes
}
/etc/hosts.{allow,deny}
TCP Wrapper bir eriime izin verip vermeyeceine karar vermek iin hosts.allow ve
hosts.deny dosyalarna bakar.
ncelikle hosts.allow dosyasna bakar. Satr satr bu dosyay okuyarak mevcut ba-
lant iin giri izni arar. Bulursa balanty kabul eder. Bulamazsa hosts.deny dosyasn
okur ve bir yasaklama kural olup olmadna bakar. Varsa balanty reddeder yoksa
balanty kabul eder.
258
LPI Sertifikasyon Kitab
Dolaysyla bir balantnn kabul edilmesi iin ya allow kural olmal yada hakknda bir
deny kural olmamal.
lk nce hosts.allow dosyas okunduundan bir balanty kabul eden bir allow kural
ve reddeden bir deny kural ayn anda varsa balant kabul edilir.
Bir balant iin herhangi bir kural yoksa o balant kabul edilir.
vsftpd : .example.com
259
LPI Sertifikasyon Kitab
ALL: ALL
Gvenli bir kullanm iin hosts.denyda hereyi red edip sadece gerekenleri hosts.al-
low ile amak tavsiye edilir.
Baz terimler:
ALL: Herey
LOCAL: inde nokta (.) olmayan btn domainler (localhost, mail, test gibi)
ALL : 192.168.
Hosts.allowa yazlacak aadaki kural ile telnet hizmetine, yalnzca belirtilen dosya-
in.telnetd : /etc/telnet.hosts
$ gpg -c secret.txt
Enter passphrase:
Repeat passphrase:
260
LPI Sertifikasyon Kitab
Geri alan dosyann orjinal dosya ile ayn olduunu kontrol edin:
$ ls -l secret.txt output.txt
-rw-r--r-- 1 simsek wheel 461672 Dec 7 16:05 output.txt
-rwxr-xr-x 1 simsek wheel 461672 Dec 7 16:04 secret.txt
$ diff secret.txt output.txt
$
SSH Hizmeti
Linux makineye uzaktan balanmak iin gerekli bir servistir. Ayrca ssh isimli program
sayesinde uzaktaki sshd servisi ak makinelere balanlabilir.
Pardus zerinden uzak makineye ssh ile balanmak iin aadaki gibi bir komut a-
ltrlr.
# ssh ahmet@172.16.1.10
# ssh l ahmet 172.16.1.10
261
LPI Sertifikasyon Kitab
Protocol 2
PermitRootLogin yes
n tanml olarak root kullancsnn ssh ile sisteme balanmasna izin verilir. Bu baz
gvenlik risklerini getirdii iin bu parametrenin deerini no yaplmas tavsiye edilir.
Root ile ilem yapmak isteyen kullanclarn standart bir kullanc ile ssh balants
yaptktan sonra su veya sudo ile root ilemleri yapmas daha uygundur.
262
LPI Sertifikasyon Kitab
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/data/ahmet/.ssh/id_rsa):
Created directory /data/ahmet/.ssh.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /data/ahmet/.ssh/id_rsa.
Your public key has been saved in /data/ahmet/.ssh/id_rsa.pub.
The key fingerprint is:
a7:50:1a:c1:c2:5e:b3:94:cd:0e:72:38:35:7f:f6:6c ahmet@pardus
The keys randomart image is:
+--[ RSA 2048]----+
| . +++ |
| * O+o |
| . B.=o o |
| . .+.o o |
| o S . E |
| . o . |
| . |
| |
| |
+-----------------+
Yukardaki Enter passphrase ksmnda eer bir parola girerseniz kar sunucuya sa-
dece bu makineden artk bu parola ile giri yapabilirsiniz. Bu ksm bo geerseniz
parolasz girebileceksiniz.
263
LPI Sertifikasyon Kitab
$ ls -al .ssh/
toplam 16
drwx------ 2 ahmet ahmet 4096 Ara 9 23:46 .
drwxr-xr-x 6 ahmet ahmet 4096 Ara 9 23:46 ..
-rw------- 1 ahmet ahmet 1675 Ara 9 23:46 id_rsa
-rw-r--r-- 1 ahmet ahmet 394 Ara 9 23:46 id_rsa.pub
Artk ssh veya scp ile kar sunucudaki bu kullancya parolasz balanabilirsiniz.
rnek:
264
LPI Sertifikasyon Kitab
SSTEM MMARS
A) dmesg A) /proc/irq
B) insserv B) /proc/interrupts
C) runlevel C) /proc/modules
D) lsmesg D) /proc/devices
A) insmod A) kernel
B) depmod B) initd
C) dodprobe C) init
D) lsmod D) rc
265
LPI Sertifikasyon Kitab
8. Kullanclarn kulland bir disk 12. Hangi komut, alan ekirdee ykle-
blmnde bakm yapmanz gerek- nebilir bir modl ykler?
mektedir. (fsck vs...) Bu ilemi gvenilir
bir ekilde yapabilmeniz iin diski A) insmod
kullanclarn kullanmamas gerekmek- B) depmod
tedir. Ne yapmak lazm? C) rmmod
D) setmod
A) killall
B) /etc/init.d/network stop
C) shutdown r now
D) init 1
13. lsmod aadaki hangi bilgiyi verir?
A) Delmod
B) Unmod
11. Depmodun aadaki hangi paramet-
C) Rmmod
resi zmlenmemi sembolleri listeler?
D) Modprobe
A) e B) l C) i D) a
266
LPI Sertifikasyon Kitab
267
LPI Sertifikasyon Kitab
7. Sadece kurulan paketleri listelemek 11. dpkg ile apt-get arasndaki fark iin
iin aadaki komutlardan hangisi aadakilerden hangisi dorudur?
kullanlabilir?
A) Dpkg kaynak kodu ekerek derler,
A) Dpkg-query apt-get derleyemez.
A) Grub-install A) /dev/hba
B) Grub B) /dev/hda
C) Grubcfg C) /dev/sda
D) Herhangi bir komut altrmaya D) /dev/sta
gerek yok.
13. ok fazla kullancs olan bir sistemde
9. Bir disk blm zerinde swap olu- aada dizinlerden hangisinin ayr bir
turmak iin aadaki komutlardan disk blm yaplmas uygun olur?
hangisi kullanlr? A) /etc
A) makeswap B) /bin
B) makefs C) /sbin
C) mkswap D) /home
D) swapon
14. Aadaki balama noktalarndan
(mount point) hangisi swap alan iin
10. Swap alann iptal etmek iin aadaki en uygundur?
komutlardan hangisi kullanlr?
A) /swap
A) mkfs B) /mnt/swp
B) swap --delete C) Swap alan iin balama noktasna
C) swapoff ihtiya yoktur.
D) umount D) /dev/swap
268
LPI Sertifikasyon Kitab
A) 3 B) 4 C) 5 D) 2 C) /etc/apt/sources.list
D) /etc/updates.list
269
LPI Sertifikasyon Kitab
270
LPI Sertifikasyon Kitab
271
LPI Sertifikasyon Kitab
17. Srekli gncellenen /var/log/messa- 20. Bal olunan kabuun arka plannda
ges dosyann ieriini srekli takip alan proseslerini listelemek iin aa-
etmek iin aadaki komutlardan daki komutlardan hangisi kullanlr?
hangisi verilir?
A) fg
A) tail /var/log/messages B) bg
B) head /var/log/messages C) job
C) tail f /var/log/messages D) jobs
D) less f /var/log/messges
21. vi editr ile dosyay dzenlerken,
E) more f /var/log/messages
dzenlemeden vazgeip dosyadaki
deiiklikleri kaydetmeden kmak
iin hangi parametre verilir?
18. Bir dosyann dosya tipini renmek
iin aadaki komutlardan hangisi A) :q!
kullanlr? B) wq!
C) :q
A) id
D) :exit
B) file
C) type 22. Bir diskin yedeini birebir baka bir
D) ls diske kopyalamak veya imaj almak iin
E) fileattr hangi komut kullanlr?
A) cp
B) dd
19. touch komutu iin aadakilerden C) cat
hangisi dorudur?
D) tar
A) Dosya varsa ieriini siler yeni dos- 23. Aadaki komutlardan hangisi
ya oluturur. deneme.txt dosyasndaki denemek
B) Oluturulmak istenen dosya yoksa ve denemem ifadesi geen satrlar
hata verir. listeler?
C) Dosyann eriim tarihini gnceller
A) grep deneme(km) deneme.txt
D) Dosyann sahibini komutu altran
B) grep deneme[mk] deneme.txt
kullanc olarak deitirir.
C) cat deneme.txt denemek |grep
denemem
D) grep deneme[k-m] deneme.txt
272
LPI Sertifikasyon Kitab
24. Aadaki hangi komut prosesin nor- 28. ekirdek srmn ve donanm tr-
mal bir ekilde sonlanmasn salar. n (32 bit, 64 bit) renmek iin aa-
A) kill -9 PID daki komutlardan hangisi kullanlabilir?
B) kill HUP PID A) kerninfo
C) kill TERM PID
B) oslevel
D) kill KILL PID
C) sysinfo
E) kill STOP pid
D) uname
273
LPI Sertifikasyon Kitab
274
LPI Sertifikasyon Kitab
7. Hard link ve sembolik link ile ilgili ola- 10. Aadaki komutlardan hangisi /usr/
rak aadakilerden hangisi yanltr. bin/komut programna suid bit hakk
verir.
A) Hard link farkl dosya sistemleri iin
uygulanabilir. A) chmod ug+x /usr/bin/komut
B) Soft link te orijnal dosya silinirse B) chmod 2755 /usr/bin/komut
dosyaya eriilemez. C) chmod ug+s /usr/bin/komut
C) Hard linkte dosya silinse bile dosya- D) chmod suid /usr/bin/komut
ya eriim devam eder.
D) Hard link dizinler iin almaz.
275
LPI Sertifikasyon Kitab
A) Ext2 A) auto
B) Ext3 B) allusers
C) XFS C) user
D) VFAT D) allow
C) Locate A) quotaenable
D) Whereis B) quotaonline
C) quotaon
D) quotactl
276
LPI Sertifikasyon Kitab
277
LPI Sertifikasyon Kitab
278
LPI Sertifikasyon Kitab
D) Ctrl-s A) ./deneme.sh
B) run deneme.sh
C) . deneme.sh
D) exec deneme.sh
8. Bash kabuunda komut1 || komut2
ne anlama gelir?
279
LPI Sertifikasyon Kitab
13. Aadaki dosyalardan hangisi non- 16. Baarl olarak tamamlanm komutun
login (su yaparak veya dorudan hangi deerle k yapmas beklenir?
komut satrndan /bin/bash altra-
rak) etkileimli bash kabuk tarafndan A) 0 B) 1 C) 2 D) 10
kullanlr?
A) /etc/bashrc
17. /opt/bin dizinine btn kullanclarn
B) ~/.bashrc kullanaca programlar yklediniz. Bu
C) /etc/profile programlara kullanclarn dorudan
D) ~/.bash_profile eriebilmesi iin PATH=$PATH:/opt/bin
tanmlamas hangi dosyada yaplma-
ldr?
15. Aadakilerden hangisi bir dizinin var 19. Bash kabuunda hangi evre deike-
olup olmadn test iin kullanlabilir? ni n tanml promptu tanmlar?
A) test f A) PRM
B) test e B) PS1
C) test d C) CS1
D) test r D) P1
280
LPI Sertifikasyon Kitab
20. Bash kabuunda bir evre deike- 23. Bir dosyann ilk satrndaki #!/bin/bash
nin tanmn kaldrmak iin aadaki ne anlama gelir?
komutlardan hangisi kullanlr? A) Bu dosyann trnn /bin/bash
olduu
A) delset
B) # aklama satrdr.
B) unset
C) Sistemde /bin/bash tanml m diye
C) rmset kontrol eder.
D) set x D) Dosyann ieriini /bin/bash kabu-
unda yorumla
A) $1
B) %1
C) $0
D) %0
281
LPI Sertifikasyon Kitab
Ynetim Grevleri
1. Bir komutu bir defaya mahsus ve belir- 5. Aadaki ifadelerden hangisi doru-
lenmi bir saatte altrmak iin aa- dur, ltfen yaznz.
daki komutlardan hangisi kullanlr?
A) Normal kullanclar /etc/shadowu
A) cron okuyamazlar
A) -------r- A) 3 B) 4 C) 5 D) 6
B) -rr-r-
C) -rw-------
D) -rw-rw----
282
LPI Sertifikasyon Kitab
D) /etc/cron.deny B) admin:x:100:ahmet;mehmet
C) admin:x:100:ahmet:mehmet
D) admin:x:100:ahmet mehmet
10. Aadaki komutlardan hangisi kulla-
nc parolasnn son kullanma sresini
DETRMEZ. 14. ahmet kullancsn ev dizini ile birlikte
tamamen silmek iin aadaki komut-
A) usermod lardan hangisi kullanlr?
B) passwd A) userdel ahmet
C) chpass B) userdel r ahmet
C) rmuser y ahmet
D) chage D) userdel f ahmet
283
LPI Sertifikasyon Kitab
15. Aadaki satrlardan hangisi /etc/pas- 18. Sisteme son balanan kullanc liste-
swd dosyasna ait doru bir satrdr? sini almak iin aadaki komutlardan
hangisi kullanlabilir?
A) selcuk:x: selcuk:1000:1000: /home/
selcuk:/bin/bash A) lastlogin
B) selcuk:x:1000:1000:selcuk:/home/ B) logins
selcuk:/bin/bash C) last
C) 1000:1000:selcuk:x:selcuk:/home/ D) loginlist
selcuk:/bin/bash
D) selcuk:x:1000:1000:/home/selcuk:-
19. crontab komutu ile dzenlenen kulla-
selcuk:/bin/bash
nclarn cron dosyalar hangi dizinde
bulunur?
A) /var/cron
16. ahmet kullancsn ev dizinini /data/
B) /var/spool/crond
ahmet olarak oluturmak istiyoruz. /
C) /var/spool/cron
data/ahmet dizinini de oluturacak
D) /var/cron/spool
ekilde kullancy amak iin aadaki
komutlardan hangisi verilir?
20. Bash kabuunda geici olarak dil
A) useradd -m -h /data/ahmet ahmet
tanmn deitirmek iin aadaki
B) useradd -c -d /data/ahmet ahmet
komutlardan hangisi kullanlr?
C) useradd -h /data/ahmet ahmet
D) useradd -m -d /data/ahmet ahmet A) export LANGUAGE=tr_TR.UTF-8
B) set LANGUAGE=tr_TR.UTF-8
C) LANGUAGE=tr_TR.UTF-8
D) export LANG=tr_TR.UTF-8
17. useradd ve adduser ile ilgili aadaki
karlatrmalardan hangisi dorudur?
21. iconv komutu iin aadakilerden
A) Useradd kullanc eklerken parola
hangisi dorudur?
sorar.
B) Adduser interaktif olarak kullanc A) icon formatlarn deitirmede
aabilir ve parola tanmlamas kullanlr.
yapabilir. B) Karakter kodlar arasnda dnm
C) Useradd grup ad verilmezse grubu yapar.
amaz. C) Grafik kodlamasnda kullanlr.
D) Adduser grup ad verilmezse grubu D) Veritaban formatn deitirmede
amaz. kullanlr.
284
LPI Sertifikasyon Kitab
285
LPI Sertifikasyon Kitab
A) /usr/share/timezone
B) /usr/share/timezonedata 12. Bir seferliine sistem saatini pool.ntp.
C) /usr/share/zoneinfo org sunucusundan gncellemek iin
hangi komut kullanlr?
D) /usr/share/tzdata
A) ntp pool.ntp.org
B) date s pool.ntp.org
C) ntpdate pool.ntp.org
D) hwclock pool.ntp.org
10. Sistemin dil, karakter seti gibi evre
deikenlerini kullandn renmek
iin hangi komut kullanlr?
A) getlocale
B) tzconfig 13. syslogd mekanizmasn test etmek iin
C) local hangi komut kullanlr?
D) locale A) syslogclient
B) logger
C) logtest
D) syslog
286
LPI Sertifikasyon Kitab
14. n tanml syslog yaplandrma dosya- 17. Kuyrukta bekleyen e-postalar liste-
s hangisidir? lemek iin aadaki komutlardan
hangisi kullanlr?
A) /etc/syslog-ng/syslog-ng.conf
B) /etc/syslog.conf A) qmail
C) /etc/syslog-ng/syslog.conf B) mailqueue
D) /etc/syslogd.conf C) mailq
D) mailstat
C) hwclock B) /etc/postfix/postfix.conf
D) hdwclock C) /etc/postfix/service.conf
D) /etc/postfix/smtp.conf
C) /etc/log.d B) /etc/cups.d
D) /etc/log/rotate.d C) /etc/printer/cups
D) /etc/cups
287
LPI Sertifikasyon Kitab
A Temelleri
288
LPI Sertifikasyon Kitab
9. Hangi komut samba sunucuya yaplan 12. TCP/IPde netmask hangi amala
balantlar izlemek iin kullanlr? kullanlr?
A) POP3
13. Aadaki komutlardan hangisi nta-
B) SMTP nml a geidini 192.168.1.1 yapar?
C) DNS
D) SSL A) Netstat add default 192.168.1.1
289
LPI Sertifikasyon Kitab
15. pardus.org.tr alan ad iin tanml mail 20. Eth1 a arayznn IP adresini
sunucular hangi dig komutu gsterir? 192.168.1.5 olarak deitirmek iin
hangi komut verilmeli? A maskesi
255.255.255.0 olacaktr.
16. A probleminin hangi noktada oldu-
unu bulmak iin kullanlan komut
hangisidir? 21. n tanml a geidini renmek iin
aadaki komutlardan hangisi kullanlr?
A) Route
B) Ping A) route show
C) Netstat B) cat /proc/net/defaultgw
D) Traceroute C) netstat nr
D) ifconfig gw
17. DNS sistemini kullanmadan bir host- 22. Aadaki dosyalardan hangisi tann-
name iin IP zmlemesini salamak m port numaralarna ait servis ve
istiyorsunuz. Hangi dosyaya yazmanz protokol bilgilerini ierir?
gerekmektedir?
A) /etc/inet/services
B) /etc/services
C) /etc/servicelist
D) /etc/net/service
18. Hangi program uzak bir bilgisayarn eri-
ilebilirliini test etmek iin kullanlr?
23. Al srasnda hostname tanmlamak
A) route iin hangi dosyann ieriine baklr?
B) ifconfig
A) /et/hosts
C) rlogin
B) /etc/host
D) ping
C) /etc/hostname
D) /etc/net/hostname
290
LPI Sertifikasyon Kitab
291
LPI Sertifikasyon Kitab
Gvenlik
A) IP
2. Hangisi normal bir kullancnn kul- B) ICMP
lanc deitirmeden yetkili kullanc C) TCP
ilemlerini yapmasn salar?
D) NDP
A) su
B) su 6. Linux sunucu zerinde NETBIOS isim
zmlemesi iin hangi daemon
C) sudo
kullanlr?
D) usermod
A) Dns
B) Winsd
C) Smbd
3. Bir portu hangi uygulamann kulland-
D) Nmbd
n bulmak iin aadaki komutlar-
dan hangisi kullanlr?
7. Hangi dosya internet isim zmle-
A) strace me sistemiyle ilgilidir?
B) ptrace A) /etc/resolv.conf
C) netstat B) /etc/hosts
D) lsof C) /etc/nsswitch.conf
D) /etc/default/names
292
LPI Sertifikasyon Kitab
8. ...
/etc/...... dosyas kullanclarn geici 12. sudo yaplandrma dosyas aadaki-
olarak sisteme girilerine engel olur. lerden hangisidir?
Ltfen boluu doldurunuz.
A) /etc/sudo.conf
B) /etc/security/sudoers
C) /etc/sudoers
9. /etc/shadow dosyasnn izinleri aa-
D) /etc/security/sudo.conf
dakilerden hangisidir?
C) Seteacl D) ls p 123
D) Setlacl
293
LPI Sertifikasyon Kitab
16. Sunucuda
... ak olan tm TCP port 19. Sistemdeki SUID ve SGID bitine sahip
numaralarn listelemek iin aadaki dosyalar bulmak iin aadaki ko-
komutlardan hangisi kullanlabilir? mutlardan hangisi kullanlr?
A) /etc/security.conf
22. Sudo yaplandrma dosyasn dzenle-
B) /etc/grub.conf
mek iin en uygun komut hangisidir?
C) /etc/inittab
D) /etc/services A) sudoedit
B) sudoconf
C) sudocfg
D) visudo
294
LPI Sertifikasyon Kitab
YANIT ANAHTARI
Sistem Mimarisi Aygtlar, Linux Dosya Sistemleri
1. a 11. a 1. a 9. b 17. c
2. c 12. a 2. c 10. b 18. c
3. a 13. a 3. b 11. a 19. b
4. d 14. /var/log/dmesg 4. d 12. c 20. b
5. a 15. c 5. d 13. c 21. c
6. c 6. b 14. d 22. c
7. b 7. c 15. a 23. a
8. d 8. a 16. a
9. c
10. a
295
LPI Sertifikasyon Kitab
...
YANIT ANAHTARI
Linux Kurulumu ve Paket ynetimi Ynetim Grevleri
1. b 11. b 22. b 1. c 11. b 21. b
2. a 12. d 23. b 2. a 12. a
3. d 13. b 24. c 3. a 13. a
4. grep joe /etc/passwd 14. b 25. d 4. c 14. b
15. b 26. d
5. a 5. a ve c 15. b
16. e 27. c
6. b 6. c 16. d
17. c 28. d
7. d 7. c 17. b
18. b 29. d
8. b 19. c 30. b 8. c 18. c
9. c 20. d 31. b 9. d 19. c
10. c 21. a 32. c 10. c 20. d
296
LPI Sertifikasyon Kitab
YANIT ANAHTARI
Gvenlik
1. b 11. c 21. c
2. c 12. c 22. d
3. d 13. c
4. b 14. c
5. b 15. b
6. d 16. b
7. a, b ve c 17. a
8. nologin 18. c
9. a 19. a
10. a 20. c
297