Temel UNIX bilgisi Unix Temelleri | Trsohbeti

Eyll 5, 2008
Unix iletim Sistemine Gei
1. UNIX letim Sisteminin Balang Ve
Geliimi
2. Dizayn Prensipleri
3. Temel Unix Komutlar
3.1. Dosyalar
Grntleme
3.2. Bir Dosyay Baka
Bir Yere Kopyalama
3.3. Dizin Oluturma Ve
Silme
3.4. Dosyalar Veya
Dizinleri Baka Bir Yere Tama
3.5. Dosyalar Silme
3.6. Sistemdeki
lemler Hakknda Bilgi Alma
3.7. Yeri Bilinmeyen Bir
Dosyay Bulmak
3.8. ifre
Deitirmek
3.9. Bir Dosyann
zinlerinin Deitirilmesi
3.10. Dosyalarn
Boyutlarn renmek
3.11. Kimlerin
altn renmek
3.12. Yazcdan
Dosyalarn ktsn Almak
3.13. Alias ( Farkl
sim ) Tanmlamak
3.14. Bir Dosyann
ini Grmek in Kullanlan Programlar
4. Kampste Kullanlan Versiyonlar Ve Adetleri
1. Unix letim Sisteminin Balang Ve Geliimi
name=”1″>
UNIX in ilk versiyonu Bell Laboraties aratrma grubunda
alan Ken Thompson tarafndan 1969 ylnda PDP-7 de almak zere
gelitirildi. Ksa bir sre sonra Dennis Ritchie Thompsona katld. Thompson,
Ritchie ve aratrma grubunun dier yeleri UNIXin ilk versiyonlarn hazrlad.
Ritchie ok yakn gemi zamanda MULTICS projesi zerinde
alm olduundan bu yeni iletim sistemi zerinde MULTICS in gl bir
etkisi oldu. Hatta ismi bile MULTICS den gelmedir. Dosya sistemi temel organizasyonu,
komut yorumlayc fikri (shell), her komut iin ayr bir process ve daha eitli
zellikler direk olarak MULTICS den geldi.
Ritchie ve Thompson UNIX zerinde yllarca alt.
Onlarn almalar PDP-11/20 zerinde alan ikinci versiyona ilerlemeye yol
at. nc versiyon iletim sisteminin byk ounluu assembly dili yerine
sistem-programlama dili olan C de yazmalaryla olutu.C UNIX i desteklemek iin Bell
Laboratories de gelitirildi.UNIX ayn zamanda daha byk PDP-11 modellerine
tand rnein 11/45 ve 11/70. C de tekrar yazld ve multiprogramming
destei olan sistemlere (rnein 11/45) getii zaman multiprogramming ve dier
gelimeler UNIX in yapsna eklendi.
UNIX gelitike Bell Laboratories de yaygn olarak
kullanld ve yava yava baz niversitelere yayld. Bell Laboratories
dnda yaygn olarak bulunan ilk versiyonu Version 6 idi . 1978 ylnda Version 7
datld ve bu modern UNIX sistemlerin atasyd.
Version 7 nin datmndan sonra UNIX Support Group (USG)
datm iin idari kontrol ve sorumluluu Bell Laboratories den ald. UNIX bir
aratrma aracndan ok bir rn oluyordu. Aratrma Grubu ayn zamanda
organizasyonlarndaki kurulu ii hesaplamalar gerekletirmek iin kendi UNIX
versiyonlarn gelitirmeye devam etti. UNIX in bir sonraki versiyonlarnda Remote
File System ve Stream I/O system gibi zellikler eklendi.
USG UNIX iin desteini AT&T iinde salad. lk
d datmn yapt sistem 1982 ylnda System III t.
Kk boyut, modlerlik ve UNIX sistemlerin temiz dizayn
Rand, BBN, the University of Illinois, Harvard, Purdue ve Dec gibi birok bilgisayar
bilimi temelli organizasyonlarda UNIX temelli ilere nderlik etti. Bell Laboraties ve
AT&T hari en etkili gruplar Berkeley deki University of California da ortaya
kt.
Berkeley in 1978 ylndaki VAX UNIX zerindeki ilk
almas 32V ye virtual memory, demand paging ve page replacement in Bill Joy ve
Ozalp Babaolu tarafndan 3BSD UNIX i hazrlamak iin eklenmesi oldu. Sistem bu
zelliklerin kullanld ilk versiyon oldu. Geni virtual memory nin kullanlmas
geni programlarn altrlabilmesine yol at.
DARPA (Defense Advanced Research Projects Agency) iin
alan bir komite TCP/IP protokollerini destekleyen 4.2BSD versiyonunu oluturdu.
Bylece UNIX iletim sistemi LAN lardan WAN lara kadar eitli network tipleri
zerinde kullanlmaya baland.
Gnmzdeki mevcut UNIX sistem versiyonlar Bell
Laboraties ve Berkeley in rettii rnlerle snrl deildir. Sun Microsystems
BSD yi workstationlarnda kullanarak poplaritesinin artmasna sebep oldu.UNIX in
poplaritesi arttka yeni bilgisayar ve bilgisayar sistemlerinde kullanlmaya
baland. ok sayda UNIX ve UNIX benzeri iletim sistemleri gelitirildi. Yaygn
bir ekilde bulunmasndan dolay akademik kurumlardan askeri kurumlara kadar bir ok
kurumda kullanld. Bu sistemlerin ou Version 7, System III, 4.2 BSD veya System V
tabanlyd.
UNIX iki tane Bell Laboraties alannn kiisel
projelerinden uluslararas standartlarla tanmlanan bir iletim sistemi haline geldi.
UNIX iletim sistemi iletim sistemleri teorisi iin hala eitim kurumlar iin en
popler ve nemli bir iletim sistemidir.
2. Dizayn Prensipleri
UNIX iletim sistemi time-sharing bir sistem olarak
tasarland. Standart kullanc arayz ( shell) basit ve istenildiinde bir
bakas ile deitirilebilir. Dosyalama sistemi kullanclara kendi alt dizinlerini
oluturmaya izin veren multilevel tree yapsdr. Her kullanc dosyas basit byte
sralardr.
UNIX multiple process i destekler. Bir process kolaylkla
yeni processler oluturabilir. CPU scheduling i basit priority algoritmasdr. 4.3BSD
memory ve CPU ynetimini desteklemek iin demand paging kullanr. Eer sistem ar
paging den dolay sorun yaarsa swapping kullanlr.
UNIX balangta iki programc tarafndan
gelitirildii iin anlalmak iin yeterince kktr. Algoritmalarn ou
hz veya komplekslik yerine basitlii iin seilmitir. UNIX programclar
tarafndan yine programclar iin tasarland. B yzden her zaman interaktif ve
program gelitirme zellikleri ncelikli oldu.
UNIX ounlukla kendini desteklemek iin yazlan C dilinde
yazld. nk kimse assembly dilinde programlama yapmay sevmiyordu. Assembly
dilinden C diline gei UNIX in bir sistemden baka bir sisteme geiini
kolaylatrd.
3. Temel Unix Komutlar
3.1. Dosyalar Grntlemek
Dosyalar ls komutuyla grntlenir.
ls (seenekler) (dosya veya dizin)
Seenekler:
-C : Grnt ok kolonlu ve dosya isimleri azalan srada
olacaktr.
-F : Dosya isimleri sonunda * dizin isimleri sonunda /
iaretleri grntlenerek birbirinden ayrt edilmelerini salar.
-R : Belirlenen bir dizin iindeki dosyalar yani sra varsa
tm alt dizinler ierikleriyle birlikte listeler.
-a : . ile balayan dosyalar dahil dizinin tm ieriini
listeler.
-c: Dosyalar sralamak veya bastrmak amacyla
i-dmlerinin en son dzeltme tarihlerini kullanr.
-l : Dosyalar hakknda daha ayrntl bilgi verir.
-g : Eer ayrntl liste alnyorsa yani tm bilgiler
listelenecek ise ve bu listede dosyann sahibinin grup adyla birlikte yer almas
isteniyorsa bu seenek kullanlr.
-i : Her dosyay i dmleri ile birlikte grntler.
-m : Dosya isimleri virgllerle birbirinden ayrlarak
listelenir.
-n : Ayrntl listede yer alan ID numaralarn listeler.
-o : Ayrntl listeye grup adlarnn dahil edilmesini
salar.
-p : Dizinlerin / iaretiyle simgelenmesini salar.
-q : Dosya isimleri iinde ? gibi grafik olmayan karakterler
varsa bunlarn listelenmesine yardmc olurlar.
-r : Sralamay ters ynden yapar.
-s : Blok cinsinden dosyalarn boyutunu verir.
-t : Dosyalarn deiime urama zamanlarna gre
sralanmasn salar.
-u : Dosyalara en son eriim zamanlarna gre
sralanmasn salar.
rnek :
ls -l aytekin*
w-rww- 1 e065247 B386 603 Oct 24 22:14
aytekin_guzelis.html
w-rww- 1 e065247 B386 607 Oct 24 22:23 aytekin.html
3.2. Bir Dosyay Baka Bir Yere Kopyalama
cp komutu ile kopyalama yaplr .
Kullanm :
cp -[seenek] dosya bakabir_dosya_ismi
rnek :
Cp main.html main_index.html //
main.htmli main_index.html olarak kopyalar.
cp index.html ~/tmp // index.htmli
HOME dizinimdeki /tmp dizininin altna kopyalar
cp -r ~/tmp ~/dump // HOME dizindeki
tmp dizinini dump dizininin altna kopyalar.
3.3. Dizin Oluturma Ve Silme
mkdir dizin_ismi // dizin oluturur
rmdir dizin_ismi // ii bo olan bir
dizini siler
3.4. Dosyalar Veya Dizinleri Baka Bir Yere Tama
name=”3.4.”>
mv komutu ile dosyalar baka bir dizine, hatta dizinleri
baka dizinlere tayabilirsiniz. Bu ilemin sonunda orijinal dizinin iindeki
dosyalarn isimlerinde bir deiiklik olmaz. Mv komutu DOStaki rename ve move komutuna
benzer, ancak onlardan ok daha beceriklidir.
Kullanm :
mv dosya1 dosya2
3.5. Dosyalar Silme
Unixte dosyalar silmek iin rm komutu kullanlr.
Aslnda rmnin yapt ey dosyann sahip olduu linklerden birini karmaktr.
Eer dosyann sadece bir linki varsa sonuta dosya silinir.
DKKAT : Unixte DOStakine benzer bir UNDELETE komutu yoktur
( mimarilerinin farkl olmasndan dolay ) bu sebeple dosyalarnz silerken ok
dikkatli olmanz gerekir. Eer bir dosyay yanllkla silerseniz, sistem
sorumlunuza bavurun, belki backuplardan dosyanz geri getirebilir.
Kullanm :
rm -[seenekler] Dosya_ismi Dosya_ismi
Seenekler :
-e : Dosyann silinmesinden sonra ekrana bilgi verir.
-f : Sormadan write-protected dosyay siler.
-i : Dosyay silmeden nce bunun doruluunu sorar.
-r : Recursive olarak alt dizinleri siler.
-R : -r ile ayndir.
rnek :
rm aytek* // bulunduumuz dizindeki
aytek ile balayan tm dosyalar siler
rm -rf tmp // tmp dizinini ve alt
dizinlerini uyarmadan siler
3.6. Sistemdeki lemler Hakknda Bilgi Alma
name=”3.6.”>
ps komutu ile sistemde yryen ilemler hakknda bilgi
alnr.
Kullanm :
ps (seenekler)
Seenekler:
-e : Tm ilemlerle ilgili bilgilerin grntlenmesini
salar.
-d : Grup liderleri hari tm ilemler hakknda bilgi
verir.
-a : Grup liderleri ve terminallerle ilikisi olanlar
dnda kalan tm ilemler hakknda bilgi verir.
-f : Tam listenin retilmesine olanak tanr.
-l : Ayrntl listeyi grntler.
-c dosya : /dev/swap in bulunduu yerde swapdev dosyasn
kullanr.
-t liste : Liste iinde yer verilen terminallerden
yrtlen ilemler hakknda zel bilgi salar.
-p liste : Listede ID numaralar tanmlanan ilemlere
ilikin zel bilgileri grntler.
-u liste : Belirlenen kullanclarla ilikili ilemlere
ait zet bilgi.
-g liste : Grup liderlerinin ilikili olduu ilemler
hakknda bilgi.
x : Sahip olduunuz tm ilemleri listeler .
rnek :
/home/e065247/m>ps x
PID TTY STAT TIME COMMAND
81024 pts/7 R 0:00 ps x
113626 – S 0:00 xterm
117927 pts/7 S 0:00 -csh
125165 pts/5 S 0:05 telnet rorqual
129499 pts/12 S 0:00 -csh
132296 pts/5 S 0:00 -usr/local/bin/tcsh
167106 – S 0:06 aixterm
198577 – S 0:00 sh /usr/bin/X11/startx -t -wait
231908 pts/12 S 0:00 telnet rorqual
236990 – S 0:00 mwm
244646 – S 0:00 xterm
alan bir ilem kill komutuyla kesilir.
kill (-sinyal) PID
PID numaralar ps komutu ile grnr.Bir ok sinyal
tanmlanabilir. Bunlardan -9 ilemi ldrr.
3.7. Yeri Bilinmeyen Bir Dosyay Bulmak
Find program ile bulabilirsiniz.
Kullanm :
find yol tanm seenekler
Seenekler:
-name isim : aranlacak dosyann ismi.
-perm izin : zinleri oktal olarak belirlenmi dosyalarn
aranlmas.
-links n : linke sahip dosyalar.
-user kullanc : Belirli bir kullancya ait dosyalarn
aranmas.
-group isim : Belirli bir gruba dahil dosyalarn aranmas.
-atime n : n gn iinde eriilen dosyalar.
-mtime n : n gn iinde ilem gren dosyalar.
-ctime n : n gn iinde deitirilen dosyalar.
-print : bulunan dosyalarn ekranda grntlenmesini
salar.
rnek :
Bulunduum dizinden itibaren tm alt-dizinlerdeki
“guzelis” ile balayan dosyalar bulmak iin;
find . -name “guzelis*” -print
./faq/guzelis_aytekin.html
./faq/guzelis_aytekin_programlama.html
./guzelis
./guzelis/guzelis
./guzelis/guzelis.c
Not1 : Burada arayacam dosyada wildcard kullandm iin ” ” iaretini
kullandm. Eer dosyann tam ismini biliyorsanz buna gerek yoktur.
Not2 : Eer bir aramay roottan ( / ) balatrsanz ok
byk olaslkla baz dosyalar okumaya izniniz olmad iin size bunu belirten
bir uyar mesaj verilecektir, ve bu mesajlar arasnda aradnz ey ekrana
yazlsa bile bunu gzden karabilirsiniz. Bu sebeple kty bir dosyaya
yneltip, daha sonra o dosyay okumanzda fayda vardr.
rnek :
find / -name gzip -print > gzip
3.8. ifre Deitirmek
Kullancnn ifrelerini deitirmek iin passwd
program kullanlr. Baz sistemlerde yppasswd olarakta geebilir. Bu komutu
yazdktan sonra sizden ilk olarak eski ifreniz ardndan yeni ifreniz sorulacaktr.
Daha sonra tekrar yeni ifreniz kontrol amac ile sorulur. Eer bir hata
yapmadysanz ifreniz deitirilir.
yi ifreler nasl olmaldr ?
inde noktalama iareti,rakam,boluk ve hatta kontrol
karakterleri bulunduran ifreler sein. inde bunlardan bir tane bile olsa byle bir
ifrenin bulunma olasl son derece dktr. Eer bu karakterlerin
saysn arttrrsanz bulunma olasl kat kat der.
Kt ifrelere birka rnek :
serafettin
semsettin
ser_semsettin
kamyon
ifre
..
yi ifrelere birka rnek :
.bir/iki
[mb&elf]
vs..vs..
Tabii gzel ifre seerken bunlarn kolaylkla
unutulmayacak eyler olmamasna da dikkat etmeniz gerekir ! . Ayrca ifrelerinizi
ASLA bir yere yazmayn !
3.9. Bir Dosyann zinlerinin Deitirilmesi
name=”3.9.”>
chmod izin modu dosya : Bir dosyaya verilen izinlerin
deitirilmesi.
ls -l [dosya] yazdnzda en solda grlen bilgiler, o
dosyann izinlerini gsterir.
rnek :
ls -l ayt*
w-rw-r 1 e065247 B386 603 Oct 24 22:14 aytekin_index.html
Grld gibi en soldaki ksm 10 tane alandan
olumaktadr. Bunlarn ilki dosyann niteliini ( dizin yada dosya ) sonraki 9u da o
dosyann izinlerini gsterir.
Eer en soldaki alan “d” ile baslarsa bu onun bir
dizin olduunu, “-” ile baslarsa normal bir dosya olduunu gsterir ( NOT
: Unixte her dizin zel bir dosyadr ! ) Bu ilk karakterden sonra gelen 9
karakter de kendi aralarnda 3 gruba blnr.
lk 3 Alan : Kullanc izinlerini
Sonraki 3 Alan : Grup ile ilgili izinleri
En Sadaki 3 Alan : Dier kullanclarla ilgili izinleri
gsterir.
Her bir blmde 3e blnr :
r : Read ( okuma ) hakk;
w : Write ( yazma ) hakk;
x : Execute ( altrma ) hakk.
rnek :
-rw-rr 1 e065247 B386 533 Oct 24 21:35 pensacola.html
gibi bir dosya bu dosyann herkes tarafndan okunabilir
olduunu, ama sadece o dosyann sahibi tarafndan yazlabilir olduunu gsterir.
chmod programnda kullanlan izin modlar iki trl
belirtilebilir :
1- Nmerik olarak :
rnin deeri : 4
wnin deeri : 2
xin deeri : 1 dir.
rnekler :
ORANTILI ZN KODLARI

Orantl kod – zin durumu –

0400 – Dosya sahibi iin okuma –
0200 – Dosya sahibi iin yazma –
0100 – Dosya sahibi iin altrma –
0040 – Gruptakiler iin okuma –
0020 – Gruptakiler iin yazma –
0010 – Gruptakiler iin altrma –
0004 – Dierleri iin okuma –
0002 – Dierleri iin yazma –
0001 – Dierleri iin altrma –

ls -l
w-rww- 1 e065247 B386 603 Oct 24 22:14 aytekin.html
w-rww- 1 e065247 B386 607 Oct 24 22:23
aytekin_guzelis.html
chmod 0220 aytekin* // Kullancya
ve gruba yazma hakk verelim
ls -l
ww- 1 e065247 B386 603 Oct 24 22:14 aytekin.html
ww- 1 e065247 B386 607 Oct 24 22:23
aytekin_guzelis.html
2- Karakter olarak :
u : Dosyann sahibi.
g : Grup
o : Dierleri
a : Herkes
+ : zin vermek
– : zinleri kaldrmak.
= : Belirli bir izin atamak zere.
chmod go+r aytekin* // Ek olarak gruba
ve dierlerine okuma hakki verelim
ls -l
w-rw-r 1 e065247 B386 603 Oct 24 22:14 aytekin.html
w-rw-r 1 e065247 B386 607 Oct 24 22:23
aytekin_guzelis.html
3.10. Dosyalarn Boyutlarn renmek
Balca 2 yolu vardr;
1- du komutu
Du komutu bulunduunuz dizinden itibaren tm alt dizinleri
tarayarak block cinsinden ne kadar yer kapladn gsterir.Block sizelar genelde
512 bytetr bu sebeple kan sayy ikiye blerek o dizinin ne kadar yer
kapladn grebilirsiniz.
En aada da toplam miktar belirtilir.
rnek :
/home/e065247/m>du
72 ./.m
8 ./m
8 ./ch
496 ./temp
632 .
2- quota komutu
Quota komutu toplam olarak ne kadar yer kapladnz ve
sizin ne kadar yazma hakkinizin olduunu gsterir. Ayn zamanda eer geici disk
snrnz atysanz, kalan gn miktar vs. gibi bilgileride gsterir.
rnek :
/home/e065247/m>quota
Disk quotas for user e065247 (uid 517):
Filesystem blocks quota limit grace files quota limit grace
/home211 2748 3000 5000 302 1000 1500
3.11. Kimlerin altn renmek
name=”3.11.”>
w [seenekler]
w komutu sistemin yk, ve alanlarn faaliyetleri
konusunda baz bilgiler verir. Komutu altrdktan sonra kan bilgilerden ilki,
sistem hakkndadr : sistem saati, o anda ka kiinin ak olduu, ve sistemin
yk gibi.. Sistem yk genelde 0 ile 40 arasnda deien bir deer ile
gsterilir. Eer sistemin i ok kullancl ya da ar ilerin yapld
makinelerde bu say 5 ten ok ok fazla olabilir.
Yk 0-5 arasnda ise sistemin o anda fazla ykl
olmadn syleyebiliriz.
Bu ilk satrn ardndan gelen satrlarda sralar halinde
kullanclarla ilgili bilgiler bulunur. Soldan saa doru ;
lk alan : Kullancnn userid si.
2. alan : Baland ttysi.
3. alan : Ne zaman login olduu.
4. alan : Enson komutu altrmasndan sonra geen
zaman. (idle time)
5. alan : Makinenin almasndan beri yaplan
processlerin getirdii toplam yk.
6. alan : Yaplan en son iin verdii yk.
7. alan : Yapt i !
rnek :
/home/e065247/m>w e065247
01:09AM up 10 hrs, 40 users, load average: 2.44, 5.04, 5.33
Posted by admin under Bilgisayar |