Tampilkan postingan dengan label ubuntu. Tampilkan semua postingan
Tampilkan postingan dengan label ubuntu. Tampilkan semua postingan

2011-05-30

Menggunakan Mdbtools di debian / ubuntu

 

Mdbtools, aplikasi powerfull buat view dan export database Access di dalam Linux, kita bisa query, export, view tables, etc, sayang belum bisa modify databasenya...

 

 

Cara Install (di Debian / Ubuntu)

 

apt-get install mdbtools

 

atau kalau ingin install dari source / package lain bisa berkunjung ke

http://mdbtools.sourceforge.net/

 

setelah berhasil install akan ada file file berikut ini

 

mdb-array mdb-header mdb-parsecsv mdb-schema mdb-tables

mdb-export mdb-hexdump mdb-prop mdb-sql mdb-ver

 

berarti instalasi sukses...

 

Sekarang caranya menggunakan

 

Ambil salah satu contoh file MDB ( contoh database Espt )

kita taruh di /home/ayumi/Projects/espt Data.mdb

 

Untuk Menampilkan semua table

ayumi@kazumi ~/Projects/espt $ mdb-tables -1 Data.mdb

REF_SSP

REF_FKTR_PK

REF_FKTR_PM

REF_KPP

REF_LAMP

REF_TRANS

SETTING_TARIF

 

 

Untuk Menampilkan semua DDL ( schema database )

 

ayumi@kazumi ~/Projects/espt $ mdb-schema Data.mdb

-------------------------------------------------------------

-- MDB Tools - A library for reading MS Access database files

-- Copyright (C) 2000-2004 Brian Bruns

-- Files in libmdb are licensed under LGPL and the utilities under

-- the GPL, see COPYING.LIB and COPYING files respectively.

-- Check out http://mdbtools.sourceforge.net

-------------------------------------------------------------

DROP TABLE REF_SSP;

CREATE TABLE REF_SSP

(

KDMAP Text (510),

KD_JNS_BYR Text (510),

NMJNSBYR Text (510),

NMMAP Text (510)

);

-- CREATE ANY INDEXES ...

 

bla bla bla

 

 

 

 

Untuk Query data table tertentu

 

ayumi@kazumi ~/Projects/espt $ echo "select KD_KPP,NM_KPP from KPP "|mdb-sql Data.mdb

+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+

|KD_KPP |NM_KPP |

+----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+

|058 |KPP PENANAMAN MODAL ASING LIMA |

 

Export table ke file CSV

 

 

ayumi@kazumi ~/Projects/espt $ mdb-export -d ";" -H -q "'" Data.mdb KPP > export.csv

 

Script di atas export data dari table KPP ke file export.csv dengan row delimiter “;” dan quote “ ' “ tanpa header row

 

 

Generate sql script untuk create table

ayumi@kazumi ~/Projects/espt $ mdb-schema Data.mdb > sql_script.sql

 

Generate sql script untuk create table dengan backend PostgreSQL

ayumi@kazumi ~/Projects/espt $ mdb-schema Data.mdb postgres > sql_script.sql

 

Generate sql script untuk create table dengan backend Oracle

ayumi@kazumi ~/Projects/espt $ mdb-schema Data.mdb postgres > sql_script.sql

 

 

 

2010-08-31

Backup Folder using Python (tarfile)

Backup folder pake scripting ? python bisa !

syntaxnya kurang lebih seperti ini 

 

#! /usr/bin/env python

#coding=utf-8

import tarfile

t = tarfile.open(name = "/home/zergling/backup.tar.gz", mode = 'w:gz')

t.add("/home/zergling/DFiles/")

t.close()   

Script diatas membackup semua file didalam folder /home/zergling.DFiles ke tar.gz

2010-07-02

IredMail + Openfire

Lanjutan posting sebelumnya ... sekarang gua mau nambahkan OpenFire di Server IredMail gua ..  
Untuk debian Lenny ada sedikit tricky ... setelah install openfire.deb  .. install patchnya, bisa didapet disini  http://steffenzieger.de/index.php/2009/03/25/install-openfire-on-debian-lenny/

Di IredMail .. semua port kecuali email di blok... untuk aktifin XMPP tinggal edit di 
    sudo nano /etc/default/iptables

Unremark yang xmpp .. dan tambahin port 9090 (Untuk openfire Admin)
Setelah selesai , install plugin export/importnya .. kemudian tinggal nambahin user dan buddy list di openfire

caranya :
 
gua siapin data usernya nya dulu (ambil dari CSV untuk import ke IredMail). gua masukkin ke postgreSQL database  untuk manipulasi datanya. 
 
gua create database  dengan nama User_export_temp

create database user_export_temp;
create table export_user();
alter table  export_user add column domain_name varchar(30);
alter table  export_user add column usercode  varchar(30);
alter table  export_user add column userpassword varchar(30);
alter table  export_user add column username  varchar(30);
alter table  export_user add column groupuser varchar(30); 
/* Insert data dari CSV yang udah gua modif sesuai table diatas */

copy user_export_temp from '/home/yoshizuki/myUser.csv' csv;  

kemudian gua create python script untuk retrieve data tersebut kemudian diproses sesuai dengan template import user dari Openfire. Untuk buddy list gua asumsikan semua user yang ada saling terhubung dan dipisahin berdasarkan group bagian aja.

#!/usr/bin/python

import psycopg2, sys,os

outp = file("user.xml","w")

conn = psycopg2.connect("\
dbname='testing'\
user='postgres'\
host='localhost'\
password='postgres' ");
d = conn.cursor()
d.execute (" select a.usercode , \
a.userpasswd,\
a.username ,\
a.usercode || '@' || a.domain_name \
    from tmp_data as a \
    order by a.usercode ")

c = conn.cursor()

records = d.fetchall()
outp.write ("<?xml version='1.0' encoding='UTF-8'?>\n")
outp.write ("<Openfire>\n")

for record in records:
        outp.write("\n<User>")
        outp.write("<Username>" +  record[0] +"</Username><Password/>\n")
        outp.write("<Email>" +  record[3] + "</Email>\n")
        outp.write("<Name>" +  record[2] + "</Name>\n")
        outp.write("<CreationDate>1277954250096</CreationDate>\n")
        outp.write("<ModifiedDate>1277954250096</ModifiedDate>\n")
        outp.write("<Roster>\n")
        
        c.execute("select a.usercode , \
   a.userpasswd, \
            a.username , \
            a.usercode || '@' || a.domainname , \
            b.usercode || '@' || b.domainname , \
            b.username , \
            b.groupname  \
            from export_user as a \
            inner join export_user as b on a.usercode <> b.usercode \
            where a.usercode = '%s' \
            order by a.usercode , b.usercode      " %record[0])
        records2 = c.fetchall()
        for record2 in records2:
            outp.write ('<Item jid="' + record2[4] + '"  askstatus="-1" recvstatus="-1" substatus="3" name="'+ record2[5] + '" >\n')
            outp.write ('<Group>' + record2[6] + '</Group></Item>\n')   
        outp.write("</Roster>\n")
        outp.write("</User>")
outp.write ("</Openfire>\n")        
outp.close()

script ini akan menghasilkan file user.xml, nah file ini yang akan gua upload melalui plugin import user di Openfire..

restart openfire 
sudo /etc/init.d/openfire restart

selesai... semua user  sudah terhubung lewat email dan XMPP ... 

 


2010-06-16

Send Message via XMPP/Jabber/Googgle Talk using Python

Di python kita juga bisa kirim message ke user / friends via Google Talk atau messenger lain yang berbasis XMPP  ( Jabberd, openfire, Ejabberd). Scriptnya cukup sederhana. Sample ini gua udah test lewat google dan Openfire dikantor

Download / install dulu packagenya
sudo apt-get install python-xmpp

Kemudian ketik
nano test01.py

isi dengan

FROM_JABBER_ID = "myname@openfire"
JABBER_PASS = "123456"
JABBER_PORT = "52222"

JABBER_SERVER = "IPserver_openfire_jabber"
TO_JABBER_ID = "friends@openfire"

jid=xmpp.protocol.JID(FROM_JABBER_ID)
cl=xmpp.Client(jid.getDomain(),debug=[])
if not cl.connect((JABBER_SERVER,
JABBER_PORT )):
    raise IOError('Can not connect to server.')
if not cl.auth(jid.getNode(),JABBER_PASS):
    raise IOError('Can not auth with server.')

cl.send( xmpp.Message( TO_JABBER_ID ,"Hello World again" ) )
cl.disconnect()


Kemudian run
python test.py

selesai



Powered by ScribeFire.





, , ,

2010-02-08

Komputer yang sudah pernah ditest menggunakan LinuxMint (Helena, Gloria)

 Daftar komputer yang sudah gua install dengan LinuxMint,

Server :
DELL PowerEdge SC 440 , 430 : Jalan Mulus, tanpa trouble

Desktop :
DELL Optiplex 210L,170L,330,360 : Semua berjalan Mulus ...dengan Memory minimal 512Mb
Compaq CQ2030L,2035D (Atom) : Semua kebaca, kecuali yang seri CQ2030L soundcardnya masih trouble ... kedetect tapi tidak keluar suaranya (udah diotak atik alsaconf masih bisu :( ) ....

Laptop / Netbook :

DELL Latitude D510 : Mulus lus lus lus ....
Sony Vaio CR220E : Di Gloria, MotionEye dan Compiz tidak jalan , Di Helena masih trouble di motionEye .. mesti otak atik lagi.....
DELL Inspiron S10 Mini  : Mulus dengan Helena, VideoCam, Bluetooth, wifi kedetect semua ...
DELL Inspiron S10s Mini  : Mulus dengan Helena, VideoCam, Bluetooth, wifi kedetect semua ...
Compaq B1200  : Mulus ... bluetooth masih trouble ....
Axioo (Seri tidak tahu) : Wifi ga kedetect, chipsetnya VIA
LACIN (Laptop China)  : Wifi ga kedetect (lspci outputnya RAlink ), lain lain mulus...











Powered by ScribeFire.

Membuat Linux Live CD di FlashDisk

Bingung dengan distro Linux yang banyak banget? pengen nyobain tapi males burn ke CD? Mesti coba tools yang namanya UnetBootIn, buat bikin Flashdisk berfungsi sebagai Live CD ..
Di Ubuntu tinggal ketik

sudo apt-get install unetbootin

setelah selesai jalankan sudo unetbootin di terminal, nanti akan muncul tampilan seperti ini



Tinggal Pilih ISO nya atau langsung donlod Live berdasarkan distribusinya ....

Note : Flashdisk mesti format FAT32

Enjoy ....




Powered by ScribeFire.

2009-12-16

visualisasi harddisk space dengan filelight, pengganti overdisk di ubuntu


pas masih pake windows, gw sering banget pake overdisk, tools untuk mevisualisasikan alokasi data, size masing2 folder dan lain2 dari harddisk kita.. tools ini enak banget biar bisa tau secara detail alokasi file2 dalam folder kita.. meskipun ga detail, tapi cukuplah untuk tau seberapa gede folder yg kita punya. Ini skrinsot untuk overdisk :



dari gambar kliatan kalo kita mouseover ke salah satu bagian dari pie-chart yang digenerate overdisk akan muncul informasi nama folder, berapa jumlah folder yang ada dalam folder yg dimouseover dan berapa besar total satu foldernya .. asik kan? nah dulu2 di linux gw selalu cek liwat cli, meskipun ga sedetil ini, command-nya du(disk usage)
detanto@detantoCQ45:~$ du -sh *
608K Desktop
5.2G Documents
814M Downloads
4.0K examples.desktop
4.0K hosts
276K hwinfo
4.0K interfaces
156M Komodo-Edit-5
6.4G Music
11G opt
3.8G Pictures
......
Barusan nemu di internet ada macam overdisk ini, namanya filelight. Cara instalasi seperti biasa, tinggal apt-get
detanto@detantoCQ45:~$ sudo apt-get install filelight
[sudo] password for detanto:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
librsvg2-2.18-cil libgdata1.4-cil python-urwid libwnck2.20-cil libnotify0.4-cil libgnomedesktop2.20-cil
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
exiv2 kde-icons-oxygen kdebase-runtime kdebase-runtime-bin-kde4 kdebase-runtime-data kdebase-runtime-data-common kdelibs-bin kdelibs5 kdelibs5-data khelpcenter4 libclucene0ldbl libexiv2-5
libknotificationitem1 liblzma0 libplasma3 libqimageblitz4 libqt4-dbus libqt4-designer libqt4-opengl libqt4-phonon libqt4-qt3support libqt4-script libqt4-sql libqt4-sql-mysql libqt4-svg libqt4-webkit
libqt4-xml libsoprano4 libstreamanalyzer0 libstreams0 libxcb-shape0 libxcb-shm0 libxcb-xv0 libxine1 libxine1-bin libxine1-console libxine1-misc-plugins libxine1-x phonon-backend-xine soprano-daemon
Suggested packages:
kdebase djvulibre-bin libqt4-dev gxine xine-ui libxine1-doc libxine-doc libxine1-ffmpeg
The following NEW packages will be installed:
exiv2 filelight kde-icons-oxygen kdebase-runtime kdebase-runtime-bin-kde4 kdebase-runtime-data kdebase-runtime-data-common kdelibs-bin kdelibs5 kdelibs5-data khelpcenter4 libclucene0ldbl libexiv2-5
libknotificationitem1 liblzma0 libplasma3 libqimageblitz4 libqt4-dbus libqt4-designer libqt4-opengl libqt4-phonon libqt4-qt3support libqt4-script libqt4-sql libqt4-sql-mysql libqt4-svg libqt4-webkit
libqt4-xml libsoprano4 libstreamanalyzer0 libstreams0 libxcb-shape0 libxcb-shm0 libxcb-xv0 libxine1 libxine1-bin libxine1-console libxine1-misc-plugins libxine1-x phonon-backend-xine soprano-daemon
0 upgraded, 41 newly installed, 0 to remove and 86 not upgraded.
Need to get 48.3MB of archives.
After this operation, 159MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
buset dah gede bener! 50MB cuy .. tapi internet gw kenceng kok .. jadi no worries, iseng2 berhadiah :P.. dan yang banyak tuh perkakas2 lain yg musti diinstall sebelum filelight, karena si filelight ini aslinya kde
setelah selesei, filelight akan muncul di Applications->Accessories->Filelight. Mantab juga aplikasi ini, tapi imho lebih lelet overdisk untuk proses scanning directories-nya, filelight cman butuh 20detik untuk scan 60gb

skrinsot filelight :


untuk mengetahui size, jumlah file, persentasi dari pie-chartnya, tinggal di-mouse ever ke chart-nya ..klik ke pie/folder-nya akan menge-zoom lebih dalam ke dalam folder. misal kita klik ke /home/detanto/, filelight akan menunjukkan isi dari /home/detanto beserta informasi lainnya.

Ada beberapa fitur, misalnya skip direktori2 tertentu :


Rubah color-scheme, tunjukkan file2 kecil, dsb :


silakan menjajal filelight, biar tau kalo kebanyakan simpen file anu2 :P

2009-12-15

thunderbird3 dan google wave

2 minggu lalu dapet mainan baru, googlewave .. keren banget buat kolaborasi antar team. Tools ini gw pake untuk kolaborasi antar team programmer di kantor. supaya lebih mantap, gw pake chrome browser khusus untuk googlewave. sebetulnya ga perlu gitu si, cman masi tetep musti pake firefox buat develop software karena tools firebug dan web-developer toolbar yang mbantu banget. Di chrome udah ada juga plugin buat firebug, tapi ya biar mantep develop tetep pake firefox, ya cuman masalah mantep2an aja sih :P
Ini sekilas googlewave di chromium gw :



hari ini setelah install thunderbird 3, kok rasanya kurang sreg sama mail client ini :P .. iseng2 gugling, malah nemu link ini , dia bilang, bisa mengintegrasikan googlewave ke dalam thunderbird 3, tepatnya di tab-nya.

Langkahnya, buka thunderbird, trus buka Error Console (letaknya di Tools->Error Console), akan tampil windows Error Console seperti ini :



kemudian paste code dibawah ini ke field code, dan klik evaluate.
Components.classes['@mozilla.org/appshell/window-mediator;1'].getService(Components.interfaces.
nsIWindowMediator).getMostRecentWindow("mail:3pane").document.getElementById("tabmail").
openTab("contentTab", {contentPage: "https://wave.google.com/wave/?nouacheck"});
(kalau copy paste, diilangin dulu carriage return-nya yak) .. dan selese, googlewave tampil di tab thunderbird, fyi tab ini akan direstore ulang setelah thunderbird di close, jadi ga perlu paste lagi ke error console-nya.. ini skrinsotnya :



dan silahkan nge-wave di thunderbird! :)

2009-12-14

RabbitVCS, subversion client di linux


di artikel sebelumnya, pernah gw bahas tentang subversion. Afaik, pada saat itu blun ada tools sepowerful tortoisesvn, gw rasain paling lumayan adalah nautilussvn, tapi ada beberapa kekurangan, yang gw inget kalo proses commit, add lambatnya minta ampun, malah pernah hang nautilus gw. Sampai pada akhirnya gw mutusin coding php pake netbeans yang notabene beratnya ajrut2an, tapi terpaksa, butuh yang gui-nya enak soalnya :D ..

sampai pas minggu kemaren, gw install karmic koala dan pengen jajal nautilussvn lagi dengan pemikiran mungkin yang versi baru lebih mantab surantab ..

pas mengunjungi websitenya di http://code.google.com/p/nautilussvn/, wah ternyata dapet kabar udah ganti jadi rabbitVCS ".. We are excited to announce the release of RabbitVCS v0.12, the successor to NautilusSVN! ", langsung deh jalan ke link-nya di http://rabbitvcs.org/.


cari2 downloadnya, beuh ada file debian package buat ubuntu, debian, rpm buat fedora, malah buat ubuntu bisa langsung di apt-get dengan nambahin di /etc/apt/sources.list-nya .. mantab

apabila download langsung deb-nya bisa ke sini, setelah selesai, seperti biasa

sudo dpkg -i rabbitvcs_versi_terbaru.deb

setelah itu akan apabila diklik kanan pada folder yang belum ada subversionnya, akan muncul seperti ini :



sementara kalau sudah ada subversionnya, pada saat klik kanan akan muncul



proses commit pada folder yang telah tersubversi :




report proses commit telah berhasil :



proses update subversion :



tools ini sangat bagus, compare to nautilussvn, sampai hari ini belum menemukan hal2 yang tidak mengenakkan, seperti hang dsb dsb .., jadi bagi pencari pengganti tortoisesvn yang cuman zalan di windows, boleh coba rabbitVSC, dijamin puasss :) .. fyi, karena ada si klenci ini, untuk koding php sekarang gw pake Komodo, lebih ringan daripada netbeans, dan bisa project pula.. disini bisa diintegrasikan dengan svn, next gw tulis cara integrasi komodo dengan svn-nya ..

install acrobat reader di karmic koala

download file dari adobe.com langsung - http://get.adobe.com/uk/reader/otherversions/
setelah selesai download (file-nya yang versi 9 gede banget, sekitar 60MB)

jalankan :
detanto@detantoCQ45:~$ sudo dpkg -i AdbeRdr9.2-1_i386linux_enu.deb
[sudo] password for detanto:
Selecting previously deselected package adobereader-enu.
(Reading database ... 223192 files and directories currently installed.)
Unpacking adobereader-enu (from AdbeRdr9.2-1_i386linux_enu.deb) ...
Setting up adobereader-enu (9.2) ...

Processing triggers for man-db ...
detanto@detantoCQ45:~$
setelah selesai, shortcut untuk adobe reader akan muncul di Application->Office

2009-10-10

cron, crontab, backup

ada topik basi yg pasti dah pada jago.. cron :)

Apa itu cron?
cron adalah scheduler di unix-like dan merupakan singkatan dari chronograph

cron digunakan untuk mengatur skedul sehingga user dapat menjalankan perintah atau script pada waktu tertentu, biasanya digunakan untuk maintenance atau administrasi.

Apa yang bisa dilakukan cron?

Contoh2 yang bisa dilakukan dengan cron :
  • backup
    bisa backup database, backup data ato backup system
  • kirim email
    seumpama pengen kirim imil ke user jam 10 malem, tinggal diset gaksah balik kantor jam 10 malem :)
  • reboot server
  • dsb
di tempat gw, cron hanya digunakan untuk backup database dan tentu saja download scheduler kekekekek karena ga etis donlod file2 gede pas jam sibuk :P

cron merupakan daemon yang hanya perlu dijalankan sekali dan akan berjalan di background process. Pada kebanyakan distro, cron sudah terinstall secara ostosmastis dan di-load di startup, untuk melihatnya ketik

detanto@detantoCQ45:~$ ps aux | grep cron
root 3625 0.0 0.0 3480 1036 ? Ss 08:43 0:00 /usr/sbin/cron
detanto 11502 0.0 0.0 3340 816 pts/1 S+ 10:06 0:00 grep cron

Menggunakan cron

Ada beberapa cara untuk menggunakan cron, kalo diliat di /etc, akan ada beberapa file yang berbau cron

detanto@detantoCQ45:/etc$ ls -l | grep cron
drwxr-xr-x 2 root root 4096 2009-10-10 09:19 cron.daily
drwxr-xr-x 2 root root 4096 2009-08-30 22:48 cron.hourly
drwxr-xr-x 2 root root 4096 2009-10-05 10:45 cron.monthly
-rw-r--r-- 1 root root 724 2008-11-12 22:47 crontab
drwxr-xr-x 2 root root 4096 2009-08-30 22:48 cron.weekly
dari hasil ls, ada bberapa file yang berbau cron, apabila kita meletakkan script di dalam direktori cron.daily atau hourly, skedul akan dijalankan sesuai dengan nama direktorinya ..
kalo kita mau bikin skedul sendiri yang ga ngikut direktori2 itu, kita bisa edit lgsg ke file crontab. crontab adalah cron table; adalah sebuah file yang berisi skedul yang berisi job yang musti dilakukan pada waktu tertentu.

Isi dari crontab :

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

Syntax crontab :

.---------------- menit
| .------------- jam
| | .---------- hdb
| | | .------- bulan (1 - 12) ato jan,feb,mar,apr ...
| | | | .---- hdm (0 - 6)
| | | | |
* * * * * user cmd

menit perintah akan dijalankan pada menit keberapa, nilai :'0' and '59'
jam perintah akan dijalankan pada jam keberapa, nilai : 0-23, 0 adalah tengah malam
hdb (hari dalam sebulan) perintah akan dijalankan pada hari keberapa dalam sebulan, misal kita mo jalankan perintah pada hari ke 13 setiap bulam , hdb akan mempunyai nilai 13
bulan perintah akan dijalankan pada bulan keberapa dalam setahun, nilai : 1-12 atau nama bulan dalam bhs inggris
hdm perintah akan dijalankan pada hari keberapa dalam seminggu, nilai : 0-6 atau nama hari dalam bhs inggris ((Minggu=0 or 7) ato sun,mon,tue,wed,thu,fri,sat )
user user yang akan menjalankan
cmd perintah yang mau dijalankan
contoh script yang gw masukkin di /etc/crontab

00 23 * * * root mysqldump --user root --password=apaya hrd > /home/detanto/backup_mysql/hrd_`date '+\%Y\%m\%d_\%H\%M\%S'`.sql
Script di atas akan melakukan script backup mysql spesifik ke database hrd tiap jam 11 malem dengan format file :
hrd_`date '+\%Y\%m\%d_\%H\%M\%S'`.sql
di direktori /home/detanto/backup_mysql/

ini gw share script yang menarik, dia nge-backup semua database yang ada di mysql, sebetulnya bisa menggunakan option --all-database, tapi afaik hasilnya jadi satu dalam satu file. Script yang gw buat ini akan membackup satu2 ke dalam file berformat gz .. jd irit :P

#!/bin/bash

dbUSRNM="root" # user database
dbPASSW="qqwwee" # password database
dbHOSTS="localhost" # host database

# path perintah linux
cmMYSQL="$(which mysql)"
cmDUMPS="$(which mysqldump)"
cmGZIP="$(which gzip)"

vrFILE=""
#lokasi backup
vrDESTI="/home/detanto/backup_mysql"
#hostname dari server yg akan dibackup
vrHOSTS="$(hostname)"
#tanggal
vrDATES="$(date +"%Y-%m-%d_%H%M%S")"
#array database yang tidak dibackup
arNOBCK=("mysql" "test" "sample" "information_schema")
#array database yang ada di server
arDBASE="$($cmMYSQL -u $dbUSRNM -h $dbHOSTS -p$dbPASSW -Bse 'show databases')"
#looping semua database yang sudah diisi arraynya di arDBASE
for db in $arDBASE
do
lewat=-1
if [ "$arNOBCK" != "" ];
then
for i in ${arNOBCK[@]}
do
[ "$db" == "$i" ] && lewat=1 || :
done
fi

if [ "$lewat" == "-1" ] ; then
#nama file
vrFILE="$vrDESTI/$db.$vrHOSTS.$vrDATES.gz"
#menjalankan perintah mysqldump dan lgsg di zip ke format gz
$cmDUMPS -u $dbUSRNM -h $dbHOSTS -p$dbPASSW $db | $cmGZIP -9 > $vrFILE
fi
done
simpan script ini, tambahkan permission untuk diexecute trus dipasang deh ke /etc/crontab


sumber2:
http://en.wikipedia.org/wiki/Cron
http://www.tech-recipes.com/category/computer-programming/unix-shell-scripting/bourne-shell-scripting/




2009-08-06

cairo dock di ubuntu jaunty

bbrp hari lalu kakak gw dateng dari kalimantan, dia bawa notbuk yang pake linux mint, ditambah sesuatu yg dulu kala pernah gw pasang tapi males masang di instalasi sekarang .. cairo-dock. dulu pernah masang ini sama awm (avant window manager).

pertama kali liat si biasa aja, tapi kok penasaran ya.. akhirnya gw pasang juga tuh cairo-dock.
instalasi sederhana sekale, cuman :
apt-get install cairo-dock
setelah dipake sehari, kok kayanya kurang asik ya.. rencana sore mau aku remove trus aku install manual dari package-nya, ga liwat apt-get karena biasanya kurang update. pas malem sampe rumah kakak gw pas ada, dan trnyata bener cairo-docknya dia beda banget, lebih lengkap. smangkin mantab untuk remove dan install manual.

  1. donlod file di sini https://developer.berlios.de/project/showfiles.php?group_id=8724
  2. Pilih donlod file yang sesuai, untuk notbuk gw pake yg blakangnya i686, cairo-dock_v2.0.8_i686.deb sama cairo-dock-plug-ins_v2.0.8_i686.deb
  3. lgsg sudo dpkg -i cairo-dock_v2.0.8_i686.deb cairo-dock-plug-ins_v2.0.8_i686.deb
  4. setting2 sesuei selera, selesai deh.

hasilnya :


yang perlu dicermati(halah) adalah virtualbox. Setelah dipasangin cairo-dock dan semua fitur2 compiz aku nyalain, tau2 xp-ku yang di virtualbox jadi transparent wakakakaka .. xp-nya jadi tembus pandang gitu, jadi anehlah pokoknya :


solusinya adalah :
1. buka CompizConfig Setting Manager ( kalo belum install, ketik sudo apt-get install compizconfig-settings-manager)
2. di Windows Management, klik Windows Rule kemudian di field "No ARGB Visuals" isikan dengan class=VirtualBox
3. tutup virtualbox dan jalankan lagi
4. selesai

sip deh cairo-dock dah jalan, ntar kalo bikin lambat tinggal diremove lagi.

2009-07-24

Rip DVD di Ubuntu

beberapa hari lalu dapet kiriman 3 DVD live-nya Mike Portnoy, Billy Sheehan, Paul Gilbert, Neil Morse dan kawan2. lagunya buwat gw muantab2, dan jadi sering diputer. mikir2 gmana caranya dari DVD ini dirip ke mp3 ato ogg ato wav ato teman2nya, biar bisa didengerin sambil sepedaan ato pake mp3 .
sudo apt-get install lsdvd transcode
setelah terinstall, ketik
lsdvd
perintah diatas digunakan untuk mencari informasi track, track terpanjang biasanya yang kita cari, contoh hasil dari lsdvd :

detanto@detantonux:~$ lsdvd
libdvdread: Encrypted DVD support unavailable.
************************************************
** **
** No css library available. See **
** /usr/share/doc/libdvdread4/README.Debian **
** for more information. **
** **
************************************************
Disc Title: AMAZING_JOURNEY
Title: 01, Length: 02:10:11.066 Chapters: 31, Cells: 31, Audio streams: 02, Subpictures: 00
Title: 02, Length: 00:30:38.233 Chapters: 06, Cells: 06, Audio streams: 01, Subpictures: 00
Title: 03, Length: 00:07:49.100 Chapters: 01, Cells: 01, Audio streams: 01, Subpictures: 00
Title: 04, Length: 00:07:54.210 Chapters: 01, Cells: 01, Audio streams: 01, Subpictures: 00
Title: 05, Length: 00:07:19.000 Chapters: 01, Cells: 01, Audio streams: 01, Subpictures: 00
Title: 06, Length: 00:05:34.176 Chapters: 01, Cells: 01, Audio streams: 01, Subpictures: 00
Title: 07, Length: 00:01:59.100 Chapters: 01, Cells: 01, Audio streams: 01, Subpictures: 00
Title: 08, Length: 00:30:36.233 Chapters: 05, Cells: 05, Audio streams: 01, Subpictures: 00

Longest track: 01
dari hasil lsdvd didapatkan track terpanjang adalah track 01, kemudian kita rip dvd tersebut ke ogg. secara default, proses ripping ke ogg membutuhkan oggenc yang tidak diinstall secara default oleh jaunty, untuk instalasinya cukup ketik
sudo apt-get install vorbis-tools
setelah proses install selesai, kita gunakan tools transcode untuk rippingnya, command-nya :
transcode -i DEV -x TYPE -T X,Y,Z -a 0 -y videomode, audiomode -b BRT -m "/home/detanto/Amazing Journey - Track Y.ogg"

-i : input device-nya
DEV : lokasi input
-x : tipe inputnya
TYPE : type input device
-b : bitrate
-T : DVD Title-nya, X : Title, Y : Track, Z : Angle
-y : output
-m : output file namenya
contoh implementasinya :
transcode -i /dev/cdrom -x dvd -T 1,2,1 -a 0 -y null,ogg -b 256 -m "/home/detanto/Amazing Journey - Track Y.ogg"
Penjelasan :
Argumen diatas mengidentifikasi kalo input device-nya adalah "/dev/dvd", tipe inputnya dvd, Title 1, chapter 2, dan camera angle 1, audio track adalah track 0 (-a), output formatnya yang video-nya null, audionya ke ogg, outputnya ke /home/detanto/Amazing Journey - Track Y.ogg
Untuk me-rip semua file ke dalam satu file, tinggal dimainin di parameter -T, diisi 1, -1, dia akan langsung me-rip semua chapter ke dalam satu file

Permasalahannya adalah kemalasan :P, kalo lagunya 1 ato 2 sih ga masalah, lha kalo lagunya diatas 5 males juga bikin command satu2 dan ganti tracknya satu2 setelah selesai. Untuk otomatisasi,
bisa dibuat program bash sederhana :
vi ripdvd
trus isi ripdvd itu dengan kode berikut :
for i in `seq 1 31`;
do
x=$(($i+1))
transcode -i /dev/cdrom -x dvd -T 1,$x,1 -a 0 -y null,ogg -b 256 -m "/home/detanto/Amazing Journey - Track $i.ogg"
done

Penjelasan :
ditentukan yg akan dirip adalah file yang ada di Title 01, Chapter terakhir adalah 31, jadi looping dari angka 1 ke 31, x adalah i+1 karena track pertama biasanya adalah menu-nya jadi ga perlu kita rip

setelah selesai, keluar dari vi, dan beri otorisasi execute ke file ripdvd
chmod +x ripdvd
kemudian jalankan
./ripdvd
selesai deh .. tinggal duduk manis nunggu kelar prosesnya hueheuheue, tapi perlu diingat bhw ga semua track itu dipake jadi ya teteup musti seleksi ulang. yang belum nemu adalah cara lgsg kasi nama file audionya heuheuheue

diambil dari beberapa sumber dan beberapa modifikasi :
1. http://ubuntuforums.org/showthread.php?t=330856
2. man transcode
3. simple bash programming

2009-06-16

install jaunty jackalope di t61

baru hari ini berani nekat install jaunty di t61 ku karena banyak kerjaan yg g bs dipending. sekalian pas ga masuk, coba2 install deh..

urutan persiapan
-donlod iso (udah lama bgt didonlod, sjak hari 1 kluar), burn ke cd
-backup email (thunderbird)
-backup home folder (karena kmaren ngga rapi)
-install ubuntu dengan porsi partisi yg sesuai

konfigurasi partisi :
/home --> 40GB
/ --> 20GB
swap 1GB
pada waktu backup data ke komputer lain, ketemu masalah resuming scp. karena sempat mati lampu, proses kopi data 20GB terpaksa harus diulang. hmmm harus ada cara lain yg bisa resume karena scp ga ada fasilitas resume. di internet nemu cara pake rsync, commandnya :
sudo rsync --partial --progress -rsh=ssh fileyangmaudikopi lokasikopian
di notbukku command-nya jd kaya gini
sudo rsync --partial --progress -rsh=ssh 10.0.0.1:/home/detanto/opt/var /home/detanto/Desktop/opt
file2 yg perlu aku backup yg bukan dokumen:
1. pidgin --> adanya di /home/user/.purple
2. konfigurasi apache -> /usr/local/apache/conf
3. datastudio -> /home/user/.datastudio
4. mozilla firefox beserta antek2nya -> /home/user/.mozilla
5. database mysql -> /usr/local/mysql/var

instalasi berjalan mulus, proses pengembalian data juga berjalan mulus yang kurang satu doang trnyata proses pengkopian conf apache gatot.. sontoloyo terpaksa deh konfigurasi ulang smua. Proses pengembalian sistem berjalan mulus, ngikutin semua catetan yg gw tulis di blog ini ..mantaabbb

ada beberapa catatan untuk driver nvidia, supaya driver bisa diload lbh smooth, klik System->Administration->Hardware Drivers .. nanti akan ada pilihan untuk mengaktifkan driver proprietary tersebut

overall gw puas dengan jaunty ini, proses loading cuepet, grafisnya oke, dsb .. besok2 deh setelah aku perkosa abis aku review lagi :P

2009-05-12

admin MSSQL diLinux dengan SQuirreL SQL

Walau gua udah pake 100% linux, tapi server-server dikantor, masih pake Win buat njalanin SQL server dan ASP. Biasanya buat manage / edit SQL gua pake Aqua Datastudio, tapi sekarang sudah tidak gratis lagi :(, akhirnya setelah ubek-ubek dan test, gua putusin pake Squirrel SQL.

caranya donlod dulu di http://squirrel-sql.sourceforge.net/

pastikan JRE /JDK minimal 1.5 keatas..

kemudian jalankan programnya untuk install ke dalam system.

untuk plugin MS SQL server gua pakai JTDS
donlod manual di http://jtds.sourceforge.net/

komponen ini yang saya gunakan juga untuk koneksi MS SQL Server ke OpenOffice.org . (Mantab toh.. :D )

Untuk database yang lain lihat direferensi Squirrel SQL. ada banyak kok.



Driver yang lainnya bisa dilihat di menu driver pada Squirrel SQL, support bayar sekali database,
diantaranya PostgreSQL, Mysql, Oracle, Sybase, SAPDB, SQLLite, HSQL, dsb.


Sebagai catatan, karena berbasis JAVA maka agak berat boo .. minimum RAM 1GB




Powered by ScribeFire.



2008-11-11

VirtualBox di Ubuntu


kmaren malem aku maen ke artivisi, dari ngobrol2 .. ketemu hal menarik, yaitu virtualbox. sbetulnya udah lama tau, cuman barusan tau kalo virtualbox bisa di full-screen-in jadi berasa satu OS sndiri. Lgsg berniat install karena di kantor baru pemakaian Windows hanya untuk Visual Basic (???), Delphi (?????), dan SQL Server. Jadi kayanya mampu deh dihandle oleh virtualbox.

proses instalasi gampang banget :
apt-get install virtualbox

yang agak susah adalah bridge networkingnya, spy guest di ubuntu kita bisa diakses dan mengakses jaringan luar. Ini hasil browsing2 di internet, yang aku rangkum biar ga lupa :D

Dari pengalaman ternyata setting untuk wired(kabel) dan wireless(nirkabel) berbeda, pertama aku tulis yang wired dulu.

Wired Network
Metode pertama ada wired. Pendeknya kita akan membuat bridge, mematikan ethernet wired kita dan menambahkannya sebagai bagian dari bridge tersebut, menghidupkan bridge, membuat interface tap dan menambahkannya juga ke bridge. Sebelum semuanya itu kita harus memeriksa apakah bridge-utils sudah ada di distribusi kita.

Di ubuntu, tinggal kita ketik :
sudo apt-get install bridge-utils

Pertama kita buat bridge dulu :

brctl addbr br0

Kemudian kita hilangkan IP eth0 kita dengan perintah (hal ini akan membuat kita tidak terhubung ke jaringan untuk sementara, jadi kita tidak bisa melakukannya secara remote)

ifconfig eth0 0.0.0.0

Kemudian kita tambahkan interface eth0 ke bridge

brctl addif br0 eth0


Trus kita beri IP untuk bridge tersebut dengan perintah :

ifconfig br0 10.0.0.249 netmask 255.255.255.0 up
route add -net 10.0.0.0 netmask 255.255.255.0 br0
route add default gw 10.0.0.1 br0

Catatan : 10.0.0.249 adalah IP asli sebelum dilakukan proses ini dan kita harus menambahkan routingnya, 10.0.0.1 disini adalah gateway di kantorku untuk konek internet

Nah, setelah bridge kita udah jadi, suaatnya kita menambahkan interface tap, dapetnya di user guide si :)

VBoxTunctl -b -u detanto


Catatan : detanto adalah user kita
trus kita up-kan tap0 dan kemudian kita tambahkan ke bridgenya

ifconfig tap0 up
brctl addif br0 tap0

Tambahkan juga rules iptables supaya traffic bisa jalan di bridge tersebut

iptables -I INPUT -i br0 -j ACCEPT


Kemudian rubah permission di /dev/net/tun <-- tunneling yang akan terbentuk setelah kita membuat interface tap0


chmod 0666 /dev/net/tun

Sekarang sebelum menjalankan OS Guest kit, edit dulu setting di VirtualBoxnya, di Network pilih "Attached to Host Interface" dan nama interface-nya "tap0"



Kemudian di Guest OS-nya IPnya dirubah ke range IP dan subnet yang sama dengan Hostnya. selesei. Semua script tadi aku taruh di file spy bs aku jalankan kalo aku pengen jalanin virtualbox.

brctl addbr br0
ifconfig eth0 0.0.0.0
brctl addif br0 eth0
ifconfig br0 10.0.0.249 netmask 255.255.255.0 up
route add -net 10.0.0.0 netmask 255.255.255.0 br0
route add default gw 10.0.0.1 br0
VBoxTunctl -b -u detanto
ifconfig tap0 up
brctl addif br0 tap0
iptables -I INPUT -i br0 -j ACCEPT
chmod 0666 /dev/net/tun

misalnya kita namain vbox_wired, kemudian kita beri status supaya bisa diexecute..

chmod +x vbox_wired

kalo mau jalanin tinggal ketik :

./vbox_wired

Yang asik adalah ada mode Seamless mode, jadi seakan2 Guest kita jalan bersamaan di Ubuntu kita tanpa ada batasnya, seperti ini :


bisa juga full screen yang membuat guest OS kita memenuhi layar kita, mantab kan??

Wireless Network

nyusul ye ..

2008-06-09

Memutar DVD di Hardy Heron

hmmm siang tadi cuti trus iseng2 cb muter DVD di hardy .. huaddhuhh .. ga bisa jalan, search di internet, biar hardy bisa muter dvd musti pake step2 berikut :

sudo wget http://www.medibuntu.org/sources.list.d/hardy.list -O /etc/apt/sources.list.d/medibuntu.list
trus
sudo apt-get update
sudo apt-get install libdvdcss2
sudo apt-get -y install vlc

Shortcut lgsg ada di application bagian Sound & Video .. tinggal LHEB!!

2008-06-02

Install Oracle XE di ubuntu

hmmm .. setelah banyak di admin dan tetek bengek lainnya, mari kita mulai berkutak-kutik di programming. setelah bunny nulis tentang java, netbeans dan teman2nya, aku coba bahas ttg orekel, database yang mgkin dah ga aku pegang selama hampir 5 tahun :D.

1. Download orekel XE (gratisan) di www.oracle.com, pilih yang paket untuk ubuntu atau debian, dengan extension deb. Kira2 gedenya 200MB-an

2. Setelah selesei, ketik :
sudo dpkg -i oracle-xe_10.2.0.1-1.0_i386.deb
[sudo] password for detanto:
Selecting previously deselected package oracle-xe.
(Reading database ... 132138 files and directories currently installed.)
Unpacking oracle-xe (from oracle-xe_10.2.0.1-1.0_i386.deb) ...
This system does not meet the minimum requirements for swap space. Based on
the amount of physical memory available on the system, Oracle Database 10g
Express Edition requires 1024 MB of swap space. This system has 949 MB
of swap space. Configure more swap space on the system and retry the installation.

Dari error diatas didapat bahwa ternyata untuk instalasi orekel, kita membutuhkan minimal 1024MB swap memory. Emang di komputerku aku cuman kasi ga sampe 1G meski memoriku 2G, ini gara2 aku baca di internet ttg rumus yang baik untuk swap memory :D di sini. Pas install orekel ini jadi bingung sendiri, gmana caranya increase swap. Ada banyak resource di internet untuk ini tinggal tanya paman gugel. Ada yang jawabannya harus liwat LiveCD untuk membesarkan swap dsb dsb. Wah kalo musti pake LiveCD sih asik2 aja, cuman CD-ku ada di kantor, dipinjem sama si bunny, brarti opsi ini dah gagal krn aku ga sabar utk nyobain orekel. JAdi aku pake opsi yang lain yaitu melebarkan swap dengan membuat file extra-swap.

Pertama kita cek swap kita dengan printah

detanto@detantonux:~/Documents/downloads$ swapon -s
Filename Type Size Used Priority
/dev/sda5 partition 971892 0 -1

Kmudian kita buat file-nya dengan printah :

sudo dd if=/dev/zero of=/extra-swap bs=1M count=512

Perintah diatas memberitahu linux untuk membuat file sebesar 512MB, kmudian tinggal kita bilangin untuk membuat direktori itu menjadi swap

detanto@detantonux:~/Documents/downloads$ sudo mkswap /extra-swap
Setting up swapspace version 1, size = 536866 kB
no label, UUID=0207958d-a828-46e3-a207-3a535d2fcde0

Trus jalanin lagi

sudo dpkg -i oracle-xe_10.2.0.1-1.0_i386.deb
(Reading database ...
dpkg: serious warning: files list file for package `oracle-xe' missing, assuming package has no files currently installed.
132138 files and directories currently installed.)
Preparing to replace oracle-xe 10.2.0.1-1.0 (using oracle-xe_10.2.0.1-1.0_i386.deb) ...
Unpacking replacement oracle-xe ...
dpkg: dependency problems prevent configuration of oracle-xe:
oracle-xe depends on libaio (>= 0.3.96) | libaio1 (>= 0.3.96); however:
Package libaio is not installed.
Package libaio1 is not installed.
dpkg: error processing oracle-xe (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
oracle-xe

weh error lagi, skarang paketnya ada yang blun keinstall, ya enaknya ubuntu tinggal apt-get install libaio1, selesei dah

tinggal ketik lagi

sudo dpkg -i oracle-xe_10.2.0.1-1.0_i386.deb
(Reading database ... 134527 files and directories currently installed.)
Preparing to replace oracle-xe 10.2.0.1-1.0 (using oracle-xe_10.2.0.1-1.0_i386.deb) ...
Unpacking replacement oracle-xe ...
Setting up oracle-xe (10.2.0.1-1.0) ...
Executing Post-install steps...
-e You must run '/etc/init.d/oracle-xe configure' as the root user to configure the database.

Hasilnya ngga ada error, cuman musti ngejalanin command yang diatas

sudo /etc/init.d/oracle-xe configure

Oracle Database 10g Express Edition Configuration
-------------------------------------------------
This will configure on-boot properties of Oracle Database 10g Express
Edition. The following questions will determine whether the database should
be starting upon system boot, the ports it will use, and the passwords that
will be used for database accounts. Press to accept the defaults.
Ctrl-C will abort.

Specify the HTTP port that will be used for Oracle Application Express [8080]:2702 --> default port aku rubah karena port 8080 dipake sama tomcat

Specify a port that will be used for the database listener [1521]:

Specify a password to be used for database accounts. Note that the same
password will be used for SYS and SYSTEM. Oracle recommends the use of
different passwords for each database account. This can be done after
initial configuration:
Confirm the password:

Do you want Oracle Database 10g Express Edition to be started on boot (y/n) [y]:y

Starting Oracle Net Listener...Done
Configuring Database...Done
Starting Oracle Database 10g Express Edition Instance...Done
Installation Completed Successfully.
To access the Database Home Page go to "http://127.0.0.1:2702/apex"

Udah deh selese instalasinya, gampang yak? hasilnya bisa kita lihat






Ingat, user default dari orekel setelah instalasi awal adalah SYS dan SYSTEM, jadi login dengan user itu dan password yang sudah diset didepan, setelah login kita bs ngutak-atik databasenya.



Gile, instalasinya gampang banget. seinget aku dulu itu install orekel itu audzubillah bin zalik susahnya; setting TNS lah, SID, dsb2, sekarang tinggal pake wizard, dulu meski dah pake wizard, aku msh puyeng haheuaheuhae.. hidup kemajuan!!

2008-04-22

Alamat Repository Debian Etch lokal

Buat catatan aje

Repo.ugm.ac.id
deb http://repo.ugm.ac.id/debian/ stable main contrib non-free

Kambing.ui.edu
deb http://kambing.ui.edu/debian etch main contrib non-free
deb http://kambing.ui.edu/debian etch/volatile main contrib non-free
deb http://kambing.ui.edu/debian-security etch/updates main contrib non-free

mirror.its.ac.id
deb http://mirror.its.ac.id/debian etch main non-free contrib
deb http://mirror.its.ac.id/debian stable-proposed-updates main non-free contrib
deb http://mirror.its.ac.id/debian-security etch/updates main non-free contrib

komo.vlsm.org
deb http://komo.vlsm.org/debian etch main non-free contrib
deb http://komo.vlsm.org/debian etch-proposed-updates main non-free contrib

debian.indika.net.id
deb http://debian.indika.net.id/debian etch main non-free contrib
deb http://debian.indika.net.id/debian etch-proposed-updates main non-free contrib

ftp://ftp.itb.ac.id
deb ftp://ftp.itb.ac.id/pub/debian etch main non-free contrib
deb ftp://ftp.itb.ac.id/pub/debian etch-proposed-updates main non-free contrib

taken from http://yodi.web.ugm.ac.id/linux/update-repository-ubuntu-debian-dari-internet/