Difference between revisions of "Remaster Ubuntu untuk SchoolOnffLine Menggunakan UCK"

From OnnoWiki
Jump to navigation Jump to search
(New page: Di sini akan di jelaskan teknik membuat LiveCD SchoolOnffLine yang akan berguna bagi pelajaran TIK di sekolah. ==Maksud & Tujuan Distro SchoolOnffLine== * Membantu sekolah dalam menyelen...)
 
 
(116 intermediate revisions by the same user not shown)
Line 1: Line 1:
Di sini akan di jelaskan teknik membuat LiveCD SchoolOnffLine yang akan berguna bagi pelajaran TIK di sekolah.
+
Di sini akan di jelaskan teknik membuat [[LiveCD]] SchoolOnffLine yang akan berguna bagi pelajaran TIK di sekolah.
  
 
==Maksud & Tujuan Distro SchoolOnffLine==
 
==Maksud & Tujuan Distro SchoolOnffLine==
  
* Membantu sekolah dalam menyelenggarakan pelajaran komputer, tanpa perlu adanya Internet
+
* Membantu sekolah dalam menyelenggarakan pelajaran komputer, tanpa perlu adanya [[Internet]]
* Di Instalasi di Server untuk menggantikan fungsi Internet
+
* Di Instalasi di Server lokal di Lab Komputer untuk menggantikan fungsi [[Internet]]
* Dapat berfungsi sebagai proxy jika tersambung ke Internet
+
* Dapat berfungsi sebagai [[proxy]] jika tersambung ke [[Internet]]
 +
* CATATAN: SchoolOnffLine tidak dirancang untuk di operasikan di jaringan [[Internet]] publik. Tidak ada usaha untuk membuat distro ini aman dari serangan di Internet.
  
 +
==Fitur Distro SchoolOnffLine==
  
==Fitur Distro SchoolOnffLine==
+
* Berbasis Sabily 9.04 Desktop (turunan Ubuntu Muslim Edition) yang dapat di ambil dari http://sabily.org
 +
 
 +
===Konfigurasi Jaringan===
 +
* Statik eth0 IP 192.168.0.254
 +
* Gateway IP 192.168.0.1
 +
* DHCP Server
 +
** Alokasi IP address 192.168.0.30-192.168.0.70
 +
* OpenDNS & Nawala Project untuk membantu blokir situs tidak baik
  
* Berbasis Ubuntu 9.04 Desktop
 
  
 
===Server Jaringan===
 
===Server Jaringan===
 +
 +
* MySQL [[Database Server]]
 +
** root password MySQL default 123456
 +
* Apache2 Web Server
 +
* OpenSSH Server
 
* NAT / Proxy
 
* NAT / Proxy
* DHCP Server
+
* Tinyproxy (builtin sabily)
* Squid Proxy Server
+
* Dansguardian untuk membantu blokir situs tidak baik (builtin Sabily)
* Dansguardian untuk membantu blokir situs tidak baik
 
* OpenDNS & Nawala Project untuk membantu blokir situs tidak baik
 
 
* Postfix SMTP Mail Server
 
* Postfix SMTP Mail Server
  Relay host SMTP default '''smtp.telkom.net'''
+
** Relay host SMTP default '''smtp.telkom.net'''
 
* Dovecot POP3 & IMAP Mail Server
 
* Dovecot POP3 & IMAP Mail Server
* MySQL Database Server (dengan root password 123456)
+
* BIND DNS Server untuk domain '''sekolah.sch.id'''
 +
* NTP untuk time server lokal
  
 
===Server Aplikasi===
 
===Server Aplikasi===
  
* Wordpress Blog Server
+
* [[Wordpress]] [[Blog Server]]
* SpeedyWiki
+
* [http://opensource.telkomspeedy.com/wiki SpeedyWiki]
* Wikipedia for School
+
* [[Wikipedia for School]] '''(Susah di akomodai karena butuh 3.8Gbyte)'''
* Squirrelmail Webmail server
+
* Squirrelmail [[Webmail server]]
* ejabberd chatting server
+
* Senayan [[Digital Library]]
 +
* Sistem Informasi Sekolah SD (SISFOKOL-SD)
 +
* Sistem Informasi Sekolah SLTP (SISFOKOL-SLTP)
 +
* Sistem Informasi Sekolah SLTA (SISFOKOL-SLTA)
 +
* Sistem Informasi Sekolah SMK (SISFOKOL-SMK)
 +
* ejabberd [[chatting server]]
 +
 
 +
===Akses ke Beberapa Fitur===
 +
 
 +
Beberapa username & password yang sudah di siapkan
  
 +
guru1 123456
 +
guru2 123456
 +
guru3 123456
 +
guru4 123456
 +
guru5 123456
 +
 +
siswa1 123456
 +
siswa2 123456
 +
siswa3 123456
 +
siswa4 123456
 +
siswa5 123456
 +
 +
Akses Jasa Web
 +
 +
* https://192.168.0.254:1000 - Webmin (admin, 123456)
 +
* http://192.168.0.254/wordpress - Blog Wordpress (admin, 123456)
 +
* http://192.168.0.254/moodle - Moodle (admin, 123456)
 +
* http://192.168.0.254/wiki - SpeedyWiki
 +
* http://192.168.0.254/wikipedia - Wikipedia For School
 +
* http://192.168.0.254/squirrelmail - Webmail (siswa1, 123456)
 +
* http://192.168.0.254/senayan - Digital Libary (admin, admin)
 +
* http://192.168.0.254:5280/admin/ - ejabberd (admin, 123456)
 +
* http://192.168.0.254/sisfokol-sd/ SISFO Sekolah SD (admin, admin)
 +
* http://192.168.0.254/sisfokol-sltp/ SISFO Sekolah SLTP (admin, admin)
 +
* http://192.168.0.254/sisfokol-slta/ SISFO Sekolah SLTA (admin, admin)
 +
* http://192.168.0.254/sisfokol-smk/ SISFO Sekolah SMK (admin, admin)
 +
 +
* Penambahan / Remove User ejabberd menggunakan shell
 +
 +
# ejabberdctl register admin 192.168.0.254 123456
 +
# ejabberdctl register siswa1 192.168.0.254 123456
 +
# ejabberdctl register namauser namaserver password
 +
# ejabberdctl unregister namauser 192.168.0.254
  
 
==Kebutuhan Sistem Pendukung==
 
==Kebutuhan Sistem Pendukung==
Line 39: Line 93:
 
# Program Virtualisasi semacam Qemu, VirtualBox, VM Ware dan lainya
 
# Program Virtualisasi semacam Qemu, VirtualBox, VM Ware dan lainya
 
# Berkas ISO Ubuntu Live CD Desktop  
 
# Berkas ISO Ubuntu Live CD Desktop  
 +
  
 
==Persiapan==
 
==Persiapan==
  
Instalasi paket pendukung
+
Pastikan
 
 
$ sudo aptitude install squashfs-tools genisoimage qemu dchroot
 
 
 
Load module squashfs
 
  
 
  $ sudo modprobe squashfs
 
  $ sudo modprobe squashfs
 
Bisa dilihat apakah sudah terload dengan baik menggunakan perintah
 
 
$ lsmod
 
 
akan keluar kira-kira
 
 
Module                  Size  Used by
 
squashfs              46344  0
 
  
 
Karena kita akan membuat banyak server di Distro SchoolOnffLine. Matikan seluruh server yang ada di mesin host pembuat distro
 
Karena kita akan membuat banyak server di Distro SchoolOnffLine. Matikan seluruh server yang ada di mesin host pembuat distro
Line 63: Line 105:
 
  $ sudo /etc/init.d/mysql stop
 
  $ sudo /etc/init.d/mysql stop
 
  $ sudo /etc/init.d/apache2 stop
 
  $ sudo /etc/init.d/apache2 stop
 +
$ sudo /etc/init.d/postfix stop
 +
$ sudo /etc/init.d/vsftpd stop
 +
$ sudo /etc/init.d/dovecot stop
 +
$ sudo /etc/init.d/webmin stop
 +
$ sudo /etc/init.d/dhcp3-server stop
 +
$ sudo /etc/init.d/bind9 stop
 +
$ sudo /etc/init.d/ntp stop
  
 +
==Persiapan Source berbagai CMS & software yang tidak standard==
  
 +
Gunakan iso sabily-9.04-desktop-i386-small.iso. Lakukan langkah [[Ubuntu Customization Kit Menggunakan Text Mode]] sampai dengan perintah
  
==Copy CD Ubuntu LiveCD Desktop Referensi==
+
  $ sudo uck-remaster-unpack-iso sabily-9.04-desktop-i386-small.iso  
 
+
  $ sudo uck-remaster-unpack-rootfs
  $ mkdir ~/live
+
  $ sudo uck-remaster-unpack-initrd
$ mv ubuntu-9.04-desktop-i386.iso ~/live
 
$ cd ~/live
 
$ mkdir mnt
 
$ sudo mount -o loop ubuntu-9.04-desktop-i386.iso mnt
 
  $ mkdir extract-cd
 
$ rsync --exclude=/casper/filesystem.squashfs -a mnt/ extract-cd
 
 
 
 
 
==Ekstrak Sistem Desktop==
 
 
 
$ mkdir squashfs
 
  $ sudo mount -t squashfs -o loop mnt/casper/filesystem.squashfs squashfs
 
 
 
Extract isi folder squashfs ke folder edit
 
 
 
$ mkdir edit
 
$ sudo cp -a squashfs/* edit/
 
 
 
 
 
==Persiapan dan Menggunakan chroot==
 
  
Jika dibutuhkan sambungan jaringan
+
Sebelum melakukan chroot, copykan semua source [[CMS]] maupun segala software yang tidak standard ke folder ~/tmp/user/tmp/remaster-root/usr/local/src sebagai berikut:
  
  $ sudo cp /etc/resolv.conf edit/etc/
+
  $ sudo cp wordpress-2.8.2.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp wordpress-2.7.1-id_ID.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp mediawiki-1.15.1.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp senayan3-stable10-patch1.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp SISFOKOL_SD_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp SISFOKOL_SLTA_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp SISFOKOL_SLTP_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp SISFOKOL_SMK_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp moodle-1.9.5.tgz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp id_utf8.zip ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp webmin-1.480.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp schools-wikipedia-full-20081023.tar.gz ~/tmp/remaster-root/var/www
 +
$ sudo cp -Rf images.tar.gz ~/tmp/remaster-root/usr/local/src/
 +
$ sudo cp -Rf wikidb.sql.gz ~/tmp/remaster-root/usr/local/src/
  
Tergantung konfigurasi kita mungkin dibutuhkan untuk mengcopy file host
+
Copy wallpaper, theme & schema untuk desktop jika di perlukan
  
  $ sudo cp /etc/hosts edit/etc/
+
  $ sudo cp -Rf 78294-Greenman-backgrounds-20080420.tar.gz ~/tmp/remaster-root/usr/share/backgrounds/
  
$ sudo mount --bind /dev/ edit/dev
 
$ sudo chroot edit
 
# mount -t proc none /proc
 
# mount -t sysfs none /sys
 
  
Langkah di atas akan mount direktori penting dari system utama kita - jika kita di waktu kemudian ingin men-delete directory edit/, pastikan kita umount directory /proc dan /sys, jika tidak maka system utama kita akan tidak bisa digunakan paling tidak sampai harus di reboot ulang.
+
Pastikan semua Server di Host tempat membuat Distro sudah dimatikan, melalui shell perintahnya adalah
  
Untuk mengatasi isu local dan untuk dapat mengimport GPG keys
+
sudo /etc/init.d/mysql stop
 +
sudo /etc/init.d/apache2 stop
 +
sudo /etc/init.d/postfix stop
 +
sudo /etc/init.d/vsftpd stop
 +
sudo /etc/init.d/dovecot stop
 +
sudo /etc/init.d/webmin stop
 +
sudo /etc/init.d/dhcp3-server stop
 +
sudo /etc/init.d/bind9 stop
 +
sudo /etc/init.d/ntp stop
  
# export HOME=/root
+
Setelah semua source [[CMS]] yang dibutuhkan sudah siap, maka kita dapat melakukan chroot
# export LC_ALL=C
 
  
 +
$ sudo uck-remaster-chroot-rootfs
  
 
==Customisasi==
 
==Customisasi==
  
===apt-get===
+
Beberapa proses customisasi yang secara umum dapat dilakukan:
 
 
Untuk melihat aplikasi yang terinstall dapat dilihat menggunakan perintah
 
 
 
# dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | less
 
 
 
Jika kita ingin membuat sebuah paket program (nama-paket-program), lakukan menggunakan perintah berikut
 
 
 
# aptitude purge nama-paket-program
 
 
 
 
 
===Ubah sources.list===
 
 
 
Kadangkala kita perlu mengubah isi sources.list agar menggunakan repository lokal di jaringan yang kita managed. Ubah file sources.list dalam lingkungan chroot
 
 
 
# cd /etc/apt
 
# cp sources.list sources.list.original
 
# vi /etc/apt/sources.list
 
 
 
Isi agar menggunakan [[Membuat Repository Ubuntu Lokal dari hasil Download Repository | repository lokal]] di jaringan kita, misalnya,
 
 
 
deb ftp://192.168.0.2/pub/repo-9.04/ jaunty main multiverse restricted universe
 
deb ftp://192.168.0.2/pub/repo-9.04/ jaunty-updates main multiverse restricted universe
 
deb ftp://192.168.0.2/pub/repo-9.04/ jaunty-security main multiverse restricted universe
 
deb ftp://192.168.0.2/pub/repo-9.04/ jaunty-backports main multiverse restricted universe
 
 
 
Update repository
 
 
 
# apt-get update
 
 
 
  
 +
* [[SchoolOnffLine: Melihat aplikasi yang terinstall]]
 +
* [[SchoolOnffLine: Ubah file /etc/apt/sources.list]]
 +
* [[SchoolOnffLine: Menghilangkan Pengajian di Zekr]]
 +
* [[SchoolOnffLine: Buat User Siswa & Guru Untuk Demo]]
 +
* [[SchoolOnffLine: Set Root Password]]
 +
* [[SchoolOnffLine: Menginstalasi Ubiquity LiveCD Installer]]
  
 
==Customisasi Server Aplikasi==
 
==Customisasi Server Aplikasi==
Line 149: Line 174:
 
Selama dalam lingkungan chroot, untuk membuat Server aplikasi kita dapat mengikuti langkah yang normal dalam membuat server aplikasi seperti di jelaskan dalam [[Linux Howto]].
 
Selama dalam lingkungan chroot, untuk membuat Server aplikasi kita dapat mengikuti langkah yang normal dalam membuat server aplikasi seperti di jelaskan dalam [[Linux Howto]].
  
 +
* [[SchoolOnffLine: Memastikan Semua Server Beroperasi saat nyala]]
 +
* [[SchoolOnffLine: Setup Hostname sekolah.sch.id]]
 +
* [[SchoolOnffLine: Set Static IP address Untuk Ethernet]]
 +
* [[SchoolOnffLine: Gunakan DNS dari OpenDNS & Nawala Project]]
 +
* [[SchoolOnffLine: Instalasi DHCP Server untuk pemberian IP address automatis]]
 +
* [[SchoolOnffLine: Instalasi Postfix SMTP Server]]
 +
* [[SchoolOnffLine: Instalasi Apache2 & OpenSSH Server]]
 +
* [[SchoolOnffLine: Instalasi MySQL Server]]
 +
* [[SchoolOnffLine: Instalasi Webmin]]
 +
* [[SchoolOnffLine: Instalasi BIND DNS Server]] '''(Optional)'''
 +
* [[SchoolOnffLine: Instalasi NTP Server]] '''(Optional)'''
  
===Gunakan OpenDNS & Nawala Project===
 
  
Edit /etc/resolv.conf, pastikan
+
Selanjutnya kita mulai dapat menginstalasi berbagai [[Content Management System]] ([[CMS]]) yang lebih serius. Seperti,
  
nameserver 203.34.118.10
+
* [[SchoolOnffLine: Instalasi Wordpress]]
nameserver 203.34.118.12
+
* [[SchoolOnffLine: Instalasi Squirrelmail Webmail]]
nameserver 208.67.222.222
+
* [[SchoolOnffLine: Instalasi Wikipedia for School]] '''(Tidak Mungkin Terlalu Besar?)'''
nameserver 208.67.220.220
+
* [[SchoolOnffLine: Instalasi Mediawiki]]
 +
* [[SchoolOnffLine: Replikasi Database dan Image SpeedyWiki]]
 +
* [[SchoolOnffLine: Instalasi Moodle]]
 +
* [[SchoolOnffLine: Instalasi Senayan Digital Library]]
 +
* [[SchoolOnffLine: Instalasi ejabberd Chatting Server]]
 +
* [[SchoolOnffline: Instalasi SISFOKOL SD]]
 +
* [[SchoolOnffline: Instalasi SISFOKOL SLTP]]
 +
* [[SchoolOnffline: Instalasi SISFOKOL SLTA]]
 +
* [[SchoolOnffline: Instalasi SISFOKOL SMK]]
 +
* [[SchoolOnffLine: Bersihan Source CMS dari /var/www]]
  
 +
===Mereset password root MySQL===
  
===Instalasi Postfix Server===
+
Entah kenapa, SISFOKOL tampaknya mereset password root MySQL menjadi "kosong".
 +
Untuk mereset kembali password MySQL dapat dilakukan menggunakan perintah,
  
  # apt-get install postfix
+
  # mysql
 
+
  mysql> SET PASSWORD FOR root@localhost=PASSWORD('123456');
Pilih
 
 
 
Internet with Smarthost
 
OK
 
 
 
Sistem mail name, isi
 
 
 
sekolah.sch.id
 
 
 
SMTP relay host
 
 
 
smtp.telkom.net
 
 
 
 
 
 
 
 
 
===Instalasi MySQL Server===
 
 
 
# apt-get install mysql-server libmysqlclient15-dev
 
 
 
Masukan password root mysql, misalnya
 
 
 
123456
 
123456
 
 
 
 
 
===Instalasi Wordpress===
 
 
 
Pastikan kita dalam lingkungan chroot.
 
 
 
Siapkan beberapa fasiltas pendukung Wordpress seperti MySQL-server, PHP dll, antara lain dapat di install melalui perintah
 
 
 
# apt-get install apache2 mysql-server libmysqlclient15-dev libphp-adodb libgd2-xpm libgd2-xpm-dev \
 
php5-mysql php5-gd php5-curl php-pear unzip
 
 
 
Ambil source code Wordpress berbahasa Indonesia dari
 
 
 
http://id.wordpress.org/
 
 
 
Bagi anda yang menggunakan Wordpress berbahasa Indonesia dapat menggunakan perintah berikut
 
 
 
# cp wordpress-2.7.1-id_ID.zip /var/www/
 
# cd /var/www
 
# unzip wordpress-2.7.1-id_ID.zip
 
# cd /var/www/wordpress
 
 
 
Konfigurasi Wordpress untuk menggunakan database MySQL
 
 
 
# cd /var/www/wordpress
 
# cp wp-config-sample.php wp-config.php
 
# vi wp-config.php
 
define('DB_NAME', 'wordpress');
 
define('DB_USER', 'wordpress');
 
define('DB_PASSWORD', 'wordpress');
 
define('DB_HOST', 'localhost');
 
 
 
Siapkan database untuk Wordpress, disini akan digunakan
 
database dengan nama wordpress, user database dengan nama wordpress
 
dan password untuk akses database adalah wordpress.
 
Sedang password root MySQL di set sebagai password.
 
Perintah yang digunakan untuk mengkonfigurasi adalah
 
 
 
mysql
 
  mysql> SET PASSWORD FOR root@localhost=PASSWORD('password');
 
 
 
Jika password Root MySQL database sudah di set maka
 
kita dapat langsung mengkonfigurasi MySQL menggunakan perintah
 
 
 
# mysql -u root -p
 
Enter password:
 
mysql> create database wordpress;
 
mysql> grant INSERT,SELECT on root.* to wordpress@localhost;
 
mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on wordpress.* to wordpress@localhost identified by 'wordpress';
 
mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on wordpress.* to wordpress identified by 'wordpress';
 
 
  mysql> exit
 
  mysql> exit
  
 +
==Konfigurasi Desktop==
  
Akses Web Wordpress yang baru melalui perintah
+
Proses file wallpaper jika dibutuhkan
 
 
http://localhost/wordpress
 
install.php
 
 
 
Langkah yang perlu dilakukan
 
* isi Weblog title dan e-mail
 
* user dan password untuk administrator admin
 
 
 
Kita dapat login melalui wp-login.php
 
  
 +
# cd /usr/share/backgrounds/
 +
# tar zxvf 78294-Greenman-backgrounds-20080420.tar.gz
  
 +
Set Desktop Background menggunakan perintah
  
 +
# gconftool-2 --set /desktop/gnome/background/picture_filename  --type string "/usr/share/backgrounds/Greenman/fiesty-final-greenman.png"
  
  
Line 265: Line 233:
  
 
  # rm -rf /tmp/* ~/.bash_history
 
  # rm -rf /tmp/* ~/.bash_history
 +
 +
Buang mailbox yang ada
 +
 +
# rm -Rf /var/mail/*
 +
 +
 +
Buang beberapa file source
 +
 +
# rm /usr/local/src/*gz
 +
# rm /usr/local/src/wiki*
 +
# rm /var/www/*gz
 +
# rm /var/www/*pdf
 +
# rm /var/www/wikipedia/*gz
  
 
Pastikan sources.list original di kembalikan ke asli-nya
 
Pastikan sources.list original di kembalikan ke asli-nya
Line 278: Line 259:
 
  # umount /sys
 
  # umount /sys
 
  # exit
 
  # exit
  $ sudo umount edit/dev
+
  $ sudo umount ~/tmp/remaster-root/dev
  
 
Catatan: jika "umount /proc" gagal, coba "umount -lf /proc"
 
Catatan: jika "umount /proc" gagal, coba "umount -lf /proc"
Line 284: Line 265:
 
==Membuat ISO CD==
 
==Membuat ISO CD==
  
Membuat Manifest
+
Buat iso dari distro yang baru
 
 
$ chmod +w extract-cd/casper/filesystem.manifest
 
$ sudo chroot edit dpkg-query -W --showformat='${Package} ${Version}\n' > extract-cd/casper/filesystem.manifest
 
$ sudo cp extract-cd/casper/filesystem.manifest extract-cd/casper/filesystem.manifest-desktop
 
$ sudo sed -i '/ubiquity/d' extract-cd/casper/filesystem.manifest-desktop
 
 
 
Compress filesystem
 
 
 
$ sudo rm extract-cd/casper/filesystem.squashfs
 
$ sudo mksquashfs edit extract-cd/casper/filesystem.squashfs -nolzma
 
 
 
Catatan: opsi -nolzma hanya ada dari Hardy
 
 
 
Set nama image di extract-cd/README.diskdefines
 
  
  $ sudo vi extract-cd/README.diskdefines
+
  $ sudo uck-remaster-pack-initrd
 +
$ sudo uck-remaster-pack-rootfs
 +
$ sudo uck-remaster-pack-iso schoolonffline-0.01.iso
  
Masukan kata-kata
+
File iso distro baru ada di folder
  
  #define DISKNAME  SchoolOnffLine 0.01 "Percobaan" - Release i386
+
  /home/user/tmp/remaster-new-files
 
 
 
 
Remove old md5sum.txt dan hitung ulang md5 yang baru
 
 
 
$ sudo -s
 
# rm extract-cd/md5sum.txt
 
# cd extract-cd && find . -type f -print0 | xargs -0 md5sum > md5sum.draft
 
# cd ..
 
# cat extract-cd/md5sum.draft | grep -v md5sum.txt | grep -v isolinux/boot.cat > extract-cd/md5sum.txt
 
# rm extract-cd/md5sum.draft
 
# exit
 
 
 
Buat iso
 
 
 
$ cd extract-cd
 
$ sudo mkisofs -D -r -V "$IMAGE_NAME" -cache-inodes -J -l -b isolinux/isolinux.bin \
 
-c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table \
 
-o ../schoolonffline-0.01.iso .
 
  
 +
Selanjutnya adalah burn dan test file iso baru tersebut.
  
 
==Percobaan LiveCD Baru==
 
==Percobaan LiveCD Baru==
Line 335: Line 287:
 
  $ kvm -cdrom schoolonffline-0.01.iso -boot d -m 512
 
  $ kvm -cdrom schoolonffline-0.01.iso -boot d -m 512
  
Kita juga dapat mencoba menggunakan virtualbox-ose, yang merupakan open source software yang dapat di ambil dari Ubuntu universe repository.  
+
Kita juga dapat mencoba menggunakan virtualbox-ose, yang merupakan [[open source]] software yang dapat di ambil dari [[Ubuntu]] universe repository.
 
 
  
 
==Burning image CD==
 
==Burning image CD==
Line 349: Line 300:
 
==Pranala Menarik==
 
==Pranala Menarik==
  
 +
* [[Distro SchoolOnffLine]]
 
* https://help.ubuntu.com/community/LiveCDCustomization
 
* https://help.ubuntu.com/community/LiveCDCustomization
 
* http://surabaya.linux.or.id/archives/2008/03/02/hacking-livecd-ubuntu.html
 
* http://surabaya.linux.or.id/archives/2008/03/02/hacking-livecd-ubuntu.html

Latest revision as of 15:07, 2 August 2009

Di sini akan di jelaskan teknik membuat LiveCD SchoolOnffLine yang akan berguna bagi pelajaran TIK di sekolah.

Maksud & Tujuan Distro SchoolOnffLine

  • Membantu sekolah dalam menyelenggarakan pelajaran komputer, tanpa perlu adanya Internet
  • Di Instalasi di Server lokal di Lab Komputer untuk menggantikan fungsi Internet
  • Dapat berfungsi sebagai proxy jika tersambung ke Internet
  • CATATAN: SchoolOnffLine tidak dirancang untuk di operasikan di jaringan Internet publik. Tidak ada usaha untuk membuat distro ini aman dari serangan di Internet.

Fitur Distro SchoolOnffLine

  • Berbasis Sabily 9.04 Desktop (turunan Ubuntu Muslim Edition) yang dapat di ambil dari http://sabily.org

Konfigurasi Jaringan

  • Statik eth0 IP 192.168.0.254
  • Gateway IP 192.168.0.1
  • DHCP Server
    • Alokasi IP address 192.168.0.30-192.168.0.70
  • OpenDNS & Nawala Project untuk membantu blokir situs tidak baik


Server Jaringan

  • MySQL Database Server
    • root password MySQL default 123456
  • Apache2 Web Server
  • OpenSSH Server
  • NAT / Proxy
  • Tinyproxy (builtin sabily)
  • Dansguardian untuk membantu blokir situs tidak baik (builtin Sabily)
  • Postfix SMTP Mail Server
    • Relay host SMTP default smtp.telkom.net
  • Dovecot POP3 & IMAP Mail Server
  • BIND DNS Server untuk domain sekolah.sch.id
  • NTP untuk time server lokal

Server Aplikasi

Akses ke Beberapa Fitur

Beberapa username & password yang sudah di siapkan

guru1 123456
guru2 123456
guru3 123456
guru4 123456
guru5 123456
siswa1 123456
siswa2 123456
siswa3 123456
siswa4 123456
siswa5 123456

Akses Jasa Web

  • Penambahan / Remove User ejabberd menggunakan shell
# ejabberdctl register admin 192.168.0.254 123456
# ejabberdctl register siswa1 192.168.0.254 123456
# ejabberdctl register namauser namaserver password
# ejabberdctl unregister namauser 192.168.0.254

Kebutuhan Sistem Pendukung

  1. Harddisk kosong sebesar 3 – 5 GB (semakin besar ruang kosong, semakin dianjurkan)
  2. Memori 512MB dan swap 1 GB (semakin besar memori, semakin dianjurkan)
  3. Paket pendukung squashfs-tools, dchroot, genisoimage dan mkisofs
  4. Program Virtualisasi semacam Qemu, VirtualBox, VM Ware dan lainya
  5. Berkas ISO Ubuntu Live CD Desktop


Persiapan

Pastikan

$ sudo modprobe squashfs

Karena kita akan membuat banyak server di Distro SchoolOnffLine. Matikan seluruh server yang ada di mesin host pembuat distro

$ sudo /etc/init.d/mysql stop
$ sudo /etc/init.d/apache2 stop
$ sudo /etc/init.d/postfix stop
$ sudo /etc/init.d/vsftpd stop
$ sudo /etc/init.d/dovecot stop
$ sudo /etc/init.d/webmin stop
$ sudo /etc/init.d/dhcp3-server stop
$ sudo /etc/init.d/bind9 stop
$ sudo /etc/init.d/ntp stop

Persiapan Source berbagai CMS & software yang tidak standard

Gunakan iso sabily-9.04-desktop-i386-small.iso. Lakukan langkah Ubuntu Customization Kit Menggunakan Text Mode sampai dengan perintah

$ sudo uck-remaster-unpack-iso sabily-9.04-desktop-i386-small.iso 
$ sudo uck-remaster-unpack-rootfs
$ sudo uck-remaster-unpack-initrd

Sebelum melakukan chroot, copykan semua source CMS maupun segala software yang tidak standard ke folder ~/tmp/user/tmp/remaster-root/usr/local/src sebagai berikut:

$ sudo cp wordpress-2.8.2.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp wordpress-2.7.1-id_ID.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp mediawiki-1.15.1.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp senayan3-stable10-patch1.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp SISFOKOL_SD_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp SISFOKOL_SLTA_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp SISFOKOL_SLTP_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp SISFOKOL_SMK_v2.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp moodle-1.9.5.tgz ~/tmp/remaster-root/usr/local/src/
$ sudo cp id_utf8.zip ~/tmp/remaster-root/usr/local/src/
$ sudo cp webmin-1.480.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp schools-wikipedia-full-20081023.tar.gz ~/tmp/remaster-root/var/www
$ sudo cp -Rf images.tar.gz ~/tmp/remaster-root/usr/local/src/
$ sudo cp -Rf wikidb.sql.gz ~/tmp/remaster-root/usr/local/src/

Copy wallpaper, theme & schema untuk desktop jika di perlukan

$ sudo cp -Rf 78294-Greenman-backgrounds-20080420.tar.gz ~/tmp/remaster-root/usr/share/backgrounds/


Pastikan semua Server di Host tempat membuat Distro sudah dimatikan, melalui shell perintahnya adalah

sudo /etc/init.d/mysql stop
sudo /etc/init.d/apache2 stop
sudo /etc/init.d/postfix stop
sudo /etc/init.d/vsftpd stop
sudo /etc/init.d/dovecot stop
sudo /etc/init.d/webmin stop
sudo /etc/init.d/dhcp3-server stop
sudo /etc/init.d/bind9 stop
sudo /etc/init.d/ntp stop

Setelah semua source CMS yang dibutuhkan sudah siap, maka kita dapat melakukan chroot

$ sudo uck-remaster-chroot-rootfs

Customisasi

Beberapa proses customisasi yang secara umum dapat dilakukan:

Customisasi Server Aplikasi

Selama dalam lingkungan chroot, untuk membuat Server aplikasi kita dapat mengikuti langkah yang normal dalam membuat server aplikasi seperti di jelaskan dalam Linux Howto.


Selanjutnya kita mulai dapat menginstalasi berbagai Content Management System (CMS) yang lebih serius. Seperti,

Mereset password root MySQL

Entah kenapa, SISFOKOL tampaknya mereset password root MySQL menjadi "kosong". Untuk mereset kembali password MySQL dapat dilakukan menggunakan perintah,

# mysql
mysql> SET PASSWORD FOR root@localhost=PASSWORD('123456');
mysql> exit

Konfigurasi Desktop

Proses file wallpaper jika dibutuhkan

# cd /usr/share/backgrounds/
# tar zxvf 78294-Greenman-backgrounds-20080420.tar.gz

Set Desktop Background menggunakan perintah

# gconftool-2 --set /desktop/gnome/background/picture_filename  --type string "/usr/share/backgrounds/Greenman/fiesty-final-greenman.png"


Cleanup

Pastikan untuk mengubah semua file temporary yang tidak lagi dibutuhkan karena ruang dalam CD sangat terbatas. Beberapa contoh paket / file yang dapat di bersihkan menggunakan

# aptitude clean

Atau men-delete temporary file

# rm -rf /tmp/* ~/.bash_history

Buang mailbox yang ada

# rm -Rf /var/mail/*


Buang beberapa file source

# rm /usr/local/src/*gz
# rm /usr/local/src/wiki*
# rm /var/www/*gz
# rm /var/www/*pdf
# rm /var/www/wikipedia/*gz

Pastikan sources.list original di kembalikan ke asli-nya

# cp /etc/apt/sources.list.original /etc/apt/sources.list
# rm -Rf /etc/apt/sources.list.original

dari dalam lingkungan chroot.

Lakukan juga umount (unmount) berbagai file sistem dan keluar dari chroot

# umount /proc
# umount /sys
# exit
$ sudo umount ~/tmp/remaster-root/dev

Catatan: jika "umount /proc" gagal, coba "umount -lf /proc"

Membuat ISO CD

Buat iso dari distro yang baru

$ sudo uck-remaster-pack-initrd
$ sudo uck-remaster-pack-rootfs
$ sudo uck-remaster-pack-iso schoolonffline-0.01.iso

File iso distro baru ada di folder

/home/user/tmp/remaster-new-files

Selanjutnya adalah burn dan test file iso baru tersebut.

Percobaan LiveCD Baru

Percobaan dapat menggunakan emulator qemu

$ qemu -cdrom schoolonffline-0.01.iso -boot d -m 512

Atau jika kita mempunyai hardware accelerator untuk kvm dapat menggunakan

$ kvm -cdrom schoolonffline-0.01.iso -boot d -m 512

Kita juga dapat mencoba menggunakan virtualbox-ose, yang merupakan open source software yang dapat di ambil dari Ubuntu universe repository.

Burning image CD

Simple! lakukan

$ cdrecord dev=/dev/cdrom schoolonffline-0.01.iso



Pranala Menarik