Linux Performans Analizi İçin Sysstat Kurulumu

Linux Performans Analizi İçin Sysstat Kurulumu

Linux üzerinde performans sorunları yaşadığınızda bazı komutlar ile bu durumu doğrulamanız gerekir ya da sisteminiz iyidir ve daha iyi hale getirmek istiyorsunuzdur , bazen internette yeni komutlar bulursunuz ve bir çok kez bu komutların default olarak kurulu gelmediğini ve çalışmadığını görürsünüz , örneğin aşağıdaki komutları deneyebilirsiniz.

mpstat -P ALL 1
iostat -xz 1
sar -n DEV 1

İşte bu komutların çalışması için sysstat paketine ihtiyaç bulunmaktadır. Sysstat ile ayrıca sistem performans loglarını cron ile belli aralıklar ile çalıştırıp arşivleyebilirsiniz.

Debian/Ubuntu türevlerinde aşağıdaki komut ile kolaylıkla kurabilirsiniz.

apt-get install sysstat

Sonrasında /etc/default/sysstat dosyasında ENABLED değerini false yerine true yazıp kaydedelim.

nano /etc/default/sysstat
ENABLED=”true”

Dilerseniz /etc/cron.d/sysstat dosyanızda data toplama sıklığını değiştirebilirsiniz.

nano /etc/cron.d/sysstat

Sonrasında servisi restart edebiliriz.

service sysstat restart

Şimdi ilk datamıza hemen toplayalım.

command -v debian-sa1 > /dev/null && debian-sa1 1 1

Verileri görmek için ise aşağıdaki komutu kullanabilirsiniz.

sar -A

Bu dataları arşivlemek isterseniz aşağıdaki komutu kullanabilirsiniz.

sar -A > $(date +hostname-%d-%m-%y-%H%M.log)

Ayhan ARDA

Ubuntu ‘artful Release’ no longer has a Release file. hatası ve çözümü

Ubuntu ‘artful Release’ no longer has a Release file. hatası ve çözümü

Ubuntu update ya da paket kurulumu sırasında “no longer has a Release file. hatası alabilirsiniz. Sebebi Ubuntu 17.10 artful kullanıyor olmanız ve artık bu sürümün desteğinin bitmiş olmasıdır. Ubuntu güncel sürümleri görmek için https://wiki.ubuntu.com/Releases adresini kullanabilirsiniz. Bu durumda apt-get update ya da upgrade gibi komutlar işe yaramaz çünkü sources.list dosyanız artful repolarına ulaşmaya çalışmaktadır.

root@ubuntu-hostrazzi:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 17.10
Release: 17.10
Codename: artful

root@ubuntu-hostrazzi:~# apt-get update
E: The repository ‘http://tr.archive.ubuntu.com/ubuntu artful Release’ no longer has a Release file.
N: Updating from such a repository can’t be done securely, and is therefore disabled by default

/etc/apt/sources.list dosyamızı açıp içini boşaltalım ve aşağıdaki repoları ekleyelim.

root@ubuntu-hostrazzi:~# nano /etc/apt/sources.list

## EOL upgrade sources.list
# Hostrazzi.Com
deb http://old-releases.ubuntu.com/ubuntu/ zesty main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ zesty-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ zesty-security main restricted universe multiverse

Şimdi tekrar update ve diğer komutları sırası ile çalıştıralım.

root@ubuntu-hostrazzi:~# apt-get update
root@ubuntu-hostrazzi:~# apt-get upgrade
root@ubuntu-hostrazzi:~# apt-get dist-upgrade
root@ubuntu-hostrazzi:~# do-release-upgrade

Son komut ile birlikte işletim sistemi versiyonunuz Ubuntu 18.04 Bionic sürümüne geçecektir , tabi bu yazıyı yazdığım tarihi baz alıyorum. Bu son komut ile birlikte konsolda Size bazı sorular soracaktır , hepsine Y diyerek geçebilirsiniz. Tabiki işlem öncesi snapshot almanızda fayda var. Ayrıca bu yükseltme restart gerektirmekte, belirtmekte fayda var. Şimdi tekrar versiyonu kontrol edebiliriz.

root@ubuntu-hostrazzi:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04 LTS
Release: 18.04
Codename: bionic

Linux sunucular arası şifresiz erişim

Diyelim ki bir adet ana sunucunuz var ve birden fazla erişmek istediğiniz linux sunucu , yani ana sunucunuz diğer sunuculara ssh ile erişirken şifreye gerek olmasın ya da sormasın diye düşünüyoruz.

Ana sunucu ip adresim 192.168.126.128 olsun , bu sunucudan şifresiz erişmek istediğim sunucu ip adreside 192.168.126.159 olsun

Ana sunucumuza ssh ile erişelim. (192.168.126.128)

root@anasunucu:~# cd /root/.ssh/

root@anasunucu:~/.ssh# ssh-keygen  -t rsa

Şimdi keyin adını soracak , entera basıp geçebilirsiniz.

Sonrasında 2 defa şifre soracak , yine entera basıp geçebilirsiniz.

Artık key imiz oluştu. bulunduğunuz klasörde id_rsa.pub adı ile görebilirsiniz.

Şimdi aşağıdaki komut ile bizim yeni oluşan id_rsa.pub dosyasını diğer sunucuya göndereceğiz.

root@anasunucu:~/.ssh# ssh-copy-id -i “root@192.168.126.159”

Burada bir seferlik bize 192.168.126.159 un şifresini soracak, yazalım , işlem tamamdır.

Artık 192.168.126.128 , 192.168.126.159 a şifresiz erişebilir durumda.

root@anasunucu:~/.ssh# ssh root@192.168.126.159
Welcome to Ubuntu 15.10 (GNU/Linux 4.2.0-16-generic x86_64)
Last login: Thu Apr 14 03:32:33 2016 from 192.168.126.128
root@digersunucu:~#

Görüldüğü üzere şifre sormadı ve direk içindeyiz. Diğer sunucudan exit yazıp yine ana sunucuya dönebiliriz.

Ayhan ARDA

Ubuntu Swap Alanı Ekleme

Öncelikle makinamızda swap alanı olup olmadını tekrar kontrol edelim.

sudo swapon -s

Eğer yok ise çıktı aşağıdaki gibi olmalı ve boş gelmeli.

Filename                Type        Size    Used    Priority

Tabi sunucuda swap alanı için boş yere olup olmadığını da df -h ile kontrol etmeyi unutmayın.

Aşağıdaki komut ile bir swap alanı oluşturuyoruz.

sudo dd if=/dev/zero of=/swapalani bs=1024 count=512k

Buradaki bs blocksize anlamına gelir , count ise bunun çarpanıdır , dolayısı ile 512*1024 = 512 mb lık bir swap alanı oluşturacağımızdandır, /swapalani na ise kendinize özel bir isim verebilirsiniz.

Şimdi aşağıdaki komuut çalıştıralım.

sudo mkswap /swapalani

İşlem sonunda aşağıdaki gibi bir çıktı elde etmelisiniz.

Setting up swapspace version 1, size = 262140 KiB no label, UUID=103c4545-5fc5-47f3-a8b3-dfbdb64fd7eb

Şimdi swap ı aktif edelim.

sudo swapon /swapalani

Şimdi oluşturduğumuz swap ı kontrol edebiliriz.

swapon -s
Filename                Type        Size    Used    Priority
/swapalani                               file        262140    0    -1

İşlem bu kadar ancak makinanızı reboot ettiğinizde bu işlem kaybolacaktır , kalıcı hale getirmek için fstab a işlemeliyiz.

sudo nano /etc/fstab

En altına aşağıdaki satırı ekleyiniz.

/swapalani       none    swap    sw      0       0

Swappiness i 0 yapmanızı öneririm.

echo 0 | sudo tee /proc/sys/vm/swappiness

Şimdi dosya izinlerini ayarlayalım ki bir güvenlik sorunu oluşmasın.

sudo chown root:root /swapalani
sudo chmod 0600 /swapalani

Saygılarımla

Ayhan ARDA

Linux ‘ te Manual Page’ leri Etkin Kullanmak

Unix ve Linux tabanlı sunucu ya da pc ler’ de bir çok komut , önemli unix dosyaları ya da bazı daemon lar (arka planda çalışan programlar) kendi kullanım kılavuzu ile birlikte gelmektedir , ev kullanıcıları genelde bir komut hakkında bilgiyi internetten almaya ya da bulmaya çalışırken internet olmayan bir ortamda bunu çözmek için uğraşan bir linux sunucu yöneticisi hayal ettiğimizde bunun yararını net olarak anlayabiliriz , man page ler ya da uzun adıyla manual page(s) ler işte bu durumda imdadımıza koşarlar , ayrıca daha önemli bir husus olarak belirtmek gerekirse internette her bulduğumuz bilgiye ne kadar güvenebiliriz , oysa bir man page;  bize net , güvenilir ve doğru bilgiyi hemen vermektedir , şimdi kısaca bir giriş yapalım ve işlerken man ile bağlantılı whatis , whereis ve mandb gibi komutlarında üzerinden geçelim.

man $command    (man komut)

Örnek kullanım  : man wget

Komut girildikten sonra açılan manuel page te aşağı ok tuşu ile tamamını okuyabilir ve ya man page den çıkmak için q tuşunu kullanabilirsiniz.

Continue reading Linux ‘ te Manual Page’ leri Etkin Kullanmak

Centos LVM yapısında Ek Disk İle Disk Boyutunu Büyültmek

Merhabalar;

Bir örnekleme ile gidersek daha akılca kalacağı düşüncesindeyim , sunucumuz hyper-v üzerinde çalışan bir sunucu , üzerinde 2 adet scsi, bir adet ide diskimiz var ve bunlar lvm yapısındalar , amacımız üzerlerine 1 adet daha scsi eklemek ve lvm yapısına dahil etmek.

Scsi diskler sba,sdb,sdc gibi sıra ile isimlendirilir , 3.scsi diski takmadan önce aşağıdaki durumu inceleyelim.

root@linux-25.webhostingsitesi.com [~]# ls -l /dev/sd*

brw-r—– 1 root disk 8,  0 Apr  1 14:36 /dev/sda
brw-r—– 1 root disk 8,  1 Apr  1 14:36 /dev/sda1
brw-r—– 1 root disk 8, 16 Apr  1 14:36 /dev/sdb
brw-r—– 1 root disk 8, 17 Apr  1 14:36 /dev/sdb1

Şimdi üst bölümü yorumlamak gerekirse sda ve sdb disklerini görmekteyiz , muhtemelen yeni bir disk takınca ismi sdc olarak adlandırılacak.

Şimdi disk eklemeden önceki disk boyutumuza bakalım. Gördüğümüz üzere 3.3 gb boş alanımız kalmış , diskin %97 sini kullanmaktayız.

root@linux-25.webhostingsitesi.com [~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
96G   88G  3.397% /
/dev/hda1              99M   40M   55M  43% /boot
tmpfs                 2.5G     0  2.5G   0% /dev/shm
/usr/tmpDSK           985M   32M  904M   4% /tmp

Şimdi makinamızı kapatıp hyper-v üzerinden scsi disk imizi boyutunu belirleyerek ekliyoruz , ben şimdi 40 lık bir scsi ekledim ve serverı yeniden başlatıyorum , şimdi sistemin bu diski görüp görmediğini merak ediyorum , bunu da ilk yazdığımız komutu tekrarlayarak göreceğiz .

root@linux-25.webhostingsitesi.com [~]# ls -l /dev/sd*
brw-r—– 1 root disk 8,  0 Apr  1 14:36 /dev/sda
brw-r—– 1 root disk 8,  1 Apr  1 14:36 /dev/sda1
brw-r—– 1 root disk 8, 16 Apr  1 14:36 /dev/sdb
brw-r—– 1 root disk 8, 17 Apr  1 14:36 /dev/sdb1
brw-r—– 1 root disk 8, 32 Apr  1 14:36 /dev/sdc

Continue reading Centos LVM yapısında Ek Disk İle Disk Boyutunu Büyültmek

cp: cannot create symbolic link: Operation not permitted hatası

Linux sunucularımızda dosya ya da klasör kopyalar iken bu hatayı alıyor iseniz aşağıdaki şekilde hata almadan işlem yapabilirsiniz.

cp: cannot create symbolic link: Operation not permitted

cp -rL vhosts /mnt/yedek/   (vhost klasörünü ve içini /mnt/yedek klasörünün içine aktar)

cp -rL aktarılacakklasoryadadosya/buraya/aktar/

cp -rL source dest.

cp: cannot create symbolic link: Operation not permitted

Whm / Cpanel Disk Alanı Yetersiz Uyarısı

Aşağıdaki hatayı alıyor iseniz yapmanız gereken işlem anlatılacaktır,

Sorry for the inconvience!
The filesystem mounted at / on this server is running out of disk space. cPanel operation has been temporarily suspended to prevent something bad from happening. Please ask your system admin to remove any files not in use on that partition.

Cpanel disk alanı %99 un üzerine çıktığında hesap açma gibi işlemleri yapmaz ve yukarıdaki uyarıyı verir , gelecek cpanel de bunu panelden kontrol edebileceğiz fakat şimdilik aşağıdaki dosyayı açıyoruz ,

1 – ssh ile giriş yapılır ,

2- /root/.cpanel/datastore klasörünün içine girilir.

cd /root/.cpanel/datastore

3- _bin_df_-P_-k_-l dosyası açılır.

nano _bin_df_-P_-k_-l

Burada %99 yazılı bir alan göreceksiniz , bu alanı daha küçük bir değer ile değiştirirseniz sorun düzelmiş olacaktır.

Removing WHM Disk Space Errors

 

Basit PhpMail Test Scripti

Bazen phpmail fonksiyonunu test etmek isteyebiliriz. Bu durumlarda elimizin altında olması için paylaştım.

<?php
$to = “sizin@mailadresiniz.com”;
$subject = “Merhaba!”;
$body = “Merhaba,\n\nNasılsınız?”;
if (mail($to, $subject, $body)) {
echo(“<p>Mesajınız başarı ile iletildi.!</p>”);
} else {
echo(“<p>Sanırım bir sorun var…</p>”);
}
?>

Linux memory cache ‘ini temizlemek

Selamlar,

Sunucumda vmstat komutunu uyguladığımda cache in yüksek oranda veri tuttuğunu gördüm . Sizde bazı performans durumlarında cache i temizlemek isteyebilirsiniz. Bunun için dağıtımınıza göre aşağıdaki komutlardan birini kullanabilirsiniz.

sync; echo 3 > /proc/sys/vm/drop_caches

ya da;

sudo echo 3 | sudo tee /proc/sys/vm/drop_caches

ya da;

sudo sh -c “sync; echo 3 > /proc/sys/vm/drop_caches