'*nix' Kategori'sine ait arşiv.


Monit ile Sistem Monitoring – Kurulum ve Yapılandırma

Normalde ağdaki sunucu ve cihazları monitör etmek için nagios kullanıyorum. Hatta Nagios kurulumu ve yapılandırması ile ilgili buradan erişebileceğiniz bir de döküman yayınlamıştım. Şimdi ise isimli bir başka kullanışlı sistem monitoring yazılımından bahsetmek istiyorum. Zira kendisi de epey yetenekli. "Monit System Monitoring"

Özellikle bir ya da bir kaç sunucudan oluşan, nispeten küçük ağların monitor edilmesi için iyi bir tercih olabilecek olan , *nix sistemlerde cpu, memory, swap, disk kullanımlarının takibi gibi klasik monitoring ihtiyaçlarının yanı sıra, süreçlerin takip edilmesi, monitor edilen sürecin durması durumunda yeniden başlatabilme (ya da herhangi bir komutu/scripti çalıştırabilme) gibi yeteneklere sahiptir. Ayrıca, dosya ve dizinleri (size, timestamp, checksum vs. gibi) değişikliklere karşı takip edip, değişimleri raporlayabilmektedir. Uzak sistemler için de ping ya da TCP/IP port bağlantı testleri ile nispi monitoring  imkanı sunabilmektedir. Yönetim işlemleri için güzel bir web arayüzü sunan , kurulum ve yapılandırma açısından da son derece basittir.

İlerleyen bölümlerde, kurulum ve yapılandırma örnekleri ile ilgili bilgiler bulabilirsiniz.

Yazinin devami icin tiklayin.


diff ile Dizin Karşılaştırma ve Fark Tespiti

Dosyalar arasındaki farkları bulmaya yarayan diff aracı aynı şekilde -r (recursive) parametresi ile kullanılarak iki dizin arasındaki farkların tespiti için de kullanılabilir. Özellikle dosya/dizin yedekleme gibi kaynak ve hedef dizin arasındaki farkların belirlenmesi gereken işlemler için diff aşağıdaki şekilde kullanılabilir.

# diff -rq /kaynak/ /hedef/

Kök (/) dizinindeki kaynak ve hedef isimli klasörler arasındaki farkların listelenmesini söylediğimiz yukarıdaki komutta kullanılan parametrelere ait bilgiler şu şekildedir:

-r (recursive): Belirtilen dizinin tüm alt dizinlerine de göz atılmasını sağlamaktadır.
-q (brief): ise, farkların özet olarak gösterilmesini sağlar. Böylece düzgün bir listeleme yapılabilir.

Komutun örnek bir çıktısı ise şu şekilde olacaktır:

Çıktı
Only in /kaynak/: test1.txt
Only in /hedef/: test2.txt
Files /kaynak/test3.txt and /hedef/test3.txt differ

Görüldüğü gibi, test1.txt isimli dosya sadece /kaynak dizininde bulunurken, test2.txt isimli dosya sadece /hedef dizininde bulunuyor. Ayrıca, her iki dizinde de bulynan test3.txt isimli dosyanın içerikleri farklı.

diff ile ilgili daha fazla bilgi için man sayfasına göz atabilirsiniz:
http://unixhelp.ed.ac.uk/CGI/man-cgi?diff


mod_rewrite – .htaccess ile Bakım Sayfasına Yönlendirme

Bir web sitesini ya da uygulamasında bakımla ilgili bir çalışma yapılması gerektiğinde ziyaretçileri durumu bildirir bir bakım sayfasına yönlendirmek icap ediyor. Bu gibi bir işlem için izlenebilecek bir çok yöntem var. Bunlardan bence en pratik ve kullanışlı olanı ise apache’nin mod_rewrite modülünü kullanarak koşula bağlı yönlendirme yapmaktır.

Zira, bakım sayfanıza belli IP’lerden gelen istekleri ya da bakıma alınacak web uygulamasına (örneğin bir reklam sunucusuna) sürekli olarak erişmesi gereken sitelerden gelen istekleri yönlendirmeden muaf tutmanız gerekebilir. Ayrıca bakım işleminin bir iki saatten uzun süreceği durumlarda, isteklere yönlendirmenin geçici olduğunu bildiren 302 status kodunu döndürmek de isteyebilirsiniz.

İşte bu gibi ihtiyaçlar için mod_rewrite kullanmak iyi bir yoldur.

Eğer ilginizi çekiyorsa yazının devamında yönlendirme işlemlerinin nasıl yapılabileceği ile ilgili açıklama ve örnekler bulabilirsiniz.

Yazinin devami icin tiklayin.


lsof (LiSt Open Files) Kullanımı ve Örnek Komutlar

lsof, süreçler tarafından açılmış olan dosyaları listelemeye yarayan bir araçtır. Bildiğiniz gibi *nix sistemlerde, hemen herşey bir dosya olarak mevcudiyet gösterir. Örneğin herhangi bir sürecin eriştiği ya da açtığı “şey” sıradan bir dosya olabileceği gibi, bir dizin, bir block aygıt dosyası (block device), ya da bir sistem kütüphanesi ve ya bir network dosyası (network socket, Unix domain socket) olabilir. Dolayısı ile lsof ile süreçlerin eriştikleri dosyaları saptamak ilgili süreçlerin arka planda yaptığı işlemlerle ilgili daha net fikirler edinmek anlamına gelmektedir. Bu yüzden de özellikle sorun giderme konularında lsof çok güçlü bir araçtır.

Yazının devamında, lsof ile ilgili kullanım bilgilerini ve çeşitli durumlar için örnek komutları bulabilirsiniz.

Yazinin devami icin tiklayin.


Kurulu Perl Modüllerinin Listelenmesi

*nix sistemlerde, hali hazırda kurulu olan tüm modüllerinin bir listesini almak için aşağıdaki gibi bir kullanılabilir.

#  -MFile::Find=find -MFile::Spec::Functions -Tlw -e \
'find { wanted => sub { print canonpath $_ if /\.pm\z/ }, no_chdir => 1 }, @INC'

Uzun ve söz dizimi zor bir olduğundan bir yere not etmekte fayda var.


Rsync ile Senkronizasyon ve Incremental Backup İşlemleri

Rsync, *nix sistemlerde oldukça sık kullanılan güzel bir dosya transfer uygulamasıdır. Yedekleme ya da senkronizasyon işlemlerinde sadece değişen dosyaların (incremental) kopyalanmasını sağlayarak işlemleri hızlandırmayı amaçlamaktadır. Rsync ile lokal yedekleme yapılabildiği gibi uzaktaki bir sisteme ssh üzerinden kopyalama yapabilmek de mümkündür.

Özellikle, bir çok dosya barındıran büyük dizinlerin hızlıca yedeklenme ihtiyacı gibi durumlar için ideal olan rsync, web sunucularda, kök dizinlerin birden fazla sistemde senkronize olarak tutulması (yansılama) gibi işlemler için sıklıkla kullanılmaktadır. Daha önce, rsync kullanan rsnapshot isimli bir yedekleme çözümüne değinmiştim, şimdi de rsync’in kendisinden bahsetmek istiyorum.
Yazinin devami icin tiklayin.


vi Başvuru Klavuzu (Cheat Sheet)

vi editor Vi metin düzenleyicisi, muadillerine göre biraz farklı olmasından dolayı özellikle yeni başlayanlar için biraz karmaşık ve öğrenmesi zor bir editör olarak bilinir. Ancak vi’a biraz hakim olunmaya başlandığı zaman çoğu kullanıcı için vazgeçilmez text editörü haline gelir.Insertion (yazma) ve () denilen iki mod’a sahip olan vi”ın bir çok kısayol ve kombinasyonu bulunmaktadır. Yazının devamında özellikle temel vi kullanımı ile ilgili bu komutlara ait bir liste bulabilirsiniz.
Yazinin devami icin tiklayin.


Linux: Ethernet Bağlantı Hızının Tespit Edilmesi

sistemlerde, ethernet bağlantı hızı bir kaç yolla öğrenilebilir; bunlardan birisi de çoğu dağıtımla öntanımlı olarak gelen ve network kartına ait ayarları listeleyen ethtool isimli aracı kullanmaktır. Örnek olarak, sistemdeki “eth0″ isimli ethernet ile ilgili tüm bilgileri almak için ethtool aşağıdaki şeklilde çalıştırılabilir.

# ethtool eth0

Çıktı aşağıdakine benzer olacaktır.

Yazinin devami icin tiklayin.

« Onceki SayfaSonraki Sayfa »