Rabu, 03 Desember 2014

Integrasi Zimbra, Fetchmail Dan Gmail (Multi User) - Seri 2

Ini adalah lanjutan dari tutorial sebelumnya. Kali ini kita akan membahas bagaimana agar setiap user Zimbra Server sebagai Email Server Lokal dapat mengirim email ke internet menggunakan akun-akun google yang mereka miliki. Untuk melakukan ini, kita harus melakukan mapping akun lokal ke akun gmail yang digunakan.
Adapun topology yang digunakan masih sama dengan sebelumnya, sedangkan informasi mengenai host zimbra dan akun-akun user adalah sebagai berikut :
domain = cpp-sourcecode.com
hostname = mail.cpp-sourcecode.com, ns1.cpp-sourcecode.com
dns server = local / installed
ip address = 172.16.16.126/97
relayhost = smtp.gmail.com:587

Selasa, 02 Desember 2014

Integrasi Zimbra, Fetchmail Dan Gmail (Single User) - Seri 1

Sebenarnya tutorial ini memiliki keterkaitan dengan tutorial saya sebelumnya yaitu :
  1. Membangun Intermediate Mail Server Berbasis Ubuntu 14.04 
  2. Monitoring Koneksi Internet Menggunakan Mikrotik Dan Ubuntu 10.04 Sebagai SMTP Relay 
Keterkaitannya adalah, masing-masing artikel tersebut sebenarnya memiliki tahapan pembuatan Intermediate Email Server (IES) menggunakan postfix, fetchmail dan dovecot. Nah kali ini saya juga akan membangun sebuah Intermediate Email Server (IES) menggunakan Zimbra 8.5.1. Zimbra adalah sebuah Email Server yang berjalan diatas platform linux. Zimbra juga termasuk Open Source Software. Pada platform windows, Zimbra ini ibaratkan Microsoft Exchange Server. Dengan menggunakan Zimbra, kita tidak perlu secara terpisah menginstall Postfix sebagai MTA, WebMail Client (Misal Squirrelmail), LDAP Server, Anti Spam, Anti Virus, dll. Di dalam Zimbra sudah include berbagai macam aplikasi yang dibutuhkan untuk keperluan email maupun kolaborasi.

Jumat, 21 November 2014

9 Langkah Membuat Aplikasi RMI Di Java

RMI adalah singkatan dari Remote Method Invocation. Dengan menggunakan fasilitas yang terdapat didalam java ini, kita bisa membuat aplikasi dengan arsitektur 3 tingkat (3 Tier Architectur). Untuk membuat sebuah aplikasi berbasis RMI, maka kita harus membuat 2 aplikasi, yaitu 1 aplikasi RMI yang bertindak sebagai server dan satunya lagi aplikasi yang bertindak sebagai client. Gambar dibawah ini menunjukkan skema komunikasi yang terjadi antara aplikasi RMI client dan aplikasi RMI server.


Alur Komunikasi antara RMI Client dengan RMI Server

Sabtu, 01 November 2014

Monitoring Koneksi Internet Menggunakan Mikrotik Dan Ubuntu 10.04 Sebagai SMTP Relay

  • Konfigurasi Server Ubuntu Sebagai Intermediate Email Server
Yang pertama adalah konfigurasi IP Address dan Default Gateway. Disini saya menggunakan IP Address 172.16.16.121 untuk Ubuntu Server (IES) ini. Setting Repository Lokal & Install Webmin

it@IES:~$ sudo cp /etc/apt/sources.list /etc/apt/sources.list.asli
it@IES:~$ sudo pico /etc/apt/sources.list

deb http://kambing.ui.ac.id/ubuntu lucid main restricted universe multiverse
deb http://kambing.ui.ac.id/ubuntu lucid-updates main restricted universe multi$
deb http://kambing.ui.ac.id/ubuntu lucid-security main restricted universe mult$
deb http://kambing.ui.ac.id/ubuntu lucid-backports main restricted universe mul$
deb http://kambing.ui.ac.id/ubuntu lucid-proposed main restricted universe mult$
deb http://download.webmin.com/download/repository sarge contrib 

it@IES:~$ sudo apt-get update 
it@IES:~$ sudo apt-get install webmin 

Selasa, 23 September 2014

Membangun Database Data Karyawan Menggunakan PostgreSQL

Tutorial kali ini saya akan membangun sebuah database yang akan menampung informasi-informasi data karyawan. Adapun struktur tabel yang akan dibangun dalah seperti berikut ini.


Citrix XenServer - Seri 4 (Create EXT3 / LVM Local Storage, Unplug & Plug PBD, Detach - Attach - Re-attach SR)

Kali ini saya akam melakukan simulasi operasi Create EXT3 & LVM Local Storage pada Citrix XenServer 6.2. Kemudian akan melakukan melepasnya dari PBD (Unplug) dan menghancurkan (destroy) PBD tersebut, sehingga Local Storage tersebut bisa dipindah-pindah ke mesin fisik (host) XenServer yang lain untuk berbagai macam keperluan.
Disini saya memiliki 2 hardisk tambahan pada XenServer Host yang dikenal sebagai "/dev/sdb" dan "/dev/sdc".

[root@xenserver1-onVM ~]# fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 21.4 GB, 21474836480 bytes
256 heads, 63 sectors/track, 2600 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        2601    20971519+  ee  EFI GPT

Disk /dev/sdb: 5368 MB, 5368709120 bytes
255 heads, 63 sectors/track, 652 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn't contain a valid partition table

Disk /dev/sdc: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdc doesn't contain a valid partition table

Senin, 22 September 2014

Install Arduino IDE di Ubuntu 14.04 64bit

Pada kesempatan ini saya akan memperlihatkan cara menginstall Arduino IDE pada Ubuntu Desktop 14.04 64bit. Arduino IDE digunakan untuk menulis program, meng-edit, meng-compile sekaligus meng-upload kode yang telah ditulis / dibuat ke Chip Arduino yang telah terangkai di dalam Arduino Board. Ada beberapa jenis Arduino Board antara lain Arduino Uno, Arduino Duemilanove, Arduino Nano, Arduino Mega, Arduino Leonardo, Arduino Esplora, Arduino Micro, Arduino Mini, Arduino Flo, Arduino Ethernet, LilyPad Arduino USB, Arduino Pro, dan lain-lain. Untuk melakukan instalasi Arduino IDE pada Ubuntu Desktop 14.04, kali ini saya akan menggunakan paket yang telah tersedia di repository Ubuntu. Perhatikan perintah dan output yang dihasilkan dalam menginstall Arduino IDE di bawah ini.

it@it-H55M-S2:~$ cat /etc/os-release 
NAME="Ubuntu"
VERSION="14.04, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"

it@it-H55M-S2:~$ uname -a
Linux it-H55M-S2 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Jumat, 19 September 2014

Memperbesar Kapasitas Volume Group Pada VM CentOS

Disini saya memiliki 1 buah VM CentOS 6.5 64bit di dalam Host Citrix Xenserver. Karena pada saat awal meng-create VM CentOS 6.4 saya tidak menentukan besar hardisk virtual yang akan digunakan, maka saya mendapatkan hardisk virtual hanya sebesar 8GB sebagai tempat instalasi OS CentOS 6.4. Hardisk tempat instalasi OS CentOS ini dikenal sebagai "/dev/xvda". Partisi LVM berada di "/dev/xvda2"
Karena saat ini saya hendak menjadikan VM CentOS ini sebagai Server Database PostgreSQL, maka saya menginginkan VM ini memiliki kapasitas hardisk virtual sebesar 50GB. Maka melalui Xen Center, saya memperbesar ukuran hardisk virtual tersebut menjadi 50GB, dan saya mendapatkan kapasitas hardisk "/dev/xvda" telah berubah menjadi 50GB. Namun apa yang terjadi pada partisi yang telah terlanjur diinstal CentOS ("/dev/xvda2") ?, kapasitas hardisk virtual memang berubah menjadi 50GB, namun partisi default ("/dev/xvda2") tempat OS CentOS 6.4 di-install tetap hanya 8GB.

Kamis, 11 September 2014

Instalasi & Konfigurasi Awal Database Server PostgreSQL 9.3 di CentOS 6.5 Minimal Server

__________________________________


TERIMA KASIH TELAH BERKUNJUNG TEMAN !
SEBELUM MELANJUTKAN MEMBACA, TOLONG SUBSCRIBE KE CHANNEL YOUTUBE SAYA YA KAWAN.
CARANYA KLIK TOMBOL MERAH DIATAS.

____________________________________________________________________________________________________________________________________
________________________




Kali ini kita akan melakukan instalasi dan konfigurasi awal database server postgresql 9.3 di CentOS 9.3. Ikuti langkah-langkah berikut ini.
  1. Instalasi
  2. Sementara matikan terlebih dahulu service iptable untuk kemudahan proses koneksi ke database nantinya. Kemudian cek versi CentOS menggunakan perintah berikut ini.

    [root@PostgreSQL-50G ~]# cat /etc/centos-release 
    CentOS release 6.5 (Final)
     
    [root@PostgreSQL-50G ~]# cat /etc/redhat-release 
    CentOS release 6.5 (Final)
     
    [root@PostgreSQL-50G ~]# uname -a
    Linux PostgreSQL-50G 2.6.32-431.29.2.el6.x86_64 #1 SMP Tue Sep 9 21:36:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
     
    [root@PostgreSQL-50G ~]# uname -r
    2.6.32-431.29.2.el6.x86_64
    

Citrix XenServer - Tips & Trik (Generate UUID Network Interface Pada VM CentOS Setelah Operasi Copy VM di Citrix XenServer)

Setelah operasi Copy VM Linux (CentOS 6.4) antar host Citrix XenServer kita perlu meng-update file konfigurasi network interface, karena Citrix XenServer akan secara otomatis membuat mac address baru untuk VM Linux yang di copy, namun pada file konfigurasi mac address tersebut masih mac address yang lama. Maka disini harus dilakukan 2 langkah agar network interface bisa berfungsi, yaitu men-generate UUID NIC yang baru dan mengubah mac address pada file konfigurasi NIC tersebut. Lihatlah pada gambar dibawah ini, saya meng-copy VM CentOS yang ada di Host XenServer Master ke Host XenServer Slave.


Senin, 08 September 2014

Citrix XenServer - Seri 3 (Membuat SR bertipe ISO Dari Local Storage)

SR dengan tipe ISO berfungsi untuk menyimpan file-file CD Images yang berformat ISO. Biasanya disebut dengan ISO Library. Disini kita akan mengalokasikan kapasitas sebesar 50 GB sebagai partisi yang akan menampung file-file ISO. Space yang digunakan diambil dari SR lvm yang pada tutorial yang lalu telah kita buat dan difungsikan sebagai Backup Storage. Ikuti langkah-langkah berikut ini.

[root@xenserver-master ~]# fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 500.1 GB, 500107862016 bytes
256 heads, 63 sectors/track, 60563 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       60564   488386583+  ee  EFI GPT

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn't contain a valid partition table

Disk /dev/dm-0: 498.9 GB, 498999492608 bytes
255 heads, 63 sectors/track, 60666 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/dm-0 doesn't contain a valid partition table
 
[root@xenserver-master ~]# pvs
  PV                                                                VG                                                 Fmt  Attr PSize   PFree  
  /dev/mapper/ddf1_4c5349202020202080862925000000004711471100001450 VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca lvm2 a-   464,72G 464,71G
  /dev/sda3                                                         VG_XenStorage-f2faf157-8ee8-7434-58ad-c01875eecff8 lvm2 a-   457,75G 457,75G
 
[root@xenserver-master ~]# lvs
  LV   VG                                                 Attr   LSize Origin Snap%  Move Log Copy%  Convert
  MGT  VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca -wi-a- 4,00M                                      
  MGT  VG_XenStorage-f2faf157-8ee8-7434-58ad-c01875eecff8 -wi-a- 4,00M                                      
 
[root@xenserver-master ~]# pvs
  PV                                                                VG                                                 Fmt  Attr PSize   PFree  
  /dev/mapper/ddf1_4c5349202020202080862925000000004711471100001450 VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca lvm2 a-   464,72G 464,71G
  /dev/sda3                                                         VG_XenStorage-f2faf157-8ee8-7434-58ad-c01875eecff8 lvm2 a-   457,75G 457,75G
 
[root@xenserver-master ~]# vgs
  VG                                                 #PV #LV #SN Attr   VSize   VFree  
  VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca   1   1   0 wz--n- 464,72G 464,71G
  VG_XenStorage-f2faf157-8ee8-7434-58ad-c01875eecff8   1   1   0 wz--n- 457,75G 457,75G
 
[root@xenserver-master ~]# lvs
  LV   VG                                                 Attr   LSize Origin Snap%  Move Log Copy%  Convert
  MGT  VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca -wi-a- 4,00M                                      
  MGT  VG_XenStorage-f2faf157-8ee8-7434-58ad-c01875eecff8 -wi-a- 4,00M                                      
 
[root@xenserver-master ~]# lvcreate VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca --size 50G --name ISO-Lib
  Logical volume "ISO-Lib" created
 
[root@xenserver-master ~]# lvs
  LV      VG                                                 Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  ISO-Lib VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca -wi-a- 50,00G                                      
  MGT     VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca -wi-a-  4,00M                                      
  MGT     VG_XenStorage-f2faf157-8ee8-7434-58ad-c01875eecff8 -wi-a-  4,00M                                      
 
[root@xenserver-master ~]# mkfs.ext3 /dev/VG_XenStorage-3c866da7-560e-d623-4d2f-df5b8beec3ca/ISO-Lib
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
6553600 inodes, 13107200 blocks
655360 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
400 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks: 
 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
 4096000, 7962624, 11239424

Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Rabu, 03 September 2014

Citrix XenServer - Seri 2 (Storage)

Setelah pada tutorial yang lalu kita membahas partisi default dan hubungan antara VM, VBD, VDI, SR, PBD dan Host pada XenServer 6.2.0 diatas mesin virtual, maka kali ini kita akan melihat secara langsung hubungan, partisi default dan lain sebagainya yang ada pada Citrix XenServer 6.2.0 yang diinstall diatas PC Server Motherboard Intel S5500BC dengan Processor Intel Xeon Quad Core. Saya telah menginstall Citrix XenServer 6.2.0 diatas PC Server tersebut dengan kondisi memiliki 1 SATA Hardisk 500GB, beberapa USB Port, 3 NIC, 1 DVD Drive dan 6 GB RAM. Nah setelah instalasi selesai, saya men-shutdown XenServer, kemudian menambahkan lagi 1 buah Hardisk SATA 500GB. Hardisk ini dikenali sebagai "/dev/sdb". Hal ini penting untuk diingat, karena saat akan menambahkan hardisk ini ke SR, kita akan menemui pesan error yang menurut saya cukup sulit mendapatkan solusinya langsung dari google.
Baiklah, langsung saja kita lihat partisi default yang dibuat oleh Citrix XenServer saat instalasi pada single hardisk SATA 500GB. Perhatikan output dari perintah-perintah berikut ini.

[root@xenserver-master ~]# fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 500.1 GB, 500107862016 bytes
256 heads, 63 sectors/track, 60563 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       60564   488386583+  ee  EFI GPT

Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System

Disk /dev/dm-0: 498.9 GB, 498999492608 bytes
255 heads, 63 sectors/track, 60666 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

     Device Boot      Start         End      Blocks   Id  System
[root@xenserver-master ~]# pvs
  PV         VG                                                 Fmt  Attr PSize   PFree  
  /dev/sda3  VG_XenStorage-e8fe919f-5899-6432-3429-f571180fc308 lvm2 a-   457,75G 457,75G
[root@xenserver-master ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               VG_XenStorage-e8fe919f-5899-6432-3429-f571180fc308
  PV Size               457,76 GB / not usable 9,12 MB
  Allocatable           yes 
  PE Size (KByte)       4096
  Total PE              117184
  Free PE               117183
  Allocated PE          1
  PV UUID               F2aZeQ-JBql-Vrnb-t55F-nsYb-ExBn-Av92rK
   
[root@xenserver-master ~]# vgdisplay
  --- Volume group ---
  VG Name               VG_XenStorage-e8fe919f-5899-6432-3429-f571180fc308
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               457,75 GB
  PE Size               4,00 MB
  Total PE              117184
  Alloc PE / Size       1 / 4,00 MB
  Free  PE / Size       117183 / 457,75 GB
  VG UUID               Kz279D-np3Y-Zh7a-26j2-Mg63-N9dq-9JlnXl
   
[root@xenserver-master ~]# lvdisplay
  --- Logical volume ---
  LV Name                /dev/VG_XenStorage-e8fe919f-5899-6432-3429-f571180fc308/MGT
  VG Name                VG_XenStorage-e8fe919f-5899-6432-3429-f571180fc308
  LV UUID                1RQvRd-hchx-4hyq-aqXY-ZMPK-yTnY-fG6SVH
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                4,00 MB
  Current LE             1
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     1024
  Block device           252:1
   
[root@xenserver-master ~]# cat /proc/partitions 
major minor  #blocks  name

   7        0      52378 loop0
   8        0  488386584 sda
   8        1    4193297 sda1
   8        2    4193297 sda2
   8        3  479996935 sda3
   8       16  488386584 sdb
 252        0  487304192 dm-0
 252        1       4096 dm-1

Senin, 01 September 2014

Citrix XenServer - Seri 1 (Storage)

__________________________________


TERIMA KASIH TELAH BERKUNJUNG !
SEBELUM MELANJUTKAN MEMBACA, TOLONG SUBSCRIBE KE CHANNEL YOUTUBE SAYA YA TEMAN.
CARANYA KLIK TOMBOL MERAH DIATAS.

____________________________________________________________________________________________________________________________________
________________________




1. Storage

Storage pada XenServer dapat berupa EXT3, LVM, NFS, iSCSI, HBA, iSL NetApp, iSL EqualLogic dan iSL EMC VNX. Kesemuanya juga dikenal dengan Storage Repository Format. Disini kita akan membahas Storage Repository yang berasal dari Hardisk Lokal yang berformat LVM. Sebelum melanjutkan pembahasan, lihatlah gambar dibawah ini, yang menjelaskan antara keterkaitan Storage Repository (SR) dengan objek yang terkait.


Gambar 1. Hubungan antara Storage Repository dan Objek Terkait

PBD merepresentasikan interface antara server fisik dengan SR yang terhubung (attached).
SR menggambarkan sebuah storage target tertentu dimana tempat VDI disimpan.

Kamis, 28 Agustus 2014

Solusi : "Windows could not determine if this computer contains a valid system volume"

Ini adalah pengalaman saya saat akan menginstall Windows Server  2008 R2 diatas server dengan Motherboard Intel S5500BC. Pada proses instalasi, di bagian partisi hardisk, saya telah mengalokasikan partisi hardisk sebagai drive C:\. Setelah menekan tombol Next untuk melanjutkan instalasi, ternyata instalasi tidak dapat berlanjut, dan pesan yang muncul adalah sebagai berikut :
"Installation Canceled"
"Windows could not determine if this computer contains a valid system volume"

Rabu, 27 Agustus 2014

Backup Secara Manual Virtual Machine Proxmox

__________________________________


TERIMA KASIH TELAH BERKUNJUNG TEMAN !
SEBELUM MELANJUTKAN MEMBACA, TOLONG SUBSCRIBE KE CHANNEL YOUTUBE SAYA YA KAWAN.
CARANYA KLIK TOMBOL MERAH DIATAS.

____________________________________________________________________________________________________________________________________
________________________




Backup secara manual VM-VM yang ada di Proxmox suatu waktu bisa saja diperlukan dengan berbagai alasan. Misalnya OS Proxmox mengalami crash sehingga Web Interface tidak bisa diakses atau utility backup di Proxmox tidak berfungsi, maka backup VM secara manual harus dilakukan untuk kesinambungan sistem yang telah berjalan. Oleh karena itu pada kesempatan ini saya akan membagi pengalaman bagaimana cara mem-backup VM-VM di Proxmox secara manual. Adapun topology jaringan seperti gambar berikut.

Selasa, 26 Agustus 2014

Cara Disable Firewall (IPTables) di CentOS 6.5

Berikut ini adalah cara men-disable IPTables / Firewall :
  • Cek status IPTables dengan salah satu perintah dibawah ini.

  • [root@CentOS64-Esxi-Mn ~]# /etc/init.d/iptables status
    [root@CentOS64-Esxi-Mn ~]# service iptables status
    Table: filter
    Chain INPUT (policy ACCEPT)
    num  target     prot opt source               destination         
    1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    2    ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
    3    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
    4    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
    5    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 
    
    Chain FORWARD (policy ACCEPT)
    num  target     prot opt source               destination         
    1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 
    
    Chain OUTPUT (policy ACCEPT)
    num  target     prot opt source               destination         
    
    [root@CentOS64-Esxi-Mn ~]# 
    

  • Stop service IPTables dengan salah satu perintah berikut. Perintah ini akan menghentikan sementara service IPTables, di saat komputer reboot maka service IPTables akan running kembali.

Cara Disable SELinux di CentOS 6.4 / 6.5

Berikut ini adalah tahapan untuk men-disable SELinux di CentOS 6.4 / 6.5 :
  • Cek Versi CentOS, cek status SELinux dan edit file konfigurasi untuk men-disable SELinux :

[root@CentOS64-Esxi-Mn opt]# cat /etc/redhat-release 
CentOS release 6.5 (Final) 
 
[root@CentOS64-Esxi-Mn opt]# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted 
 
[root@CentOS64-Esxi-Mn opt]# vi /etc/selinux/config 

Kamis, 21 Agustus 2014

Perintah-perintah Dasar Pada Router Cisco

  • Konfigurasi Hostname
Hostname berguna sebagai pengenal bagi router itu sendiri. Dengan menggunakan hostame, kita dapat lebih mudah mengetahui dimana router kita berada, atau kita lebih mudah memetakan berada dibagian mana router tersebut digunakan atau difungsikan. Misal router tersebut berfungsi sebagai Gateway, maka dapat kita beri nama GW1, GW2, GW3 atau nama lainnya.
Untuk melakukan konfigurasi hostname harus dilakukan pada global EXEC Mode, berikut tahapannya :

        --- System Configuration Dialog ---

Continue with configuration dialog? [yes/no]: n


Press RETURN to get started!



Router>enable
Router#conf term
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#hostname GW1
GW1(config)#exit
GW1#
%SYS-5-CONFIG_I: Configured from console by console

GW1#

Rabu, 20 Agustus 2014

Oprek-oprek Partisi LVM Bag. 5

Pada tutorial yang lalu kita telah mensimulasikan pemindahan hardisk fisik yang bertipe LVM dari satu sistem ke sistem lainnya. Proses pemindahannya pun cukup mudah, kita hanya tinggal memindahkan 2 hardisk "/dev/sdb1" dan "/dev/sdc1" yang bertipe LVM tersebut dari Virtual Machine (VM) Ubuntu 14.04 ke VM CentOS 6.4. Kemudian kedua hardisk tersebut akan terdeteksi secara otomatis sebagai VG yang memiliki 3 LV aktif, kemudian kita tinggal me-mount ke tiga LV tersebut di folder local. Namun bagaimana kalau yang dihadapi adalah benar-benar hardisk LVM yang real, bukan Virtual Hardisk dan bukan Virtual Machine ? Apakah keadaannya juga akan semudah itu ?.
Nah, oleh karena itu kali ini kita akan benar-benar mencoba memindahkan sebuah Hardisk LVM dari satu sistem yang berbeda ke sistem yang lainnya. Pada percobaan kali ini, kebetulan saya memiliki sebuah Hardisk yang telah terinstall Baremetal OS Proxmox 3, dan kebetulan sistem operasi proxmox tersebut mengalami kerusakan sehingga tidak dapat menjalankan Virtual Machine (VM) yang ada didalamnya. Dan kebetulan juga partisi "/boot" nya mengalami kerusakan sehingga proxmox tidak bisa beroperasi. Pada kondisi ini, saya ingin menyelamatkan VM-VM yang ada didalamnya. Bagaimanakah caranya ?.

Selasa, 19 Agustus 2014

Konfigurasi IP Address Pada CentOS 6.4

Mengkonfigurasi IP Address pada Distro Linux CentOS agak berbeda dengan konfigurasi pada Distro Linux Ubuntu, walaupun sama-sama distro linux. Disini saya akan mengkonfigurasi IP Address pada CentOS 6.4 versi 64bit. Pertama-tama lihat daftar interface jaringan yang dapat dikenali oleh CentOS 6.4 :

Oprek-oprek Partisi LVM Bag. 4

4. Memindahkan Volume Group Ke System Berbeda

Pada tutorial sebelumnya, kita telah mengoprek-oprek partisi LVM. Kita sudah mengurangi (reduce) dan memperbesar (extend) partisi-partisi LVM yang telah memiliki data-data di dalamnya. Dan data-data tersebut masih utuh. Saya ingatkan bahwa percobaan tersebut disimulasikan menggunakan Hardisk Virtual dan VM Ubuntu Server 14.04 yang memiliki kapasitas 4 GB + 6 GB. Jadi ketika anda melakukan hal tersebut pada hardisk LVM yang real, yang telah berisi data-data hingga ratusan gigabyte, atau bahkan mungkin terrabyte, maka jika anda belum mem-backup data-data tersebut, pastikan bahwa anda yakin / telah berpengalaman dalam me-manage hardisk-hardisk LVM, dan pastikan bahwa anda tahu benar dengan resiko dari tindakan yang akan anda lakukan tersebut.
Percobaan kita selanjutnya adalah memindahkan hardisk LVM dari satu system ke system yang lainnya, atau dari satu server fisik ke server fisik lainnya. Dalam hal ini kita akan memindahkan VG "ShareLVM" yang terdiri dari 2 PV ("/dev/sdc1" dan "/dev/sdb1") dari Ubuntu Server 14.04 ke CentOS 6.4 Minimal Server, kedua-duanya adalah versi 64bit dan kedua-duanya menggunakan lvm2 :

Senin, 18 Agustus 2014

Oprek-oprek Partisi LVM Bag. 3

3. Merubah Kapasitas Partisi LV dan File Systemnya

Pada postingan sebelumnya kita berhasil membuat partisi LVM dari 2 buah hardisk dengan memiliki 3 partisi LV. Kita juga telah berhasil me-mount-nya secara otomatis setiap komputer reboot. Dan kita juga telah berhasil menyalin berbagai jenis file ke dalam nya baik melalui perintah copy maupun rsync. Sekarang kita akan melakukan operasi penyusutan dan pembesaran kapasitas partisi LV.

Menyusutkan Kapasitas Partisi LV "Share"

Untuk mengingat kembali kondisi partisi LVM yang telah kita buat, mari lihat hasil perintah di bawah ini :

lvm@ubuntu-lvm:~$ df -h
Filesystem                        Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu--lvm--vg-root  5.1G  1.1G  3.8G  22% /
none                              4.0K     0  4.0K   0% /sys/fs/cgroup
udev                              235M  4.0K  235M   1% /dev
tmpfs                              50M 1012K   49M   3% /run
none                              5.0M     0  5.0M   0% /run/lock
none                              246M     0  246M   0% /run/shm
none                              100M     0  100M   0% /run/user
/dev/sda1                         236M   37M  188M  17% /boot
/dev/mapper/ShareLVM-Share        3.9G 1017M  2.7G  28% /var/LVMMount/Share
/dev/mapper/ShareLVM-Backup       3.9G  978M  2.7G  27% /var/LVMMount/Backup
/dev/mapper/ShareLVM-Media        1.5G  2.3M  1.4G   1% /var/LVMMount/Media

Rabu, 13 Agustus 2014

Oprek-oprek Partisi LVM Bag. 2

2. Membuat Partisi LVM


Pada tutorial sebelumnya kita telah melihat partisi LVM yang dibuat secara otomatis oleh Ubuntu Server 14.04. Nah, kali ini kita akan belajar membuat partisi LVM sendiri pada 2 hardisk yang baru. Disini kita masih menggunakan Virtualbox untuk melakukan simulasinya. Untuk memulai, pertama-tama dalam kondisi PC off, tambahkan 2 hardisk baru bertipe sata.
Kemudian nyalakan PC Ubuntu Server 14.04. Setelah memasukkan username dan password, pada terminal ketikkan perintah berikut :

lvm@ubuntu-lvm:~$ sudo fdisk -l

Disk /dev/sda: 6442 MB, 6442450944 bytes
255 heads, 63 sectors/track, 783 cylinders, total 12582912 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0006732d

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      499711      248832   83  Linux
/dev/sda2          501758    12580863     6039553    5  Extended
/dev/sda5          501760    12580863     6039552   8e  Linux LVM

Disk /dev/sdb: 6442 MB, 6442450944 bytes
255 heads, 63 sectors/track, 783 cylinders, total 12582912 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x26cb0a60

   Device Boot      Start         End      Blocks   Id  System

Disk /dev/sdc: 4294 MB, 4294967296 bytes
255 heads, 63 sectors/track, 522 cylinders, total 8388608 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdc doesn't contain a valid partition table

Selasa, 12 Agustus 2014

Oprek-oprek Partisi LVM Bag. 1

1. Partisi LVM Pada Ubuntu Server 14.04
Pada bagian pertama ini kita akan mencoba menganalisa partisi LVM (Logical Volume Managemer) yang dibuat secara otomatis oleh Sistem Operasi Linux (Ubuntu Server 14.04). Kenapa kita harus repot-repot menganalisa pola partisi LVM yang dibuat oleh sebuah sistem operasi Linux ? karena dengan mengetahui pola partisi LVM yang dibuat otomatis oleh sebuah Sistem Operasi Linux, setidaknya sedikit atau banyak kita telah memiliki wawasan akan salah satu pola partisi LVM yang baik. Dengan begitu, setelah mengetahui pola pembagian partisi LVM yang standar dari sebuah sistem operasi linux, maka setidaknya kita dapat membuat pola pembagian partisi yang baik sesuai dengan kebutuhan kita.
Sebelum melanjutkan pembahasan kita akan sedikit mempelajari apa itu partisi Primary, Extended dan Logical.

Partisi Primary
Partisi utama harddisk dan biasanya digunakan untuk install Sistem Operasi. Partisi ini hanya bisa dibuat maksimal 4 partisi. Tapi jika menggunakan Sistem Operasi DOS, maka partisi primary hanya satu dan untuk sistem. Di GNU/Linux partisi ini dikenali dengan nomor partisi 1,2,3, dan 4 atau sda1, sda2, sda3, sda4.

Partisi Extended
Partisi yang digunakan untuk mengatasi kekurang partisi primary yang hanya dimungkinkan membuat 4 partisi. Jika ingin memiliki partisi lebih dari 4, maka partisi ini wajib ada dengan cara mengorbankan satu partisi primary. Bagaimana cara membuat partisi extended ini? Partisi ini tidak perlu dibuat secara manual, tapi cukup dengan membuat partisi logical maka secara otomatis partisi extended akan terbentuk dengan sendirinya. Partisi ini akan menempati nomor partisi +1 dari partisi primary. Misal jika hanya ada 2 partisi primary, maka partisi ini akan menempati posisi sda3.

Partisi Logical
Partisi yang akan selalu dibuat didalam partisi extended. Nomor partisi akan selalu dimulai dari 5 dan seterusnya. Jika ada 3 jenis partisi logical maka masing-masing akan menempati sda5, sda6, dan sda7.

Catatan:
jika kita menggunakan atau menginstall GNU/Linux di Harddisk P-ATA, maka akan dikenali dengan hda bukan sda. Penamaan sda hanya untuk harddisk tipe SCSI atau SATA, kecuali jika GNU/Linux sudah mengganti standar tersebut.

Senin, 11 Agustus 2014

Konversi VM Image Virtualbox (.vdi) Ke VM Image VMware (.vmdk)

Pada postingan kali ini saya akan menunjukkan bagai mana cara mengkonversi sebuah virtual hardisk dengan format .vdi yang digunakan oleh Virtualbox menjadi format .vmdk yang digunakan oleh VMware.
Misal kita memiliki sebuah VM dari Virtualbox yang terletak di /media/it/DATA1/VirtualBoxHDD/WindowsXP-SP3/WindowsXP-SP3.vdi dan akan dikonversi menjadi sebuah VM dengan format .vmdk, kita akan mengkonversinya dan hasil konversi akan disimpan di /media/it/DATA2/WindowsXP-SP3.vmdk. Caranya cukup gampang, buka terminal kemudian ketikkan perintah berikut :

it@it-H55M-S2:~/VirtualBox VMs$ VBoxManage clonehd /media/it/DATA1/VirtualBoxHDD/WindowsXP-SP3/WindowsXP-SP3.vdi /media/it/DATA2/WindowsXP-SP3.vmdk --format VMDK
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'VMDK'. UUID: 9185e46f-f0c7-4f5a-9873-349535ab383d
 
it@it-H55M-S2:~/VirtualBox VMs$ ls -l /media/it/DATA2

Setelah berhasil melakukan konversi kita dapat membuat sebuah VM baru di VM Ware kemudian gunakan VM Image yang telah dikonversi tersebut sebagai Virtual Hardisk.

Kamis, 07 Agustus 2014

Membangun Intermediate Mail Server Berbasis Ubuntu Server 14.04

Intermediate Mail Server (IMS) adalah email server yang menjembatani antara user-user local dalam mengakses Reguler Mail Server yang ada di internet semisal gmail.com dan yang lainnya. Intermediate Mail Server (IMS) akan megambil email-email user lokal di internet kemudian menyimpannya. IMS juga akan mengirimkan email-email user lokal ke internet melalui Reguler Mail Server di internet yang telah ditentukan. Perhatikan topology nya seperti di bawah ini :


Gambar 1. Topology Jaringan Dengan Intermediate Mail Server

Selasa, 22 Juli 2014

Error VMWare WS 10.0.0 di Ubuntu 14.04 "Unable to run VMware - Failed to build vmnet"

Pada kesempatan ini saya akan berbagi pengalaman bagaimana solusi mengatasi masalah yang muncul saat menginstall VMWare Workstation 10.0.0 pada ubuntu 14.04 64bit.
Setelah selesai menginstall VMWare 10.0.0 pada ubuntu 14.04, kemudian dijalankan muncul pesan error “Unable to start services” yang kalau dibaca pada file log-nya menurut saya penyebabnya “Failed to build vmnet”. Pesan error yang muncul tampak seperti gambar di bawah ini.


Senin, 10 Maret 2014

Cara Menggunakan USBasp-Programmer Di Linux

Untuk memprogram mikrokontroler (disini saya membahas Atmega 16/32/8535) di atas Sistem Operasi Windows mungkin kita sudah terbiasa dan dengan fasilitas-fasilitas yang sangat memudahkan para programmer. Namun, jika suatu saat kita harus melakukan pemrograman mikrokontroler di atas OS Linux, apa yang harus kita lakukan ?.
Pada tutorial kali ini saya akan berbagi pengalaman tentang cara melakukan pemrograman mikrokontroler Atmel di atas OS Linux. Disini peralatan yang saya gunakan adalah :
  • Trainer AVR V2.0 buatan KEI Electronic dengan uC Atmega 16A
  • USBasp-Programmer, dan
  • PC dengan OS Linux Ubuntu 13.10 Desktop Versi 64bit
Sebelumnya kita harus memiliki AVR toolchain terinstall pada OS Linux yang kita gunakan. Berdasarkan sumber dari link berikut : http://stab-iitb.org/wiki/AVR_on_Linux, kita membutuhkan 5 paket berikut untuk membuat AVR-GCC Toolchain :
gcc The actual C/C++ Compiler
binutils A collection of tools, including the assembler, linker and some other tools to manipulate the generated binary files.
libc-avr A subset of the standard C Library with some additional AVR specific functions. The libc-avr package also includes the AVR specific header files.
gdb The debugger. See the Debugging section for more information about this.
avrdude A Programm to download/upload/manipulate the ROM and EEPROM of an AVR MCU.

Jumat, 07 Maret 2014

Menggunakan WinAVR GCC (Atmega 16/32/8535)

Disini saya akan membuat program untuk mikrokontroler Atmega 16A. Saya menggunakan WinAVR GCC. Agar bisa menggunakan WinAVR GCC untuk membuat program mikrokontroler menggunakan bahasa C, maka sebelumnya anda harus menginstall :
  1. AVR Studio 4 (hanya menyediakan Assembler untuk memprogram mikrokontroler). Dapat di download di www.atmel.com.
  2. WinAVR GCC (setelah program ini diinstall secara otomatis akan terintegrasi dengan AVR Studio 4, kemudian bisa digunakan untuk menulis dan mengkompilasi program mikrokontroler menggunakan bahasa C)
Kita akan membuat sebuah contoh program untuk menghidupkan dan mematikan LED pada Port B dari mikrokontroler Atmega 16A. Berikut tahapan-tahapan yang harus dilakukan :

Rabu, 05 Maret 2014

Cara Mount Otomatis Partisi NTFS Di Fedora 18

Pada Fedora 18 maupun sebelumnya, partisi ntfs dari sebuah hardisk tidak secara otomatis dapat dikenali, lain halnya dengan distro Ubuntu yang secara otomatis bisa mengenali dan membaca partisi ntfs sehingga bisa di-mount kapan saja. Agar fedora dapat mengenali dan menggunakan partisi ntfs dari suatu hardisk, maka terlebih dahulu harus diinstall paket ntfs-3g. Adapun langkah-langkah yang harus dilakukan yaitu :
  • Cek partisi hardisk yang ada :
[Rey@localhost ~]$ sudo fdisk -l
 
Disk /dev/sda: 500.1 GB, 500107862016 bytes, 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x744e1987
 
Device Boot Start End Blocks Id System
/dev/sda1 * 63 296961524 148480731 7 HPFS/NTFS/exFAT
/dev/sda2 296961586 593923049 148480732 f W95 Ext'd (LBA)
/dev/sda3 593924096 946180095 176128000 83 Linux
/dev/sda4 946180096 948228095 1024000 82 Linux swap / Solaris
/dev/sda5 296961588 593923049 148480731 7 HPFS/NTFS/exFAT
  • Dari hasil pengecekan diatas, terdapat 2 buah partisi ntfs, yaitu /dev/sda1 dan /dev/sda5, kedua partisi inilah yang nantinya akan kita mount secara otomatis.

Selasa, 04 Maret 2014

Membuat Aplikasi Untuk Menjalankan Perintah Linux Dengan Java

  • Disini saya menggunakan Compiler Eclipse Versi 3.8.1. Buat project baru melalui File → New → Java Project :
Project Name = runLinuxCmd
Location = /home/it/workspace (Default)
JRE = Use a project specific JRE → java-7-openjdk-amd64
Project Layout = Create separates folders for sources and class files
Kemudian klik Next → Finish.
  • Klik kanan pada folder src → New → Class :
Name : runLinuxCmd
Which method stubs would you like to : public static void main(String[] args)
Pilihan lainnya biarkan default.

Kemudian klik Finish.

Senin, 03 Maret 2014

Transfer Data dalam Jaringan Menggunakan Rsync

__________________________________


TERIMA KASIH TELAH BERKUNJUNG TEMAN !
SEBELUM MELANJUTKAN MEMBACA, TOLONG SUBSCRIBE KE CHANNEL YOUTUBE SAYA YA KAWAN.
CARANYA KLIK TOMBOL MERAH DIATAS.

____________________________________________________________________________________________________________________________________
________________________




Rsync adalah tool untuk melakukan transfer ataupun sinkronisasi baik berupa file maupun tree (struktur direktori + isinya) secara satu arah, baik transfer lokal (di PC yang sama) maupun remote (antar PC dalam jaringan). Fungsi rsync mirip dengan tools seperti scp, mv, cp, ftp client. Rsync biasanya digabungkan dengan SSH sebagai metode transfer remotenya, walaupun dapat juga diatur untuk menjadi daemon sehingga tidak memerlukan SSH. Untuk kasus-kasus tertentu rsync juga dapat digunakan menggantikan HTTP Client (seperti wget).

Kelebihan rsync :
  • Kecepatan : rsync dapat melakukan kompresi data saat mentransfer. Rsync lebih cepat dari FTP, karena dapat melakukan pipelining tidak seperti FTP yang boros koneksi TCP/IP untuk setiap file yang ditransfer. Ini semakin kentara untuk tree yang berisi file kecil-kecil yang jumlahnya banyak, dimana rsync dapat beberapa kali hingga belasan kali lebih cepat dibandingkan FTP maupun SCP.
  • Irit Bandtwith : jika di sisi penerima file yang ingin dikirimkan sudah ada, tapi belum tentu sama (misalnya lebih kecil atau lebih besar), maka rsync dapat melakukan serangkaian perbandingan checksum terhadap blok-blok dalam file di kedua sisi, untuk meminimalisir jumlah data yang harus ditransfer. Algoritma ini disebut Algoritma Rsync. Misalnya anda memiliki 2 buah versi file berukuran 500MB di dua tempat, dengan rsync mungkin hanya membutuhkan transfer data sebesar 50MB, 10MB atau bahkan di bawah itu, tergantung seberapa berbedanya file dari kedua sisi.
  • Fleksibel : Rsync tidak hanya bisa mentransfer file tunggal, tapi juga direktori beserta sub direktori dan beserta seluruh file yang berada di sana. Anda bisa memilih untuk menghapus file/direktori yang sudah tidak ada dari sisi pengirim tapi masih ada di sisi penerima, anda bisa memilih untuk juga mensinkronisasi metadata file seperti permission, owner, date created, ACL, dll. Rsync dapat menangani link simbolik, hardlink, device, dll. Dan ada banyak opsi lainnya.

Senin, 24 Februari 2014

Language Integrated Query - Bagian 3

3. LINQ to SQL

LINQ to SQL adalah salah satu dari sekian banyak tools ORM yang ada. Namun, karena LINQ to SQL di desain khusus untuk bekerja pada platform .NET dan database SQL Server, maka tools ORM yang satu ini memiliki banyak kelebihan dibandingkan produk-produk ORM lainnya.

Buat class baru dengan nama Jabatan.cs, kemudian tambahkan references, namespace dan kode seperti berikut :

References, Namespace dan Class Jabatan.cs

Language Integrated Query - Bagian 2

2. LINQ to Object

Setelah pada bagian pertama kita berkenalan dengan LINQ, sekarang saatnya kita membahas satu-persatu contoh cara menggunakan LINQ. Sebelumnya perhatikan 2 definisi dari LINQ to Object berikut ini :
  • LINQ to Object adalah sekumpulan pustaka pemrograman yang mengandung sejumlah Standard Query Operators (SQO). SQO membantu mekanisme pengambilan data dalam memory melalui mekanisme interface ala generik pada interface Ienumerable
  • LINQ to Object merupakan suatu konsep di mana kita menggunakan LINQ framework untuk mencari object dengan melakukan akses ke memory. Kita bisa mencari tipe data apa saja yang merupakan turunan dari Ienumerable<T>.
Baiklah, setelah sedikit intro dengan pengertian dari LINQ to Object, langsung saja kita membahas cara menggunakannya. Berikut akan ada 3 contoh yang akan saya berikan, dari yang mudah sampai yang agak sulit :).

Contoh 1 :
Buat sebuah Project dengan tipe Console Application baru dengan nama LINQtoObject1 :

Membuat Project Baru

Minggu, 23 Februari 2014

Language Integrated Query - Bagian 1

1. Pengenalan LINQ
LINQ adalah singkatan dari Language Integrated Query. LINQ merupakan fitur baru yang ditambahkan pada .NET Framework 3.5 (Visual Studio 2008). Dengan menggunakan LINQ, kita dapat melakukan query pada berbagai bentuk data, yaitu XML (LINQ to XML), Database (LINQ-enabled ADO.NET: LINQ to SQL, LINQ to Dataset dan LINQ to Entities) dan Object (LINQ to Objects). Gambar dibawah ini memperlihatkan arsitektur LINQ di antara bahasa pemrograman dan 3 jenis data source (Object, Database, XML).


Arsitektur LINQ

Jumat, 21 Februari 2014

Languange Integrated Query (LINQ) Bag. 1

1. Pengenalan LINQ

Languange Integrated Quey atau disingkat dengan LINQ adalah fitur baru yang ditambahkan pada .NET Framework 3.5 (Visual Studio 2008). Dengan menggunakan LINQ kita bisa mencari data (query) dari berbagai data source yang berbeda, yaitu Object, Database dan XML. Ada 3 jenis LINQ, yaitu :

  • LINQ To Object
LINQ To Object adalah sekumpulan pustaka pemrograman yang mengandung sejumlah Standard Query Operators (SQO). LINQ To Object  digunakan untuk mencari data yang ada di dalam beberapa kumpulan object. Object ini dapat berupa Array, Collection atau Object Class.

  • LINQ To ADO.NET
LINQ to ADO.NET adalah sekumpulan pustaka pemrograman SQO yang memungkinkan komunikasi dengan basis data relasional. LINQ to ADO.NET terbagi lagi menjadi tiga bagian berdasar akses basis data yang diakses, yakni LINQ to SQL untuk pengaksesan ke SQL Server, LINQ to Dataset untuk melakukan query terhadap Datasets, dan LINQ to Entities yang memungkinkan akses LINQ dengan menggunakan objek bisnis.

Selasa, 18 Februari 2014

Cara Install Dan Konfigurasi vsftpd Sebagai FTP Server Di Ubuntu 10.04

File Transfer Protocol (FTP) adalah protokol TCP untuk meng-upload dan men-download file antar komputer. FTP bekerja pada model client / server. Komponen server disebut FTP daemon. FTP daemon secara kontinyu mendengarkan request FTP dari remote client. Ketika ada request FTP dari client, server langsung mengatur login dan men-set up koneksi. Untuk durasi sesi dijalankan salah satu perintah yang dikirim oleh client FTP.

Akses ke server FTP dapat dikelola dengan dua cara:
  • Anonymous
  • Authentikasi

Dalam mode Anonymous, remote client dapat mengakses server FTP dengan menggunakan account default user yang disebut "anonymous" atau "ftp" dan mengirim sebuah alamat email sebagai password.

Kamis, 13 Februari 2014

Pemrograman Socket Bag. 3 (Aplikasi Chat Server - Multi Client)

Setelah di bagian 1 dan 2 kita membahas mengenai Dasar Pemrograman Socket dan Multithreading, maka pada bagian 3 ini kita akan membahas mengenai pembuatan aplikasi yang menerapkan keduanya, ya aplikasi chat server multi client ini mengimplementasikan socket dan multithread. Socket digunakan untuk komunikasi dalam jaringan, sedangkan multithread untuk memproses beberapa method dalam waktu bersamaan.

Rabu, 12 Februari 2014

Convert Source Code To Html With GeSHi

Pada tutorial yang lalu kita pernah membahas tentang Copy As Html. Nah pada tutorial kali ini kita akan membahas hal yang serupa tapi tak sama :), yaitu convert to html. Aplikasi yang digunakan adalah php-geshi. GeSHi adalah singkatan dari Generic Syntax Highliter. Dengan menggunakan aplikasi ini kita akan mendapatkan solusi yang cukup handal dan gratis untuk mengkonversi source code C# yang telah kita buat menjadi format html. Tidak hanya untuk C#, GeSHi (versi 1.0.8.11) juga dapat mengkonversi soure code dari puluhan jenis bahasa pemrograman diantaranya ASM, ASP, ADA, Actionscript, Bash, C, C for Mac, C++, C++ (With QT), Cobol, Java, Delphi, Fortran, Oracle, dan masih banyak lagi. Untuk informasi lebih lengkapnya langsung saja menuju ke website nya http://qbnz.com/highlighter/.

Senin, 10 Februari 2014

Pemrograman Socket Bag. 2 – (Simple Multi-Thread)

Tutorial Pemrograman Socket Bagian 2 kali ini akan membahas tentang Simple Multi-Thread. Kenapa Multi-Thread ? Walaupun yang kita bahas adalah pemrograman socket, namun dalam implementasi berikutnya program kita akan sangat tergantung dengan multi-threaded. Karena pada artikel selanjutnya Insya Allah kita akan membahas mengenai pembuatan aplikasi chatting multi client yang memerlukan implementasi multi-threaded, maka pada bagian ini kita akan membahas mengenai dasar thread.

Pada saat kita membuat sebuah aplikasi, maka secara default aplikasi tersebut menggunakan single-thread. Program hanya dapat menjalankan 1 tugas dalam
satu waktu. User tidak bisa memaksa program untuk menjalankan tugas yang lain ketika proses belum selesai. Dengan Multi-threading, tugas yang lain dapat dieksekusi tanpa harus menunggu tugas sebelumnya selesai.

Jumat, 07 Februari 2014

Pemrograman Socket Bag.1 - (Dasar)

Kali ini kita akan membuat aplikasi client – sever sederhana menggunakan bahasa pemrograman Visual C# 2008. Program yang akan kita buat ini mungkin adalah cara yang paling sederhana atau dasar dalam pemrograman socket.

Seperti biasanya, anda juga dapat men-download secara lengkap source code aplikasi ini yang akan saya berikan di akhir tutorial, dan anda dapat langsung menjalankan program aplikasi ini tentunya setelah anda mengubah beberapa nama string yang ada, sesuai dengan nama project pada jendela Solution Explorer.

Tanpa basa basi lagi mari kita mulai pembuatan aplikasi client server menggunakan C# ini.

Selasa, 04 Februari 2014

Membuat Aplikasi PayRoll Menggunakan C# dan MySql Versi 1 - Bag. 5 (Bonus 1)

Kali ini saya akan memberikan bonus pertama untuk seri tutorial “Membuat Aplikasi Payroll Menggunakan C# dan MySql V1” ini.  Mudah-mudahan ada beberapa bonus lainnya yang akan menyusul :). Bonus kali ini adalah melengkapi aplikasi kita dengan fasilitas Login.
Form login ini berfungsi untuk membatasi user dalam menggunakan aplikasi yaitu yang terkait dengan pengelolaan data-data tertentu di dalam database. Disini ada 2 level user yaitu User Administrator dan User biasa (User). Dalam contoh kali ini apabila yang login adalah Administrator, maka semua menu akan aktif, akan tetapi kalau yang login adalah User biasa (User), maka menu Pegawai dan Petugas akan tidak aktif.
Untuk membuat fasilitas login ini, di dalam database “DB_PayrollDAO” buat tabel Petugas seperti berikut :

Selasa, 28 Januari 2014

CopyAsHtml di Visual Studio 2008

Kali ini saya akan memberikan tips cara meng-copy source code dari editor text Visual Studio 2008 menjadi code-code html yang dapat disisipkan ke dalam blog. Ini berguna di saat kita akan menampilkan source code yang dibuat di Visual Studio ke dalam blog kita, jadi kita bisa menyisipkan baris-baris program yang sudah kita buat ke dalam blog sehingga setiap baris kode-kode program tersebut dapat di copy-paste dengan mudah ke editor text yang lain. Selain itu, tampilannya juga enak dilihat, seperti kita melihat langsung baris-baris kode program tersebut di editor text Visual Studio dengan warna-warni yang sangat menyenangkan.

Jumat, 24 Januari 2014

Membuat Aplikasi PayRoll Menggunakan C# dan MySql Versi 1 - Bag. 4

Baiklah, kali ini saya akan melanjutkan pembahasan mengenai Membuat Aplikasi Payroll Menggunakan C# dan MySql V1. Pada postingan sebelumnya, kita telah membahas pembuatan User Interface (Presentation Layer), Class Gologan dan Jabatan (Class Entity), dan Class GolonganDAO dan JabatanDAO (Class DAO).
Sekarang adalah tahap akhir yang akan kita lakukan, yaitu melengkapi kode di Presentation Layer. Agar mengingat kembali pembahasan sebelumnya, berikut saya tampilkan 3 gambar Form yang telah kita buat :

Kamis, 23 Januari 2014

Membuat Aplikasi PayRoll Menggunakan C# dan MySql Versi 1 - Bag. 3

3. Membuat Data Akses (DAO)
   a. Membuat Class GolonganDAO
Untuk membuat class GolonganDAO, klik kanan pada folder DAO -> Add -> Class..., perhatikan gambar berikut :

 
 
Membuat Class GolonganDAO

Dan tambahkan keyword public pada class GolonganDAO nya.

Rabu, 22 Januari 2014

Membuat Aplikasi Payroll Menggunakan C# dan MySQL Versi 1 - Bag. 2

2. Membuat Business Logic
Kali ini kita akan membuat Business Logic. Masih bersumber dari Mas Admin coding4ever.wordpress.com, beliau mengatakan seperti ini :

Business Logic ada hubungannya dengan entity class yang merupakan representasi dari tabel-tabel yang ada didatabase.
Berdasarkan struktur tabel diatas kita akan menambahkan class baru dengan nama Mahasiswa yang memiliki tiga property yaitu NomorMahasiswa, Nama dan Alamat.
Jadi property ini sudah mewakili method mutator dan accessor yang sudah biasa kita kenal penggunakannya di Java. 

Membuat Aplikasi PayRoll Menggunakan C# dan MySql Versi 1 - Bag. 1

Alhamdulillah setelah berhasil membuat Aplikasi PayRoll menggunakan Visual Basic .NET 2008, kali ini saya akan berbagi tutorial Membuat Aplikasi Payroll Menggunakan Bahasa Pemrograman Ms. Visual C# 2008 dan Database MySql. Teknik yang saya gunakan saya dapat dari mas Admin coding4ever.wordpress.com. Silahkan merujuk ke Link berikut untuk mengetahui lebih lanjut siapa sebenarnya mas Admin ini :P (http://coding4ever.wordpress.com/2011/06/25/mengakses-database-mysql-menggunakan-c-bagian-1/).

Beliau mengatakan seperti ini :