Posts Tagged ‘Linux’

8
Oct

Netbeans (Linux) “too many open files” error

   Posted by: myururdurmaz    in Java, Linux, Uncategorized

Edit /etc/security/limits.conf add these lines

username soft nofile 4096
username hard nofile 8192

remember change “username” with your username.
relogin and enjoy.

Bookmark and Share
Tags: , ,

Tags: , ,

9
Apr

Linux üzerinde ayrılmış hafızayı temizlemek

   Posted by: İsmail ÇAKIR    in Bilgi Ve Deneyim

Bildiğiniz gibi uygulamaların stabil çalışmasını sağlamak için her ilklendirilen uygulama ile bir miktar hafızayı bu yazılımın kullanması için rezerve eder.
Bu ayrılmış hafızaya yazılanlarıda diske geçirmek için varsayılan olarak 30sn. de bir update daemonı devreye girip “” komutu ile diske yazar.
normalde bu hafızayı sisteminiz optimize olarak takip etmelidir, ama yeni linux sürümlerinde genelde sanal sistemler, java tabanlı ideler veya masaüstü efektleri kullanıyorsanız, bu hafızayı yeniden tahsis etmediğinden bir süre sonra swapte çalışmaya başlarsınız. Bu da sistem başarımınızı büyük oldukça düşürücektir. P4 den inip P3 e binmek gibi birşey ;)

Peki bu cache (ayrılmış) hafızadan nasıl kurtulup RAM imizi boşa çıkartırız?

user@:~$ free
total used free shared buffers cached
Mem: 3095788 2940844 154944 0 86000 1445084
-/+ buffers/cache: 1409760 1686028
Swap: 5871748 69676 5802072

şimdi bakıyoruz ki RAM imizin yarısı cached (ayrılmış) olarak duruyor. ayrılmış olan bu hafızayı temizlemeden önce içindeki veriyi yazması gerekiyor.
Bu yüzden “sync” le başlıyoruz.
suse, redhat, fedora kullanıyorsanız;
su - root
sync; echo 3 > /proc/sys/vm/drop_caches
ubuntu ve da ise
sudo sync
sudo echo 3 | sudo tee /proc/sys/vm/drop_caches
Şeklinde bu hafızayı yeniden kullanıma açıyoruz, bakalım;
user@ubuntu:~$ free
total used free shared buffers cached
Mem: 3095788 1503308 1592480 0 364 139352
-/+ buffers/cache: 1363592 1732196
Swap: 5871748 69668 5802080

ayrımış hafıza miktarı yaklaşık 10 da bire düştü ve oldukça rahatladık.

iyi de biz bunu sürekli mi yapcaz, olmaz ki dimi?

o zaman linux hafıza kullanımını biraz daha karıştıralım :)

/proc/sys/vm/ dosyasındaki değer sisteminizin disk mi hafıza mı kullanıcağınımı belirliyor.
burda ki değer 0 ila 100 arası alabilir ve varsayılanı 60 dır. yani uygulamalara ayrılan belki bir defa kullanıp bir daha kullanmıyacakları RAM için
korunma ihtimali başka bir uygulamaya verilemesine varsayılan olarak düşük.

o halde bu değeri değişirsek

sudo -w vm.swappiness=30

sistemimiz hafızayı programlar arasında geçişi daha çok, swap disk kullanımı daha az olacaktır.

Bu değerin tabi varsayılan 60 olmasının bir nedeni var. çok düşürürseniz mesela 20 nin altına kullanımınız oldukça artıcaktır.

Bookmark and Share
Tags: , , , , ,

Tags: , , , , ,

2
Apr

Ubuntu ile kablosuz ağda düşük sinyal problemi

   Posted by: İsmail ÇAKIR    in Bilgi Ve Deneyim

Ben acer extensa 5635z de atheros çipseti ile çok düşük sinyal alıyordum, ki atheros bildiğiniz üzere en iyi kablosuz ağ çipsetlerini üreten firmadır.
Biraz araştırma ile wpa kullanımında sinyal gücünün %30 düşmesine neden olan bir sorun varmış da, çözümü de
şu komutu verip
sudo apt-get install --modules-
makineyi yeniden başlatmaktan geçiyor.

Bookmark and Share
Tags: , , , ,

Tags: , , , ,

25
Mar

boş bekleyen ssh bağlantılarının otomatik kesilmesini önleme

   Posted by: Muhammed YÜRÜRDURMAZ    in Linux

üzerinde açık olan bir bağlantınızı bir süre kullanmadığınızda

, server not responding.

şeklinde bir mesaj alıp bağlantınız kesiliyorsa

~/.ssh/

dosyası içerisine

 30
 0

yazarsanız 30 saniyede bir boş paket göndererek bağlantınızın açık kalmasını sağlar

Bookmark and Share
Tags: , , , , ,

Tags: , , , , ,

25
Mar

linux ve bozuk diskler

   Posted by: Muhammed YÜRÜRDURMAZ    in Linux

Üzerinde bad sektör (bozuk alan) olan diskleri kullanmak pek tavsiye edilmez. Ancak zorunlu durumda kaldıysanız bozuk alanları üzerinde işaretleterek o alanların kullanılmasını engelleyebilirsiniz.

Bu işlemlerden önce mutlaka (düşük veya yüksek bir ihtimal bile olsa) veri kaybı olabileceğini bilmeniz lazım. Mümkünse bir çalışan cd (livecd) kullanarak sistemi açın ve ilerideki adımları o şekilde yapın.

eğer bir çalışan cd ile açma şansınız yoksa en azından tarayacağınız alanı salt okunur (readonly) olarak mount edin

Bir diskte bozuk alan varmı diye sadece sınamak için root olarak

 -nvs /dev/sda1

bu işlem sda1 bölümünü hatalar için tarar ve baozuk alanları size belirtir. Eğer bozuk alanları işaretlemek istiyorsanız daha faydalı bir komut olacaktır.

e2fsck -cy /dev/sda1

yukarıdaki komut ise bozuk alanları tarayıp o alanları bozuk diye işaretler

Bookmark and Share
Tags: , ,

Tags: , ,

27
Feb

Linux ta windows paylaşımlarını bulma (smbtree)

   Posted by: İsmail ÇAKIR    in Bilgi Ve Deneyim

Ağınızdaki windows paylaşımlarını bulmak için

-N

komutu vermeniz yeter.

çıktı şöle bişi olur;

ripper@:~$ smbtree -N
WORKGROUP
\\UBUNTU ubuntu server (Samba, Ubuntu)
\\UBUNTU\HP-LaserJet-P1505 HP LaserJet P1505
\\UBUNTU\print$ Printer Drivers
\\UBUNTU\IPC$ IPC Service (ubuntu server (Samba, Ubuntu))

Bookmark and Share
Tags: , ,

Tags: , ,

25
Feb

Ntp ile zaman sunucuyla saatleri ayarlama

   Posted by: İsmail ÇAKIR    in Bilgi Ve Deneyim

Önce ihtiyaç duyacağımız paketleri kuralım
sudo apt-get install ntpdate

ntpdate ntp..com

ile sistem saatini ayarlayabiliriz.

bunu otomatik yapmasını istersek

sudo touch /etc/cron.daily/ntpdate
sudo echo "ntpdate ntp.ubuntu.com" > /etc/cron.daily/ntpdate
sudo chmod 755 /etc/cron.daily/ntpdate

şeklinde günlük olarak saat ayarımızı veririz :)

Bookmark and Share
Tags: , , , ,

Tags: , , , ,

25
Feb

Linux sistemlerinde benchmark (SysBench)

   Posted by: İsmail ÇAKIR    in Bilgi Ve Deneyim, Linux

uyguladığım programları içinde sunucu konfigurasyonu test için en hoşuma giden paket SysBench oldu.

Peki SysBench ile neleri test edebiliriz?

dosya I/O performansını
hafıza ayırma ve transfer hızını
POSIX threadleri performansını
mysql database server performansını

Benchmarkımızu kullanmak için

veya kullanıyorsak

sudo apt-get install sysbench dememiz yeterli, kaynaktan kurmak istersek;

SourceForge SysBench yansısından
kaynak kodlarımız inidiyoruz.

tar -zxvf sysbench-0.4.12.tar.gz

komutu ile açıyoruz.

cd sysbench-0.4.12
./configure
make
make install

komutları ile sisteme kuruyoruz.

örnek komutlar:

için;
$ sysbench --num-=16 --test=fileio --file-total-size=3G --file-test-mode=rndrw prepare
$ sysbench --num-threads=16 --test=fileio --file-total-size=3G --file-test-mode=rndrw run
$ sysbench --num-threads=16 --test=fileio --file-total-size=3G --file-test-mode=rndrw cleanup

ilk komut 3 gb lık dosya hazırlıyor test için, ikinci testleri gerçekleştiriyor, üçüncü de geçici dosyaları siliyor.

hafıza için;
$ sysbench --num-threads=16 --test= ---block-size=4K ---total-size=4G
(memtest paketi daha iyi bu iş için)

threadler için;
sysbench --num-threads=64 --test=threads --thread-yields=100 --thread-locks=2 run

için;
sysbench --test=cpu --cpu-max-prime=20000 run
asal sayı hesabı ile test ediyor.

mysql için;
$ sysbench --test= --mysql-table-type=myisam ---table-size=1000000 --mysql-socket=/tmp/mysql.sock prepare
$ sysbench --num-threads=16 --max-requests=100000 --test=oltp --oltp-table-size=1000000 --mysql-socket=/tmp/mysql.sock --oltp-read-only run

testi anlamak için aynı makinada farklı kernellerle test edebilirsiniz.

örnek çıktı;
ripper@ubuntu:~$ sysbench --test=cpu --cpu-max-prime=20000 run
sysbench 0.4.10: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 1

Doing CPU performance benchmark

Threads started!
Done.

Maximum prime number checked in CPU test: 20000

Test execution summary:
total time: 36.1809s
total number of events: 10000
total time taken by event execution: 36.1756
per-request statistics:
min: 3.60ms
avg: 3.62ms
max: 5.70ms
approx. 95 percentile: 3.62ms

Threads fairness:
events (avg/stddev): 10000.0000/0.00
execution time (avg/stddev): 36.1756/0.00

karşılaştırmak istersek 16 threadle

ripper@ubuntu:~$ sysbench --test=cpu --cpu-max-prime=20000 --num-threads=16 run
sysbench 0.4.10: multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 16

Doing CPU performance benchmark

Threads started!
Done.

Maximum prime number checked in CPU test: 20000

Test execution summary:
total time: 9.1494s
total number of events: 10000
total time taken by event execution: 144.8304
per-request statistics:
min: 3.60ms
avg: 14.48ms
max: 147.61ms
approx. 95 percentile: 63.75ms

Threads fairness:
events (avg/stddev): 625.0000/107.60
execution time (avg/stddev): 9.0519/0.05

Bookmark and Share
Tags: , , , , , , , , , ,

Tags: , , , , , , , , , ,

24
Feb

linux capslock notify

   Posted by: Muhammed YÜRÜRDURMAZ    in Linux, python

Eer benim gibi durumunu dizüstünüzde ışık olmadığından dolayı göremiyorsanız aşağıdaki script işinizi görebilir.

bu scripti capsnotify.py ismiyle bir yere kaydedin.

daha sonra kullandığınız masaüstü ortamının otomatik başlangıç bölümüne ayarlayın.


#!/usr/bin/
import pygtk
pygtk.require(’2.0′)
import pynotify
import sys
import gtk
import os
import time

__author__="xmaster"
__date__ ="$Feb 24, 2010 11:14:16 AM$"

def get_status():
    status = None
    p = os.popen("/usr/bin/xset q")
    while 1:
        line = p.readline()
        if not line: break
        if line.find("Caps") > -1:
            status = line[21:25].strip()
            break
    p.close()
    return status

def show_status(status):
    if status == "on":
        uri = "file:///usr/share/icons/gnome/scalable/devices/keyboard.svg"
        n = pynotify.Notification("Caps Lock On", "", uri)
    else:
        uri = "file:///usr/share/icons/gnome/scalable/devices/keyboard.svg"
        n = pynotify.Notification("Caps Lock Off", "", uri)

    n.set_(500)
    if not n.show():
        print "Failed to send notification"
        sys.exit(1)

if __name__ == ‘__main__’:
    if not pynotify.init("Caps toggle"):
        print "Unable to initialize Python "
        sys.exit(1)
    old_status = None
    while 1:
        status = get_status()
        if old_status is None:
            old_status = status
        if status != old_status:
            show_status(status)
            old_status = status
        time.sleep(0.5)

Bookmark and Share
Tags: , , , ,

Tags: , , , ,

Hani böylesine zorla yapmak istemeyizde mecbur kalınca, niye olmasın :)
stop
komutuyla durmuyorsa.
#!/bin/

for ind in `ps -aef | grep | grep -v grep | cut -f4 -d ' '`
do
kill -9 $ind
echo "process $ind"
done
if [ $? -eq 0 ]; then
lsnrctl start
fi
exit

Bookmark and Share
Tags: , , , , ,

Tags: , , , , ,

Switch to our mobile site