Rabu, 23 April 2014

Apache, MySql, dan PHP

Pastinja, tulisan tentang bagaimana memasang apache, mysql, dan php untuk kebutuhan peladen web sudah sangat banyak bertebaran. Terutama memasangnya di GNU/Linux. Namun, buat saya, panduan terakhir [0] yang saya temui cukup sederhana dan menenangkan hati untuk dibaca dan diikuti. Karena memang caranya cukup mudah dan tidak membuat deg-deg-an.

Kali ini saya memasang paket apache, mysql, dan php, di atas mesin saya, laptop, yang ditenagai oleh BlankOn 9 Suroboyo. Yang pertama saya lakukan adalah membuka terminal.

Gambar 1. Ini yang namanya terminal
Selanjutnya, saya akan memasukkan perintah-perintah ini secara berurutan:

# apt-get install apache2

Yang setelahnya, ketika proses pemasangan selesai, dapat kita tes, apakah sudah aktif atau belum, dengan membuka laman 'localhost' pada peramban. Pada mesin saya, tampilannya seperti ini

Gambar 2. Keren ya? Cuman BlankOn yang punya ini
# apt-get  install mysql-server

Pada paket ini, nanti akan ngikut paket-paket lain yang diperlukan sebagai dependencies dari paket ini. Nah, pada pemasangan paket ini, nantinya akan ada beberapa pertanyaan yang diajukan sama sistem. Kalo misalnya pertanyaaan itu kelewat, atau misalnya, 'ih, koq gue ngga' ngeliat ada pertanyaan-pertanyaan sich?', ya sudah, itu bisa dikonfigurasi ulang dengan perintah

# mysql_secure_installation

Nantinya akan muncul pertanyaan-pertanyaan, lagi. Nah, ikutin ajah prosesnya. Kalo penasaran mau liat dulu gimana prosesnya, silahkan baca tautan yang ada di bawah tulisan ini.

# apt-get install php5 php-pear php5-mysql

Sebetulnya, ada paket php5-suhosin yang dicantumin pada tautan baca-baca. Tapi entah kenapa, pas dimasukkin paket itu, malah keluar pesan galat. Ya sudh, saya hilangkan dari paket pemasangan dan lanjut.

# service apache2 restart

Jreng! Selesai dhe. AMP-nya sudah bisa digunakan dan dioperasikan. Malah, kalo mau, bisa dibuat jadi layanan peladen web beneran. Tinggal beli peladen beneran, bukan pc destop yang dijadiin peladen ya, pasang BlankOn, pasang AMP, jadi dhe :D. *teorinya lho ya, teorinya*

E tunggu dulu. Terus, mysqlnya gimana? Mysql? Bukannya udah kepasang tuh ya? Hmmm...maksudnya mungkin aplikasi yang berbasis GUI buat ngatur pangkalan data mysql kali ya, PHPMyAdmin kali ya. Itu khan yang banyak dipake.

# apt-get install phpmyadmin

Jreng! Selesai dhe :). Lalu, kenapa PHPMyAdmin-nya ngga' bisa diakses lewat laman 'localhost/phpmyadmin'? Tenang, Anda tinggal melakukan konfigurasi ulang PHPMyAdmin lewat perintah,

# dpkg-reconfigure phpmyadmin

Tinggal jawab pertanyaan-pertanyaan yang diajukan lewat terminal. Dan kalo sudah selesai, tinggal coba lagi akses PHPMyAdmin-nya lewat peramban

Gambar 3. Tuh khan, udah bisa :).

Tinggal dipikirin, itu peladen web-nya mau dipasangin apa. Kalo saya, ya dipasangin SLiMS lah :D. Demikian, untuk menjadi catatan.

Force Overwrite

Kasus ini terjadi ketika saya mencoba memasang Virtualbox di mesin saya. Laptop. Ketika proses pemasangan akan dimulai, ada satu paket yang saya curigai akan membawa masalah. Wireless-crda. Paket ini saya ketahui menjadi masalah ketika BlankOn 9 Suroboyo masih dalam tahap pengembangan. Namun sebelum diluncurkan, kutu atas paket ini sudah berhasil diatasi. Namun, ketika saya akan memasang paket lain, paket tersebut malah ikutan terpasang.

Ya sudah. Mari dilanjut proses pemasangannya. Hasilnya? Proses pemasangan terganjal oleh pesan galat,

You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 linux-image-3.0.7-1-generic : Depends: wireless-crda but it is not installed
 linux-image-generic : Depends: linux-firmware but it is not installed
E: Unmet dependencies. Try using -f

Ihyes!!! Akhirnya :D. Diperintahkan untuk melakukan 'apt-get -f  install', namun apa yang terjadi? Tidak terjadi apa-apa. Yang terjadi kemudian malah menghasilkan pesan lain yang bikin pening.

Reading package lists... Done
Building dependency tree    
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  linux-firmware wireless-crda
The following NEW packages will be installed:
  linux-firmware wireless-crda
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
12 not fully installed or removed.
Need to get 18.5 MB of archives.
After this operation, 33.8 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://repo.ugm.ac.id/blankon/ suroboyo/main wireless-crda amd64 1.14 [16.0 kB]
Get:2 http://repo.ugm.ac.id/blankon/ suroboyo/main linux-firmware all 2.1 [18.5 MB]
Fetched 18.5 MB in 2min 5s (148 kB/s)                                        
(Reading database ... 142396 files and directories currently installed.)
Preparing to unpack .../wireless-crda_1.14_amd64.deb ...
Unpacking wireless-crda (1.14) ...
dpkg: error processing archive /var/cache/apt/archives/wireless-crda_1.14_amd64.deb (--unpack):
 trying to overwrite '/sbin/crda', which is also in package crda 1.1.2-1
Preparing to unpack .../linux-firmware_2.1_all.deb ...
Unpacking linux-firmware (2.1) ...
dpkg: error processing archive /var/cache/apt/archives/linux-firmware_2.1_all.deb (--unpack):
 trying to overwrite '/lib/firmware/radeon/CAYMAN_mc.bin', which is also in package firmware-linux-nonfree 0.40
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/wireless-crda_1.14_amd64.deb
 /var/cache/apt/archives/linux-firmware_2.1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Panjang ya? Ya, biar tau gimana urutannya to :). Lantas bagaimana menelusuri solusinya? Ada beberapa kata kunci yang saya gunakan. Pertama, 'dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)'. Tapi tidak menghasilkan jawaban yang memuaskan. Purge. Autoclean. Meh! Lalu saya mencoba kata kunci berikutnya, 'dpkg: error processing archive'. Voila! Hasilnya mengejutkan. Solusi yang saya dapatkan [0], cukup dengan memasukkan perintah ini:

# dpkg -i --force-overwrite

Dalam kasus saya, yang saya lakukan adalah memasukkan perintah ini:

# dpkg -i --force-overwrite /var/cache/apt/archives/wireless-crda_1.14_amd64.deb
# dpkg -i --force-overwrite /var/cache/apt/archives/linux-firmware_2.1_all.deb

Dari mana nama berkas tersebut saya dapatkan? Jelas dari pesan galat yang saya lampirkan pada paragraf sebelumnya. Lihat? :).

Setelah kedua perintah itu selesai dieksekusi, saya lanjutkan proses 'apt-get -f install', dan ajaibnya, proses instalasi bisa berjalan dengan baik. Sebagai tambahan, galat di atas berakibat tidak baik pada proses pembaruan sistem. Galat di atas menghambat dengan cara minta diselesaikan terlebih dahulu, baru mengizinkan proses lain untuk dilanjutkan.

Alhamdulillah, begitu kendala galat di atas berhasil diatasi, proses pembaruan sistem kembali kesedia kala :). Demikian sebagai pengingat.

[0] http://askubuntu.com/questions/148383/how-to-resolve-dpkg-error-processing-var-cache-apt-archives-python-apport-2-0