04 July 2016

Submit Multiple Forms with One Button

Birden Fazla HTML Form Yönetimi


Aşağıdaki örnekte, birden fazla form elementi içeren sayfalarda, tek bir button ile toplu olarak istediğimiz sayfaya POST edeceğiz. Buradaki mantık; form içeriğindeki elementleri, JQUERY yardımı ile ekstra bir form içeriğine çağırıp, verileri tek bir form altında toplayıp öyle POST etmek.

Öncelikle index(.html, .php vs.) sayfamızı oluşturup, içine bu kodları yazıyoruz.


<html>
<head>
<!-- sistemimizdeki jquery dosyasini cagiriyoruz-->
<script type="text/javascript" src="jquery-latest.js"></script>

<!--
Bu fonksiyon ile, form1 ve form2 ID sine sahip, içeriğinde input, select, textarea gibi form elementlerinin değerlerini aliyoruz, ve birlesik_form ID'li formun içindeki hidden elemente atıyoruz.
-->
<script type="text/javascript">
    function form_birlestir() {
        $yeniform= $("#birlesik_form");
        $("#form1 input, #form2 input, #form1 select, #form2 select, #form1 textarea, #form2 textarea").each(function(){
            $yeniform.append("<input type='hidden' name='"+$(this).attr('name')+"' value='"+$(this).val()+"' />");
        });
}
</script>

</head>
<body>
<form id="form1">
    <input type='text' name='f1a' />
    <input type='text' name='f1b' />
</form>
<form id="form2">
<input type='text' name='f2a' />
<input type='text' name='f2b' />
</form>

<form id="birlesik_form" action="post.php" method="POST" onsubmit="form_birlestir(); return true;">
<input type="submit" />
</form>
</body>
</html>

Sonuçları görmek için post.php sayfamızı oluşturup, içine bu kodları yazıyoruz.


<?php
foreach($_POST AS $key=>$val) {
echo $key.":".$val."<br>";
                       }
?>










04 June 2016

Some Usefull Linux Terminal Commands

Bazı Faydalı Linux Komutları

1-)
[EN]Sometimes you may want to take a look at a file, only to the first lines of it, this is specially useful when you are watching at CSV files that you may be using to work with MySQL or PosgreSQL databases, in this cases what we need is to look at the head of the file to see its structure, but not all the file. To do this we use the head command.

[TR]Bazı durumlarda (.sql dosyalarına gözatmak, büyük dosyaların tamamını açmadan kontrol etmek, log dosyalarını kontrol etmek vs.) büyük boyutlu dosyaları ya da tamamını açmanın sıkıntılı olduğu durumlarda, bir dosyanın baştan belli satırlarına göz atmak isteyebilirsiniz. Bu gibi durumlarda;

root@mylinux:~# head -10 xxx.sql (first 10 lines of -xxx.sql- dosyasının ilk 10 satırına bakmak için)

2-)
[EN]Last 10 lines of a file
[TR]Dosyanın son 10 satırı için;

root@mylinux:~# watch tail -n 10 mylogfile.log


(*) Will be updated periodically.
(*) Düzenli olarak güncellenecektir.




03 June 2016

MySQL - Export and Import .sql Files

MySQL - Yedekleme ve Geri Yükleme İşlemleri


A-) Backup (Yedekleme Örnekleri)


1-) Tek  Database'in db_backup.sql dosyasına yedeklenmesi

$ mysqldump -u root -p db_adi > db_backup.sql

2-) Tüm Databaselerin all_db_backup.sql dosyasına yedeklenmesi

$ mysqldump -u root -p --all-databases > all_db_backup.sql

3-) MyDB içindeki t1 ve t2 adlı tabloların t_1_2_backup.sqldosyasına yedeklenmesi

$ mysqldump -u root -p MyDB t1 t2 > MyDB_t_1_2_backup.sql

4-) MyDB içindeki tüm tabloların sıkıştırılarak yedeklenmesi

$ mysqldump -u root -p MyDB | gzip > MyDB_backup.sql.gz

5-) Erişime açık uzak sunucudaki MyDB'yi yedekleme

$ mysqldump -P 3306 -h xxx.xxx.xxx.xxx -u root -p MyDB > db_backup.sql

(*) Örneklemelerde MySQL'e root kullanıcı adı ile login olunmuştur. CentOS gibi bazı işletim sistemlerinde, default olarak root aktif olmayabilir. Kod örneklerini kendi kurulumunuza göre düzenlemelisiniz.

B-) Restore (Yedekten Yükleme Örnekleri)

1-) data1.sql dosyasının database1 veritabanına yüklenmesi

$ mysql -u root -p -h localhost database1 < data1.sql

2-) data1.sql dosyasının, yerel ya da uzaktaki veritabanına IP üzerinden aktarımı

$ mysql -u root -p -h xxx.xxx.xxx.xxx database1 < data1.sql

3-) data1.sql dosyasının, yerel ya da uzaktaki veritabanına Hostname üzerinden aktarımı

$ mysql -u root -p -h mydomain.domain.com database1 data1.sql
 
4-) gunzip -c /var/www/citizen_tables_backup.sql.gz | mysql -u root -p your_database_name

27 May 2016

VMware - Adjusting The Pre-created HDD Size

VMware - Mevcut ve Aktif Disk Boyutunu Değiştirmek

UPDATE:25.03.2022

ubbuntu 18.04<=

 

# We need to resize the logical volume to use all the existing and free space of the volume group
$ lvm
lvm> lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
lvm> exit

# And then, we need to resize the file system to use the new available space in the logical volume
$ resize2fs /dev/ubuntu-vg/ubuntu-lv
resize2fs 1.44.1 (24-Mar-2018)
Filesystem at /dev/ubuntu-vg/ubuntu-lv is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 58
The filesystem on /dev/ubuntu-vg/ubuntu-lv is now 120784896 (4k) blocks long.

# Finally, you can check that you now have available space:
$ df -h
Filesystem                         Size  Used Avail Use% Mounted on
udev                               3.9G     0  3.9G   0% /dev
tmpfs                              786M  1.2M  785M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv  454G  3.8G  432G   1% /

 ------------------------------------------------------------------

 

 


Daha önce, VirtualBox üzerindeki sanal HDD boyutunu nasıl değiştirebileceğimizi görmüştük. Şimdi ise, VMware Sanal Makinası üzerinde kurulu *NIX sistemlerde, aynı işlemin nasıl yapılacağını göreceğiz.

1-) Öncelikle *NIX sistemimize terminalden erişip, "df -hT" komutu ile disk yapımızı, kullanılan ve boşta olan alanlar ile bölüm formatlarını inceleyeceğiz. 



2-) Sonraki aşamada, ESXi / Vcenter sunucumuza bağlanıp, boyutunu değiştirmek istediğimiz sanal makinaya ait hard disk boyutunu belirliyoruz.



3-) Partitioning için gerekli olan Gparted.iso canlı yansımasını http://gparted.org/download.php adresinden indirebilirsiniz. Bu aşamada işlemleri hızlandırmak adına, iso dosyasını bilgisayarınız yerine ESXi / Vcenter sunucunuza indirebilirsiniz. Bu işlemi yapabilmek için, ESXi sunucunuza erişim yetkinizin olması gerekiyor.

ESXi sunucumuza terminalden giriş yapıyoruz.


Resimdeki örnekte, ISO yansımaları için kullandığım yol, /vmfs/volumes/datastore1/ISOs olduğu için, "cd" komutu ile, GParted.iso dosyasını indirmek istediğimiz klasöre gidiyoruz. Bu yol sizin yapılandırmanıza göre değişebilir.

.ISO yansımalarını indirdiğimiz klasöre girdikten sonra, http://gparted.org/download.php adresinden güncel ve stabil ISO yansımasını indiriyoruz.

Dosyası sunucuya direk indirmek için;

"wget" komutu ile aktif linki belirtiyoruz.

Örnek ; "wget http://downloads.sourceforge.net/gparted/gparted-live-0.26.0-2-i686.iso"

4-) ISO dosyası sunucumuza indikten sonra, VMware üzerinden ISO dosyamızı sanal CD sürücümüze bağlıyoruz ve sistemi CD ile başlatıyoruz.(Boot esnasında ESC tuşu ile Boot Menu'ye girebiliyoruz)



5-) GParted Live başlangıcında aşağıdaki ekran çıkacaktır. Default seçenek ile devam ediyoruz.

6-) GParted Live (Default Settinfs) ile devam edildikten sonra karşımıza çeşitli sorular gelecektir. Bunlar Keymap, dil gibi seçenekler. Hepsini ENTER ile default seçeneklerle geçiyoruz. Bunlardan sonra karşımıza aşağıdakine benzer bir ekran gelecektir.


7-) Bu aşamada, daha önce ESXi/Vcenter istemcisi ile değiştirdiğimiz HDD boyutunun fazlalık olan kısmı, unallocated olarak görünecektir. Örnekte sda5 olarak listelenen kısım, genişletilecek olan kısımdır. Bu noktada dikkat etmemiz gereken, sda5'in içinde olduğu ana logical partitionu genişletmektir. Örnekte extented partition olarak görünen, sda2'dir. Bu partitiona sağ tıklayıp, resize/move seçeneği ile, genişletmek istediğimiz boyuta getiriyoruz. İşlemi bitirdikten sonra Apply seçeneği ile işlemleri uygulayıp, GParted uygulamasında çıkıyoruz ve tekrar *NIX sistemimize login oluyoruz.

8-) Terminale tekrar eriştikten sonra;

"cd /dev/mapper" komutu girerek, sonrasında "ls" ile dosya ve diznleri listeliyoruz.

Örnekte root ve swap'a ait bağlantılar gözükmektedir.


Kullanacağımız kısım elbette root kısmı olacaktır.
Bu noktada; 

"lvextend /dev/mapper/owncloud--vg-root /dev/sda5" komutunu girdikten sonra,

"resize2fs /dev/mapper/owncloud--vg-root" komutunu da girerek işlemi bitiriyoruz.


Sunucumuza "reboot" komutunu girip sonra "df -hT" ile kontrol ettiğimizde, artık HDD boyutunun istediğimiz gibi göründüğünü göreceksiniz.

(*) Bu işlemlerde yeterli tecrübeye sahip değilseniz, öncelikle test sunucularda denemeler yapmanızı, ve yedeklerinizi almanızı tavsiye ederim.

Hepinize iyi çalışmalar dilerim.




21 April 2016

VirtualBox - Adjusting The Pre-created HDD Size

VirtualBox - Mevcut ve Aktif Disk Boyutunu Değiştirmek


Windows işletim sistemlerinde yüklü Oracle VirtualBox üzerinde, daha önceden oluşturduğunuz sanal makinaların, disk kapasiteleri daha sonradan yetersiz gelebilir.

Hatta VMware'deki Thin-Provision ya da VirtualBox'ta Dynamic Disk Size özellikleri ile kurulmuş olsa dahi.

Aşağıdaki örnekte, Virtualbox üzerinde kurulu sanal makinaların, data güvenliğini riske etmeden nasıl genişleteceğimizi görüyoruz.


Windows işletim sisteminde Başlat/Çalıştır (WindowsKey+R) ile açılan kutuya CMD yazıp komut satırına düşüyoruz.

Daha sonra VirtualBox'umuzun kurulu olduğu dizine gidiyoruz(*);

1-) cd "C:\Program Files\Oracle\VirtualBox"


(*) Bu örnekte 64 bit işletim sistemi üzerinde kurulu,  64 bit VirtualBox ile çalıştık. 32 Bit sürümlerde, "Program Files(x86)" dizininde kurulu olacaktır.

2-) Bu adımda, VirtualBox'un terminali VBoxManage ile çalışacağız.

Önceki adımda Virtualbox'un kurulu olduğu dizine eriştik. Kontrol amaçlı olarak, Windows Explorer/Dosya Gezgini ile eriştiğimiz klasörde "VBoxManage.exe" dosyasının olduğunu teyit edip, terminale ağağıdaki komutu giriyoruz. Bu komutta, kapasitesini değiştirmek istediğiniz .vdi uzantılı diskimizi belirtiyoruz.

VBoxManage modifyhd “D:\VirtualBox VMs\Windows7\Windows7.vdi” --resize 25000



25000 olarak girdiğimiz değer, Megabyte cinsindedir. kendi durumunuza göre satırı düzenleyebilirsiniz.

Bundan sonraki aşama artık işletim sistemine, genişletilen alanı tanımlamak.
Eğer işletim sisteminiz MS Windows sürümlerinden biriyse;

Başlat/Çalıştır'a "diskmgmt.msc" yazıp Enter'liyoruz.
Burada, diskimizin genişletilen bölümü "Unallocated" olarak gözükecektir.
Bu alana Sağ Tıklayıp Yeni Birim/Birincil Bölüm oluşturabilirsiniz.
Windows'a yeni birim için hangi harfi kullanacağını da belirttikten sonra, yeni birime format atarak kullanmaya başlayabilirsiniz.

3.Parti bazı yazılımlarla (Ben MiniPartition Tool tercih ediyorum) aktif işletim sisteminin bulunduğu partition ile yeni oluşturduğunuz alanı birleştirip(merge fonksiyonu), tek partition olarak kullnabilirsiniz.

Eğer işletim sisteminiz *NIX dağıtımlarından biriyse, sonraki yazımızda bu konuyu işleyeceğiz.

VBoxManage ile yapabileceklerimiz ile ilgili olarak, daha sonra farklı işlemleri inceleyeceğiz.

Hepinize iyi çalışmalar dilerim.