2009-05-28

Repositori lokal drive

setelah 3 hari berkutak dan mencari cara bikin repositori di lokal drive, akhirnya ketemu juga. hehehe. cara nya ternyata sangat mudah. ada dua cara melakukannya.

cara pertama hanya untuk di lokal drive saja.

persyaratan:
1. punya dvd repository nya. sebanyak 6 buah.(kebetulan saya baru beli dari www.baliwae.com).
2. punya space hardisk +- 23 GB.

caranya:
1. buat direktori baru
2. mkdir /home/hanny/ubuntu/jaunty/1
3. mkdir /home/hanny/ubuntu/jaunty/2
4. mkdir /home/hanny/ubuntu/jaunty/3
5. mkdir /home/hanny/ubuntu/jaunty/4
6. mkdir /home/hanny/ubuntu/jaunty/5
7. mkdir /home/hanny/ubuntu/jaunty/6

8. copy isi per dvd ke setiap direktori yang baru, yang di copy: dist dan pool
9. cp /media/cdrom/* /home/hanny/ubuntu/jaunty/1
10. cp /media/cdrom/* /home/hanny/ubuntu/jaunty/2
11. cp /media/cdrom/* /home/hanny/ubuntu/jaunty/3
12.cp /media/cdrom/* /home/hanny/ubuntu/jaunty/4
13.cp /media/cdrom/* /home/hanny/ubuntu/jaunty/5
14.cp /media/cdrom/* /home/hanny/ubuntu/jaunty/6

15. tambahkan source.list di /etc/apt/source.list
16. sudo nano /etc/apt/source.list

tambahkan list dibawah ini

deb file:///home/hanny/ubuntu/jaunty/1 jaunty main restricted universe multiverse
deb file:///home/hanny/ubuntu/jaunty/2 jaunty main restricted universe multiverse
deb file:///home/hanny/ubuntu/jaunty/3 jaunty main restricted universe multiverse
deb file:///home/hanny/ubuntu/jaunty/4 jaunty main restricted universe multiverse
deb file:///home/hanny/ubuntu/jaunty/5 jaunty main restricted universe multiverse
deb file:///home/hanny/ubuntu/jaunty/6 jaunty main restricted universe multiverse

17. save
18. sudo apt-get updates

cara kedua adalah untuk bisa digunakan/share dengan user lain.
1. harus install apache2 dulu.
2. sudo apt-get install apache2
3.setelah itu kita akan membuat direktori di /var/www
4. sudo mkdir /var/www/ubuntu/jaunty/1
5. sudo mkdir /var/www/ubuntu/jaunty/2
6. sudo mkdir /var/www/ubuntu/jaunty/3
7. sudo mkdir /var/www/ubuntu/jaunty/4
8. sudo mkdir /var/www/ubuntu/jaunty/5
9. sudo mkdir /var/www/ubuntu/jaunty/6

10. copy isi per dvd ke setiap direktori yang baru, yang di copy: dist dan pool
11. cp /media/cdrom/* /var/www/ubuntu/jaunty/1
12. cp /media/cdrom/* /var/www/ubuntu/jaunty/2
13. cp /media/cdrom/* /var/www/ubuntu/jaunty/3
14.cp /media/cdrom/* /var/www/ubuntu/jaunty/4
15.cp /media/cdrom/* /var/www/ubuntu/jaunty/5
16.cp /media/cdrom/* /var/www/ubuntu/jaunty/6

15. tambahkan source.list di /etc/apt/source.list
16. sudo nano /etc/apt/source.list

tambahkan list dibawah ini

deb http://192.168.0.221/ubuntu/jaunty/1 jaunty main restricted universe multiverse
deb http://192.168.0.221/ubuntu/jaunty/2 jaunty main restricted universe multiverse
deb http://192.168.0.221/ubuntu/jaunty/3 jaunty main restricted universe multiverse
deb http://192.168.0.221/ubuntu/jaunty/4 jaunty main restricted universe multiverse
deb http://192.168.0.221/ubuntu/jaunty/5 jaunty main restricted universe multiverse
deb http://192.168.0.221/ubuntu/jaunty/6 jaunty main restricted universe multiverse

17. save
18. sudo apt-get updates

selesai. selamat mencoba.

2009-05-27

Install driver HP F2235 All in One di Ubuntu

download dulu HPlib terbaru  di http://hplipopensource.com/hplip-web/gethplip.html

Sebelum install pastikan internet connection-nya active, dan kabel USB-nya terhubung dengan printer.

Install driver nya melalui terminal

yoshizuki@bahamut ~ $ sh hplip-3.9.4b.run

Pilih automatic detect dsb.. ikutin petunjuk selanjutnya.... setelah selesai biasanya minta restart, pilih "r" untuk restart.

sekarang tinggal ditest printernya dengan print test page.
Untuk scanner-nya install sane / Xsane

yoshizuki@bahamut ~ $ sudo apt-get install xsane

jalankan xsane di Application=>Graphics=>xSane

biasanya langsung kedetect ..tinggal scan saja... dan outputnya bisa dipilih   PIFF, PDF, JPEG, atau yang lain..



Powered by ScribeFire.



2009-05-25

Blok Mp3 di Samba PDC

Akhirnya nemu juga cara buat denied  file mp3, avi dan teman-temannya di Samba PDC

Tinggal tambahkan 1 line ini di [global] setting

    veto files = /*.mp3/*.divx/*.eml/*.dat/*.db/*.inf/*.com/*.exe/*.vbs/*.dll/


restart samba ---- selesai .. user tidak bisa lagi store file Mp3, Avi , divx dll di PDC






Powered by ScribeFire.

2009-05-14

Data Models di web2py MVC Framework

Gua baru belajar web2py nih buat implementasi dan mutasi program tradeERP gua... Web2py ada 3 bagian utama yaitu Models Controller dan View, untuk sementara gua learning Data Models dulu..

Di web2py support many data source... diantaranya Gluon dari Google App Engine, PostgreSQL, Mysql, dan SQLlite (default)


contoh menggunakan Gluon

try:
    from gluon.contrib.gql import *  # if running on Google App Engine
except:
    db = SQLDB('sqlite://storage.db')  # if not, use SQLite or other DB
else:
    db = GQLDB()  # connect to Google BigTable
    session.connect(request, response, db=db)  #  and store sessions there


Deklarasi standar database , table, insert, count, delete, dan update

db = SQLDB(‘postgres://user:password@hostname/db’, pools=10)
db.define_table(‘person’,db.Field(’name’,’string’))
id= db.person.insert(name=’max’)
query=(db.person.id==id)
db(query).count()
db(query).delete()
db(query).update(name=’Max’)
rows = db(query).select(orderby=db.person.name)
for row in rows: print row.name



drop table dan truncate

db.person.truncate()
db.person.drop()


Contoh deklarasi table ,  dan validasi table, serta reference table (foreign key)

db.define_table('products', SQLField('name'), SQLField('description',
                'text'))


# MANY (users) TO MANY (purchases)

db.define_table('purchases', SQLField('buyer_id', db.users),
                SQLField('product_id', db.products), SQLField('quantity'
                , 'integer'))

purchased = (db.users.id == db.purchases.buyer_id) & (db.products.id
         == db.purchases.product_id)

db.users.name.requires = IS_NOT_EMPTY()
db.users.email.requires = [IS_EMAIL(), IS_NOT_IN_DB(db, 'users.email')]
db.dogs.owner_id.requires = IS_IN_DB(db, 'users.id', 'users.name')
db.dogs.name.requires = IS_NOT_EMPTY()
db.dogs.type.requires = IS_IN_SET(['small', 'medium', 'large'])
db.purchases.buyer_id.requires = IS_IN_DB(db, 'users.id', 'users.name')
db.purchases.product_id.requires = IS_IN_DB(db, 'products.id',
        'products.name')
db.purchases.quantity.requires = IS_INT_IN_RANGE(0, 10)


Pretty clean and readable  dibanding JAVA .. hehehehehehe :D

Powered by ScribeFire.



Instalasi web2py MVC Framework

Gua lagi nyoba MVC frameworknya web2py ... download di http://www.web2py.com/examples/default/download

kemudian extract packagenya ....

Buka Port 8000 (pastikan tidak ada yang menggunakan port ini)
Sekarang siapkan program python-nya

install python 2.5 di komputer

Windows
download dulu python di www.python.org 
Jalankan installer Python.. tinggal next next next  :D

kemudian jalankan web2py dengan doubleclick web2py.py atau di comandprompt ketik python25 web2py.py

Di linux (Ubuntu/Mint)

sudo apt-get install python2.5

Untuk package databasenya jgn lupa

Postgresql
sudo apt-get install python2.5-psycopg2 atau python2.5-pgsql

Mysql
sudo apt-get install python2.5-mysqldb

untuk yang lain tinggal lihat di manual Python dan web2py

kemudian jalankan python2.5 web2py
masukkan password admin dan ........ web2py siap dijalankan



Powered by ScribeFire.



[Migration journey] PostgreSQL VS MS SQL Server

Gua berencana mau mutasi my old tradeERP ke Linux platform. pengennya sih pakai Oracle, tapi terlalu canggih, akhirnya gua putusin pakai PostgreSQL karena secara syntax dan struktur ga jauh beda dengan oracle.

Database sebelumnya gua pake MS SQL server  2000. update terbaru sudah keluar versi 2008 menggunakan .NET framework 3.5 ( kl tidak salah), karena itu gua males upgrade.. pasti ada tetek bengek dan sebagainya :P

Ini comparasi selama gua pelajari MSSQL dan PGSQL

Datatype :

Di postgreSQL tidak mengenal datatype tinyint , smallmoney , smalldatetime, dan datetime, semuanya mesti diconvert dahulu tinyint jadi smallint , smallmoney jadi numeric, smalldatetime / datetime jadi timestamp

PostgreSQL support banyak datatype diantaranya Array , Ciddr , Inetd, Polygon, Circle, GIS format, dsb. sedangkan SQL server tidak  (Udah mahal .. payah .. :P)

Store procedure :

DI postgreSQL kita bisa define variable dengan tipe data langsung dari table nya ..

contoh :

create table mydb ( idx as varchar(20) );
;

<font face="sans-serif">maka deklarasi variable untuk merefer idx adalah user_idx mydb.idx%TYPE<br /><br />RDMS & ORM <br /><br />Yang unik yang belum aku temuin di MSSQL adalah di postgreSQL support inheritance dan polymorph.. dasar OOP<br />jadi bener-bener Object Oriented Database :D<br /><br />contohnya <br /><br /></font><small><font face="sans-serif"><i><small>CREATE TABLE cities (<br />    name            text,<br />    population      float,<br />    altitude        int     -- in feet<br />);<br /><br />CREATE TABLE capitals (<br />    state           char(2)<br />) INHERITS (cities);<br /></small></i></font></small><font face="sans-serif"><small><font face="sans-serif"><i><small><br />select * from capitals;<br /><br /><u>name | population | altitude | state </u></small></i></font></small><br />.....................<br /><br /><br /></font>
Yang lain tentang postgreSQL menyusul




Powered by ScribeFire.



Resolution Display trouble di Linux MInt / Ubuntu

Barusan gua ada trouble lagi otak atik sreen resolution ternyata gua salah setting, resolution ganti 1600x1400, terus dimonitor keluar error "cannot display ... optimum display 1280 x 1024". (Ok ... problem biasa nih pikir gua)  ... gua coba cara Debian dengan menggunakan 915resolution dan xdebconfigurator

sudo apt-get xdebconfigurator hwinfo ddcprobe xresprobe

kemudian jalankan xdebconfigurator

sudo xdebconfigurator

terus catet semua output Hsync, Vsync , driver dll..

setting ulang xserver-xorg

sudo dpkg-reconfigure xserver-xorg

ok .sampai sini fine fine aja

setelah enter-enter-enter ... lho kok ada yang aneh... settingan display monitor kok ga keluar? yang keluar hanya konfigurasi keyboard, mouse, language, dll... but no display resolution ..!!!
Ok, gua pikir fine ajalah siapa tahu autodetect.
kompie gua restart -- login .. lho ternyata masih problem...

sekarang gua otak atik xorg.conf nya (ada di /etc/X11/xorg.conf), gua tambahin  parameter di section "Screen"

Modes              "1280x1024" "1024x768" "640x480"
DefaultDepth    16


save, logout.. restart.. ternyata tetap.. (ggggrrrr) .. Gua curiga jangan-jangan hanya user itu aja yang bermasalah, buat buktiin gua create user baru

sudo adduser testing

kemudian login pake user tersebut (testing).. dan BISAA!!!! ga ada masalah di resolution..

Ok.. problemnya berarti konfigurasi startup display di user.. bukan di XORG.conf... gua login pake user yang bermasalah di console (Failsafe terminal).. kemudian gua jalanin

gnome-display-properties

gua pilih ke display awal -- apply --logout --- kemudian login lagi dengan GUI . dan .. BISAA!!!!!!  :D









Powered by ScribeFire.

2009-05-13

Binatang yang Akrab di dunia Linux :D

Buat iseng iseng .. ini daftar binatang-binatang yang jadi Ikon di dunia Linux

1. Penguin (Tux) : yah apalagi.. logonya linux lah...
2. Mice : Logonya Xfce
3. Blue Elephant : Logonya PostgreSQL
4. Bunglon : Logonya SuSe
5. ThunderBird : ya Thunderbird
6. Phoenix : Sunbird . kl ga salah
7. Godzilla  : Logonya Mozilla
8. Squirrel : Logonya Squirrel SQL
9. Fox : fireFox
10. Elang Laut : iconnya OpenOffice
11. Cat (Tom character) : Logonya Apache TomCat
12. Jackapole, Heron, Fawn : Nama release Ubuntu
13. Dolphin : Logonya Gambas

sisanya menyusul .. :D

Powered by ScribeFire.



2009-05-12

Instalasi IPCop

Minggu lalu gua browsing nyari firewall yang cocok dan gampang buat dikonfigurasi, akhirnya nemu pfsense dan IPCop, Pfsense gua udah coba, lumayan buat instalasinya, nah sekarang IPCop..

Caranya :
1. Download dulu Ipcop di www.ipcop.org
2. extract IPCop

sysadmin@bahamut ~/download $ tar xvzf ipcop-1.4.21

kemudian jalankan dikonsole

sysadmin@bahamut ~/download/ipcop-1.4.21 $ sudo chmod 755 make.sh

kemudian


sysadmin@bahamut ~/download/ipcop-1.4.21 $ sudo ./make.sh clean


sysadmin@bahamut ~/download/ipcop-1.4.21 $ sudo ./make.sh prefetch [nih dia donlod package yang diperlukan buat bikin ISO]
sysadmin@bahamut ~/download/ipcop-1.4.21 $ sudo ./make.sh build

Selanjutnya bersambung dulu ...





Powered by ScribeFire.

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.



2009-05-11

php konek MS SQL Server? kenapa tidak?

setelah sekian lama menggunakan php dan belun pernah konek ke mssql dari linux box, hari ini akhirnya mencoba dan berhasil.

kalo apache+phpnya ada di windows, proses gampang banget. tinggal hapus ";" di php5.ini tepat pas di php_mssql.dll, restart apache, selesei.

kalo dari linux box agak ribet, musti install php-pear, freetds dsb. berikut urut2annya:
1. Download FreeTDS dari http://www.freetds.org/
2. extract dan install
# tar zxvf freetds-stable.tgz
# cd freetds-0.82/ <-- versi gw, trgantung dari donlodan # ./configure --prefix=/usr/local/freetds # make # $ make install
3. Install php-pear, php-sybase, php5-dev
seperti biasa, ada cara mudah dan cara susah, cara mudahnya seperti ini :
apt-get install php5-sybase php-pear php5-dev
cara susahnya :P, seperti ini :
masuk ke direktori installer php, ketik :
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-mssql=/usr/local/freetds/

di pcku ada masalah pada waktu konfigurasi, dia mengeluarkan error :
configure: error: Directory /usr/local/freetds/bin is not a FreeTDS
apabila ada error seperti ini, yg harus dilakukan adalah copy 2 file (tds.h & libtds.a) dari hasil extract-an freetds-stable.tgz (di pc gw di direktori : /home/detanto/Desktop/freetds-0.82) :
cp /home/detanto/Desktop/freetds-0.82/include/tds.h /usr/local/freetds/include
cp /home/detanto/Desktop/freetds-0.82/src/tds/.libs/libtds.a /usr/local/freetds/lib
setelah proses copy selesai, configure lagi dan lanjutkan ke make & make install
#make
# make install
4. edit file freedts.conf yang ada di /usr/local/freetds/etc
vi /usr/local/freetds
trus beri konfigurasi sql server yang akan kita hubungi
[SQLsystem]
host =10.1.2.7
port = 1433
tds version = 7.0
5. testing dari php, buat file test.php, trus masukkan kode ini :
putenv('TDSVER=80');
putenv('FREETDSCONF=/usr/local/freetds/etc/freetds.conf');
$db_conn = mssql_connect("SQLsystem","detanto","112233")
or die( "ERROR: DB Connection failed" );

$sqldb=mssql_select_db("ITEMMASTER",$db_conn);
$sql="SELECT top 10 PRODUCT_NAME,ITEM_IMAGE1 FROM TB_ITEM_MASTER WHERE ITEM_IMAGE1 IS NOT NULL";
$tbl_item=mssql_query($sql);
while($row=mssql_fetch_array($tbl_item))
{
echo $row['PRODUCT_NAME']."\n";
mssql_close($db_conn)
6. Restart apache dan buka file test.php

Kalo kode ini berhasil, brarti dah sukses dah :D

2009-05-03

setting sharing internet isp fastnet di linux

di rumah internet pake fastnet dari firstmedia yg 130rebuan.. sebelumnya aku share internet pake windows, baik2 aja sih .. g pernah masalah juga wong client-nya cman 2, maksimal 4 hehehhe. cman kurang asoy aja dan dhcp-nya kadang idup kadang engga, jadilah mutusin mau pake linux aja.

setelah bberapa mggu lalu donlod debian lenny, dan udah diinstall kumplit dengan gnome-nya dan mau nggarap ruter tapi ga sempat2, hari ini akhirnya disempetin settingnya. cman makan waktu 15 minit untuk setting jadi router dan dhcpnya .. cepet ya? lha emang gampang soalnya kekekekeke

ada beberapa jalan untuk njadiin ruter; cara gampang dan mudah. cara gampang pake paket yang udah ada, misalnya shorewall; cara yang riweh pake iptables.

coba yang riweh dulu ye..
dari awal deh, install sperti biasa; trus apt-get install sudo supaya ga perlu su - kalo mau ngelakuin apa2.

setelah apt-get install; ketik visudo kmudian di baris trakhir kasi user kita; misalnya :
detanto ALL=(ALL) ALL
instalasi sudo udah selesai, mari kita lanjutin dengan setting ruternya.
Konfigurasi di rumah adalah seperti ini :
internet--fastnet--modem--(eth1)->PC->(eth0)--wireless access point--client

Syarat buat pc jelas NIC-nya harus 2. satu buat external (eth1), satu buat internal (eth0).
ga ngaruh eth0 ato eth1-nya. yang penting satu NIC buat kabel dari modem/internet, yang satunya buat ke jaringan internal, di pcku konfigurasinya kaya gitu :D

pertama2 setting kedua NIC ini, di debian edit file interface di /etc/network
vi /etc/network/interfaces
IP dari fastnet didapat dari server DHCP mereka, jadi eth1 akan diset ke dhcp; sementara eth0 akan diberikan ip fix di range 10.0.0.xxx supaya sama dengan kantorku sekarang. selain itu harus dirubah juga mac address dari eth1 supaya ga usah telpon fastnet untuk nge-flush networkku. fyi firstmedia ngeblok koneksi dari mac address jaringan yang nyambung ke jaringan mereka. umpama sekarang yang kehubung ke internet mereka mac-nya adalah : 00:23:f8:d8:5d:89. kmudian bberapa jam kmudian ada komputer kita yg lain dengan mac address 09:17:e3:d7:94:7f pengen konek ke internet. kalo cuman kita sambungin lgsg ke modem, ini ga akan bisa! dari pengalaman, musti dimatiin dulu modemnya skitar .5 jam ato kalo ga telpon CS-nya firstmedia untuk nge-flush modem kita. wahh males bgt kekekeke ..

di windows, bisa diakalin dengan donlod dulu software namanya macchanger (search di google aja, aku lupa alamatnya). dengan software ini kita bisa ngubah mac address kita dengan membuat batch atau lgsg pake commandnya. misal :
macchanger "Local Area Connection" 00:23:f8:d8:5d:89
dengan perintah ini mac address dari NIC yang mempunyai nama "Local Area Connection akan berubah mnjadi angka tersebut. di debian/ubuntu ato sodara2nya. kita ga perlu install apa2 tinggal kita masukkan di /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 10.0.0.1
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
gateway 10.0.0.1

auto eth1
iface eth1 inet dhcp
hwaddress ether 00:23:f8:d8:5d:89
setelah itu ketik :
echo “1” > /proc/sys/net/ipv4/ip_forward
command diatas supaya value ip_forward menjadi 1(true), ato komputer ini boleh melakukan ip forwarding
Kemudian ketik :
iptables – t nat –A POSTROUTING –d 0/0 –o eth1 –j MASQUERADE
printah ini memberitahukan menambahkan rules di table nat bhw paket jaringan setelah di routing, untuk tujuan mana saja (-d 0/0, -d adalah destination) dari eth1 (-o eth1) agar di rubah ipnya menjadi ip external server. jadi; klien atau komputer yang melalui router ini, ketika melakukan akses ke internet akan dikenal/menggunakan IP external yang dimiliki router.

setelah selesai, kita coba klien konek ke AP dengan konfigurasi :
ip : 10.0.0.2 // ip tdk boleh sama
subnet : 255.255.255.0 // subnet hrs sama dgn server
gateway : 10.0.0.1 // ip router
DNS 1 : 202.73.99.8 // fastnet
DNS 2 : 61.247.0.8 // fastnet
Tautanseharusnya klien bisa lgsg konek ke internet. ada satu masalah : masa iya musti setting manual tiap kali ada klien/komputer lain konek ke hotspot kita? wah repot dong. masalah ini bs diseleseiken dengan memasang dhcp server di router kita, karena udah pernah aku posting, tinggal dilanjutken aja bacanya ke sini http://nyemplunglinux.blogspot.com/2008/12/dhcp-dynamic-host-control-protocol.html

setelah setting selesei smua, tinggal konek bareng2 deh :D