Archive for the 'IT' Category

Published by Kalpin Erlangga Silaen on 04 Jan 2010

How to Upgrade FreeBSD 7.x to FreeBSD 7.2-STABLE

freebsd_logo.pngMengingat bahwa FreeBSD 7.0 sudah obselete dan tidak di support lagi oleh developer FreeBSD (EOL May 2009) maka saya memutuskan melakukan upgrade ke versi stable 7.x yaitu 7.2-STABLE. Mudah-mudahan panduan berikut bermanfaat buat Anda.

Step by step upgrade FreeBSD 7.0 ke FreeBSD 7.2-STABLE:

# cp /usr/share/examples/cvsup/standard-supfile /root/supfile
# vi /root/supfile

rubah 2 line berikut:

host=cvsup.jp.FreeBSD.org # ambil mirror utama Jepang
release=cvs tag=RELENG_7 # upgrade ke FreeBSD 7.2-STABLE

setelah file tersebut disimpan, dilakukan pen-download-an file dari mirror via cvs

# cd /usr/src
# csup /root/supfile

Setelah download selesai, lakukan perintah berikut secara berurutan. Dan jika ada error, segera BERHENTI !!!

# cd /usr/src/
# make buildworld
# make buildkernel
# make installkernel

atau jika kernel yang ada, sudah dikustom bisa menggunakan perintah berikut:

# make buildkernel KERNCONF=TS1
# make installkernel KERNCONF=TS1

dimana TS1 adalah nama kernel yang sudah ada sebelumnya (sesuaikan dengan nama kernel Anda). Harap diperhatikan bahwa kadang ada update atau fitur yang ada di rilis lama, tetapi sudah tidak ada atau tidak support lagi di kernel baru. Harap dibaca file /usr/src/UPDATING dan lihat di file konfigurasi kernel TS1 anda, dan sesuaikan !!!

setelah selesai kompilasi kernel baru, dan jika anda memiliki akses fisik ke server tersebut maka bisa Anda reboot dan masuk ke single user mode. Tetapi jika Anda melakukan ini melalui remote (ssh) maka lanjutkan perintah berikut:

# mergemaster -p

terima dulu secara default jika Anda diminta konfirmasi. Saya sarankan jangan melakukan penghapusan file lama !!! kecuali Anda tahu apa yang anda butuhkan dan Anda seorang expert.

Setelah itu, lakukan build world (rekompile seluruh binary yang ada)

# cd /usr/src
# make installworld

Lalu lakukan komparasi dan gabungkan (jika perlu) dengan perintah berikut:

# mergemaster -i

Saya sarankan Anda tidak menghapus file apapun, dan terima dulu defaultnya.
Setelah selesai, silahkan reboot server Anda.

# shutdown -r now

Setelah up, cek server Anda:

# uname -a

Semestinya akan seperti output berikut ini:

[root@www ~]# uname -a
FreeBSD www5.kalpin.us 7.2-STABLE FreeBSD 7.2-STABLE #0: Mon Jan 4 16:23:05 WIT 2010 root@www5.kalpin.us:/usr/obj/usr/src/sys/TS1 i386

Semoga bermanfaat.

Published by Kalpin Erlangga Silaen on 08 Dec 2009

[FIX] PHP Session Failed

4fy2nnl.jpgSiang ini mendapat kasus baru mengenai adanya sebuah aplikasi cms berbasiskan php tiba-tiba tidak bisa berjalan dengan baik. Disamping itu, auth ke mysql via phpMyAdmin juga gagal. Saat itu, menjelang makan siang, dan karena sudah lapar, akhirnya saya melakukan troubleshoot tanpa melakukan analisa terlebih dahulu (wasting time). Hal pertama yang saya lakukan adalah Reset MySQL root password karena user juga lupa password root mysql. Setelah itu, saya melakukan perbaikan script phpmyadmin dari berbasiskan cookies menjadi config (auth langsung ke user/password yang ada di table user di database mysql).  Setidaknya dalam 15 menit, solusi untuk 1 kasus terselesaikan, dan saya berangkat makan siang. Setelah makan siang, saya kembali melakukan troubleshoot untuk kasus kedua, dimana user-user yang ada di cms tidak bisa login. Setelah saya analisa di log web server dan melakukan testing manual auth via console (dan berhasil auth via console, sementara via web tidak bisa alias gagal). Akhirnya saya ketemu setelah melakukan debug php. Penyebabnya adalah: Space hard disk di partisi /tmp penuh alias full. Seperti kita ketahui bahwa default penyimpanan temporary session php ada di /tmp (sess_xxxxxxx). Sulitnya lagi adalah, bahwa ternyata partisi / sangat kecil sekali. Jadi yang saya lakukan adalah memindahkan temporary /tmp ke /var yang lebih besar, dan juga melakukan pemindahan beberapa folder non-system ke partisi yang lebih besar.

Konfirmasi dari user: Solved.
Pelajaran yang di dapat: Jika Anda menemukan kasus serupa, dimana tiba-tiba website/portal Anda tidak bisa menerima auth dengan benar, padahal Anda yakin user/password sudah benar maka coba periksa partisi temporary file Anda di sistem Anda (/tmp di linux)

Published by Kalpin Erlangga Silaen on 07 Oct 2009

Memperbaiki MySQL Database

Bagi Anda yang menjadi system administrator atau database administrator, khususnya yang berhubungan dengan sistem database mysql, pasti sering merasakan bahwa sistem terasa lambat, atau bahkan ada table yang rusak. Biasanya table atau database yang mengalami kerusakan disebabkan oleh server yang tidak proper di shutdown atau mungkin handler programnya yang tidak optimal. Tulisan kali ini, berisi panduan atau tips untuk memperbaiki table atau database yang rusak. Saya membagi 2 pilihan, yang mana bisa disesuaikan dengan kebutuhan anda. Hasilnya akan sama.
Beberapa asumsi:
- Anda menggunakan sistem operasi CentOS yang lokasi penyimpanan database mysql ada di direktori /var/lib/mysql
- Jika anda menggunakan sistem operasi lain, pastikan bahwa Anda memiliki myisamchk bawaan aplikasi mysql, dan sesuaikan dengan path atau direktori dimana database disimpan
- Anda backup seluruh database Anda dulu, sebelum dilakukan perbaikan
- Kerusakan database Anda oleh karena tip berikut, tidak menjadi tanggung jawab penulis :D
Continue Reading »

Published by Kalpin Erlangga Silaen on 07 Oct 2009

[Tips] psyBNC Hindari Spammer

TwistedShells_psyBNC_Tips.jpgBagi Anda yang sering menggunakan psyBNC, sering mendapat pesan spammer saat offline? maka dengan tip berikut, saatnya Anda bersih dari spammer saat Anda terputus dari server IRC (Internet Relay Chat).
Asumsi, supaya cara ini bermanfaat:
1. Anda menggunakan jaringan network DALnet atau AllNetwork, atau jika Anda cukup familiar dengan scripting di psyBNC maka script dibawah bisa Anda modifikasi/sesuaikan dengan IRC Network dimana Anda terkoneksi.
2. Anda mempunyai akses untuk menulis script ke psyBNC Anda, dan Anda adalah admin dari psyBNC anda.
3. Lokasi direktori Anda, adalah /home/$USERNAME/psybnc, dimana $USERNAME adalah login Anda ke shell.

Tipsnya adalah:
1. Login ke shell Anda
2. Masuk ke direktori script psyBNC Anda: cd $HOME/psybnc/scripts
3. Buat 1 file dengan nama DEFAULT.SCRIPT (huruf besar semua): touch DEFAULT.SCRIPT
4. Buka file DEFAULT.SCRIPT dengan editor yang anda sukai, misalnya menggunakan pico atau ee atau vi
pico DEFAULT.SCRIPT
5. Masukkan script berikut:
a. Untuk IRC Network AllNetwork
server NOTICE * * “*Notice from*” echo “mode $USERNICK +R”
b. Untuk IRC Network DALnet
server NOTICE * * “*For more information please visit*” echo “mode $USERNICK +Rws”
Script diatas akan membaca notice dari server dimana Anda terkoneksi, dan jika match maka, psyBNC Anda akan set +R nick Anda yang artinya, hanya nick yang teregister yang bisa kirim pesan ke psyBNC anda.
6. Dari IRC Client (misalnya mIRC) silahkan login ke psyBNC Anda, lalu ketik /sreload
Semoga bermanfaat

Published by Kalpin Erlangga Silaen on 20 Sep 2009

[Troubleshoot] Kernel: dst cache overflow

1_417120633m.jpgPernahkah anda mengalami masalah di server linux dengan pesan dibawah ini:

kernel: dst cache overflow
kernel: printk: 281 messages suppressed.
kernel: dst cache overflow
kernel: printk: 361 messages suppressed.
kernel: dst cache overflow

Jika iya, maka Anda bisa mengikuti troubleshoot dengan cara saya dibawah ini:

  • Cek routing cache yang ada di kernel: route -Cn | wc
    Anda akan melihat hasil seperti berikut: 4145 31077 314985 yang penting Anda lihat adalah angka pertama. Itu adalah current max cache yang ada di kernel Anda.
  • Cek isi max_size dari kernel cache Anda: cat /proc/sys/net/ipv4/route/max_size
  • Naikkan ukuran max_size tersebut: echo 32768 > /proc/sys/net/ipv4/route/max_size
  • Hal lain yang anda perlu pertimbangkan untuk optimize kernel (tanpa rekompilasi):

    echo 32768 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max
    echo 120 > /proc/sys/net/ipv4/neigh/default/gc_stale_time
    echo 512 > /proc/sys/net/ipv4/neigh/default/gc_thresh1
    echo 2048 > /proc/sys/net/ipv4/neigh/default/gc_thresh2
    echo 4096 > /proc/sys/net/ipv4/neigh/default/gc_thresh3

Semoga berguna.

Next »