Bilginin Adresi Ana Sayfa
Forum Anasayfası Forum Anasayfası > Bilgisayar Güvenliği / Computer Security > Güvenlik / Security Makaleleri
  Aktif Konular Aktif Konular RSS - Genel Yönleriyle Bilinmesi Gereken Linux Komutları
  SSS SSS  Forumu Ara   Events   Kayıt Ol Kayıt Ol  GiriÅŸ GiriÅŸ

Genel Yönleriyle Bilinmesi Gereken Linux Komutları

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
megabros Açılır Kutu Gör
Security Professional
Security Professional
Simge

Kayıt Tarihi: 08-06-2009
Konum: Turkey
Status: Aktif DeÄŸil
Points: 752
Mesaj Seçenekleri Mesaj Seçenekleri   Thanks (0) Thanks(0)   Alıntı megabros Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: Genel Yönleriyle Bilinmesi Gereken Linux Komutları
    Gönderim Zamanı: 08-04-2010 Saat 00:27

Linux, Unix tabanlı bir işletim sistemi olduğu için her ikisi de kullanım açısından benzerlikler içerir. Günümüzde bir çok işverenin istekleri arasında Unix bilgisinin olması yer almaktadır. Eğer Linux mantığını anlar ve komutlarını rahatlıkla kullanabilirseniz sizin de bir Unix bilginiz vardır demektir. Hatta bazı komutlar IBM AIX ile bile aynıdır. Bu yüzden Linux en çok tercih edilen işletim sistemlerinden biridir.

Dosya Tipleri


Linux'ta 3 değişik dosya tipi vardır. Bunlar sıradan dosyalar, dizinler ve aygıt dosyalarıdır. Sıradan dosyalar çalışabilir programlardan veya datalardan oluşur. Dizinler diğer dosyaları ve dizinleri barındıran dosyalardır. Aygıt dosyaları ise tape, disk sürücüleri, CD-ROM sürücüleri, modemler, network kartları, tarayıcılar ile ilgili dosyalardır. Yani bu aygıtlara erişim bu dosyalar üzerinden olur. Hatta bilgisayarın hafızası bile bir dosya ile ifade edilir.

touch, echo, cat komutları
Birçok text editörü ile dosya yaratılabilr. Ancak bunun en basit yolu bir terminalin komut satırında

$ touch dosyam

komutunu işletmektir. Bu komut sayesinde adı dosyam olan içi boş bir dosya yaratılır. Şayet içinde birtakım yazılar olan bir dosya yaratmak istiyorsak o zaman echo komutuyla yönlendirme yapmalıyız:

$ echo içi dolu dosya

Bu komut işletilince standat çıkış olan ekrana "içi dolu dosya" yazacaktır. Tabi bu çıktıyı ekran yerine bir dosyaya yönlendirirsek o zaman içinde "içi dolu dosya" yazan bir dosya yaratılacaktır. Aşağıda bunu göreceğiz.

$ echo içi dolu dosya > dosyam

Bu komut işletilince terminal penceresinden bir görüntü alamayız, ancak dosyam isimli bir dosya yaratılmıştır ve içinde "içi dolu dosya" yazar.

Dosyaların içeriğini görmek için kullanılan birkaç komut vardır. Ayrıca bir text editörü açarak da dosyaların içeriği incelenebilir. Örneğin terminalde

$ cat dosyam

komutunu işletirsek dosyam isimli dosyanın içeriği ekrana basılır. Eğer dosyanın uzunluğu bir ekran görüntüsüne sığmayacak kadar uzunsa dosyanın sonu gelene kadar görüntü kayacaktır ve ekranda sadece son ekrana sığan satırları kalacaktır. Bunu sayfalara bölerek görüntülemek için komut satırında bazı ek komutlar yazmalıyız. Buna daha sonra değineceğim.

Dosyanın içindeki veriyi kaybetmeden üzerine ekleme yapmak için yine echo komutu kullanılabilir. Bu durumda yönlendirmeyi ( >> ) işaretini kullanarak yapmalıyız.

$ echo bu ikinci satırdır >> dosyam

Bu komuttan sonra dosyam isimli dosyanın içinde yazılanları listelersek

$ cat dosyam

içi dolu dosya

bu ikinci satırdır

bu görüntüyle karşılaşırız.

ls komutu

Dosyaların listelenmesi için ls komutu kullanılır. Mesela bulunduğunuz dizinde bu komutu işletin ve bulunduğunuz dizinde neler var neler yok görün.

$ ls

aylar dosyam gunler mevsimler muzik

Benim çalışma dizinimdeki dosya ve dizinler bunlar. Burada birçok dosya ve dizin olsa ve bize m ile başlayanlar lazım olsa yapmamız gereken ls komutuna parametreler ekleyerek bunu belirtmektir.

$ ls m*

mevsimler muzik

Unix'te her dizinin iki özel dosyası vardır. Bunlar .(dot) ve ..(dot-dot) dosyalarıdır. Normal olarak bu dosyalar gizlidir ve ls komutu parametresiz kullanılırsa görülemezler.

$ ls -a

. .. aylar dosyam gunler mevsimler muzik

-a parametresiyle gizli dosyalar da görülebilir. Dosya ve dizinler hakkında daha ayrıntılı bilgi almak için ise bir parametreye daha gerek vardır. ls komutu -a ve -l parametreleriyle beraber kullanılırsa dosyalar hakkında geniş bilgi elde edilir. Bu ayrıntılı bilgi dosya tipi, kullanıcı izinleri, dosyanın sahibi, dosyanın grubu, dosyanın yaratılma tarihinden ibarettir. Bir örnek vermek gerekirse,

$ ls -al

-rw-r-r- 1 predator user1 2156 jul 19 1998 .
-rw-r-r- 1 predator user1 2246 jul 19 1998 ..
-rw-r-r- 1 predator user1 147 jul 19 1998 .profile
-rwxr-xr- 1 predator user1 186 jul 25 1998 aylar
-rwxrwxrwx 1 predator user1 296 jul 22 1999 dosyam

pwd, cd , cd.. komutları

Unix dosya-dizin hiyerarşisi içinde hareket ederken cd ve cd.. komutları kullanılır. Bulunan dizini öğrenmeye yarayan komut da pwd (print working directory)' dir.

$ pwd

/home/predator/deneme

$ cd..

$ pwd

/home/predator

Sanırım yukarıdakiler Linux'un dosa çok benzer bir yapıda olduğunun kanıtıdır. Ancak aralarında çok farklılıklar da vardır. Mesela dosya isimleri 255 karaktere kadar olabilir. Hatta dosya ismi olarak benim.dosyam.deneme ya da benim_deneme_dosyam verilebilir. Ancak dosyalara isim verilirken dikkat edilmesi gereken bazı hususlar vardır. Bazı derleyiciler giriş dosyalarının bazı kurallara uygun olmasını ister. Mesela bir derleyici kendisine ilişkilendirilen dosyanın uzantısının belirli bir karakter olmasını ister. Bunları listelemek gerekirse :

Uzantı program gereklilik

.c c program dosyaları evet

.f fortran program dosyaları evet

.pl perl program dosyaları hayır

.h include dosyaları hayır

.gz gnu gzip ile sıkışmış dosya evet

.Z sıkıştırılmış dosya evet

.zip pkzip ile sıkıştırılmış dosya evet

Bu tabloya göre dosyaların karışmaması için uygun olan dosya ismini vermek oldukça mantıklı ve birçoğu gereklidir.

cp, mv, rm komutları
Dosyaları kopyalamak için kullanılan komut cp komutudur. Örnek vererek kullanımını açıklarsak :

$ ls

dosyam gunler

olduğunu varsayalım. cp komutuyla dosyam adlı dosyayı dosyam_yedek olarak aynı yere kopyalamak için

$ cp dosyam dosyam_yedek

komutu işletmek gereklidir. Kopyalamanın gerçekleşip gerçekleşmediğine bakmak için

$ ls

dosyam dosyam_yedek gunler

kontrolünü yapabilirsiniz. Bu yaptığımız kopyalamada hedef olarak bir dizin belirtmediğimiz için aktif dizin olan bulunduğumuz dizine kopyalama olmuştur. Dosta olduğu gibi target belirterek de kopyalama yapabiliriz. Mesela

$ cp dosyam /home/guest/temp/dosyam_yedek

komutuyla bulunulan dizindeki dosyam isimli dosyayı kök dizinden itibaren /home/guest/temp dizinine kopyaladık. Şimdi de orada olup olmadığını kontrol edelim.

$ pwd

/home/predator

$ cd /home/guest/temp

$ ls

dosyam_yedek

Kopyalama işleminde aynı anda iki dosyayı birden bir dizine kopyalayabiliriz. Mesela aşağıdaki komutla bunu gerçekleştireceğiz,

$ pwd

/home/predator

$ cp dosyam gunler /home/guest/temp

Bu komut ile dosyam ve gunler isimli iki dosya belirtilen dizine kopyalandı. Burada dikkat edilmesi gereken nokta hedef olarak bir dizinin belirtilmesidir.

Dosyaların kopyalanmasından başka ihtiyaçlar da vardır. Mesela bir dosyaya başka bir dizinin altında ihtiyaç varsa bu dosyayı gerekli dizine kopyalayıp sonra da ilk dosyayı silmektense bu dosyayı ihtiyaç olunan yere taşımaya yarayan bir komut vardır. Bu komutla istendiği taktirde yer değiştiren dosyanın ismi de değiştirilebilir. İsminden de anlaşılacağı gibi bu komut mv komutudur. Mesela uzun bir dosya ismine sahip bir dosyamız olsun. Bunun içini açıp bir satır yazı eklemek için her defasında ismini yazmaktansa buna kısacık bir isim verilebilir.

$ mv cok_uzun_dosya_ismi kısa

Yukarıdaki komutla uzun bir dosyanın yerini değiştirmeden sadece ismini değiştirdik. Bu aslında tam bir rename işlemidir. Şimdi de kısa isimli dosyayı /home/guest/temp dizini altına taşıyalım.

$ mv kısa /home/guest/temp

Ayrıca hedef dizinde de ismi farklı olmasını istersek:

$ mv kısa /home/guest/temp/kısa2

komutunu kullanabiliriz. Kısa2 yerine istediğiniz ismi verebilirsiniz.

Dosyaları silmek için rm komutu kullanılır. Bu komutu kullanırken dikkat edilmelidir. Zira windowstaki gibi bir çöp sepeti burada yoktur. Bu komutu kullanırken iki kere düşünün.

$ ls

dosyam dosya_yedek gunler

$ rm *

$ ls

Burada üç tane dosyamız vardı ( , artık yok. Çünkü bir joker karakter yardımıyla o dizinde bulunan bütün dosyalar silindi. Bunları kurtarmanın da bir yolu yoktur.

mkdir, rmdir komutları
Dizin oluşturmak için kullanılan komut mkdir komutudur. Bir komutta bir dizin oluşturulduğu gibi birden fazla dizin de bir komut ile oluşturulabilir. Mesela bulunulan dizinde 1 isimli bir dizin oluşturalım:

$ mkdir 1

Bulunulan dizinde iki tane dizin oluşturmak için se yine aynı komutu dizin isimlerini birbirinden ayrı yazarak oluşturabiliriz.

$ mkdir usr1 usr2

Eğer oluşturulan dizinlerin birbirinin içinde yani iç içe olmasını istiyorsak bunu bir parametreyle komuta belirtmeliyiz.

$ mkdir –p tmp/tmp2

Buradaki –p parametresi dizinlerin iç içe oluşturulacağının ifadesidir. Yukarıdaki komutla bulunulan dizinde tmp isimli bir dizin ve onun altında da tmp2 isimli bir dizin oluşturulmuştur.

Dizinleri silmek için rm komutu kullanılamaz. Çünkü rm sadece dosya siler. Dizinleri silmek için rmdir komutu kullanılmalıdır. Bu komutun çalışması için dizinin altındaki her şey silinmelidir. Eğer bu komut hoşunuza gitmezse , ben rm komutunu kullanmak istiyorum derseniz size bir iyilik düşünülmüş. rm komutu –r parametresiyle kullanılırsa işaret edilen dizini siler.

Saygılar.


Düzenleyen megabros - 08-04-2010 Saat 00:27
Yukarı Dön
 Yanıt Yaz Yanıt Yaz

Forum Atla Forum İzinleri Açılır Kutu Gör



Bu Sayfa 0.174 Saniyede Yüklendi.