Cemre Acar
Temel Linux Komutları

Temel Linux Komutları

Linux kullanıcılarının ya da Linux dünyasına yeni adım atacak olanların derli toplu bir not defteri olması adına Temel Linux Komutları hakkındaki bu yazıyı yazmaya karar verdim. Bu yazıda Linux Komutları, Linux Dosya İşlemleri, Linux Hardlink ve Softlink, Sıkıştırılmış dosyalar ile çalışma, SSH ile uzak bağlantı, Linux İzinleri yani kısacası Temel Linux Kullanımı üzerine çeşitli bilgiler edinecek ve uygulayabileceksiniz.
Yeniler için konuşacak olursak, her yerde olduğu gibi burda da kendine has bir takım terimler, kelimeler, ifadeler yer almakta. İlk olarak elbette yabancılık çekeceksiniz ancak herkes ilk başladığında zorluk yaşamıştır bunu dert etmeyin.
Daha fazla bilgi edinmek ve Linux hakkında daha fazla bilgi edinmek isterseniz Linux Bash, Linux Script Temelleri ve Script Yazma ve Linux Grep, SedAwk komutlarının kullanımı yazılarıma da göz atabilirsiniz. Artık fazla uzatmadan komutlarımıza geçelim.

Linux Temel Dosya İşlemleri

Bulunduğunuz dizinin içindeki dosyaları listeler.

ls


Bulunduğunuz dizinin içindeki gizli dosyaları da listeler.

ls -a


Bulunduğunuz dizinin içindeki dosyaları detaylı bir şekilde listeler. ( Sahibi , İzinleri , Boyutu ...)

ls -l


Bu komut üstteki komut ile aynıdır. Ek olarak satır başlarında rakamsal olarak ifade edilen izinler gösterilir. (Örn: 777)

ls -li

Aşağıda çeşitli karakterler ile birlikte kullanılmış komutlar göreceksiniz. Bu karakterler Wildcards olarak geçiyor. Bu konuya extra değinmeyeceğim yalnızca çeşitli örnekler ile göstereceğim. Siz dilerseniz Google'da aratabilirsiniz.



Bulunduğunuz dizindeki .txt uzantılı dosyaları listeler.

ls *txt


Bulunduğunuz dizinde adı fark etmeksizin (*) uzantısı 'p' ile başlayan ve son 2 harfinin herhangi bir değer alabileceği tüm dosyaları listeler.

ls *.p??


Bulunduğunuz dizini gösterir.

pwd


Bulunduğunuz dizinin içerisinde yeni bir klasör oluşturur. 

mkdir dosyaismi


Hedef klasöre ya da dizine gider. Eğer klasör bulunduğunuz dizinin altında değil ise tam yol gereklidir.

cd dosyaismi


Bulunduğunuz dizinden çıkıp bir üst dizine gitmenizi sağlar.

cd ..


Hedef dosyayı kaldırır.

rm dosyaismi


Hedefteki boş dosyayı kaldırır.

rmdir dosyaismi


Hedefteki içi dolu dosyayı kaldırır.

rm -r dosyaismi


Dosyanın Satır , Kelime ve Karakter sayılarını gösterir.

wc


Bir dosya oluşturmak için kullanılır. Bu dosya herhangi bir uzantıda olabilir. (.txt , .conf , .ini ...)

touch dosyaismi


Dosya kopyalamak için kullanılır. İlk olarak kopyalanacak dosyanın konumu yazılır ardından kopyalanacak yerin konumu yazılır.

cp /home/ubuntu/dosyaismi.txt /home/ubuntu/yeniklasor/


Yeteri kadar ingilizce bilginiz var ise komutlar ile alakalı çok daha fazla bilgiye

man komutismi

şeklinde ulaşabilirsiniz.

Ek olarak herhangi bir dosyamızı düzenlemek için metin editörü kullanmak istersek ;

nano dosyaismi.txt


Hard Link ve Soft Link

Linux'taki bağlantılar aslında dosya ve dizinlerle ilişkilendirilen göstergelerdir. Hard Link dosyaya doğrudan başvurudur, aynı dosya sistemindeki dosyaları ve dizinleri bağlar. Soft Link ise dosyanın ismine göre başvurudur, yani dosyanın ismine göre bir dosyayı işaret eder.

Hard Link

Bir dosyaya Hard Link olarak bilinen bir çok farklı isime sahip dosya ile erişilebilir.
Orijinal dosya silindiğinde Hard Link ile bağlı dosya hala duruyor olur ve dosyaya erişilebilir.
Daha az bellek tüketir çünkü farklı dosyalar diskte aynı referansa bağlıdır.
Dosyada değişiklik yapıldığında bu değişiklikler orijinal dosyayı etkiler.
Hard Link oluşturmak için ln komutu kullanılır.

Elimizde cemre.txt dosyasının var olduğunu düşünelim.

Örneğin:

ln cemre.txt acar.txt

Soft Link

Bir dosyaya Soft Link olarak bilinen ve o dosyaya işaret eden farklı referanslar ile erişilebilir.
Orijinal dosya silindiğinde Soft Link ile bağlı dosya da silinir ve geçersiz kılınır.
Daha çok bellek tüketir.
Dosyadaki her hangi bir değişiklik orijinal dosyayı etkilemez.
Soft Link oluşturmak için ln -s komutu kullanılır.

Elimizde cemre.txt dosyasının var olduğunu düşünelim.

Örneğin:

ln -s cemre.txt acar.txt

Linux Sıkıştırılmış Dosyalar

bzip2 dosyalarını açar.

bunzip2 dosyaismi.bz2


gzipped arşivlerini açar.

gunzip dosyaismi.gz


zip dosyalarını açar.

unzip dosyaismi.zip


tar arşivini açar.

tar -xvf dosyaismi.tar


tar arşivini açar.

tar -xvzf dosyaismi.tar.gz


Linux SSH ile Uzak Sunucu

SSH temelde uzak bir sunucuya bağlanma işlevi sağlar. Öncelikli olarak 22 numaralı portun ön ayarlar kapsamında açık olduğunu varsayıyorum.

ssh root@ipadresi

Yukaridaki komutta uzaktaki sunucumuza "root" kullanıcı olarak bağlanma talebinde bulunduk. Ardından sunucumuz şifre isteyecektir , şifremizi girip bağlantımızı oluşturabiliriz.

Linux Çeşitli Sistem Bilgileri

Makineye bağlı kullanıcıları listeler.

who


Kullanıcı adınızı görüntüler.

whoami


Disk kullanımını gösterir.

df -h


Bilgisayar açık olduğundan beri geçen süreyi gösterir.

uptime


Geçmiş komutları listeler.

history

Linux Dosya İzinleri

Yukarıda Temel Dosya İşlemleri kısmında belirttiğim gibi ls -l komutu ile dosyaların detaylı bilgilerine erişebiliyorduk.
Aşağıda dosya üzerindeki erişim haklarına bir bakalım ;

-rwxr-xr-x    2  cemreacar  staff  576  13 Ocak 00.18

Listelenen dosya bilgilerinin en başında izin hakları yer alır. En baştaki "-" işareti bunun düz dosya olduğunu belirtir. "cemreacar" , dosyanın sahibi ve "staff" ise grubudur. Ardından gelen "576" dosyanın uzunluğu kalan tarih ise dosyanın son değiştirilme tarihidir.

İzin haklarına dönecek olursak ;
r - Okuma (Read)
w - Yazma (Write)
x - Çalıştırma (Execute)
anlamına gelir.

Daha iyi anlaşılması için örnek verelim ;

rwx r-x r-x

İzinler 3'erli şekilde gruplanmıştır. Sırasıyla Kullanıcı , Grup ve Diğerleri .

Kullanıcı : okuyabilir , yazabilir , çalıştırabilir.
Grup : okuyabilir , yazamaz , çalıştırabilir.
Diğer : okuyabilir , yazamaz , çalıştırabilir.

Yukarıda değindiğimiz "-" karakteri yerine "d" olsaydı , bir dizini inceliyor olacaktık.

Bir dosyanın iznini değiştirmek istersek ;
"-" iznin kaldırılacağını
"+" izin verileceğini
belirtir.

Dosyanın okuma iznini kaldırır.

chmod -r dosyaismi


Dosyaya yazma izni verir.

chmod +w dosyaismi


Sadece grubun , sadece kullanıcının veya sadece diğerlerinin izinlerini değiştirebilmek için her izin düzeyi için bir harf tanımlıdır. Kullanıcı için "u" grup için "g" ve diğerleri için "o" yazarak belirli bir düzey için erişim hakları değiştirilebilir.

Dosyanın sahibi çalıştırabilir.

chmod u+x dosyaismi


Diğerleri okuyabilir.

chmod o+r dosyaismi


Dosyanın grubu yazamaz.

chmod g-w dosyaismi


Ayrıca izinler farklı şekilde de ifade edilebilir. Aşağıdaki tabloda verilen sayılar ile dosyalarımızın izinlerini kolayca değiştirebiliriz.

Buradaki önemli husus sıraya dikkat etmektir. (Owner,Group,Others) Sayısal olarak dosyalarımızın izinlerini değiştirmek istediğimizde aşağıdaki gibi bir komut veririz.

chmod 644 test.txt

Bu satır yazıldığında ;
test.txt dosyasımızı Owner okuyabilir ve yazabilir , Group yalnızca okuyabilir ve Others yalnızca okuyabilir komutları verilmiş oldu.

Konuya başlarken belirttiğim gibi bu yazı Linux için temel bir giriş yazısıydı ve daha ileri seviye Linux komutları hakkında bilgi için Linux Bash, Linux Script Temelleri ve Script Yazma ve Grep, SedAwk komutlarının bulunduğu yazılarıma göz atabilirsiniz.
Bu yazıda unuttuğum ya da eksik gördüğünüz bir konuyu yorum olarak yazarsanız , yazıyı güncelleyerek herkese faydalı olmaya çalışırım. Bol şans.

Heyy ! Blog'a abone olup yazılarımdan ilk sen haberdar olmak ister misin ?

ABONE OL!

Yorumlar

Yorum Ekle

Yorumunuz onaylandıktan sonra yayınlanacaktır.