Lukman Prihandika Blog's

Nrimo ing pandum, urip wis ono sing ngatur

Archive for the ‘Solaris 10’ Category

Kirim Email via Console dengan sendEmail

with 4 comments

Mengirim email via console sangat mudah, apalagi jika anda seorang administrator yang memegang sebuah server dimana server anda harus bisa memberitahukan error system setiap saat ke alamat email anda maupun pada orang yang bertanggungjawab pada service yang berjalan. Ada opsi yang sangat mudah karena kita sudah dibantu dengan adanya aplikasi sendEmail yang berbasis bash-scripting dengan bahasa Perl. Cara anda tinggal install terlebih dahulu (based on Ubuntu) :

# aptitude install sendemail libio-socket-ssl-perl libnet-ssleay-perl perl

atau jika tidak menggunakan distro Ubuntu bisa didapat source nya disini

cara installnya seperti ini :

Uncompress terlebih dahulu paket  .tar.gz disini paket ada di /temp :

# tar zxvf /tmp/sendEmail-v1.55.tar.gz

# cd /tmp/sendEmail-v1.55

Copy sendEmail script ke /usr/local/bin :

# cp /tmp/sendEmail-v1.55/sendEmail  /usr/local/bin

Buat file executable :

# chmod +x /usr/local/bin/sendEmail

Contoh menggunakan sendEmail seperti ini (disini saya menggunakan smtp gmail) :

# sendEmail -f my.account@gmail.com -t myself@domain.tld -u this is the test title -m “this is a test message” -s smtp.gmail.com -o tls=yes -xu usernameonly -xp mypasswd -a /home/brokenz/perdana.txt

keterangan option:

  • -f : berarti from alias sender
  • -t : berarti to email address (tambahkan -cc dan -bcc jika anda membutuhkan)
  • -u : berarti subject dari email
  • -m : berarti message alias pesan anda
  • -s : berarti server (secara default menggunakan port 25 jika tidak bisa gunakan port 587 ex: smtp.gmail.com:587)
  • -o : berarti option lain seperti tls dan misc seperti -xu dan -xp
  • -xu : berarti username email anda
  • -xp : berarti password email anda
  • -a : berarti file attachment yang akan dikirim

Mengirim ke banyak orang

sendEmail -f myaddress@isp.net -t “admin <admin@isp.net>” user1@isp.net user2@isp.net -s relay.isp.net -u “Test email” -m “Hallo apakabar hari ini ?.”

Mengirim ke banyak orang dengan cc dan bcc

sendEmail -f myaddress@isp.net -t admin@isp.net;user1@isp.net;user2@isp.net -cc user2@isp.net tom@isp.net jess@isp.net -bcc ra@isp.net dub@isp.net kay@isp.net -s relay.isp.net -u “Test email with cc and bcc recipients” -m “Hi his is a test email.”

Mengirim email dengan isi file sebagai body dari message

cat /tmp/file.txt | sendEmail -f myaddress@isp.net -t admin@isp.net -s relay.isp.net -u “Test email with contents of file”

Mengirim email dengan isi file sebagai body dari message (cara ke 2)

sendEmail -f myaddress@isp.net -t admin@isp.net -s relay.isp.net -o message-file=/tmp/file.txt -u “Test email with contents of file”

Mengirim html email: (make sure your html file has <html> at the beginning)

cat /tmp/file.html | sendEmail -f myaddress@isp.net -t admin@isp.net -s relay.isp.net -u “Test email with html content”

Mengirim Short Message Service (SMS)/text message ke cellular phone

Untuk cara yang satu ini saya masih bingung dengan gateway sms no matrix yang saya gunakan,

./sendEmail -f usernameonly@gmail.com -t 08151700100@indosat.com -m This is an SMS message from Linux.-o tls=auto -s smtp.gmail.com -xu usernameonly -xp mypasswd

Written by brokenz1

July 2, 2010 at 3:41 pm

Cara Backup Data

leave a comment »

Sebagai seorang admin pasti setiap hari kita tak lepas dengan yang namanya data server, sebagai seorang admin pastinya kita juga harus mengantisipasi terjadinya hal-hal yang tidak diinginkan terhadap data kita yang ada di server. Lalu bagaimana caranya kita mengantisipasi itu, salah satunya adalah dengan mem-backup data kita secara periodic baik itu ke server lain maupun di storage khusus untuk backup. Nah, cara backup data salah satunya juga bisa dengan menggunakan bash scripting, karena secara default linux/unix sudah mendukung hal tersebut. Berikut contoh script bash untuk membackup data :

#!/bin/bash
#change direktori to source direktori
cd /home/Dokumen/
#
source_direktori=”/home/Dokumen/”
#
#struktur direktori destination = /media/backup/2010/07
#
destination_direktori=”/media/backup/$(date +%Y)/$(date +%m)/”
#
#untuk menghasilkan file kompresi dengan hasil filenya “backupdata_20100701.tar.gz “
file_tar=”backupdata_$(date +%Y%m%d).tar.gz”
#
# mencari destination direktori
# bila tidak ditemukan direktori tujuan maka kita buat script
if [ ! -d "$destination_direktori" ] ; then
echo “* Make Destination Direktori”
mkdir -p $destination_direktori
fi
#
#mencari file ods, xls, odt, dan doc (spreadsheet dan word processor) dan
#mencari file modifikasi H-1 dan H lalu copy ke directory $destination_direktori.

find $source_direktori -type f \( -iname ‘*.ods’ -iname ‘*.xls’ -o -iname \

‘*.odt’ -o -iname ‘*.doc’ \) -mtime -1 -exec cp -b –parents ‘{}’ $destination_direktori \;

#
#kompres dan hapus file aslinya
tar zcvf $destination_direktori$file_tar $destination_direktori –remove-files –exclude=’*.tar.gz’

Nah setelah script selesai dibuat sesuai keinginan kita tinggal di taruh saja di crontab untuk dijalankan scriptnya secara periodic. Semoga bermanfaat :)

Written by brokenz1

June 30, 2010 at 6:49 pm

Posted in Redhat, Solaris 10, Ubuntu Sabily

Tagged with , , ,

Script TCP port and PID on Solaris

leave a comment »

Untuk menemukan PID dari port yang kita inginkan bisa dengan menggunakan script porting. Copy dan simpan dalam extension “.sh”. Letakkan di folder /usr/sbin/ dan /usr/bin agar menjadi absolut path jika anda belum paham apa itu absolut path dan relative path silahkan tanya sama si mbah google karena saya tidak akan menjelaskannya disini :D :

bash-3.00# cp porting.sh /usr/sbin/

bash-3.00# cp porting.sh /usr/bin/

Ubah permision script porting.sh dengan chmod a+x atau agar lebih secure gunakan option u+x agar super user saja yang bisa menggunakan script ini.

bash-3.00# chmod a+x /usr/bin/porting.sh

bash-3.00# chmod a+x /usr/sbin/porting.sh

Oya rename saja script porting.sh menjadi porting agar lebih enak di pandang :)

bash-3.00# mv /usr/bin/porting.sh /usr/bin/porting

bash-3.00# mv /usr/sbin/porting.sh /usr/sbin/porting

Sekarang bagaimana command agar kita bisa menggunakan script ini, yang pertama dengan port yang kita inginkan misal port 22 :

bash-3.00# porting -p 22
PID     Process Name and Port
_________________________________________________________
461     /usr/lib/ssh/sshd       22
sockname: AF_INET6 ::  port: 22
_________________________________________________________
16055   /usr/lib/ssh/sshd       22
sockname: AF_INET6 ::ffff:124.195.15.220  port: 22
_________________________________________________________
16056   /usr/lib/ssh/sshd       22
sockname: AF_INET6 ::ffff:124.195.15.220  port: 22
_________________________________________________________
4558    /usr/lib/ssh/sshd       22
sockname: AF_INET6 ::ffff:124.195.15.220  port: 22
_________________________________________________________
4559    /usr/lib/ssh/sshd       22
sockname: AF_INET6 ::ffff:124.195.15.220  port: 22

Nah kalau untuk list semua ya tinggal seperti ini :

bash-3.00# porting -a
PID     Process Name and Port
_________________________________________________________
287     /usr/lib/nfs/statd
sockname: AF_INET 0.0.0.0  port: 0
_________________________________________________________
324     /usr/lib/inet/inetd
sockname: AF_INET6 ::  port: 7100
sockname: AF_INET6 ::  port: 513
sockname: AF_INET6 ::  port: 23
sockname: AF_INET6 ::  port: 21
sockname: AF_INET6 ::  port: 79
sockname: AF_INET 0.0.0.0  port: 514
sockname: AF_INET6 ::  port: 514
sockname: AF_INET 0.0.0.0  port: 6112
sockname: AF_INET6 ::  port: 6481
sockname: AF_INET 0.0.0.0  port: 6481
_________________________________________________________
369     /usr/sadm/lib/smc/bin/smcboot
sockname: AF_INET 127.0.0.1  port: 5987
sockname: AF_INET 127.0.0.1  port: 898
sockname: AF_INET 127.0.0.1  port: 5988

Written by brokenz1

January 14, 2010 at 5:13 am

Posted in Solaris 10

Tagged with , , , ,

Cara Install Paket dengan Blastwave di Solaris 10

leave a comment »

Tulisan ini menerangkan bagaimana cara kita agar menginstall paket langsung direct ke repositori internet yaitu ke server blastwave. Seperti jika kita menggunakan aptitude install di debian base. Ikuti step by step di bawah ini (saya menggunakan mesin Sun Fire v240 OS Solaris 10 SPARC)

bash-3.00# uname -a
SunOS Blackjack 5.10 Generic_141444-09 sun4u sparc SUNW,Sun-Fire-V240
bash-3.00# cat /etc/release
Solaris 10 10/09 s10s_u8wos_08a SPARC
Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
Use is subject to license terms.
Assembled 16 September 2009

Step 1,

Install dulu pkgutil seperti dibawah ini

bash-3.00# pkgadd -d http://blastwave.network.com/csw/pkgutil_`/sbin/uname -p`.pkg

## Downloading…
…………..25%…………..50%…………..75%…………..100%
## Download Complete

The following packages are available:
1  CSWpkgutil     pkgutil – Installs Solaris packages easily
(sparc) 1.6.1,REV=2009.06.15

Select package(s) you wish to process (or ‘all’ to process
all packages). (default: all) [?,??,q]:

Processing package instance <CSWpkgutil> from <http://blastwave.network.com/csw/pkgutil_sparc.pkg>

pkgutil – Installs Solaris packages easily(sparc) 1.6.1,REV=2009.06.15

Please see /opt/csw/share/doc/pkgutil/license for license information.

## Processing package information.
## Processing system information.
10 package pathnames are already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

This package contains scripts which will be executed with super-user
permission during the process of installing this package.

Do you want to continue with the installation of <CSWpkgutil> [y,n,?] y

Installing pkgutil – Installs Solaris packages easily as <CSWpkgutil>

## Installing part 1 of 1.
/etc/opt/csw/pkgutil.conf.CSW
/opt/csw/bin/bldcat
/opt/csw/bin/chkcat
/opt/csw/bin/pkgutil
/opt/csw/etc/pkgutil.conf.CSW
/opt/csw/libexec/pkgutil/wget
/opt/csw/share/doc/pkgutil/license
/opt/csw/share/doc/pkgutil/readme
/opt/csw/share/man/man1/bldcat.1
/opt/csw/share/man/man1/chkcat.1
/opt/csw/share/man/man1/pkgutil.1
/var/opt/csw/pkgutil/admin.CSW
[ verifying class <none> ]
## Executing postinstall script.

Installation of <CSWpkgutil> was successful.

bash-3.00# mkdir /etc/opt/csw/
bash-3.00# cp -p /opt/csw/etc/pkgutil.conf.CSW /etc/opt/csw/pkgutil.conf

Step 2,

Download software catalognya dulu

bash-3.00# /opt/csw/bin/pkgutil –catalog
Fetching new catalog http://blastwave.network.com/csw/unstable/sparc/5.10 if available…
–12:13:40–  http://blastwave.network.com/csw/unstable/sparc/5.10/catalog
=> `/var/opt/csw/pkgutil/catalog.blastwave.network.com_csw_unstable_sparc_5.10′
Resolving blastwave.network.com… 64.79.150.209
Connecting to blastwave.network.com|64.79.150.209|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 385,355 (376K) [text/plain]

100%[================================================================================================================>] 385,355      131.24K/s

12:13:43 (130.90 KB/s) – `/var/opt/csw/pkgutil/catalog.blastwave.network.com_csw_unstable_sparc_5.10′ saved [385355/385355]

Step 3,

Install GNU GPG

bash-3.00# /opt/csw/bin/gpg –keyserver pgp.mit.edu –recv-keys A1999E90
gpg: directory `//.gnupg’ created
gpg: new configuration file `//.gnupg/gpg.conf’ created
gpg: WARNING: options in `//.gnupg/gpg.conf’ are not yet active during this run
gpg: keyring `//.gnupg/secring.gpg’ created
gpg: keyring `//.gnupg/pubring.gpg’ created
gpg: requesting key A1999E90 from hkp server pgp.mit.edu
gpg: //.gnupg/trustdb.gpg: trustdb created
gpg: key A1999E90: public key “Blastwave Software (Blastwave.org Inc.) <software@blastwave.org>” imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1

Verifikasi dahulu jika kita sudah mempunyai key :

bash-3.00# /opt/csw/bin/gpg –list-keys
//.gnupg/pubring.gpg
——————–
pub   1024D/A1999E90 2008-08-17 [expires: 2011-08-17]
uid                  Blastwave Software (Blastwave.org Inc.) <software@blastwave.org>
sub   2048g/E4845389 2008-08-17 [expires: 2011-08-17]

Edit konfigurasi key untuk trust :

bash-3.00# /opt/csw/bin/gpg –edit-key A1999E90
gpg (GnuPG) 1.4.9; Copyright (C) 2008 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

pub  1024D/A1999E90  created: 2008-08-17  expires: 2011-08-17  usage: SC
trust: unknown       validity: unknown
sub  2048g/E4845389  created: 2008-08-17  expires: 2011-08-17  usage: E
[ unknown] (1). Blastwave Software (Blastwave.org Inc.) <software@blastwave.org>

Invalid command  (try “help”)

Command> Trust
pub  1024D/A1999E90  created: 2008-08-17  expires: 2011-08-17  usage: SC
trust: unknown       validity: unknown
sub  2048g/E4845389  created: 2008-08-17  expires: 2011-08-17  usage: E
[ unknown] (1). Blastwave Software (Blastwave.org Inc.) <software@blastwave.org>

Please decide how far you trust this user to correctly verify other users’ keys
(by looking at passports, checking fingerprints from different sources, etc.)

1 = I don’t know or won’t say
2 = I do NOT trust
3 = I trust marginally
4 = I trust fully
5 = I trust ultimately
m = back to the main menu

Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y

pub  1024D/A1999E90  created: 2008-08-17  expires: 2011-08-17  usage: SC
trust: ultimate      validity: unknown
sub  2048g/E4845389  created: 2008-08-17  expires: 2011-08-17  usage: E
[ unknown] (1). Blastwave Software (Blastwave.org Inc.) <software@blastwave.org>
Please note that the shown key validity is not necessarily correct
unless you restart the program.

Command> quit

Berikutnya edit konfigurasi pkgutil.conf

bash-3.00# vi /etc/opt/csw/pkgutil.conf

# Configuration file for pkgutil

# $Id: pkgutil.conf 7 2009-03-07 18:48:54Z bonivart $

# Master configuration file is placed in /opt/csw/etc. Place a pkgutil.conf
# file in /etc/opt/csw if you want a local override setting-by-setting

# Nothing below is mandatory to change, pkgutil will use the default values
# noted below for each option unless something is uncommented

# Mirror to use for downloads
# See http://www.blastwave.org/mirrors.php for alternative mirrors
# Default: http://blastwave.network.com/csw/unstable
#mirror=http://blastwave.network.com/csw/unstable

# Solaris 10: If you wish to limit pkgutil to installing packages
# only to the global zone, then uncomment this line. Note that pkgrm does not
# have the same option
# WARNING: do not modify this unless you know what you’re doing
# Default: blank
#pkgaddopts=-G

# Flags for use with wget, e.g. “-nv” for less verbose or “-q” for quiet
# WARNING: do not modify this unless you know what you’re doing
# Default: blank
#wgetopts=-q

# To enable use of gpg or md5, uncomment these
# NOTE: it doesn’t make sense to use md5 but not gpg so your options should be:
#       1. both disabled, 2. gpg enabled, 3. both enabled
# Default: false, false
use_gpg=true
use_md5=true

Langkah terakhir adalah sinkronisasi catalog server blastwave

bash-3.00# /opt/csw/bin/pkgutil –catalog
Fetching new catalog http://blastwave.network.com/csw/unstable/sparc/5.10 if available…
–13:30:57–  http://blastwave.network.com/csw/unstable/sparc/5.10/catalog
=> `/var/opt/csw/pkgutil/catalog.blastwave.network.com_csw_unstable_sparc_5.10′
Resolving blastwave.network.com… 64.79.150.209
Connecting to blastwave.network.com|64.79.150.209|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 385,355 (376K) [text/plain]

100%[================================================================================================================>] 385,355      131.26K/s

13:31:00 (130.98 KB/s) – `/var/opt/csw/pkgutil/catalog.blastwave.network.com_csw_unstable_sparc_5.10′ saved [385355/385355]

Checking catalog integrity with gpg.
gpg: Signature made Thu Dec 31 06:19:20 2009 WIT using DSA key ID A1999E90
gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: next trustdb check due at 2011-08-17
gpg: Good signature from “Blastwave Software (Blastwave.org Inc.) <software@blastwave.org>”

Step 4,

Buka browser untuk mengetahui software apa saja yang sudah tersedia di blastwave di http://www.blastwave.org

dibagian software anda bisa lihat misal saya akan menginstall bittorrent, dicatalog terlihat nama software adalah CSWbittorrent. Maka langsung saja kita install dengan perintah

bash-3.00# pkg-get -i CSWbittorrent
No existing install of CSWbittorrent found. Installing…
Trying http://ibiblio.org/pub/packages/solaris/opencsw/current/sparc/5.10/bittorrent-4.0.4-SunOS5.8-all-CSW.pkg.gz
–13:38:44–  http://ibiblio.org/pub/packages/solaris/opencsw/current/sparc/5.10/bittorrent-4.0.4-SunOS5.8-all-CSW.pkg.gz
=> `bittorrent-4.0.4-SunOS5.8-all-CSW.pkg.gz’
Resolving ibiblio.org… 152.46.7.80
Connecting to ibiblio.org|152.46.7.80|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 157,729 (154K) [text/plain]

100%[================================================================================================================>] 157,729       62.07K/s

13:38:47 (61.94 KB/s) – `bittorrent-4.0.4-SunOS5.8-all-CSW.pkg.gz’ saved [157729/157729]
…….
…….
/opt/csw/share/BitTorrent/winsetup.py
/opt/csw/share/doc/BitTorrent/README
[ verifying class <none> ]

Installation of <CSWbittorrent> was successful.

Ref :

http://www.blastwave.org/jir/blastwave.fam

Written by brokenz1

January 13, 2010 at 7:43 am

Informasi Package di Solaris

leave a comment »

Jika kita ingin mengetahui informasi sebuah paket di Solaris, bisa dengan menggunakan command pkgchk. Berikut contohnya :

gunakan perintah which untuk mengetahui di mana direktori paket berada

bash-3.00# which ssh
/usr/bin/ssh

lalu dengan pkgchk dengan option -l -p dan diikuti direktori sebuah paket

bash-3.00# pkgchk -l -p /usr/bin/ssh
Pathname: /usr/bin/ssh
Type: regular file
Expected mode: 0555
Expected owner: root
Expected group: bin
Expected file size (bytes): 265980
Expected sum(1) of contents: 37227
Expected last modification: Sep 16 03:17:14 2009
Referenced by the following packages:
SUNWsshu
Current status: installed

Written by brokenz1

January 7, 2010 at 5:57 pm

Posted in Solaris 10

Follow

Get every new post delivered to your Inbox.