M.Kürşad Dara

I believe my mind and became a genius.

Archive for the ‘Linux’ tag

ERROR 126 (HY000): Incorrect key file for table ‘/mnt/mysql-tmp/#sql_1a76_2.MYI’; try to repair it hatası

leave a comment

mySQL de bir query çalıştırdığınızda;

ERROR 126 (HY000): Incorrect key file for table '/mnt/mysql-tmp/#sql_1a76_2.MYI'; try to repair it

hatasını alıyorsanız bunun birkaç sebebi olabilir.

1. mySQL’in temp tabloları oluşturduğu dizini RAM üzerinde oluşturacak şekilde ayırdıysanız ve örneğin 2GB alan verdiyseniz ve gönderdiğiniz querynin oluşturduğu temp tablosu 2GB’tan büyük ise bu hatayı alırsınız. Bunun çözümü ya RAM’de temp tablo için ayırdığınız alanı artıracaksınız ya da querynizi optimize edeceksiniz.

/dev/ram1             2.0G     0  2.0G   0% /mnt/mysql-tmp
kursad:/mnt/mysql-tmp # ls -la /mnt/mysql-tmp/
total 2.0G
drwxrwxrwt 2 root  root    80 Feb 16 11:01 .
drwxr-xr-x 9 root  root  4.0K Feb 15 14:16 ..
-rw-rw---- 1 mysql mysql 2.0G Feb 16 11:01 #sql_1a76_0.MYD
-rw-rw---- 1 mysql mysql 1.0K Feb 16 11:01 #sql_1a76_0.MYI

2. İlgili tablo bozuk olabilir. Repair edip sorunu çözebilirsiniz.

Popularity: 1% [?]

Written by M.Kürşad DARA

February 16th, 2012 at 11:06 am

Text dosyasının başına satır numarası ekleme.

leave a comment

[root@efffe ~]# cat kursad.txt
satir 1
satir 2
satir 3
satir 4
satir 5

gibi bir text dosyanız var ve bütün satırların başına satır numarası koymak istiyorsunuz.
Bunun için linuxte nl isimli bir komut var

[root@efffe ~]# nl kursad.txt
     1  satir 1
     2  satir 2
     3  satir 3
     4  satir 4
     5  satir 5

veya

[root@efffe ~]# less -N kursad.txt
      1 satir 1
      2 satir 2
      3 satir 3
      4 satir 4
      5 satir 5

kullanabilirsiniz.

Fakat daha özelleştirilmiş birşeyler isterseniz awk ile bunu yapabilirsiniz.

[root@efffe ~]# awk 'BEGIN{FS=",";OFS="|"} {$1=$1; print NR,$0}' kursad.txt  > satirnumarali.txt

komutunu verdiğinizde satirnumarali.txt dosyasına satır numaralı şekilde yazacaktır.

[root@efffe ~]# cat satirnumarali.txt
1|satir 1
2|satir 2
3|satir 3
4|satir 4
5|satir 5

Popularity: 1% [?]

Written by M.Kürşad DARA

December 8th, 2011 at 2:04 pm

Posted in Linux,Scripting

Tagged with , , , ,

sudo komutu geç cevap veriyorsa

leave a comment

[kursad@kursad ~]$ sudo su -

komutunu girdiğinizde root olmanız çok uzun zaman alıyorsa çözümü basit.

[root@kursad ~]# hostname
kursad

komutu ile çıkan makine ismini öğrenin.

Daha sonra bu makine ismini /etc/hosts dosyasında 127.0.0.1 satırının en sonuna ekleyin.

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 kursad
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

Şimdi tekrar tekrar normal bir kullanıcı ile sudo su – komutunu denediğinizde hemen root olacaksınız vakit almadan.

Popularity: 1% [?]

Written by M.Kürşad DARA

September 29th, 2011 at 2:19 pm

Posted in Linux

Tagged with , , , ,

Clickatell API’sini kullanarak nagios ile sms uyarısı gönderme

leave a comment

Bunun için öncelikle Clickatel firmasından gerekli üyeliği almalısınız.

Size verilen kullanıcı ve api bilgilerini aşağıdaki gibi /etc/nagios3/commands.cfg dosyasına yazın.

define command{
command_name host-notify-by-sms
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$ \nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | wget "http:/
/api.clickatell.com/http/sendmsg?user=USERNAME&password=PASSWORD&&api_id=API_ID&to=$CONTACTEMAIL$&text='** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ @ $LONGDATETIME$ **'"
}

define command{
command_name service-notify-by-sms
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$ \nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | wget "http:/
/api.clickatell.com/http/sendmsg?user=USERNAME&password=PASSWORD&&api_id=API_ID&to=$CONTACTEMAIL$&text='** $NOTIFICATIONTYPE$ Service Alert: $SERVICEDESC$ on $HOSTNAME$ State: $SERVICESTATE$ @ $LONGDATETIME$ **'"
}

Daha sonra /etc/nagios3/conf.d/contacts_nagios2.cfg dosyası içine aşağıdaki gibi notification komutlarını girin. ( Kırmızı renkteki satırlar )

# Kursad DARA
####################

define contact{
contact_name                    swn_kursadd_sms
alias                           Kursad DARA
service_notification_period     nonworkhours
host_notification_period        nonworkhours
service_notification_options    w,c,r
host_notification_options       d,u,r
service_notification_commands   service-notify-by-sms
host_notification_commands      host-notify-by-sms
pager                           532xxxxxxx
}

Sonrasında

/usr/sbin/nagios3 -v /etc/nagios3/nagios.cfg

komutu ile nagios konfigürasyonunuzu kontrol edip hata yapmadığınızdan emin olun. Hata varsa düzeltmeniz gerekecek.

Hata yok ise

service nagios3 restart

ile nagios servisini tekrar başlatın.

Artık herhangi bir uyarı durumunda nagios size sms ile bilgi verecektir.

Popularity: 1% [?]

Written by M.Kürşad DARA

September 16th, 2011 at 4:42 pm

Posted in Linux,Nagios

Tagged with , ,

dizin/domain bazında mod_security kapatmak için

leave a comment

domain konfigurasyonunun olduğu dosya da ya da httpd.conf dosyasına aşağıdaki gibi bir konfigürasyon girip webserver i yeniden başlattığınızda artık o dizin altından çalışan domainlerde mod_security çalışmayacaktır.

Popularity: 2% [?]

Written by M.Kürşad DARA

August 9th, 2010 at 4:03 pm

Posted in Apache,Linux

Tagged with , ,

OpenSSL ile 2048 bit CSR oluşturma

leave a comment

Önce key dosyasını oluşturuyoruz.

[root@localhost ~]# openssl genrsa -out keydosyası.key 2048
Generating RSA private key, 2048 bit long modulus
..............................................................+++
...............................................+++
e is 65537 (0x10001)

Eğer yukardaki komuta -des3 gibi bir parametre eklerseniz key dosyanız şifre korumalı olacaktır. Web sunucunuzu yeniden başlattığınızda size bu şifreyi soracaktır. O yüzden çok gerekli olmadığı durumlarda kullanmamak lazım.

[root@localhost ~]# openssl req -nodes -newkey rsa:2048 -keyout keydosyasi.key -out csrdosyasi.csr
Generating a 2048 bit RSA private key
............................................................................+++
..........................................+++
writing new private key to 'keydosyasi.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:TR
State or Province Name (full name) [Berkshire]:NA
Locality Name (eg, city) [Newbury]:Istanbul
Organization Name (eg, company) [My Company Ltd]:test
Organizational Unit Name (eg, section) []:IT
Common Name (eg, your name or your server's hostname) []:www.test.com
Email Address []:info@test.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

Bundan sonrasında apache’ye gerekli konfigürasyonu girmek kalıyor.

Popularity: 3% [?]

Written by M.Kürşad DARA

August 9th, 2010 at 3:31 pm

Posted in Apache,Linux

Tagged with , , , ,

Vsftpd ftp sunucusunda kullanıcılara sadece kendi dizinlerinde dolaşma hakkı verme.

leave a comment

/etc/vsftpd/vsftpd.conf

dosyasının içine

chroot_local_user=YES

parametresini eklerseniz kullanıcılar sadece kendi dizinlerinde işlem yapabilirler.

İlk kurulumda bu parametre yoktur ve kullanıcılar kendilerine ait olmayan dizinlerde dolaşabilirler.

parametreyi ekledikten sonra vsftpd servisini yeniden başlatmayı unutmayın.

Popularity: 2% [?]

Written by M.Kürşad DARA

June 22nd, 2010 at 4:35 pm

ssh2 protokolü ile ssh1 protokolü çalışan bir makineye şifresiz bağlanmak için.

leave a comment

önce ssh2 çalışan makinemizde key oluşturuyoruz.

[root@localhost .ssh]# ssh-keygen  -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
***********************************

ardından bu key’i remote makinedeki /root/.ssh/authorized_keys dosyasının sonuna ekliyoruz.

[root@localhost .ssh] cat ~/.ssh/id_rsa.pub | ssh remote_server_hostname "cat - >> ~/.ssh/authorized_keys"

sonra remote makinede /etc/ssh/sshd_config dosyasında Protocol kısmını Protocol 1,2 şeklinde değiştirip remote makinede hem ssh1 hemde ssh2 ile bağlanabilme özelliğini aktif ediyoruz.

sonra /etc/init.d/sshd restart ile sshd yi restart edip

artik ssh2 protokolü kullandığınız makineden ssh1 protokolü çalışan diğer makineye şifresiz bağlanabilirsiniz.

Popularity: 2% [?]

Written by M.Kürşad DARA

April 13th, 2010 at 10:44 pm

Posted in Genel

Tagged with , , , , , ,

Eğer ssh ile başka bir yere bağlanırken yavaşlık varsa

leave a comment

/etc/ssh/ssh_config dosyasını açın.

GSSAPIDelegateCredentials no

yazan satırın başına diyez(#) koyun.

Artık daha hızlı bağlanabilirsiniz.

Popularity: 1% [?]

Written by M.Kürşad DARA

January 9th, 2008 at 6:18 pm

Posted in Linux

Tagged with ,

MySQL sunucusunda slow loglar nasıl aktif edilir?

leave a comment

/etc/my.cnf dosyanızın içine aşağıdaki satırları ekleyip MySQL sunucunuzu restart ederseniz slow logları tutmaya başlayacaktır. Windows kullanıcılarında my.cnf dosyası genellikle c:\Program Files\MySQL Server dizini altında bulunur.

#Log dosyasının yazılacağı adres
log-slow-queries=/var/log/slowsql.log
#Sorgular minimum kaç dakika sürerse loglasın.
long_query_time=4

Popularity: 1% [?]

Written by M.Kürşad DARA

January 5th, 2008 at 7:21 pm

Posted in MySQL

Tagged with , , , ,