Sabtu, 09 Januari 2010

membuat paket SVR4 (system V release 4)


kalau di baca dari beberapa referensi OS yang proprietary dan sukses dikelas enterprise adalah turunan dari system V release 4 dan akhirnya salah satunya opensolaris menjadi opensource.

karena turunan dari SRV4 maka sifat paket pendahulunya masih di pakai. namun tidak menutup kemungkinan beralih dengan sistem paket IPS. namun tidak ada salahnya belajar sistem paket SVR4.

kalau anda bertanya apa hubungan sistem paket dengan repository. maka jawabannya repository adalah sentral dari paket2 tersebut yang dikelola dengan beraturan untuk tiap versi/build.

di tulisan kali ini akan dibahas secara instan tetapi juga ada referensi yang membahas lebih dalam tentang SRV4 yang dilampirkan dibagian bawah.

tulisan ini mengawali kebutuhan penulis untuk memaketkan suatu binary atau suatu source yang dibuat untuk dimasukkan kedalam suatu distribusi sehingga lebih mempermudah instalasi pada sistem yang custom.

pada contoh ini penulis memberikan contoh mudah yaitu memaketkan file jajal.sh yang dibuat di /jack/jajal/jajal.sh

mkdir /jack/jajal
cat>jajal.sh
#!/bin/bash
echo "ini penjajalan"

CTRL-D

yang pertama buatlah direktori /tmp/paketku
kemudian didalam folder tersebut buatlah 3 file berikut

- Makefile

isinya

PKG="paketku"
ARCH="i386"
PKGFILE="$(PKG)-$(ARCH).pkg"
pkg:
pkgmk -o -r / -d /tmp -a $(ARCH) -f prototype
touch $(PKGFILE)
pkgtrans -s /tmp $(PKGFILE) $(PKG)
rm -r /tmp/$(PKG)


- pkginfo

isinya
CLASSES="none"
NAME="paketku yang pertama"
PKG="paketku"
VERSION="0.1"
CATEGORY="utility"
DESC="paketku dewe, yo sak karepku"
VENDOR="OSUG-ID"
EMAIL="ryanthe@gmail.com"

-prototype

isinya
i pkginfo
d none /jack/jajal 0755 root root
d none /jack/jajal/jajal.sh root root

untuk prototype bisa digenerate otomatis dengan perintah
root#echo "i pkginfo" > /tmp/paketku/prototype
root#pkgproto /jack/jajal >> /tmp/paketku/prototype


setelah itu jalankan perintah
root@/tmp/paketku# make pkg

dan hasilnya adalah
paketku-i386.pkg

untuk referensi lebih lengkap dapat didownload di link





Kamis, 07 Januari 2010

seting repositori osol 2009.06 (iso) di osol 2009.6

kopi berkas osol-repo-0906-full.iso ke direktori /

kopikan script bash berikut menjadi file /tmp/setup.sh
kemudian chmod +x /tmp/setup.sh
#/tmp/setup.sh

#!/bin/bash
lofiadm -a /osol-repo-0906-full.iso;
mkdir /repo;
mount -F hsfs /dev/lofi/1 /repo/;
cd /repo/;
svccfg -s application/pkg/server setprop pkg/inst_root=/repo/repo;
svccfg -s application/pkg/server setprop pkg/readonly=true;
svccfg -s application/pkg/server setprop pkg/port=10000;
cp /repo/repo/cfg_cache /etc/0906_cfg_cache;
sed -e 's/pkg.opensolaris.org\/release/localhost:10000\//g' /etc/0906_cfg_cache > /tmp/0906_cfg_cache;
mv /tmp/0906_cfg_cache /etc/0906_cfg_cache;
svccfg -s application/pkg/server setprop pkg/cfg_file=/etc/0906_cfg_cache;
svcadm refresh application/pkg/server;
svcadm enable application/pkg/server;
sleep 10;
hasil=`netstat -na|grep *.10000`;
if [ -n "$hasil" ];then
echo
echo "seting publisher ke localhost:10000";
pkg set-publisher -O http://localhost:10000/ opensolaris.org;
echo
pkg image-update
echo "telah berhasil menset"
else
echo
echo "port tidak terbuka";
echo
echo "berikut laporan dari lognya";
tail -n 10 /var/svc/log/application-pkg-server\:default.log
echo
fi