Archive

Archive for the ‘Linux’ Category

Slurm – Linux için bant genişliği takip aracı

December 19th, 2013 No comments

Slurm temel olarak ağ trafiğini görüntülemek için kullanılan bir araçtır. Ağ kullanımını görselleştirerek kullanışlı bir çıktı üretir.

Debian tabanlı sistemlerde aşağıdaki gibi kurulum yapabihlirsiniz.

apt-get install slurm

Kurulumu tamamladıktan sonra komut satırından ağ trafiğinizi takip edebilirsiniz. En basit şekliyle aşağıdaki formatta komutu kullanabilirsiniz.

slurm -i [Ağ Arayüzü]

-i parametresi hangi ağ arayüzünün kullanılacanı belirtir.

slurm -i wlan0
slurm -i eth1

Slurm

Klavye kısa yolları:
Slurm etkileşim için birçok farklı tuşu destekler:

  • s split moduna geçiş yapar
  • c klasik moda geçiş yapar
  • l büyük grafik moduna geçer
  • L TX/RX ledini aktif eder
  • m kasik, büyük ve split modları arasında geçiş yapar
  • z sayaçları 0’lar
  • r ekranı yeniden çizer
  • q çıkış yapar

Aynı zamanda bu kısayol tuşlarını parametre olarak da verebilirsiniz.

slurm -i eth1 -L

Kaynak: http://lintut.com/slurm-command-line-bandwidth-monitoring-tool-for-linux/

Categories: Linux Tags: , , ,

Screen ile Irssi Kullanım Kılavuzu

November 15th, 2013 2 comments

irssi[1] komut satırından çalışan ve bir çok geliştirici için popüler olan bir IRC istemcisidir. Irssi GNU Screen[2] programı ile birlikte kullanılarak çıkış yapmadan bir veya birden fazla kabuk yaratabilirsiniz. Sürekli biligisayar değiltirip fakat irssi’a kaldığınız yerden devam etmek istediğinizde çok kullanılışılır.

Avantajları:

  • Kişiler size mesaj bırakabilir.
  • Siz dışardayken yapılan görüşmeleri sonradan yakalayabilirsiniz (genellikle “scroolback” olarak adlandırılır).

Yönergeler:

  • Bir adet linux VPS edinin ya da sık sık yeniden başlatılmayacak, ihtiyacınız olan yerden bağlanabileceğiniz *nix makina üzerinde ssh hesabı edinin.
  • Bu hesaba bağlanmak için ssh kullanın. Windowsta PuTTY[3] gibi bir istemci kullanın. Eğer Linux yada Unix temelli bir işletim sistemi kullanıyorsanız zaten ssh kuruludur.
  • Ssh hesabına bağlandığınızda, irssi’yı screen oturumu içinde başlatın. Aşağıdaki şekilde yapabilirsiniz.
    $ screen
    screen will flash and go back to the default prompt.  You are now inside screen
    $ irssi
    
  • Irc uygulaması IRSSI’yı başlatmak yeni komut satırına “irssi” yazın. Bir not olarak, eğer bir screen oturumundan çıkmak istiyorsanız komut satırından “exit” yazmanız sizin screen oturumunu açtığınız ilk noktaya dönmenizi sağlayacaktır.
  • IRSSI komut satırı içinde bir sunucuya bağlanmak:
    /connect irc.mozilla.org

    yada

    /connect irc.freenode.net
  • Bir kez bağlandıktan sonra
    /join #hadron
  • /connect ve /join komutlarını tekrarlayarak birden fazla sunucuya katılabilirsiniz.
  • Screen yazılımı sizin irssi yazılımından çıkmanıza ve tekrar bağlanmanıza izin verir.
    • IRSSI’dan çıkmadan komut satırına geri dönmek istersen önce “ctrl+a” sonrada “ctrl+d” komninasyonuna bas
    • Eğer IRSSI’a tekrar bağlanmak istiyorsanız “screen -raAd” komutunu çalıştırın.
    • Eğer çalışan screen süreçlerini görmek istiyorsanız “screen -ls” komutunu kullanabilirsiniz.
    • Eğer screen sürecine bir isim vermek istiyorsanız “screen -S irc” komutunu kullanabilirsiniz. Bu şekilde screen komutuna irc adını vermiş oluruz. Buna tekrar bağlanmak için “screen -r irc” komutunu kullanabilirsiniz.

Sıkça Sorulan Sorular:

  1. Ön tanımlı takma ismi(nick) nasıl değiştirebiliriz?
    • Irssi içinde, “/set nick takmaisim” ya da “/nick“, iki yöntemde çalışacaktır.
  2. Açık kanallarımı, özel mesajlarımı ve sunucu pencerelerini görebilmek için nasıl pencereler arasında geçiş yapabilirim?
    • Alt tuşuyla birlikte o pencerenin numarasını kullanarak geçiş yapabilirsiniz. Mesala Alt+1 sucunu penceresine gidecekti.
    • Eğer bu çalışmıyorsa, Alt tuşu yerine Esc kullanın. Bunun her zaman çalışması gerek.>/li>
  3. Mevcut kanaldaki tüm kullanıcıları nasıl listelerim?
    • /names yada /who yazabilirsiniz.
  4. Irssi ekranında ‘Act: 3’ ne anlama geliyor?
    • Irssi ekranınızda, [2:#hadron] [Act:3,4] göreceksiniz. Bu numaralar ne anlama geliyor? 2’nin anlamı bulunduğunuz sohbet ekranı. 3 ve 4 diğer açık sohbetler.
    • Eğer 3 mavi renkteyse, bunun anlamı birilerin durumu değişti (giriş – çıkış yapıldı).
    • Eğer 3 beyaz ise, o sohbette muhabbet devam ediyor.
    • Eğer 3 pembe ise, özellikle sizin ilginizi çekecek bir nedenden dolayı size ekstra bir mesaj yollandı.
    • Eğer bir sohbetten diğerine geçiş yapmak istiyorsanız, alt+screen# kombinastonunu kullanın(screen# => geçmek istediğiniz ekranın numarası).
  5. Açık bir pencereyi nasıl kapatabilirim?
    • Kapatmak istediğiniz pencereye geçin, ve /window close (yada /wc) yazıp enter’a basın.
  6. İkinci seferde hesabıma nasıl giriş yapabilirim.
    • “screen -r” komutunu terminale yazarak.
  7. Birden fazla screen oturumum var fakat şuan kullandığım screen oturumunu açmak istiyorun. Nasıl yapabilirim?
    • Komut satırına “screen -x” yazın.
  8. Ekranı aşağı yukarı nasıl kaydırabilirim.
    • Page Up & Page Down
  9. Birisiyle irc üzerinde nasıl özel sohbet yapabilirim?
    • Birisiyle özel sohber başlatmak için konuşacağınız kişinin ismini bilmelisiniz. “/names” komutunu yazarak odadaki kişileri listeleyip konuşacağınız kişiyi belirleyebilirsiniz ve “/query takmaad” ya da “/q takmaad” yazarak özel sohbeti başlatabilirsiniz.
    • Özel sohbeti kapatmak için “/query” ya da “/q” yazın.
  10. Irssi’ı bir bilgisayardan kapatıp diğerinden ulaşmak istiyorum, bu sırada bağlantılarım açık kalsın ve mesajları almaya devam edeyim istiyorum. Nasıl yapabilirim?
    • Ctrl+A tuşlarına bastıktan sonra D tuşuna basmalısınız. (Bu sizi screen oturumundan çıkartacaktır)
    • O bilgisayardan ssh bağlantısını kapatın ve diğer bilgisayara geçin. Irssi’ın kurulu olduğu bilgisayara ssh ile bağlanıp “screen -arAd” komutunu verin.
    • Duyuru: Birdaha bağlanmak zorunda değilsiniz. Irssi’ın çalıştığı bilgisayar kapatılmadığı sürece sunucularla bağlantınız kopmayacaktır.

[1]: http://www.irssi.org/
[2]: http://en.wikipedia.org/wiki/GNU_Screen
[3]: http://cdot.senecac.on.ca/software/putty/

Bu yazı http://zenit.senecac.on.ca/wiki/index.php/Irssi_Tutorial adresindeki dökümanın bir nevi çevirisidir. Bir kısmını kendi kafama göre düzenledim. Bir kısmı pek anlaşılır değil, fazla zaman kaybetmek istemedim. Yorumlarla katkı verirseniz daha anlaşılır bir döküman haline getirebilirim.

Categories: Linux Tags: , , , ,

Konsoldan Rastgele String Oluşturma

August 13th, 2013 No comments

Konsoldan rastgele stringler oluşturmak için bir çok yöntem var, bunların bir çoğu random ve urandom aygıtlarını kullanıyor. Benim şimdi anlatacağım yöntemle urandom aygıtını kullanıyoruz.

< /dev/urandom tr -dc A-Za-z0-9

Burada tr komutuna standart girdi olarak /dev/urandom aygıtını gösteriyoruz. urandom rastgele değerler üretir, bu üretilen değerlerin bazıları yazdırılabilir bazıları da yazdırılamayan karakterlere denk gelir. Biz tr komutu ile bu rastgele üretilen değerlerden alfanümerik olanları ayıklıyoruz. Tabi bu komut sonsuza kadar çıktı üretir, sadece istediğimiz kadarını almak için head komutunu kullanabiliriz.

< /dev/urandom tr -dc A-Za-z0-9 | head -c32

Bu komutla çıktının ilk 32 karakterini alıyoruz.

tr kullanarak yapacaklarımızın limiti hayal gücümüz kadar. Mesela sadece sol elimizi kullanarak girebileceğiniz bir parola üretmek istiyoruz. Aşağıdaki komut bunu üretecektir 🙂

< /dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8

[1] adresinde konsoldan rastgele string üretmek için 10 farklı yol gösterilmiş. Ufuk genişletmek için faydalı bir yazı bence.

[1] http://www.howtogeek.com/howto/30184/10-ways-to-generate-a-random-password-from-the-command-line/

Categories: Linux Tags: , , ,

Linux’ta disk doluluk oranının yanlış hesaplanması

July 22nd, 2013 No comments

diskBir sunucuda garip bir problemle karşılaştım, diskte yer kalmadığını söylüyordu fakat ne yaparsam yapayım diski dolduran dosyaları bulamıyordum. Biraz araştırınca sorunu ve çözümünü buldum. Senaryo şöyle idi:

  1. Dosya bir program tarafından okumak için açılır.
  2. Başka bir program bu dosyayı siler.

Bu senaryo gerçekleştiğinde, her ne kadar dosya silinmiş olsa da, hala diskte yer tutmaya devam edecektir. “du” komutuyla baktığınızda yer tutmayacaktır, ancak df ile kontrol ettiğimizde disk dolu olarak görünecektir.

Basit bir demo yapacağım:

Öncelikle 1GB boyutunda bir dosya oluşturacağım.

mkdir /tmp/tmp_directory/
cd /tmp/tmp_directory/
dd if=/dev/zero of=1gb_file.dat bs=1M count=1024

Oluşturulan bu dosyayı python ile açacağım.

python
Python 2.7.4 (default, Jul  5 2013, 08:21:57)
[GCC 4.7.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> f = open("1gb_file.dat", "rwb")
>>>

Şimdi disk bilgilerine bakıyorum

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda5       414G   11G  382G   3% /

Görüldüğü gibi diskin 11GB’lık kısmı kullanılıyor.

du -sh tmp_directory/
1.1G    tmp_directory/

tmp_directory dizini diskte 1.1GB yer tutuyor.

Şimdi dosyayı siliyorum.

rm tmp_directory/1gb_file.dat

Disk bilgilerini tekrar kontrol edelim:

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda5       414G   11G  382G   3% /

du -sh tmp_directory/
4.0K    tmp_directory/

Görüldüğü gibi, df çıktısı hala diski 11GB dolu görüyor, du ile baktığımızda ilgili dizinin boyu sadece 4KB, buda boş bir dizinin diskte tuttuğu yer.

Açtığımız dosyayı geri kapatalım.

>>> f.close()

Tekrar kontrollerimizi yapalım:

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda5       414G   10G  383G   3% /

Dosya kapatıldıktan sonra 1.1GB’lık alan tekrar boş olarak hesaplandı.

Bu dosyayı biz oluşturduğumuz için hangi dosya üzerinde işlem yapacağımızı biliyorduk, peki bu durumda olan dosyalarını nasıl bulabiliriz?

lsof komutu yardımıyla bunu yapabiliriz.

sudo lsof | grep deleted
python    21882            askin    3r      REG                8,5         0    7211180 /tmp/tmp_directory/1gb_file.dat (deleted)

Bu şekilde hangi açık dosyaların silinmiş olduğunu görebiliriz. Bu çıktıya göre, askin kullanıcısı 21882 process id’si ile python programıyla /tmp/tmp_directory/1gb_file.dat dosyasını açmış, fakat bu dosya hala açıkken silinmiş. Bu dosyayı kapatmak için biraz daha bilgiye ihtiyacımız var.

sudo ls -l /proc/21882/fd/*
lrwx------ 1 askin askin 64 Jul 22 14:58 /proc/21882/fd/0 -> /dev/pts/11
lrwx------ 1 askin askin 64 Jul 22 14:58 /proc/21882/fd/1 -> /dev/pts/11
lrwx------ 1 askin askin 64 Jul 22 14:58 /proc/21882/fd/2 -> /dev/pts/11
lr-x------ 1 askin askin 64 Jul 22 14:58 /proc/21882/fd/3 -> /tmp/tmp_directory/1gb_file.dat (deleted)

Burdan aldığımız bilgiyle dosyamızı kapatabiliriz.

sudo cat /dev/null > /proc/21882/fd/3
Categories: Gezegen, Linux Tags: , , , ,