Beberapa hari terakhir ini aku mengalami masalah ketika login ke Yahoo menggunakan Pidgin. Tadinya aku pikir Yahoo nya sendiri yang sedang bermasalah, tetapi aplikasi Yahoo Messenger yang aku gunakan di Windows tidak ada masalah sama sekali. Sementara Pidgin yang aku gunakan di Ubuntu tak mau login.
Setelah googling sana sini, akhirnya menemukan penjelasan yang sangat membantu dari link ini: http://www.celticwolf.com/useful-information/faqs/26-pidgin-yahoo. Yahoo tampaknya sedang melakukan upgrade pada beberapa servernya yang memerlukan metode autentikasi baru. Metode autentikasi ini konon akan didukung di Pidgin versi 2.6.0, yang belum di-release, sementara versi yang aku gunakan di Ubuntu adalah versi 2.5.5.
Pidgin menggunakan domain "scs.msg.yahoo.com" sebagai Pager Server default, dimana domain tersebut di-mapping ke banyak server dibelakangnya. Beberapa server tersebut telah diupgrade, sehingga bisa jadi sesekali waktu proses loginnya berhasil, dan di waktu yang lain gagal (kasus sekarang sih gagal terus, nggak pernah berhasil). Berdasarkan artikel tersebut, solusinya adalah dengan mengganti alamat Pager Server menjadi: cs101.msg.mud.yahoo.com atau 66.163.181.172. Aku mencoba yang pertama dan ternyata bisa.
Monday, June 22, 2009
Pidgin Bermasalah ketika Login ke Yahoo
Posted by
Eko Budi Prasetyo
at
09:31
7
comments
Thursday, April 23, 2009
Screen - Aplikasi Terminal Virtual
Screen merupakan salah satu utility yang belakangan ini sering aku gunakan dalam Unix khususnya ketika sedang me-remote server menggunakan SSH. Melalui screen, memungkinkan pengguna untuk membuat session baru. Dalam session ini, dapat dibuat beberapa terminal yang virtual. Meskipun pengguna yang membuat sesi screen telah logout ataupun koneksinya terputus, sesi yang telah dibuat akan tetap berjalan, sehingga bisa di-resume kemudian.
Fitur-fitur tersebut sangat bermanfaat ketika menjalankan sebuah proses secara remote melalui SSH. Terutama untuk proses-proses yang memakan waktu dan resource, tanpa perlu khawatir proses tersebut akan di-terminate ketika session SSH tiba-tiba terputus. Lebih terasa lagi manfaatnya jika koneksi jaringan dari client ke server yang sedang di-remote sangat terbatas, seperti misalnya melakukan SSH ke server melalui handphone dan menjalankan sebuah script yang memakan waktu.
Untuk menjalankan screen, hanya perlu mengetikkan:
screen
Perintah tersebut akan menjalankan shell yang baru, seperti shell yang biasa digunakan. Namun shell ini berada dalam sesi screen yang telah dijalankan sebelumnya. Di dalam sesi screen yang sedang aktif, ada beberapa perintah yang dapat dijalankan, dimana semuanya dimulai dengan Ctrl+a. Berikut ini adalah beberapa perintah yang dapat dilakukan dalam sesi screen:
Ctrl+a c: Membuat jendela terminal baru
Ctrl+a 1 ... Ctrl+a 9: Pindah ke terminal 1-9
Ctrl+a n: Pindah ke terminal selanjutnya
Ctrl+a p: Pindah ke terminal sebelumnya
Ctrl+a w: Melihat daftar jendela terminal dalam sesi yang aktif
Ctrl+a d: Detach - Keluar dari sesi yang sedang aktif.
Perintah ini akan mengembalikan shell ke shell yang digunakan untuk menjalankan screen. Sesi yang sebelumnya aktif akan tetap aktif. Untuk kembali ke sesi terakhir (re-attach) yang aktif, dapat menjalankan perintah:
screen -r
Jika ada beberapa sesi screen yang sedang aktif dan ingin kembali ke sesi tertentu dapat menjalankan perintah:
screen -r PID
Dengan PID adalah instance dari sesi screen yang dapat dilihat melalui perintah
screen -list
Perintah-perintah lain yang tersedia dalam sesi screen dapat diakses menggunakan perintah Ctrl+a ?
Posted by
Eko Budi Prasetyo
at
15:04
4
comments
Labels: Artikel, Iseng, IT, Ubuntu, Unix Shell
Wednesday, November 26, 2008
Konversi Format File Teks Windows ke Unix Menggunakan Shell
Windows dan Unix menggunakan format yang berbeda dalam file teks mereka. Pada Windows, setiap baris diakhiri dengan karakter ASCII line feed dan carriage return (\n\r). Sementara itu pada Unix masing-masing baris dipisahkan dengan karakter ASCII line feed saja (\n). Di Unix, file format teks ini akan menampilkan karakter carriage return dengan Ctrl-M (^M) pada setiap akhir barisnya. Sangat jelas terlihat ketika sedang menyunting file menggunakan perintah vi.
Walaupun beberapa editor di Windows maupun di Linux menyediakan fungsi untuk konversi dari dari format Windows ke Unix dan sebaliknya, ternyata ada solusi yang lebih sederhana, yaitu menggunakan shell command di Unix, dengan menggunakan perintah tr untuk menghapus karakter-karakter carriage return. Berikut ini adalah contoh perintahnya :tr -d '\r' <> output_file
Perintah diatas akan menghilangkan karakter carriage return pada file input_file dan menyimpannya ke dalam file output_file.
Untuk mengkonversi file secara batch, misalnya dalam satu direktori dan termasuk subdirektorinya, dapat menggunakan cara-cara berikut ini:
- Buat file script dengan nama misalnya
convert.shyang berisi: - Mengubah permission dari file convert.sh menjadi executable dengan menjalankan perintah:
- Menjalankan perintah berikut untuk mengkonversi file secara batch:
temp="/tmp/temp.tmp"
files=$@
for file in $files
do
tr -d '\r' < $file > $temp
mv $temp $file
donechmod +x convert.shfind [directory] -name [pattern] -type f | xargs ./convert.shMisalkan semua file berekstensi *.txt pada direktori
/home/test berikut subdirektorinya akan dikonversi, maka perintahnya adalah:find /home/test -name *.txt -type f | xargs ./convert.sh
Posted by
Eko Budi Prasetyo
at
19:00
7
comments
Labels: Artikel, Iseng, IT, Unix Shell
Sunday, November 16, 2008
Driver Bluetooth Toshiba pada Ubuntu
Beberapa waktu lalu, ketika aku masih menggunakan Ubuntu 8.04, perangkat bluetooth yang ada pada notebook Toshiba Portege M600-ku, tidak dikenali. Setelah berusaha mencari informasi mengenai cara instalasi driver bluetooth pada notebook Toshiba, akhirnya aku dapatkan juga informasi yang cukup berguna dari link berikut ini. Ternyata instalasinya tidak terlalu rumit seperti instalasi FingerPrint reader pada laptopku. Walaupun di link tersebut disebutkan instalasi driver bluetooth untuk Toshiba Satellite U400, namun setelah aku coba, ternyata masih applicable untuk Toshiba Portege M600-ku.
Berikut ini adalah langkah-langkah untuk melakukan instalasi driver bluetooth pada notebook Toshiba:
- Menambahkan packages berikut ini pada /etc/apt/sources.list:
- Jalankan perintah untuk melakukan sinkronisasi package index dari repository:
- Install package omnibook-source:
- Melakukan proses kompilasi kernel module dari package omnibook-source:
- Mengkonfigurasi agar module omnibook di load ketika startup dengan menambahkan baris:
- Buat file baru dengan nama omnibook.modprobe di dalam direktori /etc/modprobe.d dan tambahkan baris berikut:
- Untuk langsung menggunakan bluetooth tanpa me-reboot laptop, jalankan perintah berikut ini:
deb http://packages.kirya.net/debian/ sid main contrib non-free
deb-src http://packages.kirya.net/debian/ sid main contrib non-free
Walaupun package ini masih unstable, namun masih bisa digunakan.
apt-get update
apt-get install omnibook-source
m-a a-i omnibook-source
omnibook
ke dalam file /etc/modules
options omnibook ectype=14 userset=0 lcd=0 display=0 blank=0 battery=0 ac=0
modprobe omnibook ectype=14
Icon bluetooth akan langsung muncul pada panel Ubuntu dan bluetooth bisa langsung digunakan.
Note:
Sayangnya, pada Ubuntu 8.10 Intrepid Ibex, driver bluetooth ini masih harus diinstall secara manual. Namun cara di-atas masih bisa digunakan pada Ubuntu 8.10 kok.
Selamat mencoba!!
Posted by
Eko Budi Prasetyo
at
18:55
1 comments
Friday, November 07, 2008
New Gmail Mobile 2.0
Beberapa waktu lalu, Google merilis aplikasi Gmail for Mobile versi 2.0 yang bisa digunakan di handphone yang mendukung J2ME atau di BlackBerry. Aplikasi Gmail yang versi terdahulu, sebelumnya memang sudah aku gunakan dari dulu. Fitur-fiturnya menurutku sudah cukup untuk versi mobilenya. Tampilan nggak ribet dan cepat aksesnya.
Berbeda dengan versi sebelumnya, pada versi 2.0 ini aku menemukan beberapa fitur baru yang lumayan berguna. Diantaranya adalah:
- Menunya lebih banyak dibandingkan dengan versi sebelumnya. Banyaknya pilihan menu mencerminkan jumlah fitur yang semakin banyak.
- Email yang akan dikirimkan bisa disimpan terlebih dahulu dan bisa diakses di menu Mobile Drafts. Pada versi sebelumnya, tidak ada opsi ini.
- Versi saat ini telah terintegrasi dengan Contacts yang kita miliki di account Gmail. Dengan fitur ini, memudahkan pengguna untuk mencari kontak dan menampilkan informasi yang relevan. Selain itu, kontak bisa di look up ketika pengguna membuat email. Sangat membantu jika pengguna tersebut tahu nama kontaknya tapi tidak tahu alamat emailnya.
- Dukungan untuk multiple account. Melalui fitur ini, pengguna bisa membuka email dari beberapa account sekaligus. Cukup membantu jika pengguna tersebut memiliki lebih dari satu account dan memisahkan fungsi masing-masing account (misalnya account yang pertama untuk keperluan kerja, sementara yang lain untuk nyampah :p). Jadi untuk membuka account lain, tidak perlu sign out terlebih dahulu. Tinggal switch aja.
- Ada menu Chats yang menampilkan daftar percakapan yang pernah dilakukan, walaupun bacanya rada-rada nggak enak karena layarnya terbatas.
- Bisa offline. Tidak seperti versi sebelumnya yang harus online dulu ketika membuka aplikasi, pada versi terbaru ini, email-email terakhir / terbaru yang sebelumnya telah diambil dari server bisa dibaca secara offline. Artinya, pengguna bisa membaca dan membuat email tanpa perlu terhubung dengan internet terlebih dahulu. Email yang dikirimkan pada mode offline akan disimpan pada folder Outbox dan akan dikirimkan ketika aplikasi online.
- Performa yang lebih baik, yang menurutku diakibatkan oleh adanya fitur offline. Loading aplikasi menjadi lebih cepat, karena aplikasi hanya perlu mengambil data-data terakhir dari memory handphone.
- Shortcut yang lebih banyak dibandingkan dengan versi sebelumnya. Sayangnya pada beberapa menu, shortcutnya tidak ditampilkan. Untuk melihat semua shortcut yang tersedia, bisa mengaksesnya melalui Menu->Go to->Help.
Posted by
Eko Budi Prasetyo
at
14:51
0
comments
Thursday, May 01, 2008
Hardy Heron on Portege M600
Beberapa hari yang lalu, aku menginstall Ubuntu 8.04 Hardy Heron ke laptop Portege M600 ku. Udah nggak perlu pake upgrade lah. Langsung hajar aja, install ulang, menimpa instalasi Ubuntu Gutsy 7.10 yang sudah ada. Berhubung sejak awal partisi untuk /home sudah aku pisahkan dari partisi utamanya, nggak perlu khawatir ada data-data personal dan preference (shortcut, tampilan desktop, history, bookmark, dsb) yang hilang.
Performa dan Tampilan
Puas deh ama tampilannya, apalagi didukung dengan GNOME 2.22, Xorg 7.3 dan Kernel 2.6.24. Walaupun dari tampilan nggak berbeda jauh dengan pendahulunya, untuk versi yang ini kurasa ada penambahan performa. Kerasa lebih kenceng dibandingkan dengan Gutsy. Bagi pengguna Gutsy, kusarankan untuk mengupgrade ke Hardy. Bakalan kerasa deh peningkatan performanya.
Tidak seperti pada Gutsy, dimana pertama kali install resolusi desktopnya rada-rada bermasalah di Portege M600. Mana VGA card nya masuk black list (atau memang belum di-support), jadi nggak bisa pake compiz kalo nggak diutak-atik dulu. Sekarang sudah diperbaiki di Hardy.
Suara
Sound Card Portege M600 (Realtek ALC268) dikenali dengan baik, dan yang penting suaranya keluar. Seneng banget ketika setelah proses login, keluar deh suara start up Ubuntu yang khas. Pada Ubuntu 7.10 sebelumnya sound cardnya dikenali, tapi suaranya nggak keluar. Waktu itu sempet puyeng karena solusinya nggak ketemu juga. Akhirnya bisa keluar juga setelah menginstall module backport nya Ubuntu.
Firefox 3 beta 5
Nggak terlalu ngeh dengan fitur-fitur baru yang ada di firefox terbaru ini. Yang paling berasa sih fungsi autocomplete pada address bar nya yang berasa lebih 'keren' dan lebih cerdas. Keyword yang diketik pada address bar selain dicari pada history alamat web yang dikunjungi, juga akan dicari pada judul bookmark dan tag yang diberikan pada bookmark.
Fitur lain yang menurutku lumayan menarik adalah fitur untuk menyimpan session dari tab yang sedang dibuka. Ketika aplikasi firefox akan ditutup, muncul dialog konfirmasi yang meminta pengguna untuk memilih menyimpan session semua tab yang sedang dibuka atau tidak. Jika session tab nya disimpan, maka nanti ketika firefox dijalankan lagi, semua tab yang terbuka sebelumnya, akan dibuka kembali. Jika dulu pengguna harus menginstall Add-On tambahan seperti Session Saver, sekarang sudah tidak diperlukan lagi karena sudah terintegrasi.
Authorizations
Ada fitur baru yang namanya Authorizations / Policy Kit yang bisa diakses dari System->Administration->Authorizations. Fitur PolicyKit ini memungkinkan aplikasi-aplikasi administratif seperti pengaturan waktu, pengaturan user dan group, dan lain sebagainya dapat dijalankan dengan menggunakan priveledge user biasa, bukan sebagai root. User biasa tersebut dapat melakukan perubahan konfigurasi pada aplikasi-aplikasi administratif dengan mendapat priveleges khusus.
Masih belum ngerti banget ama fungsi sebenarnya dari PolicyKit ini. Tapi sepertinya dengan PolicyKit ini urusan-urusan yang bersifat administratif jadi lebih gampang ngaturnya. Bisa mengatur user mana saja yang dapat mengakses fungsi-fungsi administratif tertentu dan mana yang tidak.
Wubi
Wubi memungkinkan user untuk meng-install Ubuntu di dalam partisi Windows tanpa perlu membuat pertisi sendiri secara terpisah. Dan bisa di uninstall pula lagi. Minimal space yang tersedia sekitar 5GB untuk bisa digunakan. Ketika instalasi ukuran partisi instalasinya dapat diatur sesuai dengan kapasitas free space yang ada pada partisi yang akan diinstall. Ukuran minimal partisi instalasinya adalah 4GB. Pada dasarnya, Wubi membuat semacam hard disk virtual pada partisi yang telah ada. Lalu pada saat boot, hard disk virtual tersebut di load jadi seolah-olah menjadi seperti partisi sendiri yang terpisah. CMIIW. Walaupun katanya performanya sedikit menurun dibandingkan jika diinstall pada partisi sendiri, kurasa perbedaannya nggak terlalu terasa.
Fitur ini cocok untuk pengguna Windows yang tertarik untuk mencoba Ubuntu dan nggak mau ribet pada saat instalasinya. Terbukti beberapa temen kantorku berhasil kuracunin untuk menggunakan Ubuntu karena fitur ini. Buat yang sudah bosen dengan virus-virus yang berkeliaran di Windows, nggak ada salahnya untuk mencoba Wubi :P.
Posted by
Eko Budi Prasetyo
at
00:13
3
comments
Saturday, December 29, 2007
Me-Restore Grub Ubuntu Setelah Instalasi Windows
Berhubung kemaren udah berhasil install Windows XP di notebook ku, MBR hard disknya ditimpa oleh instalasi Windowsnya. Jadinya, sekarang ketika booting, Grub nya tidak muncul. Setelah mendapatkan informasi yang cukup dari internet, Grub bisa di restore menggunakan Live CD Ubuntu. Berikut ini adalah langkah-langkah yang aku lakukan untuk me-restore Grub:
- Jalankan terminal window dari Live CD
- Mount partisi root instalasi Ubuntu yang telah terpasang sebelumnya.
// Membuat mount point
$ sudo mkdir /mnt/root
// Mount partisi partisi root ke mount point
$ sudo mount -t ext3 /dev/sda5 /mnt/root
Jika tidak yakin partisi mana yang berisi root, bisa dijalankan perintah berikut untuk menampilkan semua partisi yang ada:$ sudo fdisk -l
Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x8d9aa1ca
Device Boot Start End Blocks Id System
/dev/sda1 1 192 1536000 27 Unknown
Partition 1 does not end on cylinder boundary.
/dev/sda2 * 192 5414 41943040 7 HPFS/NTFS
/dev/sda3 5414 10513 40960000 7 HPFS/NTFS
/dev/sda4 10514 14593 32772600 5 Extended
/dev/sda5 10514 12701 17575078+ 83 Linux
/dev/sda6 12702 13005 2441848+ 82 Linux swap / Solaris
/dev/sda7 13006 14593 12755578+ 83 Linux - Mount proc subsystem dan udev ke dalam /mnt/root
$ sudo mount -t proc none /mnt/root/proc
$ sudo mount -o bind /dev /mnt/root/dev - Mengubah root ke partisi root instalasi Ubuntu sebelumnya
$ sudo chroot /mnt/root /bin/bash - Jalankan grub
$ sudo grub - Kemudian akan muncul prompt grub>
Perintah-perintah selanjutnya akan dijalankan dalam prompt grub> - Mencari file /goot/grub/stage1
grub> find /boot/grub/stage1
Perintah ini akan mencari file /boot/grub/stage1 dan menampilkan partisi yang berisi file tersebut. Untuk kasusku keluaran dari perintah diatas adalah:(hd0,4) - Jalankan perintah berikut
grub> root (hd0,4)
untuk mengatur agar partisi tersebut di set sebagai root dan melakukan mounting ke partisi tersebut. Aku juga kurang ngerti perintah ini untuk apa :P. Tapi sepertinya sih untuk mengkonfigurasi partisi tersebut untuk bootloadernya.
Parameter di depan perintah root disesuaikan dengan hasil yang didapat dari langkah ke 7. - Install grub pada MBR di hard disk pertama:
grub> setup (hd0)
Jika berhasil, output dari perintah tersebut seperti berikut ini :Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 17 sectors are embedded.
succeeded
Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,4)/boot/grub/stage2
/boot/grub/menu.lst"... succeeded
Done. - Keluar dari grub dengan perintah quit lalu restart.
Posted by
Eko Budi Prasetyo
at
11:08
6
comments
Wednesday, December 26, 2007
Meng-Install Windows XP di Toshiba Portege M600
Secara default, sistem operasi yang terpasang pada notebook Toshiba Portege M600 E360 punyaku adalah Windows Vista. Karena notebook ini menggunakan hard disk SATA, aku jadi agak ragu apakah sebenarnya notebook ini bisa diinstall Windows XP atau tidak. Terlebih lagi di BIOS nya tidak ada pilihan konfigurasi hard disk SATA, yang biasanya bisa diatur menjadi mode AHCI atau IDE. Jika menggunakan mode IDE maka penggunaan hard disk SATA tidak berbeda dengan hard disk PATA yang terdahulu. Sementara jika menggunakan mode AHCI diperlukan driver khusus. Driver ini digunakan agar kemampuan hard disk SATA yang tidak ada di hard disk PATA bisa digunakan, seperti hot plug dan NCQ (Native Command Queuing).
Driver SATA ini harus di load ketika pertama kali menjalankan aplikasi setup Windows XP. Biasanya ketika muncul "Press F6 if you need to install a third party SCSI or RAID driver...", tekan F6 dan masukkan driver AHCI SATA ke dalam floppy disk. Jadi nanti aplikasi setup nya akan me-load drivernya dari floppy disk. Masalahnya adalah notebook jaman sekarang kan sudah nggak ada floppy disknya lagi. Sebenarnya masalahnya bisa langsung beres jika mode hard disknya bisa diubah ke IDE, cuma sayangnya tidak ada konfigurasinya di BIOS.
Setelah browsing sana-sini, aku menemukan link-link yang cukup membantu dari sini dan dari sini.
Ternyata ada aplikasi yang namanya nLite. Aplikasi freeware ini dapat digunakan untuk melakukan kustomisasi CD instalasi Microsoft Windows XP, 2000, dan 2003. Jadi dengan menggunakan aplikasi ini, instalasi Windows XP dapat dikonfigurasi sehingga nantinya driver AHCI untuk hard disk SATA dapat dimasukkan ke dalam installer dan otomatis akan di load ketika menjalankan aplikasi setup nya.
Jadi, langkah-langkah yang perlu dilakukan untuk meng-install Windows XP di Toshiba Portege M600 (dan mungkin applicable untuk tipe notebook lain yang menggunakan SATA AHCI) adalah sebagai berikut:
- Unduh aplikasi nLite dari sini : http://www.nliteos.com/download.html
- Aplikasi nLite ini membutuhkan .NET Framework 2.0. Jika belum terinstall, .NET Framework 2.0 dapat diunduh dari sini
- Unduh driver AHCI. Untuk Toshiba Portege M600, chipset yang digunakan adalah Intel G965 Express Chipset. Untuk drivernya, dapat diunduh di: sini. File driver AHCI tersebut bernama iata78_enu.exe. Kalau tipe chipset notebook yang dimaksud tidak ada di dalam daftar, tinggal googling aja. Kalau chipsetnya masih Intel sih harusnya bisa disearch di website Intel nya.
- Eksekusi file iata78_enu.exe -a dengan menggunakan priveledge administrator. Option -a hanya akan meng-extract driver AHCI ke direktori [Program Files]\Intel\Intel Matrix Storage Manager\Driver\
- Jalankan nLite.
- Browse ke direktori tempat file-file instalasi Windows XP disimpan.
- Pilih Integrate Drivers dan Create Bootable ISO.
- Pada tampilan Integrate Drivers, pilih Insert->Multiple driver folder. Lalu pilih folder [Program Files]\Intel\Intel Matrix Storage Manager\Driver\ (lokasi tempat driver AHCI di-extract).
- Pada tampilan selanjutnya, akan ditampilkan list driver AHCI/RAID. Pastikan mode yang dipilih adalah Textmode driver. Toshiba Portege M600 menggunakan AHCI Controller Intel(R) 82801HEM/HBM SATA AHCI Controller (Mobile ICH8M-E/M). Jadi pilih driver tersebut. Atau kalau mau sih sekalian aja di-add semuanya. Jadi bisa digunakan juga untuk notebook lain yang menggunakan chipset yang lain juga.
- Kemudian pilih Direct Burn untuk melakukan proses burning installer yang telah dimodifikasi ke dalam CD kosong. Atau pilih Create Image untuk menyimpan installernya kedalam format ISO.
- Selanjutnya install Windows XP seperti biasa.
- Sebagian driver bawaan Portege M600 hanya dapat digunakan di Microsoft Windows Vista. Jadi, beberapa tidak bisa digunakan di Windows XP. Driver-driver Portege M600 untuk Windows XP, dapat diunduh dari sini.
Sempat panik juga setelah selesai meng-install Windows XP, ternyata driver untuk Graphics Card nya nggak kompatibel di XP, karena memang untuk Windows Vista. Meng-install driver yang diunduh dari website Intel juga nggak bisa, karena sepertinya hanya mau diinstall menggunakan driver yang dikasih langsung dari manufakturnya. Beruntung Toshiba menyediakan driver Portege M600 untuk Windows XP.
Posted by
Eko Budi Prasetyo
at
17:25
112
comments
Friday, December 21, 2007
FingerPrint Reader di Ubuntu Gutsy
Berhubung notebook yang aku gunakan memiliki FingerPrint Reader device, rasanya sayang aja kalau nggak bisa aku gunakan di Ubuntu. Lagipula aku sekarang udah jarang menggunakan Windows di notebook yang biasa aku gunakan. Cuma berhubung notebook Toshiba Portege M600 ku memang dirancang untuk Windows, jadi ada beberapa fitur-fiturnya yang kalau mau digunakan di Ubuntu mesti diutak-atik sendiri, salah satunya ya FingerPrint Reader itu.
Setelah mencoba googling, aku temukan package yang bernama ThinkFinger (dapat dilihat di https://wiki.ubuntu.com/ThinkFinger). Menurut sumber tersebut package tersebut dapat digunakan di hampir semua notebook Lenovo/Thinkpad, Dell, dan Toshiba. Beruntung notebook punyaku masuk daftar :P
Instalasi
Menggunakan Package
Versi terakhir package Thinkfinger ini adalah 0.3. Versi 0.3 ini dapat diunduh dengan menambahkan
deb http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse
deb-src http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse
di /etc/apt/sources.list lalu kemudian jalankan
sudo apt-get install thinkfinger-tools libpam-thinkfinger
untuk melakukan proses instalasi
Menggunakan Source
- Unduh source Thinkfinger dari http://sourceforge.net/project/showfiles.php?group_id=179573
- Install package-package yang diperlukan untuk proses kompilasi:
- Membuat direktori yang akan menyimpan informasi biometric user: sudo mkdir /etc/pam_thinkfinger
- Extract source thinkfinger, lalu jalankan perintah berikut pada direktori thinkfinger untuk melakukan proses kompilasi dan instalasi:
- Jika semuanya berjalan dengan lancar, akan ditemukan file pam_thinkfinger.so di /lib/security
sudo apt-get install build-essential libtool libusb-dev libpam0g-dev pkg-config
sudo ./configure --prefix=/usr --sysconfdir=/etc --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger
sudo make
sudo make install
Menguji FingerPrint Reader
Untuk menguji apakah driver FingerPrint telah terinstall dengan sempurna, dapat digunakan aplikasi tf-tool. Perintah yang digunakan adalah tf-tool --acquire untuk melakukan scan sidik jari dan tf-tool --verify untuk menguji hasil scan yang diproses dari perintah tf-tool --acquire.
amphie@amphie:~$ sudo tf-tool --acquire
ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig
Initializing... done.
Please swipe your finger (successful swipes 3/3, failed swipes: 0)... done.
Storing data (/tmp/test.bir)... done.
amphie@amphie:~$ sudo tf-tool --verify
ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig
Initializing... done.
Please swipe your finger (successful swipes 1/1, failed swipes: 0)... done.
Result: Fingerprint does match.
Konfigurasi PAM (Pluggable Authentication Modules)
Agar dapat digunakan untuk proses autentikasi, maka perlu dilakukan konfigurasi pada PAM agar menggunakan Thinkfinger.
Modifikasi file /etc/pam.d/common-auth sehingga isinya seperti berikut: sudo tf-tool --add-user [nama-user]Menambahkan data sidik jari ke database dengan menggunakan perintah sudo tf-tool --verify-user [nama-user]Untuk melakukan verifikasi sidik jari dari database, dapat menggunakan perintah
auth required pam_unix.so try_first_pass nullok_secure
ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig
Initializing... done.
Please swipe your finger (successful swipes 3/3, failed swipes: 0)... done.
Storing data (/etc/pam_thinkfinger/amphie.bir)... done.
amphie@amphie:~$ sudo tf-tool --verify-user amphie
ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig
Initializing... done.
Please swipe your finger (successful swipes 1/1, failed swipes: 0)... done.
Result: Fingerprint does match.
Nah, sekarang FingerPrint Reader nya sudah dapat digunakan untuk login dari GDM atau ketika diminta password pada saat mengeksekusi perintah dengan menggunakan priveledge su seperti dibawah ini:
amphie@amphie:~$ sudo tf-tool --acquire
Password or swipe finger:
.
.
.
Beberapa masalah pada Tinkfinger-0.3
gksu/gksudo tidak berfungsi dengan benar. Ketika aplikasi dijalankan menggunakan priveledge su, seperti misalnya synaptic, tidak akan muncul prompt untuk memasukkan password di layar. Namun, pengguna harus melakukan autentikasi sidik jari agar aplikasi yang dijalankan bisa tampil di layar. Fingerprint tidak digunakan untuk meng-unlock screen yang telah di-lock. Untuk melakukan unlock pengguna harus mengetikkan password. Masalah ini terjadi karena direktori /etc/pam_thinkfinger tidak dapat diakses oleh pengguna selain root. Sementara itu aplikasi gnome-screensaver yang digunakan untuk me-lock screen tidak berjalan dengan priveledge root. Solusi dari masalah ini adalah sebagai berikut : Menambahkan group baru, misalnya fingerprint: Menyimpan baris-baris berikut ke dalam file /etc/udev/rules.d/60-thinkfinger.rules (perlu dilakukan reboot): Menambahkan user ke dalam group fingerprint: Membuat user menjadi owner file biometric nya (file [nama_user].bir): Memberikan akses readonly pada file biometric untuk user: Memberikan akses executeonly kepada setiap user untuk mengakses direktori /etc/pam_thinkfinger/:
Konon katanya masalah ini disebabkan karena gksu/gksudo 'tidak mengenali' prompt "Password or swipe finger:", tetapi hanya mengenali prompt "Password:".
Masalah ini dapat diselesaikan dengan menyunting file /pam/pam_thinkfinger.c dari source dan mengubah isi dari baris 181-184 menjadi seperti berikut:
if (pam_thinkfinger->isatty)
pam_prompt (pam_thinkfinger->pamh, PAM_PROMPT_ECHO_OFF, &resp, "Password or swipe your finger: ");
else
pam_prompt (pam_thinkfinger->pamh, PAM_PROMPT_ECHO_OFF, &resp, "Password: ");
Kemudian compile ulang source nya menggunakan cara yang telah dijelaskan diatas.
# SGS Thomson Microelectronics Fingerprint Reader
SYSFS{idVendor}=="0483", SYSFS{idProduct}=="2016", SYMLINK+="input/thinkfinger-%k", MODE="0660", GROUP="fingerprint"
# the also-needed uinput device
KERNEL=="uinput", MODE="0660", GROUP="fingerprint"
sudo gpasswd -a [nama_user] fingerprint
sudo chown [nama_user]:root /etc/pam_thinkfinger/[nama_user].bir
sudo chmod 400 /etc/pam_thinkfinger/[nama_user].bir
sudo chmod o+x /etc/pam_thinkfinger
Thursday, November 15, 2007
SOCKS Proxy dengan SSH
Berhubung di kantor ada akses ke server yang terhubung langsung ke internet (dalam artian nggak lewat proxy lagi), aku bisa membuat SOCKS Proxy dengan menggunakan ssh. Karena di kantor menggunakan proxy, jadi akses ke luar menggunakan port-port selain port 80 diblok. Dengan menggunakan SOCKS Proxy, lumayan lah jadi bisa akses port-port lain seperti FTP, IMAP, dan SMTP.
Dengan menggunakan perintah :
ssh -D
contoh : ssh -D 1080 user@10.1.1.1
maka setelah terkoneksi ke server 10.1.1.1 akan dibuat SOCKS Proxy di localhost:1080. Email Client seperti Thunderbird pun bisa digunakan dengan menggunakan Socks Proxy yang telah dibuat ini. Untuk keperluan browsing di Firefox, cuma perlu mengatur agar proxy yang digunakan adalah Socks Host dan mengisi alamatnya dengan localhost atau 127.0.0.1 di port 1080.
Sebagai informasi tambahan, karena menggunakan koneksi SSH yang notabene secure, jadi semua paket yang masuk dan keluar akan dienkripsi dulu. Lebih aman dan nggak akan bisa di snoop dengan mudah.
Posted by
Eko Budi Prasetyo
at
16:00
3
comments
Tuesday, November 13, 2007
Mencoba DewaLinux
Beberapa hari yang lalu tanpa sengaja aku mendengar istilah DewaLinux dari seorang teman. Karena penasaran, aku coba googling untuk mendapatkan informasi lebih lanjut mengenai DewaLinux. Berdasarkan informasi yang aku dapatkan, DewaLinux merupakan distro turunan dari Ubuntu yang dikembangkan oleh aktivis Open Source Jember. Distro ini memiliki tampilan yang mirip dengan Windows XP. Hmm... bagi pengguna Windows yang mau migrasi ke Linux, distro ini sepertinya layak untuk dicoba.
Sayangnya aku belum sempet untuk mencoba meng-install distro ini. Males juga karena mesti menyediakan partisi baru untuk DewaLinux ini. Selain itu, aku kan udah pake Ubuntu. Berhubung distro ini adalah turunan dari Ubuntu, jadinya kupikir ujung-ujungnya bedanya nggak akan jauh. Jadinya, aku cuma menjalankan distro ini menggunakan emulator VirtualBox dari Ubuntu ku. Sengsara juga karena Ubuntu yang berjalan di laptop yang aku gunakan berjalan dengan memori yang pas-pasan, 512 MB. Dan berbagi memori dengan VirtualBox ternyata sangat menyita resource. Syukur juga bisa mengambil beberapa screenshot dari live CD nya. Akhirnya, karena nggak sanggup dengan lambatnya, aku nggak install distro ini. Cukup lah menjalankan live CD nya aja.
Berikut ini adalah beberapa screenshot yang diambil dalam VirtualBox:


Ternyata DewaLinux menggunakan XFCE sebagai desktop environmentnya. Maklum sih aku baru pertama kali ini pakai XFCE, jadinya nggak terlalu ngeh dengan tampilan desktopnya. Memang sih aku akui icon-icon dan theme nya mirip sekali dengan Windows XP. Sayangnya icon-icon bawaan distro ini menurutku terkesan nggak serasi dengan theme Windows XP nya. Lagipula, aku udah terlanjur suka ama GNOME dengan theme Gartoon nya.
Posted by
Eko Budi Prasetyo
at
21:22
3
comments
Tuesday, November 06, 2007
HSDPA I'm coming...
HSDPA (High Speed Downlink Packet Access) merupakan teknologi lanjutan dari 3G yang memungkinkan kecepatan transfer data yang lebih tinggi. Dengan HSDPA, kecepatan transfer untuk downlink bisa mencapai 3.6 Mbps, sementara untuk uplinknya sekitar 384 Kbps. Lumayan beda jauh jika dibandingkan dengan 3G yang kecepatan transfer untuk downlink dan uplink nya masing-masing 384 kbps dan 64 kbps.
Setelah beberapa waktu lalu memastikan bahwa rumahku telah ter-cover jaringan HSDPA (pake HP HSDPA, dan itupun minjem :P), akhirnya kemaren aku meminjam (lagi, dan dari orang yang sama pula lagi) USB Modem Huawei E220 yang memang dijual sepaket dengan paket penjualan Telkomsel Flash. Setelah mencoba USB Modemnya, sepertinya jaringan HSDPA di rumahku belum stabil. Sinyalnya nggak sekuat 3G. Tapi cukuplah untuk sekedar mencoba.
Seperti biasa, yang pertama kali dicoba adalah tentu saja speed transfernya. Pengujian kecepatan transfernya menggunakan speedtest. Hasil yang didapatkan ternyata tidak terlalu buruk. Inilah hasil pengujian kecepatannya dengan menggunakan beberapa server:
Pagi ini, setiba di kantor, aku coba tes lagi menggunakan USB Modem. Ternyata perbedaan kecepatannya lumayan juga. Agak-agak aneh juga ketika menguji dengan server di Tokyo. Perbedaan kecepatan downlink dan uplinknya jauh banget. Ini hasil pengujian selengkapnya dari kantor:
Dengan melihat perbedaan hasil pengujian antara di kantor dan di rumah, sepertinya memang jaringan HSDPA di rumah belum terlalu bagus. Tapi paling nggak kecepatan transfernya lumayan lah jika dibandingkan dengan 3G. Hmm... Sayangnya USB Modemnya cuma pinjem. Hari ini mesti dibalikin lagi. Jadi pengen beli.. :(, tapi sepertinya nggak worth. Jadi penasaran ama Nokia 6120 classic niy...
Posted by
Eko Budi Prasetyo
at
09:56
0
comments
Saturday, November 03, 2007
Mudahnya konek ke internet menggunakan Ubuntu
Semenjak install Ubuntu Gutsy Gibbon di laptop, aku nggak pernah mencoba untuk konek ke internet selain menggunakan WiFi atau kabel LAN di kantor. Di rumah, sekarang udah rada-rada jarang untuk online. Sepulang kerja maunya cepet-cepet tidur. Biar bisa bangun lebih pagi keesokan harinya.
Kebetulan hari ini aku pulang ke Ciamis. Dan ketika mau coba konek ke internet lewat Ubuntu, aku baru sadar kalo Ubuntu nya sudah aku upgrade. Dan belum sempet install package macem-macem lagi. Biasanya sih dulu konek ke internet menggunakan media bluetooth. Berhubung bluetoothnya lupa kubawa, jadinya yang memungkinkan cuma melalui kabel data. Untungnya kabel data N70 ku selalu kubawa.
Untungnya konfigurasi untuk konek ke internetnya nggak ribet. Tinggal mengedit file /etc/wvdial.conf yang isinya kira-kira seperti ini:[Dialer Defaults]
modem = /dev/ttyACM0
baud = 460800
init1 = AT
init2 = AT+CGDCONT=1, "IP", "flash"
phone = *99#
Username = ''
Password = ''
Stuppid Mode = yes
Berhubung aku pakai Telkomsel Flash, maka settingan init2 nya seperti diatas. Belum aku coba juga sih menggunakan operator dan handset tipe lain. Seharusnya nggak jauh beda.
Semakin seneng aja pake Ubuntu. Ga perlu install macem-macem udah bisa konek ke internet dengan mudah. Berbeda dengan menggunakan Windows. Dimana aku mesti install dan menjalankan Nokia PC Suite terlebih dahulu untuk konek ke internet. Mana aplikasinya lumayan makan memori juga lagi. I Love Ubuntu... ;)
Posted by
Eko Budi Prasetyo
at
23:33
2
comments
Saturday, October 20, 2007
Ubuntu 7.10.. bagus.. tapi...
Seneng juga akhirnya bisa mengunduh dan meng-install Ubuntu 7.10 (Gutsy Gibbon) yang baru release tanggal 18 kemarin. Walaupun cuma bisa dapet yang versi CD nya, karena versi isi DVD nya entah kenapa aksesnya lambat banget ketika mau diunduh. Akhirnya ya... terima sajalah versi CD nya.
Kesan pertama sih sepertinya nggak beda jauh-jauh amat sama versi yang sebelumnya. Cuma sepertinya lebih reliable dan lebih bagus. So far belum sempet mencoba macem-macem karena memang baru sempet install. Yang kelihatan jelas pertama kali adalah adanya dua applet baru di panel bagian atas. Kedua applet tersebut adalah fast user switching applet dan deskbar applet.
Fast user switching memungkinkan session antar user yang berbeda. Kalo pengguna komputernya cuma satu sih nggak ngefek sepertinya.
Sementara deskbar applet memungkinkan akses cepat ke suatu kata kunci yang diberikan. Bisa berupa menjalankan aplikasi sesuai dengan kata kunci yang dicari, mencari kata kunci tersebut di internet menggunakan berbagai macam search engine, menampilkan file atau folder yang sesuai dengan pencarian, dan lain sebagainya.
Hmm.. walaupun lumayan bagus, penggunaan memorynya pun cukup boros. Jika diurutkan berdasarkan penggunaan memory, masih dibawah firefox lah :P..
Fitur-fitur baru Ubuntu 7.10 secara lengkap dapat dilihat di http://www.ubuntu.com/getubuntu/releasenotes/710tour
Yang bikin sebel adalah akses ke repositorynya yang lambatnya minta ampun. Padahal cuma mau update repository nya dengan perintah apt-get update aja lamanya minta ampun. Terakhir, mencoba dari kambing juga sama aja, walaupun agak mendingan sih. Seharian belum kelar. Mungkin karena baru rilis, jadinya banyak yang akses. Aaargh... updatenya aja nggak kelar-kelar apalagi install package nya :((
Posted by
Eko Budi Prasetyo
at
22:10
4
comments
Sunday, September 30, 2007
Layanan 3G Telkomsel di Ciamis
Weekend ini aku pulang kampung ke Ciamis. Berhubung Lebaran ini aku nggak pulang, jadinya aku sempatkan untuk pulang menjenguk kakek nenekku di Ciamis ini.
Ketika sampai di Ciamis, aku sempet kaget karena di layar handphoneku muncul indikator jaringan 3G. "Nggak salah nih?" pikirku. Sejauh yang aku tahu, jaringan 3G Telkomsel sampai saat ini baru di launch di kota-kota besar saja. Paling nggak di ibukota propinsi atau kota-kota besar yang strategis lainnya seperti Bogor dan Malang. Nggak pernah terbayang sebelumnya jika jaringan 3G akan ada di kota kecil seperti Ciamis.
Kata temanku yang disini, jaringan 3G nya memang baru beberapa hari ini ada. Dan ketika ditanyakan ke Call Center nya memang belum ada informasi mengenai keberadaan jaringan 3G di Ciamis. Entah memang belum di-update atau memang baru sebatas uji coba saja atau bisa jadi karena Ciamis memang berada di jalur mudik.
Dari sudut pandangku, layanan 3G tidak hanya berhubungan dengan layanan video call saja. Bagiku 3G berarti kemampuan transfer data yang lebih cepat dibandingkan layanan 2G. 3G juga berarti aku bisa menggunakan Telkomsel Flash :P. Setelah aku coba menggunakan Telkomsel Flash di Ciamis, kecepatan yang aku dapatkan ternyata 'lumayan' lah mengingat Ciamis adalah kota kecil. Jika dibandingkan dengan kota Jakarta sih jelas saja kalah jauh. Kecepatan transfer yang aku dapatkan untuk download dan upload ke server lokal Jakarta adalah 193 kbps untuk download dan 48 kbps untuk upload. Lumayan lah, untuk download kecepatan yang aku dapatkan adalah setengah dari kecepatan yang aku dapatkan jika melakukan benchmark dari Jakarta. Sementara itu untuk upload, memang kisarannya tak akan jauh-jauh dari 50 - 60 kbps. Karena untuk 3G secara teoritis kecepatan upload maksimumnya adalah 64 kbps.
Semoga saja implementasi 3G di Ciamis ini bukan cuma sekedar uji coba saja. Tapi berlaku hingga seterusnya. ;)
Posted by
Eko Budi Prasetyo
at
15:47
4
comments
Tuesday, July 10, 2007
Telkomsel Flash pada Ubuntu
Akhirnya.. setelah melakukan browsing sana-sini, beberapa hari yang lalu kutemukan juga cara untuk membangun koneksi ke internet menggunakan bluetooth pada N70 punyaku di Ubuntu. Sumber artikel yang aku dapat dapat dilihat disini. Agak telat juga siy dapet informasinya. Harusnya bisa dari dulu. Cuma karena dulu masih males untuk mencari caranya, ya baru nemunya sekarang. Lumayan lah, akhirnya aku bisa juga menginstall package-package baru melalui Telkomsel Flash ini, tidak perlu tergantung pada DVD Repository Ubuntu lagi, yang terkadang package-package nya nggak update.
Ternyata caranya agak-agak rumit. Semuanya harus dilakukan melalui shell prompt. Yang diperlukan adalah handset yang memiliki fasilitas bluetooth (dan support untuk Dial Up Networking juga tentunya) dan bluetooth USB untuk menghubungkan komputer dengan handset.
Berikut ini adalah langkah-langkahnya:
1. Install package Bluetooth dan Dialup. Jika sudah menginstall package ubuntu-desktop, maka perintah di bawah ini dapat dilewati. Sebaliknya, jalankan perintah berikut ini untuk menginstal package bluez-utils, bluez-pin dan ppp.
sudo apt-get install bluez-utils bluez-pin ppp wvdial
2. Pastikan bluetooth USBnya sudah terpasang pada komputer. Biasanya sih jika bluetooth USB nya sudah terpasang, akan muncul icon Bluetooth pada panel di GNOME desktop nya. Atau dapat pula dijalankan perintah hcitool dev untuk memastikan apakah bluetooth USB nya sudah terpasang dengan benar. Pada contoh kali ini hasil yang ditampilkan adalah:
Devices:
hci0 00:10:60:AB:06:85
3. Pastikan service bluetooth telah aktif. Perintah untuk mengaktifkan service bluetooth adalah :
sudo /etc/init.d/bluetooth start
4. Nyalakan bluetooth pada handset.
5. Scan alamat MAC address dari handset. Perintah yang dijalankan adalah hcitool scan:
Scanning ...Alamat MAC N70 punyaku adalah 00:18:0F:C1:3D:B0 dengan nama Amaya II.
00:18:0F:C1:3D:B0 Amaya II
6. Mencari channel untuk Dial Up Networking (DUN) yang ada pada handset dengan menggunakan sdptool search DUN:
Inquiring ...Pada contoh disini, layanan untuk DUN ada pada channel 3.
Searching for DUN on 00:18:0F:C1:3D:B0 ...
Service Name: Dial-Up Networking
Service RecHandle: 0x1000f
Service Class ID List:
"Dialup Networking" (0x1103)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 3
Language Base Attr List:
code_ISO639: 0x454e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100
7. Melakukan binding handset bluetooth pada handset menggunakan rfcomm. Format perintahnya adalah rfcomm bind [no device bluetooth] [alamat MAC bluetoth pada handset] [channel]
sudo rfcomm bind 0 00:18:0F:C1:3D:B0 38. Menyunting file konfigurasi wvdial yang terletak pada /etc/wvdial.conf. Ubah isinya menjadi seperti berikut:
[Dialer Defaults]
modem = /dev/rfcomm0
baud = 460800
init1 = AT
init2 = AT+CGDCONT=1, "IP", "flash"
phone = *99#
Username = ''
Password = ''
Stuppid Mode = yes
Field init1 dan init2 merupakan konfigurasi ekstra yang akan dipanggil ketika melakukan inisialisasi. Nilainya bisa berbeda-beda untuk masing-masing operator. Pada field init2, disertakan pula APN yang digunakan, yaitu flash. Berhubung pada Telkomsel Flash tidak diperlukan username dan password, maka nilainya dikosongkan.
9. Yang terakhir adalah membuka koneksi ke internet dengan menggunakan perintah wvdial.
--> WvDial: Internet dialer version 1.56
--> Cannot get information for serial port.
--> Initializing modem.
--> Sending: AT
AT
OK
--> Sending: AT+CGDCONT=1, "IP", "flash"
AT+CGDCONT=1, "IP", "flash"
OK
--> Modem initialized.
--> Sending: ATDT*99#
--> Waiting for carrier.
ATDT*99#
CONNECT
~[7f]}#@!}!} } }2}#}$@#}!}$}%\}"}&} }*} } g}%~
--> Carrier detected. Waiting for prompt.
~[7f]}#@!}!} } }2}#}$@#}!}$}%\}"}&} }*} } g}%~
--> PPP negotiation detected.
--> Starting pppd at Fri Jul 27 00:11:17 2007
--> Pid of pppd: 10778
--> Using interface ppp0
--> pppd: �[08][06][08]0[0f][06][08]
--> pppd: �[08][06][08]0[0f][06][08]
--> pppd: �[08][06][08]0[0f][06][08]
--> pppd: �[08][06][08]0[0f][06][08]
--> local IP address 221.132.240.22
--> pppd: �[08][06][08]0[0f][06][08]
--> remote IP address 10.6.6.6
--> pppd: �[08][06][08]0[0f][06][08]
--> primary DNS address 202.3.208.10
--> pppd: �[08][06][08]0[0f][06][08]
--> secondary DNS address 202.3.210.10
--> pppd: �[08][06][08]0[0f][06][08]
Nah, sekarang Ubuntu sudah terkoneksi ke internet.
Wednesday, June 20, 2007
Boxing dan Unboxing
Seperti yang sudah dijelaskan pada postingan sebelumnya, terdapat dua jenis data type: Value Types dan Reference Types. Selanjutnya terdapat mekanisme untuk melakukan konversi dari value type ke dalam reference type yang dinamakan dengan boxing. Sementara itu konversi dari reference type kembali ke value type dinamakan unboxing.
Boxing
Berikut ini adalah contoh dari operasi boxing:
int i = 23;
object 0 = i; // boxing secara implisit, secara eksplisit -> object o = (object)i;
Hasil dari operasi boxing diatas untuk statement pada baris kedua adalah terciptanya sebuah object o pada stack, yang menunjuk suatu nilai yang bertipe int pada heap. Nilai yang ditunjuk ini merupakan salinan dari nilai yang di-assign ke variabel i. Gambar berikut ini memberikan ilustrasi untuk variabel i dan o pada memori:
Sesuai dengan gambar diatas, jika isi variabel i berubah, nilai variabel o tidak akan berubah karena variabel o telah menyimpan salinan dari nilai variabel i.
UnBoxing
Pada proses unboxing, nilai yang ada pada heap disalin kembali ke stack. Sebelum proses penyalinan ini, dilakukan pemeriksaan terlebih dahulu, apakah instance dari object yang akan di-unboxing berupakan versi boxed dari value type yang diassign untuk proses unboxing tersebut. Berikut ini adalah contoh dari proses boxing dan unboxing:
int i = 23;
object 0 = i; // boxing secara implisit, secara eksplisit -> object o = (object)i;
int y = o; // unboxing secara implisit, secara eksplisit-> int y = (int)
Berikut ini adalah ilustrasi dari proses diatas pada memori:
Berikut ini adalah contoh lain untuk proses unboxing:
int i = 23;
object o = i;
double y = (double)o;
Potongan kode diatas dapat di-compile, namun pada saat run-time akan muncul exception : InvalidCastException karena variabel i di-boxing sebagai variabel bertipe integer sehingga harus di-unboxing juga kedalam variabel bertipe integer. Tentu saja setelah dilakukan proses unboxing ke dalam variabel tipe integer, baru dapat dilakukan konversi ke variabel bertipe double seperti berikut ini:
int i = 23;
object o = i;
double y = (double)(int)o; // Melakukan unboxing lalu melakukan casting variabel ke
// tipe double
Posted by
Eko Budi Prasetyo
at
18:31
1 comments















