1.                                                

6-) Sıfırdan Temel Linux Eğitimi [Bilgi Almak - Bilgi Alma Komutları]

'Dökümanlar' forumunda Al-Farabi tarafından 8 Temmuz 2018 tarihinde açılan konu

  1. Al-Farabi

    Al-Farabi Albay

    Katılım:
    16 Ocak 2016
    Mesaj:
    1,349
    Beğeniler:
    128
    Ödül Puanları:
    63

    Bilgi Almak
    Bilgi alma komutları sistemimizde bulunan herhangi bir şey hakkında(programlar,dosyalar vs..) bilgi almamızı sağlayan komutlara verilen genel isimdir. Bu komutlara gerekli durumlarda çok sık başvururuz. Şimdi bilgi alma komutlarının neler olduğuna ve kullanım şekillerine bakalım.

    uname
    Tek başına çekirdek adını verse de aldığı parametreler ile farklı bilgiler de sunabilir. Kısaca bilmemiz gereken; bu komut genel olarak sistemde kullanılan çekirdek hakkında bilgiler verir. Hangi parametrenin ne iş yaptığını man uname komutu ile öğrenebileceğinizi biliyorsunuz. Bizde kullanım şekillerini man kılavuz sayfası üzerinden açıklayalım.

    [​IMG]

    Eğer parametresiz kullanıldıysa -s parametresi gibi yalnızca çekirdek ismini gösterir. Yani uname komutu ile uname -skomutu aynıdır. Parametreler ve ifade ettikleri;

    -a, --all
    Bu parametre ile bütün bilgileri aşağıdaki seçenek sırasıyla gösterilir; -p ve -i bilinmiyorsa atlanır.

    [​IMG]

    -s, --
    çekirdek ismini gösterir.

    [​IMG]

    -n, --nodename
    ağ düğümü konak ismini diğer bir değişle hostname(host adını) gösterir.

    [​IMG]

    -r, --kernel-release
    çekirdeğin derleniş sürümünü gösterir.

    [​IMG]

    -v, --kernel-version
    çekirdeğin sürümünü gösterir.

    [​IMG]

    -m, --machine
    makine donanım ismini gösterir.

    [​IMG]

    -p, --processor
    işlemci türünü veya "unknown" gösterir.

    [​IMG]

    -i, --hardware-platform
    donanım platformunu veya "unknown" gösterir.

    [​IMG]

    -o, --operating-system
    işletim sistemini gösterir.

    [​IMG]

    --help
    Bu yardım iletisini gösterir ve çıkar.

    --version
    Sürüm bilgilerini gösterir ve çıkar.

    hostname
    Bilgisayarımızın adını diğer bir deyişle bilgisayarımızın ağ üzerindeki adını verir. Eğer isterseniz bu adı değiştirebilirsiniz. Örnek veriyorum; komut satırına hostname burak yazarsanız hostname yani bilgisayarınızın adı burak olarak değişmiş olacaktır.

    [​IMG]

    Ancak bu ayar kalıcı değildir. Oturumu kapatıp tekrar açtığınızda değiştirmiş olduğunuz adın tekrar eski haline döndüğünü görebilirsiniz. Kalıcı olmasını ayarlardan kolaylıkla sağlayabiliriz. Sürümden sürüme değişiklik göstersede sırasıyla; ayarlar>sistem>ayrıntılar>genel aygıt adı: kutusuna istediğiniz ismi yazabilirsiniz. Eğer dediğim yoldan ulaşamadıysanız ayarları biraz kurcalayarak bulabilirsiniz.

    [​IMG]

    Ayrıca tamamen komut satırından da kalıcı bir hostname değişikliği yapmak mümkün. Bunun için /etc/hostname konumunda yer alan hostname dosyasını açmamız gerek. Dosyamızı açmak için konsola nano -w /etc/hostname komutunu veriyoruz. Komutumuzun ardından açılan dosyamızda ismimizin yerine istediğimiz ismi yazıyoruz. Ve Ctrl + X tuş kombinasyonu ile dosyamızdaki değişiklikleri kaydederek çıkıyoruz.

    [​IMG]

    Değişikliğin geçerli olması için oturumun kapatılıp tekrar açılması gerek daha sonra hostname yani bilgisayarınızın ismi değişmiş olacaktır.
     
    MrX bunu beğendi.
  2. Al-Farabi

    Al-Farabi Albay

    Katılım:
    16 Ocak 2016
    Mesaj:
    1,349
    Beğeniler:
    128
    Ödül Puanları:
    63
    lsb_release
    Bu komut kullandığımız dağıtım hakkında farklı bilgiler sunan parametrelere sahiptir. Detaylı bilgi için man kılavuz sayfasını kontrol edebilirsiniz. Ben örnek olası açısından lsb_release -a komutunun çıktısını veriyorum.

    [​IMG]

    whoami
    Sinemayı takip eden arkadaşların aklına ilk ne geldi biliyorum :)

    Bu komut kimlik sorgu işlevi görüyor. Komut satırımıza komutumuzu vererek sonucuna bakalım.

    [​IMG]

    Komut çıktısı bize mevcut kullanıcının root kimliği ile çalıştığını göstermiş oldu.

    Yine whoami komutuna benzer ancak çok ufak farkların olduğu birkaç komutu daha peş peşe komut satırına girerek çıkan sonuçlar üzerinden anlatıma devam edelim.

    [​IMG]

    Sıra sıra bakalım:

    whoami: mecvut kullanıcının hangi kimlikle çalıştığını gösteriyor.

    who: sistemde hangi kullanıcının çalıştığını gösteriyor.

    w: hangi kullanıcı hangi uygulamayı çalıştırıyor bunun bilgisini gösteriyor.

    Bunun dışında bu komutlar da parametre alabiliyorlar. Hangi parametreleri aldıklarını nasıl öğrenebileceğinizi zaten biliyorsunuz.

    uptime
    uptime komutu sistemimizin ne kadar zamandır açık olduğu bilgisini verir.

    [​IMG]

    date
    İsminden de anlaşılacağı gibi bu komut bize sistemin o anki tarih ve saat bilgisini veriyor.

    [​IMG]

    cal
    Komutumuz Türkçe olarak takvim anlamına gelen İnglizce "Calendar" ifadesinin kısaltmasıdır. Komutumuz tek başına kullanıldığında bize konsol ekranı üzerinden bulunduğumuz tarihin takvim bilgisini verir.

    [​IMG]

    Ancak daha önceki veya sonraki tarihlerde yer alan takvim bilgilerine komutumuzu cal ay yıl şeklinde kullanarak ulaşabiliyoruz.

    Örnek üzerinden açıklayalım.

    Eğer 2002 yılının Ocak ayına gitmek istiyorsam komutumu cal 1 2002 şeklinde kullanırım.

    [​IMG]

    Eğer ileri bir tarihe yani 3003 yılının Haziran ayına gitmek istersem de komutumu cal 6 3003 şeklinde kullanırım.

    [​IMG]

    Gördüğünüz gibi ileri geri herhangi bir tarih hakkında takvim bilgisi almak istesek cal komutunu kullanabiliyoruz.

    which
    Herhangi bir komutun tam yol bilgisini öğrenmek için kullanılır.

    [​IMG]

    whereis
    Bu komutunda özel parametreleri vardır man sayfasından kontrol edin lütfen. Bunun dışında parametresiz hali aproposkomutuna benzer şekilde bir çıktı verir. Ancak apropos komutundan farklı olarak ilgili komutun man sayfası konumunun tam dizin adresini belirtir.

    [​IMG]

    Ayrıca diğer parametrelerini de kesinlikle man sayfasından inceleyin.
     
    MrX bunu beğendi.
  3. Al-Farabi

    Al-Farabi Albay

    Katılım:
    16 Ocak 2016
    Mesaj:
    1,349
    Beğeniler:
    128
    Ödül Puanları:
    63
    locate
    Bu komut ile aradığımız bir dosyanın nerede olduğunu öğrenebiliriz. Komutun çıktısı bize dosyanın bulunduğu dizin veya dizinleri veriyor. Örneğin daha önce PATH yoluna eklediğim komut.sh dosyasını locate komutu ile aratıyorum. Sonuç aşağıdaki şekilde:

    [​IMG]

    Bu komutun ne kadar kıymetli olduğunu işiniz düştükçe ve kullandıkça anlayacaksınız. Genelde bir dosyayı arama çubuğu yardımı ile aramak sonuç vermez ve bu arama işlemi oldukça hantal çalışır. Ancak örneğin ben dosya konumunu bilmediğim bir dosyaya ulaşmak istiyorum. İşte burada kahramanız locate komutu çıkageliyor ve bize saniyeler içerisinde sonucu veriyor. Komutu denemek amacıyla kali linux içerisinde yer alan bir araç olan armitage aracını aratıyorum. Bunun için komut satırına locate armitage yazmalıyım.

    [​IMG]

    Çıktıda da görüldüğü gibi aradığımız ifadeyi içerin tüm dosyaların nerede olduğunu bir çırpıda buluverdik. Sanırım bu komut sayesinde yavaş yavaş da olsa komut satırının gücünü fark etmeye başlıyoruz.

    dmidecode
    Eğer daha önce de Linux deneyimi yaşadıysanız ve sorunlar ile karşılaştıysanız forumlarda sorduğunuzda muhtemelen insanlar sizden bu komutun çıktıları istemiş olabilirler. Bu komutun işlevi sistemin donanım ve Bios bilgilerini göstermektir. Bu komut sayesinde çok fazla bilgiye ulaşabiliriz. Ayrıca bu komutumuz da parametre alarak çalışmaktadır.

    Çok fazla bilgiye ulaşabiliyoruz dedik, bu bilgilere DMI(Desktop Management Interface) yani Masaüstü Yönetim Arayüzü tabloları ile ulaşıyoruz. Ve bu tabloların belirli bir düzeni var. Bu sırayı ve hangi bilgileri alabileceğinizi direk olarak görmek isterseniz komut satırına dmidecode yazın. Sonuçlar kategorize şekilde karşınıza sunulacaktır.

    Bahsi geçen tablo sıralı şekilde ve Numara-Türkçe karşılığı olacak şekilde aşağıdaki gibidir.

    Numara Açıklama
    0 Bios
    1 Sistem
    2 Baz kurulu
    3 Şasi
    4 İşlemci
    5 Bellek denetleyicisi
    6 Bellek modülü
    7 Önbellek
    8 Port bağlantısı
    9 Sistem yuvaları
    10 On Board Cihazları
    11 OEM Dizeleri
    12 Sistem Yapılandırma Seçenekleri
    13 BIOS Dili
    14 Grup Dernekler
    15 Sistem Event Log
    16 Fiziksel Bellek Array
    17 Bellek Cihazı
    18 32-bit bellek hatası
    19 Bellek Dizisi Haritalı Adres
    20 Bellek Cihazo Haritalı Adres
    21 Dahili İşaret Aygıtı
    22 Taşınabilir Pil
    23 Sistem Sıfırlama
    24 Dananım Güvenlik
    25 Sistem Güç Denetimleri
    26 Gerilim Probu
    27 Soğutma Cihazı
    28 Sıcaklık Probu
    29 Elektrik Akımı Probu
    30 Uzaktan Erişim
    31 Boot Bütünlüğü Hizmetleri
    32 Sistem Önyükleme
    33 64-bit Bellek Hatası
    34 Yönetim Cihazı
    35 Yönetimi Cihaz Bileşeni
    36 Yönetimi Cihaz Eşik Verileri
    37 Bellek Kanal
    38 IPMI Cihazı
    39 Güç Kaynağı
    Başta belirttiğim gibi dmidecode kendi içinde parametre alan bir komut olduğu için istediğimiz spesifik bilgiye doğrudan da ulaşmamız mümkün. Detaylı bilgi için man kılavuz sayfasına bakın lütfen. Ancak küçük bir örnek vermem gerekirse bios hakkında bilgi edinmek istediğimizde dmidecode -t bios şeklinde komut satırına girmemiz yeterli.

    [​IMG]

    Burada ayrıca dmidecode -t bios yerine sıralamada bulunan numarasını yani dmidecode -t 0 yazarak da aynı işlemi gerçekleştirebilirdik.

    [​IMG]
     
    MrX bunu beğendi.
  4. Al-Farabi

    Al-Farabi Albay

    Katılım:
    16 Ocak 2016
    Mesaj:
    1,349
    Beğeniler:
    128
    Ödül Puanları:
    63
    fdisk-l
    Başlıkta da yer aldığı gibi bu bölümde fdisk komutunun yalnızca l parametresinin işlevini göreceğiz. Bu komutu burada vermemin sebebi sistem hakkında bilgi alırken diskin de sistem dahilinde olmasıdır. Zaten ileride tekrar ele alacağımızdan şimdilik bu kadarı da yeterli olacaktır. Bu komutu diskler üzerinde işlem gerçekleştirirken kullanıyoruz. Eğer komut satırımıza fdisk -l şeklinde komut verirsek karşımıza sistemimizdeki disk bölümleri gelir.

    [​IMG]

    df
    Bu komut ile disk kullanımı hakkında ayrıntılı bilgiye ulaşabiliriz.

    [​IMG]

    Bu komutumuz da parametre alabiliyor. Dileyen arkadaşlar konsolda man df şeklinde komut girerek gerekli bilgilere ulaşabilirler.

    du
    Bir dizinin içerdiği tüm dosyalar ile birlikte diskte kapladığı toplam alanı verir. Ayrıca boyutla ilgili düzgün bir çıktı almak istersek h parametresini de kullanabiliriz.

    [​IMG]

    free
    Bu komut ile kullanılan bellek miktarını KB cinsinden öğrenebiliriz. Ancak çıktımızın MB cinsinden olmasını istersek -mparametresini free komutumuza ekleyerek kullanmamız yeterli olacaktır.

    [​IMG]

    modinfo
    Bu komut sayesinde Linux kernel modüllerinin bilgisi alınabilir. Bu modülleri ekran bastırmak isterseniz komut satırına lsmodyazarak modülleri listeleyebilirsiniz.

    [​IMG]

    Örneğin modüller içinden battery modülü hakkında bilgi almak istersek komut satırına modinfo battery şeklinde yazmamız yeterli olacaktır.

    [​IMG]
     
    MrX bunu beğendi.
  5. Al-Farabi

    Al-Farabi Albay

    Katılım:
    16 Ocak 2016
    Mesaj:
    1,349
    Beğeniler:
    128
    Ödül Puanları:
    63
    stat
    Bu komut dosya veya dizin hakkındaki bilgileri almamıza olanak sağlar. Kullanımı stat dizin şeklindedir. Örneğin root dizinine bakalım. Bunun için komut satırımıza stat /root komutunu veriyoruz.

    [​IMG]

    vmstat
    Bu komut sayesinde sistemimizin o anlık genel durumunu görebiliriz. Ancak komutu verdikten sonra sistem durumu listelenip sonlanacaktır. Eğer sistemin durumunu bir süre izlemek istersek vmstat gecikme_hızı yenilenme_sayısı şeklinde komut vermeliyiz. Ben her 2 saniyede bir yenilenmesini ve bunu 3 defa yapmasını istiyorum. Bunun için komut satırına vmstat 2 3komutunu veriyorum.

    [​IMG]

    history
    Bu kısıma gelene kadar konsola bir çok komut yazdık. Peki o yazılan komutların daha sonra kullanılmak üzere saklandığını biliyor muydunuz ?

    Evet girilen her komut .bash_history dosyasında tutuluyor. Biz bu dosyanın içeriğini yani daha önceki yazdığımız kodları görmek istersek komut satırına history yazmalıyız. Çıktı çok uzun olacağından çıktının tamamını aşağıda vermedim.

    [​IMG]

    Hazır liste uzun demişken eğer bu listenin limitini öğrenmek istersek komut satırına echo $HISTSIZE yazarak bu değeri tutan ortam değişkeninin ne kadar komutu history dosyasında tutulabileceğini görebiliriz.

    [​IMG]

    Bu çıktı bize komutların tutulduğu dosyada en son 1000 komuta kadar kayıt yapıldığını belirtiyor. Eğer tutulan komutların 1000 'den daha fazla olmasını isterseniz .bashrc dosyasında HISTSIZE=1000 yazan değeri istediğiniz doğrultuda düzenleyebilirsiniz.

    Komutun kullanımına geçmeden önce bu komutu sadece basit ve kısa komutların tekrar kullanılması olarak değerlendirmeyin. Örneğin sürekli kullandığınız çok uzun ve karmaşık bir komut düşünün. Bu komutun her defasında yazılması eziyet, bir yere kopyalanıp oradan tekrar tekrar kopyala-yapıştır şeklinde kullanılması ise hantallık olacaktır.

    Komutun kullanımına gelecek olursak örnek üzerinden açıklayalım. Benim kayıt dosyamın bir kısmı aşağıdaki şekilde, ben burada yer alan 600. komutu yani vmstat komutunu kullanmak istiyorum. Bunun için komut satırına !600 yazmam yeterli olacaktır. Komutun kullanımı !komut_numarası şeklinde. Örnek için çıktıyı inceleyebilirsiniz.

    [​IMG]

    Daha önceden kullandığımız bir komutu aynı şekilde tekrar kullanmak için ise komut satırına !komut şeklinde komut girmeliyiz. Örnek vermek gerekirse daha önceki kısımlarda stat komutu ile root dizini hakkında bilgi edinmiştik. Ve bu bilgiye ulaşmak için stat /root komutunu kullanmıştık. Ben şimdi tekrar aynı komuta ulaşmak için komut satırına !statyazıyorum ve çıktısı tıpkı stat /root yazdığımda olduğu gibi oluyor. Yani bu sayede komutun geri kalanını uzun uzun yazmak gibi bir dert kalmıyor.


    Eğer son kullandığımız komutu tekrar kullanmak istersek komut satırına !! yazmamız yeterli olacaktır.

    [​IMG]

    Bunlar dışında da çok farklı kullanım şekilleri de mevcut. Bu bilgilere man komutu yardımı ile nasıl ulaşacağınızı biliyorsunuz.

    Ayrıca son yazılan komutlara ulaşmak için klavyede yer alan yön tuşlarından ↑(yukarı) ve ↓(aşağı) tuşlarını kullanarak önceki ve sonraki komutlarınıza ulaşabilirsiniz. Genellikle yön tuşlarını kullanmak bize anlık işlemlerimizde hız katmaktadır. Sizler de bu pratiklikleri mutlaka yeri geldikçe sıklıkla kullanacaksınız.

    [​IMG]


    Dokümantasyon Kaynağı
    [​IMG]
    Her türlü soru, öneri veya görüşleriniz için bana bu adresten geri bildirimde bulunabilirsiniz.

    Videolu eğitimi incelemek için buraya tıklayın.
     
    MrX bunu beğendi.

Bu Sayfayı Paylaş

Share