Mengembalikan (Recovery) GRUB di Ubuntu

2009 Juni 10
oleh Mas Aan

2 OS yang berbeda di satu Komputer (Windows XP dan Ubuntu) berjalan dengan mulus, sampai suatu ketika Windows XP terkena virus yang solusi akhirnya adalah Install Ulang. Setelah proses install ulang Bootloader GRUB lenyap dan digantikan dengan Bootloader XP. Bagaimana solusinya? Sedangkan Bootloader XP tidak bisa membaca mount point Ubuntu.

Penulis pernah mengalami masalah ini dan pusing tujuh keliling. Akhirnya penulis googling dengan keyword “Recover Ubuntu Grub” dan menemukan artikel https://help.ubuntu.com/community/RecoveringUbuntuAfterInstallingWindows (hmmm…. ngakunya penggemar Ubuntu tapi tidak pernah baca help-nya :p ).

Ternyata cara mengatasinya cukup simple:

  1. Siapkan Ubuntu Live-CD, disini penulis menggunakan Ubuntu-9.04 tapi Linux Live-CD lainnya (yang menggunakan Grub) juga bisa kita gunakan
  2. Masuk dengan memanfaatkan menu Try (bukan di-install)
  3. Setelah dalam lingkungan Live-CD, buka terminal (dari menu Applications > Accessories > Terminal)
  4. Ketikkan perintah :
    sudo grub

    Selanjutnya kita akan masuk di lingkungan grub command.
    Di lingkungan grub command, ketikkan perintah

    find /boot/grub/stage1

    Output yang keluar adalah

    (hdX,Y)

    di Laptop penulis outputnya adalah

    (hd0,5)

    di komputer Anda mungkin hasilnya akan berbeda, tapi output yang dikeluarkan adalah dasar untuk me-recover Grub kita.
    Jika langkah diatas telah dilakukan tapi yang muncul adalah “Error 15: File not found” Ketik perintah

    find /boot/stage1

    Selanjutnya, setelah kita mengetahui posisi stage1 ( asumsikan (hd0,5) atau sesuaikan dengan output yang didapat di langkah sebelumnya ) Ketikkan 2 baris perintah ini :

    root (hd0,5)
    setup (hd0)
  5. Restart komputer dan keluarkan Linux Live-CD yang kita gunakan.
  6. Tadaaaa Ubuntu 9.04 ku kembali boot seperti semula

Langkah diatas, kurang lebih akan terlihat seperti ini :

Recover GRUB

Recover GRUB

Live Action (halah…sok) :

Happy Ngoprek Bro…. :)

Mengakali Recovery Data di MySQL Community Edition (Gratisan)

2009 Mei 25
oleh Mas Aan

Awank : An… Databasemu nganggo opo? (An.. Kamu menggunakan database apa?).
Saya : Script-e PHP nek database-e nganggo MySQL seng free, ono opo iki ? (Skrip-nya menggunakan PHP dan database-nya menggunakan MySQL yang free, ada apa ini?).
Awank : Aku nganggo MySQL… enek kesalahan pass n-delete, iso di-recovery ora yo? (Aku menggunakan MySQL… ada kesalah pas menghapus data, bisa di-recovery tidak ya?)
Saya : Wealah… yo wess wasallam. (Waduuh… ya udah selesai deh..)

Apakah Anda juga pernah mengalami hal yang dialami teman saya Awank di atas? Kesalahan yang terjadi dalam peristiwa ini adalah kesalahan dari sisi pengguna (pada saat menghapus record). Tapi, bisakah masalah ini ditanggulangi ?

Jika Anda menggunakan database sekelas Oracle, menurut yang pernah menggunakannya (terus terang sampai saat ini saya tidak pernah menggunakan Oracle secara langsung), ada fasilitas untuk melakukan recovery data yang terhapus dari sisi penggunaan Front-End (Kesalah penghapusan data dari user tidak termasuk hilangnya data secara fisik). MySQL Enterprise juga mempunya fasilitas yang sama, tapi tidak untuk MySQL Community Edition (Kok neko-neko, udah dikasih gratis sekarang minta yang bagus :p).

Untuk mencegah terjadinya hal ini (dari sisi programmer), ada beberapa trik yang bisa kita lakukan, misalnya :

  1. Menambahkan satu field/kolom yang berfungsi sebagai flag di tiap tabel. Isi field ini misalnya INT(1) yang berisi 1 jika record aktif dan flag di-sett ke 0 jika record dihapus dari program. Misalnya ada penghapusan data pelanggan, nilai di field Flag di-set enjadi 0, dengan demikian data tidak benar-benar terhapus :)
  2. Menambahkan field untuk mencatat waktu perubahan terakhir setiap record. Sehingga, apabila terjadi kesalahan/keanehan tinggal mengecek berdasarkan waktu update data.
  3. Mem-backup data secara periodik dan menyimpan dengan mencantumkan tanggal di nama file/folder backup-an

Diatas hanyalah sedikit contoh teknik untuk mempermudah pada saat recovery data (jika menggunakan MySQL Community Edition atau database free lain yang tidak menyertakan fitur recovery data). Kekurangan dari cara diatas adalah bertambahnya ukuran (size) dari setiap record.

Akhir kata, semoga bermanfaat :)

Setting GNOKII – HP Nokia 6300

2009 Mei 9
oleh Mas Aan

Hari Ini aku lesu sekali, penyebabnya sepele, kurang tidur gara-gara keasyikan ngoprek. Satu penyakit yang seringkali memancing omelan orang tua-ku. Aku memang sering melupakan waktu kalau sedang asyik dengan sesuatu.

HP Nokia 6300 – aku ngerasa sayang juga kalau gak bisa memanfaatkan HP ini dengan sebaik-baiknya. Masa cuma buat nerima dan kirim SMS or telp aja sich. Bisa gak ya melakukan sesuatu yang geeky ?. Itung-itung nyari inspirasi untuk Tugas Akhir ku. Pengen cepat-cepat menyelesaikan kuliah yang sudah molor dari rencana awal. Aku ingin mencari ide untuk bahan skripsi, hanya saja aku bertekad harus menggunakan GNU/Linux. OS yang belakangan ini jadi favoritku.

Sohibku si Onta menyarankan menggunakan GNOKII atau GAMMU untuk awal mempelajari cara kerja SMS Gateway. Sementara hindari dulu AT-Command, anggap saja melakukan gerakan pemanasan sebelum gerakan sebenarnya.

Karena penulis menggunakan Debian 5.0 (Lenny) / setara dengan Ubuntu 9.04 pada saat percobaan ini, untuk menginstall gnokii cukup memanfaatkan fasilitas apt-get (bisa sebagai super user/su atau menggunakan fasilitas sudo):

sudo apt-get updatesudo apt-get install gnokii

Atau bisa menggunakan menu System->Administration->Synaptic Package Manager kemudian search gnokii. Jika ingin mengunduh source-nya ada di : http://www.gnokii.org/downloads.shtml

read more…

Menjalankan Aplikasi 3D di Ubuntu

2009 Mei 1
oleh Mas Aan

Ingin memainkan game 3D di Ubuntu? Cek status direct rendering kartu grafis Anda.

Direct rendering bisa dilihat lewat perintah:

glxinfo

di terminal.

Perhatikan apakah :

direct rendering: yes

Jika ya (yes) berarti driver & hardware di komputer Anda mendukung 3D.

Lalu, apakah berarti kita bisa memainkan game 3D di Ubuntu/Linux?

Tergantung dari spesifikasi hardware komputer Anda, apakah memenuhi minimum requirement dari game yang Anda mainkan. Dalam hal ini meliputi RAM, Sound Memory, VGA/AGP Memory, Processor, dll.

Bagaimana jika

direct rendering : yes

tetapi program/game 3D tidak berjalan semestinya?

read more…

Perbandingan Aplikasi antara Ubuntu – Ms. Windows

2009 April 9
oleh Mas Aan

Pertanyaan/ketakutan terbesar dari pengguna Ms. Windows pada saat ditawarkan untuk menggunakan sistem operasi lain seperti GNU/Linux yaitu :

Apakah aplikasi yang biasa digunakan mereka dalam bekerja di Ms. Windows ada di Linux?

Jawaban dari pertanyaan di atas adalah :
Ada aplikasi yang memang berjalan di banyak platform sistem operasi (misalnya Python, Netbeans, Apache, PHP, MySQL, dll). Untuk aplikasi yang tidak multiplatform masih ada alternatif aplikasi yang fungsi kurang lebih sama.

Perbandingan disini tidak bermaksud mengunggulkan atau merendahkan aplikasi dari Ms. Windows dan Ubuntu atau GNU/Linux pada umumnya. Perbandingan yang dibahas bermaksud untuk memberikan aplikasi alternatif Ubuntu yang setara dengan aplikasi di Ms. Windows. Dan yang perlu diingat, walaupun aplikasi yang nanti saya sebutkan di-setara-kan dengan aplikasi Ms. Windows, aplikasi-aplikasi ini memiliki fitur-fitur atau kelebihan-kelebihan yang tidak ada di aplikasi versi Ms. Windows-nya.


No. Aplikasi Windows Alternatif di Ubuntu
1 Adobe Photoshop (untuk photo editing) GIMP (versi 2.4.5 setara dengan Adobe Photoshop 7)
2 Adobe Illustrator – Corel Draw (untuk vector editing Inkscape Vector Graphic Editor
3 Netbeans 6.5 (java editor) Netbeans 6.5
4 Microsoft Office 2003 (office suite/aplikasi perkantoran) Open Office 2.4
5 Windows Media Player 9 – VLC Media Player (Player untuk multimedia ex: mp3, avi, DVD, dll) VLC Media Player
6 Mozilla Firefox dkk Mozilla Firefox dkk
7 VMWare – Sun xVM VirtualBox (software untuk emulasi/mesin virtual) Sun xVM VirtualBox
8 Yahoo Messenger Pidgin Internet Messenger
9 Microsoft Outlook (e-mail client) Evolution – Mozilla Thunderbird
10 Camstasia Studio – uTipu (aplikasi untuk men-capture “kegiatan di Desktop” menjadi film) gtk-recordMyDesktop + avidemux + Open Movie Editor
11 Ms. Windows Hyper Terminal (untuk memerintah modem lewat AT Command) minicom
12 Ms. Visual Studio (Vb.Net / C#) Monodevelop (C#) dan Gambas(Vb.Net)

 

 

Ada beberapa aplikasi yang berjalan di Ms. Windows bisa di-install dan dijalankan layaknya di Ms. Windows (dijalankan di GNU/Linux) lewat aplikasi Wine. Wine adalah aplikasi GNU/Linux yang menerjemahkan API Ms. Windows ke dalam API Gnu/Linux. Untuk infonya, kunjungi www.winehaq.org

Wine mengkategorikan aplikasi menjadi beberapa kategori, sesuai tingkat kompabilitas software pada saat dijalankan di GNU/Linux. Tingkatan itu yaitu : Platinum, Gold, dan Silver, artikelnya bisa dilihat di : http://appdb.winehq.org/ juga di halaman http://appdb.winehq.org/objectManager.php?sClass=application&sTitle=Browse%20Applications&sOrderBy=appName&bAscending=true

Bilangan Biner (Binary)

2009 Maret 15
oleh Mas Aan

Digital adalah suatu sistem yang mengenal asupan daya yang diterimanya sebagai on dan off. On dilambangkan dengan angka 1 dan off dilambangkan dengan angka 0

On disini adalah posisi dimana perangkat keras komputer menerima asupan daya di atas standar minimum asupan daya. Off adalah posisi dimana perangkat keras komputer menerima asupan daya di bawah minimum asupan daya atau kondisi pada saat tanpa asupan daya sama sekali.

Sistem bilangan dengan base 2 (1 dan 0) dikenal dengan istilah bilangan biner (binary). Panjang satu blok data tergantung dari arsitektur sistem komputer yang bersangkutan. Tapi untuk mempermudah pemahaman, penulis menggunakan teknologi 8 bit (satu blok datanya terdiri atas 8 seri bilangan biner / serial).

Lau, bagaimana setiap karakter yang ada di sistem komputer diterjemahkan ke dalam sinyal digital (on/off atau 1/0)?

Dalam teknologi 8 bit, 1 byte data terdiri atas 4 bit, dan setiap 1 karakter (character) besarnya adalah 2 byte (8 bit).

A. Konversi Bilangan Biner Ke Desimal

Konversi dari bilangan desimal ke bilangan biner dapat diilustrasikan sebagai berikut :

Contoh satu seri bilangan biner 8 bit:

Biner 1 1 1 1 1 1 1 1
Index 7 6 5 4 3 2 1 0
Ke Desimal 27 26 25 24 23 22 21 20
Desimal 128 64 32 16 8 4 2 1

Jadi satu seri bilangan biner 8 bit : 111111112 dalam desimal = (128 x 1) + (64 x 1) + (32 x 1) + (16 x 1) + (8 x 1) + (4 x 1) + (2 x 1) + (1 x 1) = 25510

Contoh lain:

Biner 0 1 1 0 1 1 1 1
Index 7 6 5 4 3 2 1 0
Ke Desimal 27 26 25 24 23 22 21 20
Desimal 128 x 0 64 x 1 32 x 1 16 x 0 8 x 1 4 x 1 2 x 1 1 x 1

Jadi satu seri bilangan biner 8 bit : 011011112
Dalam desimal:
=> (128 x 0) + (64 x 1) + (32 x 1) + (16 x 0) + (8 x 1) + (4 x 1) + (2 x 1) + (1 x 1)
=> 0 + 64 + 32 + 0 + 8 + 4 + 2 + 1
=> 11110

B. Konversi Bilangan Desimal Ke Biner

Bagaimana trik untuk merubah bilangan desimal kedalam bilangan biner?

Triknya adalah dengan mencari pengurang maksimum yang mendekati nilai desimal yang bersangkutan.

Contoh-1:

Desimal 20
Desimal ke Binari 128 64 32 16 8 4 2 1
Langkah-1 1
Langkah-2 1 1
Biner 0 0 0 1 0 1 0 0

Keterangan:

  • Langkah-1 : cari Desimal ke Binari yang <= 20 (dari contoh yaitu 16), beri tanda 1 di bilangan ini
  • Langkah-2 : cari Desimal ke Binari yang <= (20 – 16) atau <= 4 (dari contoh yaitu 4), beri tanda 1 di bilangan ini
  • Karena sudah selesai (16 + 4 = 20) beri tanda 0 di Binari ke Desimal sisanya
  • Didapat 2010 = 000101002

Contoh-2:

Desimal 55
Desimal ke Binari 128 64 32 16 8 4 2 1
Langkah-1 1
Langkah-2 1 1
Langkah-3 1 1 1
Langkah-4 1 1 1 1
Langkah-5 1 1 1 1 1
Biner 0 0 1 1 0 1 1 1

Keterangan:

  • Langkah-1 : cari Desimal ke Binari yang <= 55 (dari contoh yaitu 32), beri tanda 1 di bilangan ini
  • Langkah-2 : cari Desimal ke Binari yang <= (55 – 32) atau <= 23 (dari contoh yaitu 16), beri tanda 1 di bilangan ini
  • Langkah-3 : cari Desimal ke Binari yang <= (55 – 32 – 16) atau <= 7 (dari contoh yaitu 4), beri tanda 1 di bilangan ini
  • Langkah-4 : cari Desimal ke Binari yang <= (55 – 32 – 16 – 4) atau <= 3 (dari contoh yaitu 2), beri tanda 1 di bilangan ini
  • Langkah-5 : cari Desimal ke Binari yang <= (55 – 32 – 16 – 4 – 2) atau <= 1 (dari contoh yaitu 1), beri tanda 1 di bilangan ini
  • Karena sudah selesai (32 + 16 + 4 + 2 + 1 = 55) beri tanda 0 di Binari ke Desimal sisanya
  • Didapat 5510 = 001101112

Adakah cara yang lebih mudah lagi ?

Ada menggunakan Application -> Accessories -> Calculator, lalu klik menu View -> Scientific, ketik 55 di mode Dec lalu klik mode Bin… tadaaaa… selesai, tapi Anda juga harus tahu konsepnya kan :) ?

CHOWN, Merubah Kepemilikan File

2009 Maret 15
oleh Mas Aan

Karena Linux adalah sistem operasi yang didesain untuk pengunaan bersama (multiuser), setiap file pasti memiliki informasi siapa pemiliknya (owner) dan di grup mana file ini dibuat.

Kepemilikan file bisa dilihat dengan mengetikkan perintah LS -AL (menggunakan huruf kecil), contoh:



Dari contoh di atas terlihat bahwa:

Semua file dimiliki oleh pengguna dengan user id : aandono
Disana ada 2 grup pengguna yaitu root dan aandono (aandono disini adalah nama grup yang kebetulan sama dengan nama pengguna, tetapi secara konseptual keduanya berbeda. Yang satu adalah pengguna dan yang satunya lagi adalah nama grup. Ini adalah setting-an default dari Ubuntu).

File file1.txt dan file2.txt dimiliki oleh aandono dan groupnya adalah root
File mylan.py dimiliki oleh aandono dan groupnya adalah aandono

Pemilik ketiga file ini adalah user aandono. Karena itu, permission yang berlaku untuk aandono adalah permission – user (u).

Pada saat pengguna yang tergabung dalam grup root (selain user aandono/u) mengakses file1.txt, maka permission yang akan digunakan adalah permission – group (g).
Tetapi, jika pengguna yang tergabung dalam group aandono (selain user aandono/u) mengakses file1.txt, maka permission yang digunakan adalah permission – other (o)

Keterangan untuk file permission bisa dibaca disini File Permission – Bagian 1

Kepemilikan file bisa diubah oleh pemilik (u) file yang bersangkutan dan root / Super User. Perintah yang digunakan adalah:

chown pengguna_baru:group_baru nama_file

Atau

chown pengguna_baru:group_baru nama_folder

Untuk bertindak sebagai root dari level pengguna biasa, perintahnya:

sudo chown pengguna_baru:group_baru nama_file

Lalu masukkan kata sandi untuk root / super user.

Untuk merubah secara recursive (folder dan semua isi folder itu), tambahkan -R setelah CHOWN, menjadi:

chown -R pengguna_baru:group_baru nama_folder

Semoga bermanfaat :)

Sudo Su, Pura-Pura Jadi Root (Super User)

2009 Maret 14
oleh Mas Aan

Account root seperti tidak pernah ada di Ubuntu lalu, apakah account root benar-benar tidak ada atau hanya di-nonaktifkan secara default

Masalah ini terjadi pada saat penulis menggunakan Ubuntu 7.04, ada satu aplikasi yang pada saat instalasi meminta password root. Penulis sudah mencoba memasukkan Password account utama tetapi aplikasi ini menolak dan tetap meminta password root.

Kalau Anda kebetulan menghadapi masalah ini, tidak usah bingung :) cukup buka Terminal (Applications -> Accessories -> Terminal) lalu ketikkan:

sudo su

lalu akan muncul output kira-kira seperti berikut:

user@domain:~$ sudo su[sudo] password for user:

Ketikkan password account utama (untuk para Pemula… password yang diketikkan tidak akan muncul tanda * seperti di Ms Windows) lalu tekan Enter, hasilnya :

user@domain:~$ sudo su
[sudo] password for user: 

root@domain:/home/user#

Tada… Anda sudah berhasil menjadi root.

Selanjutnya ketikkan command:

passwd

Lalu tekan Enter, masukkan password yang diinginkan lalu tekan Enter dan ulangi sekali lagi. Outputnya :

root@domain:/home/user# passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
root@domain:/home/user# exitexituser@domain:~$

Ketik exit lalu Enter untuk keluar dari mode root.

Sampai disini passwod untuk root sudah berhasil dirubah :) Selamat mencoba.

File Permission – Bagian 2

2009 Maret 13
oleh Mas Aan

Mengubah File Permission juga bisa dilakukan lewat script seperti PHP, Python, dll tetapi tidak akan bisa dilakukan dengan memberikan perintah chmod ugo+rwx. Solusinya adalah menggunakan attribut Angka untuk menggantikan attribut rwx.

chmod menggunakan attribut angka memang agak membingungkan untuk pemula, tapi tidak ada salah untuk belajar kan :) ? Selain itu, kita bisa melakukan combo. Maksudnya combo misal :

Kita memberikan hak rwx untuk User, rx untuk Group dan r untuk Other

Lewat ugo+rwx minimal kita harus melakukan 4x perintah yaitu :

chmod a-rwx nama_file
chmod a+r nama_file
chmod u+w nama_file
chmod ug+x nama_file

Dengan attribut angka, kita bisa melakukannya hanya dengan 1 baris perintah. Tapi sebelum itu kita bahas dasarnya :

File Permission dalam binary (bilangan biner):

r w x
1 1 1

r w -
1 1 0

r – -
1 0 0

r – x
1 0 1

- – x
0 0 1

- – -
0 0 0

Dari beberapa contoh diatas, bisa kita lihat, secara biner… untuk memberikan permission dengan angka 1 dan membuang permission dengan angka 0. Hanya saja, kita tidak bisa menggunakan bilangan biner ini begitu saja. Bilangan biner ini harus dirubah ke bentuk desimal dulu.

read more…

File Permission – Bagian 1

2009 Maret 13
oleh Mas Aan

File Permission adalah aturan penggunaan / akses file di sistem berebasis Nix atau diterapkan di Server.

Di awal-awal menggunakan Sistem Operasi berbasis Nix, hal ini sering jadi masalah pelik buat saya. “Permission Denied” adalah kalimat paling akrab gara-gara sering saya lihat pada saat mau melakukan operasi baca, simpan, copy, hapus, atau eksekusi (execute).

Dasar operasi file Linux yaitu :

  • - : Tidak boleh melakukan akses
  • r : Boleh melakukan akses baca
  • w : Boleh melakukan akses update
  • x : Boleh melakukan akses execute

Atribut lain yang harus diketahui adalah User Level (Tingkatan/Status User di Sistem) yaitu :

  • u : User (yang memiliki file)
  • g : Group (group yang boleh mengakses file)
  • o : Other (orang/user lain selain group)
  • a : All (semua user baik User, Group ataupun Other)

Command untuk melihat file permission adalah LS -AL menggunakan hurup kecil semua (Lower Case) :

ls -al

Hasil dari perintah ini misal :

Contoh yang muncul di Terminal :

-rw-r--r--   1 aandono root       0 2009-03-13 17:30 file1.txt

Informasi yang perlu diketahui (untuk pemula) dari output di atas :

Type User Group Other Nama File
- rw- r– r– file1.txt

Dari output di atas

  • User hanya bisa melakukan Read dan Write : rw- : ke file1.txt
  • Group hanya bisa melakukan Read : r– : ke file1.txt
  • Other hanya bisa melakukan Read : r– : ke file1.txt

Untuk mengubah File Permission, perintah sederhananya adalah :

chmod user_level(+/-)attribut nama_file

Manual lengkapnya bisa dibaca menggunakan perintah :

man chmod

Ssst… command diatas khusus buat yang tidak alergi English.

Siap… kita coba workshopnya :

Membuang semua permission di file1.txt

chmod ugo-rwx file1.txt

bisa juga seperti ini

chmod a-rwx file1.txt

hasilnya:

----------   1 aandono root       0 2009-03-13 17:30 file1.txt

Memberikan hak Write kepada User dan Group di file1.txt

chmod ug+w file1.txt

hasilnya :

--w--w----   1 aandono root       0 2009-03-13 17:30 file1.txt

Memberikan hak Read kepada User, Group dan Other di file1.txt

chmod ugo+r file1.txt

bisa juga seperti ini

chmod a+r file1.txt

hasilnya :

-rw-rw-r--   1 aandono root       0 2009-03-13 17:30 file1.txt

Memberikan hak Execute kepada User dan Other di file1.txt

chmod uo+x file1.txt

hasilnya :

-rwxrw-r-x   1 aandono root       0 2009-03-13 17:30 file1.txt

Mecabut hak Execute Other di file1.txt

chmod o-x file1.txt

hasilnya :

-rwxrw-r--   1 aandono root       0 2009-03-13 17:30 file1.txt

Bagaimana kalau ingin merubah file permision seluruh file di dalam 1 direktory? Tambahkan -R setelah chmod menjadi:

chmod -R user_level(+/-)attribut nama_direktori

Misal :

chmod -R ug+rwx test_direktori