Linux Terminal Komutları [Sürekli güncellenecek]

exlord06

Katılımcı Üye
31 Mar 2013
394
0
Ankara
Merhaba arkadaşlar sizlerle yazın Abant izzet baysal üniversitesin'de katıldığım Linux Yaz Kampı notlarımı paylaşacağım (bu arada hocam istanbul hacker space'in kurucusu tanıyanlarınız vardır) çok yararlı bilgiler sizde yararlanın isterim , sürekli güncelleyeceğim , teşekkürler.

Bir Gnu/Linux işletim sisteminde sistem ve kullanıcı dizinler kök dizini altında bulunur.
Kök dizin altındaki temel klasörler;
(Linux dosya sistemlede (kısaca FSSTND) standartına göre kök dizin altında dizinleri görevleri şöyle özetlenir;

/bin : Olması zorunlu temel komut dosyalarını içerir (binaryler).
/boot : Başlangıç için gerekli dosyaları bulundurur.
/dev : Donanım dosyaları vardır.
/etc : Sistem ayarlarını barındırır.
/lib : Kütüphane dosyaları ve çekirdek modülleri bulunur.
/media : Kaldıralabilir aygıtların (CD-ROM USB BELLEK vb.) sisteme eklendiği dizindir.
/mnt : Sistem açılışında otomatik olarak bağlanan sabit disk bölümleri bu dizin altında eklenir.
/opt : Üçüncü parti kullanıcı programlarının kurulması içindir.
/sbin : Sistemin yöneticisyle ilgili çalıştırabilir dosyaları tutar.
/srv : Sistemin sunduğu hizmetlerle alakalı dosyalar.
/tmp : Geçici dosyaları tutmak içindir.
/usr : Tüm kullanıcılarla paylaşılan verileri içeren dizindir.
/var : Log dosyaları, e-posta ve yazıcı kuyrukları gibi değişken verileri
barındırır.


UZUN AÇIKLAMALAR İLE;


/bin ;
İşletim sisteminizi kullanmak için gereken birçok komut /bin klasörü altındadır. cat, mkdir, cp, ls,
mv, rm vb. temel komutların hepsi buradadır. Sistem boot ettiğinde, ilk olarak /bin klasörü çalışır
hâle getirilir. Sistemde ne kadar ciddi bir sorun olursa olsun /bin klasöründeki komutlar çalışmaya
devam eder. Sisteminizde bir sorun meydana geldiğinde /bin klasörü altındaki komutları kullanarak
sistemi onarabiliriz.


/boot ;
Boot, işletim sisteminin yüklenme evresidir. /boot klasörü, boot işlemi için gerekli olan tüm
dosyaları içerir (çekirdek görüntüsü, sistem haritası, önyükleyici yapılandırması gibi). Bilgisayarın
başlangıç (boot) aşamasında gerekmeyen ayar ve yapılandırma dosyaları burada bulunmaz; başka
klasörlerden gerektiği zamanlarda yüklenir.

/dev ;
Linux'ta her şey bir dosyadır; donanım aygıtları da öyle. USB girişleri, seri ve paralel portlar,
diskleriniz, CD-ROM'larınız vb... Bütün aygıtlar /dev klasörü altında tutulan dosyalardan ibarettir.
Örneğin /dev altında bulunan hda1 dosyası, sabit diskinizi temsil eder. Ya da /dev/dsp, ses
aygıtınızdır. Bunları programlar vasıtasıyla kullanırız; ancak bu dosyalar üzerinden doğrudan
müdahale etmek de mümkündür. Mesela "cat /boot/vmlinuz > /dev/dsp" yazarak Çekirdeğin sesini
duyabilirsiniz.

Bazı önemli aygıt dosyaları;
/dev/ttyS0 : Fare, modem gibi aygıtların bağlandığı seri port (COM 1).
/dev/psaux : PS/2 girişi; fare ve klavyeler içindir.
/dev/lp0 : Paralel port (LPT 1); yazıcı, tarayıcı vs...
/dev/dsp : Birincil ses aygıtı
/dev/usb : USB aygıtları
/dev/sda : SCSI aygıtlar, USB bellekler, harici CD-ROM'lar vs...
/dev/scd : SCSI CD-ROM'lar
/dev/js0 : Oyun çubuğu (Joystick)

/etc;
İşletim sistemini bir vücuda benzetirsek, /etc klasörünü sinir sisteminin merkezi olarak görebiliriz.
Sisteme dair bütün ayarları barındırır, bulunduğu bilgisayara özel birçok yapılandırma bilgisini
içerir. Durağandır, çalıştırılmak için değildir. /etc klasörü içerisinde bulunan bütün klasör ve
yapılandırma dosyalarını tek tek incelememiz mümkün değil. Ancak son kullanıcının işine
yarayacak bir ipucu verebiliriz.
Sürekli DNS problemleri yaşayanlar, /etc/resolv.conf dosyasını root (yetkili) olarak açıp yeni DNS
adresleri ekleyebilir.


/home;
home klasörü kullanıcıların kalesi olarak tabir edilir. home klasörü içerisinde her kullanıcının kendi
adında bir alt klasörü bulunur. (örneğin /home/ahmet , /home/ayşe gibi). Kullanıcıların
kişisel verileri, kullandığı programlarda yaptığı ayar değişiklikleri, yapılandırmaları tutulmaktadır.
Kullanıcının çeşitli programlarda yaptığı ayarları barındıran dosyalar gizli dosya oldukları için
görüntülenebilmeleri için gizli dosyaların görünür hale getirilmesi gereklidir. Kullanıcılar /home
dizinini elbette belge, müzik, resim vb. dosyaları düzenli, tertipli bir şekilde depolamak amacıyla da
kullanabilirler. /home dizini Windows'taki kullanıcı dizinlerine göre çok daha güvenli bir yapıya
sahiptir. Çünkü Linux’ta bir başkasının ev klasörüne müdahale edemezken, Windows'ta çok
zorlanmadan istediğinizi yapabilirsiniz.
/home dizini, aynı zamanda kullanıcı ayar dosyalarını barındırıyor olması nedeniyle bu dizinini,
Windows'taki ********s and Settings ya da Application klasörlerine benzetebiliriz.

/initrd;

initrd, "initial ramdisk" kısaltmasıdır. Anlamı, yaklaşık olarak "Başlangıç Bellek Diski" şeklinde
ifade edilebilir. Boot aşamasında ilk önce çekirdek (kernel) yüklenir. Bundan sonra bilgisayarınızın
belleğinde bir Bellek Diski oluşturulur. Oluşturulan Bellek Disk üzerinde / (root) yansısı açılır ve
kök dizin olarak monte edilir. /initrd bu işlemlerin yapılması ve Linux'un yüklenmesi için gereklidir.


/lib;
Çekirdek modülleri ve paylaşılan kütüphane dosyaları bu klasörde bulunur. Var olan çekirdek
modüllerini /lib/modules/[versiyon_numarasi] içerisinde bulabilirsiniz. Bahsedilen kütüphane
dosyalarıysa, sistemi başlatmak ve /bin ile /sbin içerisindeki komutları çalıştırmak için gereklidir.
Paylaşılan kütüphane dosyalarını, Windows'ta DLL ile eş tutabiliriz. Linux'ta kütüphane
dosyalarının sonu ".so" ile biter.


/lost+found;
İngilizce bir terim olan “Lost and Found” kayıp eşya bürosu demektir. /lost+found klasörü de tam
olarak bu işlevi görmektedir. Bazen sisteminizde herhangi bir problem olur; örneğin bilgisayarı
resetlerseniz, elektrik gider sonrasında bilgisayarı yeniden başlatırsınız. Bu gibi durumlarda
Linux'ta fsck (File System Check) komutu devreye sokulur. Bu komut Windows'taki Scandisk
programına benzetilebilir. Düzeltilemeyen bir sorun varsa, bağlantıları kopmuş kayıp dosyalar
ortaya çıkmışsa, bunlar /lost+found altına atılır. Kısaca özetlersek; kötü bir sistem kapanmasından
sonra, olması gereken bazı dosyaları bulamıyorsanız, kayıp eşya bürosuna bakmanızda yarar var.
Ancak bu klasöre girmek istediğinizde erişimi engelleyen bir ileti ile karşılaşırsınız, bu klasörün
içeriğine ulaşabilmek için dosya yöneticisini tam yetki ile açmanız gereklidir. Bunun için
sudo -H nautilus komutunu kullanmalısınız.

/media;
CD-ROM, disket sürücü, flash bellek gibi çıkarılabilir aygıtlar buraya bağlanır. En basit tanımla,
çıkarılabilir aygıtların, bağlantı noktası (mount point) olarak düşünebilirsiniz.

/mnt;
/media klasörünün aksine çıkarılabilir aygıtlar yerine, sistem açılışında otomatik olarak bağlanan
sabit disk bölümleri ve donanım aygıtlarının bağlanması içindir.
Bağlama (mount) işlemi, herhangi bir depolama ortamını, işletim sisteminin kullanmasını sağlar.
Nereye bağladığınız sizin tercihinizdir, değiştirmeniz mümkündür. Yani bir diski, /media veya /mnt
klasörüne ya da bir başka yere bağlamanız fark etmeyecektir. /media ve /mnt genel kabul görmüş
bağlantı noktalarıdır.

/opt;

İşletim sisteminden bağımsız, sistem için zorunlu olmayan 3. parti kullanıcı programları bu dizinde
bulunur. Örneğin; google earth programını indirip kurmak istediğinizde, 'default' olarak kurulacağı
nokta, /opt/google-earth adresidir.

Elbette üçüncü parti bir programı kurarken bu kurulum konumunu değiştirebilir, size uygun gelen
bir başka konuma yükleyebilirsiniz. Ancak daha önce de bahsettiğimiz gibi bazı şeyler genel kabule
dayanır.

/proc;
Süreçler, sistem belleği, bağlı aygıtlar, donanım yapılandırmalarıyla ilgili bilgileri içeren özel bir
“sanal” dosya sistemidir. Bildiğimiz anlamda fiziksel dosyalar bulundurmaz; sistem durumuna dair
bilgi içeren sanal dosyaları vardır. Bir bilgi alma merkezi olarak görülebilir, birçok uygulama
buradaki bilgilerden yararlanmaktadır. Örneğin "cat /proc/swaps" yazarak sisteminizdeki takas
dosyalarına dair bilgi alabilir ya da "cat /proc/cpuinfo" komutuyla işlemcinizin özelliklerini
görebilirsiniz.
/proc klasörü içersindeki dosyalar, sadece sistem durumunu görüntülemek için kullanılmaz,
gerektiğinde sistemde ayarlama yapmak için de kullanılabilir. Fakat son kullanıcılara hitap eden bir
konu değildir.

/root;
Linux/Unix sistemlerde, işletim sistemine her türlü müdahalede bulunabilme yetkisine sahip, "root"
adıyla tanımlanmış, süper yetkili özel bir kullanıcı hesabı vardır. /root dizini, bu özel kullanıcı
hesabının ev dizinidir. Root kullanıcısına "kök kullanıcı" da denilir.
Kullanıcıların, sistemi root hesabıyla açma ihtiyacı bulunmaması nedeniyle ve ayrıca sistemi root
olarak açmanın güvenlik zaafiyetine yol açabilecek olması nedeniyle pek çok Linux dağıtımında
root hesabıyla sisteme giriş yapılması, öntanımlı olarak engellemiştir. Linux dağıtımlarında, yetki
gerektiren bir işlemin yapılabilmesi için sistem root olarak açılmaz, bunun yerine geçici olarak root
hakları elde edilir. Bunun için, önce bir uçbirim komut satırı penceresi açılır. Sonra kullanmakta
olduğunuz Linux dağıtımına bağlı olarak su, su - , su root ya da sudo komutlarından biri
girilir ve ardından root kullanıcısının (ya da yönetici hesabın) parolası girilir.

/sbin;
Linux'ta normal kullanıcının kullanabileceği komutlarla, kök kullanıcının (root) kullanabileceği
komutlar ayrılmıştır. root tarafından kullanılacak bakım ve yönetim için kullanılan önemli
programlar, /sbin altında tutulur. Daha az öneme sahip yönetim komutlarıysa, /usr/sbin
klasöründedir. Eğer yerelde, yani kullandığınız makineye özgü kök kullanıcı (root) komutları
bulunuyorsa, bunları da /usr/local/sbin altında bulabilirsiniz.

/usr;
Unix ilk çıktığında, kullanıcılara ait ev klasörleri, /usr altında tutulurdu. Örneğin; "cagatay" isimli
bir kullanıcının ev klasörü /usr/cagatay şeklindeydi. Bu yöntem zamanla değişti ve /home klasörü
doğmuş oldu. /usr klasörü hâlâ çok önemli bir yapıdır ve işletim sisteminizde kullandığınız her
şeyle ilişkisi bulunur.
Kurduğunuz pek çok program /usr içine kurulur. Her ne kadar Linux'ta kurulan bir programa ait tüm
dosyalar usr dizini içine atılmıyor olsa da usr dizini Windows'taki Program Files klasörü ile benzer
görev görmektedir. /opt adresi işletim sistemi dışında gelen 3.parti programlar içindir. Fakat işletim
sistemi aracılığıyla ya da paket yönetim sistemlerini kullanarak yüklediğiniz her şey /usr altına
aktarılır. Aynı zamanda yüklediğiniz programların çalışmak için ihtiyaç duyacağı kütüphane
dosyaları, /usr/lib altındadır.
/usr, daha geniş bir tanımla; tüm kullanıcılarca paylaşılan verileri (programlar, komutlar,
kütüphaneler, dokümanlar gibi) içeren dizindir. /usr ile ilgili söylenebilecek bir başka nokta da
"local" klasörüdür. Linux, sunucu olarak birçok istemciye hizmet verebilecek bir işletim sistemidir.
Bir Linux sunucu (server) kurarsanız, ona bağlanan yüzlerce istemci (client) olabilir. Her istemci
bilgisayara, /usr altındaki programların ayrı ayrı yüklenmesi gerekmez; bir başka konumdan bu
komutları çalıştırabilirsiniz. Ancak /usr altında bulunan "local" klasörü sadece kullandığınız
makineye özeldir. Örneğin /usr/local/bin klasörü içinde bulunan bütün komutlar, direkt olarak
kullandığınız makineye yüklenmiştir. /usr/bin komutları ise geneldir ve bir ağ üstündeki bütün
makinelerden erişilebilir. "local" gördüğünüzde, bunun sadece sizin makinenize özel olduğunu
bilin.

/var;
Log dosyaları, e-posta ve yazıcı kuyrukları gibi değişken sistem bilgilerini barındırır. Sisteminize
dair tutulan log'ları buradan görebilir; güvenlik durumunu buradan kontrol edebilirsiniz.

/tmp;
Geçici dosyalar içindir. Birçok program, burayı geçici depolama alanı olarak kullanır. /tmp
klasörünün içeriği genellikle KB'lar mertebesinde kalır ve genellikle işletim sistemi yeniden
başlarken içindeki dosyalar silinir. Her ne kadar tmp klasörü geçici dosyalar için de olsa bu klasör
altında bulunan dosyaları, ne yaptığınızdan emin değilseniz, kesinlikle silmemelisiniz! Aksi
taktirde sismetinizde ya da bazı programlarda sorun çıkabilir. Örneğin açık bir soket dosyasını
sildiğinizde, onu kullanan programa ve kendinize sorun çıkartabilirsiniz.

TERMİNAL KOMUTLARINA GİRİŞ

~ → /home/username demektir
/ → root yani kök olarak bilinir. Sistemin en üst seviyesidir. İçide home dizini olmak üzere sistem
dizinleri ve dosyaları bulunur.

su →super user yani root olarak sisteme erişmemizi sağlar burada giriş yapmak için root parolanızı
girmeniz gerekir
sudo su → root olarak sisteme erişmemizi sağlar. Burada kullanıcı parolanızı girmeniz gerekir

cd gidilmekistenenyol→ cd komutundan sonra gidilmek istenen yol girilirise o yola girer

ls → bulunduğu dizini listeler
ls -l →bulunduğu dizini dosya indeksleri ile listeler
ls -al →bulunduğu dizindeki her türlü (gizli dosyalar vs.) dosyayı indekleri ile listeler

ctrl + shift + t → yeni terminal sekmesi açar
ctrl + shift + w → yeni terminal sekmesini kapatır

ctrl + shift + c → terminal üzerinde kopyalama işlemi yapar
ctrl + shift + v → terminal üzerinde yapıştırma işlemi yapar

ctrl + a → imceli satır başına getirir

mkdir dizinadı →bulunduğu yola girilen dizin adında yeni bir dizin oluşturur
rm -r dizinadı →bulunduğu yerde girilen dizini siler

touch dosyaadı → girilen dosya adında bir binary dosyası oluşturur (metin dosyası vs)
rm dosyaadı → girilen dosya adındaki binary dosyasını siler

. → bulunulan dizini temsil eder
.. → bulunulan dizinin bir üst dizini temsil eder



ps aux→ o anki çalışan prosesslerin durumunu gösterir(PID numarası ile birlikte)
ps aux | grep programadı → girilen program adına ait çalışmayı PID numarasıyla birlikte
gösterir

PROGRAM KİLL İŞLEMLERİ

killall programdı → girilen programı kapatır
kill -9 programınPIDnumarası → girilen PID numarasına sahip programı kapatır

KOPYALAMA

cp kopyalanacakdosyanınyolu kopyalanacağı yol→ kopyalacak dosyanın yolu belirtilen
dosyayı kopyalanacağı yol belirtilen yere kopyalar
cp kopyalanacakdizininyolu kopyalanacağı yol→ kopyalacak dizinin yolu belirtilen dizini
kopyalanacağı yol belirtilen yere kopyalar

DOSYA TAŞIMA

mv taşıncakdosyanınyolu taşınacağı yol → taşınacak dosyanın yolu belirtilen dosyayı taşınacağı
yol belirtilen yere taşır
mv -r taşıncakdizininyolu taşınacağı yol → taşınacak dizinin yolu belirtilen dizini taşınacağı yol
belirtilen yere taşır


dd if=/yazdırılacakdosya(iso vb) of=/dosyanınyazdırılacağıyerinyolu → yazdırılacak (iso
dosyası vb) dosyaları yolu belirtilen (usb vb)aygıtlara yazdırmaya yarar

sudo ls -l /dev/disk/by-id/*usb* → içinde usb geçen dosyaları listeler

top → çalışan prosessleri gösterir
top -d süre → girilen sürede güncenlenen prosessleri gösterir
top -u aranacakuygulama → girilen uygulamaya ait prosessleri gösterir
çalışan proseslerde görünen nice → çalışma önceliği sırasını belirler . Nice değerleri -20 ile +20
arasındadır. -20 ise en öncelikli programı belirtir.

top -P PIDnumarası → girilen PID numarasına ait uygulamanın prosesslerini gösterir
pgrep programadı→ girilen programın PID sini öğrenmemizi sağlar
preg -l programadı → girilen programı ismi ve PID si ile birlikte gösterir (aynı isimde çalışan
programları ayırt etmemizi sağlar)
pgrep -lu username → kullanıcıya ait uygulama isimlerini ve PID lerini gösterir

programadı → girilen programı çalıştırır, ctrl + c ile durdurur
programadı & → girilen programı arka planda çalıştırır
jobs → arkaplanda çalışan programaları gösterir
fg → arkaplanda çalışan uygulamaya geçiş yapmayı sağlar

wc dosyaadı → dosya içerindeki satır, kelime ve karakter bilgilerini sırasıyla gösterir

lspci → sistemin donanım bilgilerini gösterir

pwgen -sy sayi → girilen sayı kadar rastgele şifre oluşturur

xinput -l → gerçekten çıkarılabilir donanımları listeler

uptime → sisteme ait çalışma süresi bilgisi ve kullanıcı sayısını gösterir

nano metindosyaadı → girilen metin dosyasını terminalde açıp düzenlemeye yarar
nano .bash_history → kullanıcıya ait .bash_history metin dosyasını terminalde açar

cat .bash_history | grep ls → .bash_history metin dosyası içerisinde ls geçen kelimeleri gösterir
cat .bash_history | grep ls >> ls-ler → .bash_history metin dosyası içerisinde ls geçen kelimeleri
ls-ler adlı dosyaya yazdırır

( ARKADAŞLAR EMEK VAR TEŞEKKÜRÜ ÇOK GÖRMEYİN , KONU SABİTLENİRSE SEVİNİRİM , HERGÜN GÜNCELLEMEYE DEVAM EDECEĞİM.)
 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.