Share Data Antara XAMPP Ubuntu dengan Windows

Salah satu masalah penting programmer

Jadi programmer itu merepotkan, memang. Jaman sekarang, yang namanya bisa multi-platform itu sesuatu yang hampir wajib. Nggak akan bisa hidup kalo makanan sehari-hari cuma Jendela aja, kecuali kalo emang mau kerja yang berurusan penuh sama produk dari pembuatnya itu. Tapi kalo secara umum, tetep aja harus bisa makai berbagai OS. Saya baru belajar linux, dan pingin beralih ke linux. Pilihan saya jatuh ke Ubuntu, karena selain memang banyak yang pakai, katanya sih juga gampang penggunaannya.

Tujuan utama saya pakai Ubuntu itu salah satunya untuk coding. Karena saya pakainya bahasa open source seperti Java dan PHP, jadinya pasti banyak tool untuk programming di OS Linux. Yang saya bahas di sini adalah masalah coding web, yaitu pake PHP. Untuk coding PHP, baik di Windows atau di Ubuntu, tool yang saya butuhkan adalah XAMPP (bundle PHP dan MySQL) serta NetBeans IDE saja. Untuk browser dan sebagainya, jelas butuh juga lah.

Nah, kendalanya muncul di situ. Saya masih nggak bisa full kerja di satu OS saja. Jadi meski sudah install Ubuntu, kadang-kadang masih juga terpaksa coding di Windows. Masalahnya sekarang, data yang digunakan itu harus sama supaya nggak harus copy-paste tiap ganti OS. Gimana caranya?

Sebelumnya saya sudah set custom folder untuk htdocs dan mysql untuk XAMPP Windows saya. Saya melakukannya persis seperti di post saya sebelumnya. Tantangannya sekarang adalah bagaimana supaya LAMPP (sebutan XAMPP untuk Linux) juga mengakses folder yang sama untuk htdocs dan data mysql-nya?

Awalnya saya ingin melakukannya dengan cara yang sama. Karena Ubuntu 10.04 memang support untuk akses drive NTFS, nggak masalah. Edit httpd.conf, saya tinggal ubah lokasi DocumentRoot dan Directory ke tempat drive saya di-mount, biasanya di /media/. Waktu saya coba restart dan akses, memang nggak ada masalah. Tapi kendala muncul waktu saya mau mengubah setting mysql.

Di file my.ini ternyata nggak ada baris untuk setting directory mysql. Setengah mati saya cari juga nggak ada di file lain. Googling nyari solusinya nggak nemu-nemu. Tapi untungnya dapat pencerahan dari blog ini.

Trik utamanya adalah membuat link dari lokasi asli ke host file yang ada di Windows. Ok, let say that lokasi di Windows sesuai default:

# lokasi file htdocs windows
C:\xampp\htdocs
# lokasi data mysql windows
C:\xampp\mysql\data

Dengan demikian, jika dalam Ubuntu atau Linux, tergantung label drive yang digunakan, folder tersebut akan dimount dan terletak pada:

# lokasi file htdocs windows pada ubuntu
/media/C/xampp/htdocs
# lokasi data mysql windows pada ubuntu
/media/C/xampp/mysql/data

Sedangkan untuk file asli LAMPP, Anda tidak perlu mengubah konfigurasinya. Ingat, jangan pernah melakukan perubahan apapun pada konfigurasi LAMPP seperti httpd.conf. Biarkan setting tersebut tetap seperti aslinya. Untuk lokasi data-data pada LAMPP terletak pada folder:

# lokasi file htdocs linux
/opt/lampp/htdocs
# lokasi data mysql linux
/opt/lampp/var/mysql

Terakhir, Anda tinggal membuat sebuah link yang menghubungkan folder LAMPP ke lokasi data Anda pada Windows. Namun pertama-tama, lebih baik Anda backup dulu folder yang ada.

# backup dan buat link untuk htdocs
$ sudo mv /opt/lampp/htdocs /opt/lampp/htdocs.bak
$ sudo ln -s /media/C/xampp/htdocs/ /opt/lampp/htdocs
# ^apache htdocs is linked
# backup dan buat link untuk data mysql
$ sudo mv /opt/lampp/var/mysql /opt/lampp/var/mysql.bak
$ sudo ln -s /media/C/xampp/mysql/data/ /opt/lampp/var/mysql
# ^mysql is linked

Yup, proses selesai. Sekedar catatan, untuk melakukan link folder ini, versi XAMPP yang digunakan sebaiknya sama. Saya pernah nyoba waktu di Windows pakai 1.7.3, di Linux pakai 1.7.3a, ternyata ada error. Nggak tahu kenapa. Anyway, silahkan mencoba. 🙂

8 Comments

  1. saya coba buat link seperti diatas,ketika saya buat link ke direktori yang saya buat di home,awalnya g bisa “access forbidden”.lalu direktori tersebut saya rubah “permission”nya.hasilnya bisa berjalan.namun,ketika saya buat link yang mengarah ke folder htdocs xampp windows yang terletak di drive yang berbeda,saya g bisa ngerubah hak akses folder tersebut.kira solusinya gimana ya?

    Reply

Leave a Comment.