Image

SCREENSHOT

hary

Brainware

Software without brainware ??.. Nonsense
Hardware without brainware ??.. Also Nonsense
Brainware without software and hardware ??.. No problem

Si Brainware ini memang ‘otak’ dari segala kegiatan komputasi, di tahap akhir bisa kita sebut operator, user, dll. Kapan pun brainware mau, dia bisa membuat software dan hardware tersebut.
Tentu saya tidak berbicara sebutan brainware ini hanya sekedar pengguna di tahap akhir, yakni saat pengoperasian software dan hardware. Tapi benar-benar menjadi otak dalam cikal bakal terciptanya sebuah perangkat. Namun sayangnya, si otak ini sangat lemah dalam menghafal. Ingatannya terbatas, ..terkuras seiring berjalan nya waktu.

Karena itulah, mencatat adalah hal yang penting bagi brainware. Perhatikan rack berikut:
rack-copy

Jika kita pernah ‘main’ dengan server2 besar (tidak terlalu besar juga sih), pasti akan kita temukan rack dengan tipe server berbeda. Baik keluaran IBM, HP Proliant, Fujitsu, dll, penamaan ‘bay’ dan ‘port’ mereka juga sesuai dengan pabrikannya.
“..Memangnya saya pikir siapa yg ‘berhak’ melakukan penamaan dan menentukan posisi dari bay dan port tersebut ??..” 🙂

-FIN-

Surveillance Camera – ZoneMinder

Judul yang saya tulis ini merupakan subject sewaktu saya masih aktif menyelesaikan laporan selama kuliah dulu. Bukan satu-satunya rekomendasi bagi yang ingin menggunakan cctv cam di linux, namun boleh di coba juga.

Kali ini aplikasi yang dirancang bangun tidak menggunakan basis rpm seperti dulu saat saya menggunakan openSuSE 11.2 emerald. Ubuntu mempermudah segalanya, hanya tinggal bagaimana kemahiran saat troubleshoot nya.

Gunakan repositori ke :
~# add-apt-repository ppa:iconnor/zoneminder
~# apt-get update && apt-get install zoneminder && apt-get install php5-cgi && a2enmod cgi && a2enmod rewrite && sed -i ‘s/var\/www/usr\/share\/zoneminder/g’ /etc/apache2/site-enabled/<config_file> && apt-get install v4l-utils

Pastikan informasi device kita peroleh di sistem, seperti width and height pixel dari cam yang digunakan :
zoneminderzoneminder2

Oh ya, pastikan juga nilai memori di sisi kernel (E.G : kernel.shmall = 268435456 dan kernel.shmmax = 268435456) mendukung aplikasi zoneminder ini dengan asumsi alokasi memori :
256MB : 256 *1024*1024
512MB : 512*1024*1024

*) ffmpeg sudah obsolete ya dude, gunakan avconv jika ada keperluan olah data streaming audio dan video

Selamat berkreasi & Happy GNU/ Linux

What’s Next ..

Ingin tau code yang akan atau sedang saya bangun ?.. tunggu di github ya 😉 .. see ya

Hary

‘Penjara’ untuk GNU/ Linux [Linux Jail]

Kembali.. knowledge di masa lalu namun perlu saya tulis juga di blog ini sebagai catatan dan pengingat. Tidak ada hal yg bisa ‘sempurna’ untuk di ingat bagi seorang yg dhoif dan mengidap dyslexia seperti saya ini *halah .

Jadi begini, terkadang kita tidak selalu bisa membuat orang melakukan kejahatan atau kesalahan di awal agar alibi nya dijadikan faktor agar ia dipenjara. Cukup dengan melihat bagaimana suatu hal berharga yang kita miliki agar tidak ‘tersentuh’ dan ‘dicolek2’, apalagi klw bukan muhrim nya [maka nya buruan nikah har.. *haduh >.< .. sama siapa ?.. sama yuki kato ? 😀 ]. -tulisan malam jadinya tidak fokus- . Maka mari kita proteksi data kita dari hal2 yg tidak kita inginkan dengan step teknis, singkat, padat, dan ‘kurang’ akurat berikut 😀 . Check these out.

1). Pastikan anda tahu sistem anda termasuk kategori 32 atau 64 bit .. hahaha (Lah kok ketawa 😀 ). Serius,.. ini untuk menentukan berkas2 yang ingin kita salin atau gunakan.
2). Unduh berkas jailkit di sini : http://olivier.sessink.nl/jailkit/jailkit-2.17.tar.gz . Trims Om Oliver
3). Ekstrak, configure, compile dan install.
4). Set temporary variable hanya agar mudah dalam me-set konfigurasi direktori dan pastinya agar tulisan ini menjadi singkat 😀 . ~# D=/home/<nama_direktori>
5). mkdir -p $D
6). ls -l /dev/{null,zero,stdin,stdout,stderr,random,tty}
7). mkdir -p $D/dev/ && mknod -m 666 $D/dev/null c 1 3 && mknod -m 666 $D/dev/tty c 5 0 && mknod -m 666 $D/dev/zero c 1 5 && mknod -m 666 $D/dev/random c 1 8
8). chown root:root $D && chmod 0755 $D && ls -ld $D # <- to verify
9). mkdir -p $D/bin && cp -v /bin/bash $D/bin # Pada step ini adalah fungsi apa2 saja yg ingin kita berikan untuk user, apakah ia hanya di izinkan untuk listing/ copying atau lainnya. Jika tidak ingin repot, download script disini http://www.cyberciti.biz/files/lighttpd/l2chroot.txt , kemudian jadikan executable agar bisa di eksekusi.
10). ldd /bin/bash
11). mkdir -p $D/lib/ && mkdir -p $D/lib64/ && mkdir -p $D/lib/x86_64-linux-gnu/ && cp -v /lib/x86_64-linux-gnu/{libncurses.so.5,libtinfo.so.5,libdl.so.2,libc.so.6} $D/lib/
12). cp -v /lib64/ld-linux-x86-64.so.2 $D/lib64/
13). cp -va /lib/x86_64-linux-gnu/libnss_files* $D/lib/x86_64-linux-gnu/
14). adduser <Username>
15). cp -vf /etc/{passwd,group} $D/etc/ # Agar lebih aman (setelah prosedur jail ditulisan ini selesai), sisakan 2 baris terakhir yang berkaitan dg user2 jail saja, baik untuk passwd dan group
16). pada sshd_config , pastikan baris2 berikut ini aktif :

Subsystem sftp /usr/lib/openssh/sftp-server
UsePAM yes
##  Apply the chrooted jail to the user called tom and jerry ##
Match User <Username>
ChrootDirectory /home/<direktori>
## Allow sftp to chrooted jail ##
ForceCommand internal-sftp

17). service ssh restart
18). mkdir -p $D/home/<nama_direktori> && chown -R <Username>:<Username> $D/home/<nama_direktori>/ && chmod -R 0700 $D/home/<nama_direktori>/
19). Silahkan testing dg aplikasi client ftp atau sftp.
20). Eh iya, agar tidak ada yg marah.. saya menggunakan referensi nya di sini : http://www.cyberciti.biz/faq/debian-ubuntu-restricting-ssh-user-session-to-a-directory-chrooted-jail/
21). Yang terakhir, JANGAN EKSEKUSI PARAM DIATAS JIKA SAYA, ANDA, atau KITA TIDAK PAHAM . 

Kali ini tidak ada screenshot (tapi bukan berarti praktik ini hoax loh) . Lebih dikarenakan saya ‘lelah’ 😀

Reg.

Data

Yup.. judulnya hanya ‘Data’, karena belum lama ini saya baru saja bergelut dg perhitungan yang kurang lebih berhubungan dengan data kuantitatif. Namun penyajiannya di convert kedalam bahasa pemrograman web php, javascript, jquery dg design menggunakan bootstrap & css.
Tidak terlalu luarbiasa juga, namun cukup untuk menjadi tambahan pengetahuan bagaimana mencari:
– jumlah sample yang sesuai dari sekian banyak populasi.
– nilai persamaan regresi sederhana yang membantu dalam mengukur suatu sebab akibat dari variabel yang kita teliti. Biasanya disajikan dalam bentuk tabel penolong dimana nilai didalam variabel ini akan menjadi acuan hitung (Sebagai contoh: berapa lama waktu pengerjaan untuk 0 sampai 1 tiket, 2 sampai 4 tiket, 5-7 tiket dst).
– nilai korelasi sederhana untuk penentuan koefisien determinasi atau koefisien penentu (Ini penentuan akhir bagaimana tingkat korelasi antar variabel satu dg yg lain).

Yang pada intinya point2 diatas adalah untuk menunjang dalam pembuatan keputusan, nah seharusnya kalau ini judulnya sudah bukan ‘data’ lagi, tapi sudah melalui proses data->informasi->knowledge->wisdom(decision making). Lalu, screenshot nya mana ??.. nanti saja setelah artikel yg sedang saya tulis selesai 😀
Tapi boleh deh.. sedikit aja *plinplan mode : ON
dss

Optimalisasi redis

What is it things dude ??..
Jika kita me-refer langsung dari situs nya di redis.io , maka akan dijelaskan seperti berikut :
“..Redis is an open source (BSD licensed), in-memory data structure store, used as database, cache and message broker. It supports data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs and geospatial indexes with radius queries. Redis has built-in replication, Lua scripting, LRU eviction, transactions and different levels of on-disk persistence, and provides high availability via Redis Sentinel and automatic partitioning with Redis Cluster. ..”

Nah, sekarang kita coba bagaimana redis menangani masalah high availability atau master-slave. Untuk masalah instalasi nya sendiri sangat mudah (thanks to hacksparrow dan antonlogvinenko atas share-nya + muhammad abbas atas tutorialnya).

Saya menggunakan 2 server dimana 1 master (192.168.1.2) dan 1 slave (192.168.1.3) di ubuntu 11.10 oneiric ocelot. Download, instalasi dan configure dengan menggunakan parameter berikut :
[Server 1 dan 2]
~# apt-get install gcc g++ make tcl*
~# wget -c http://redis.googlecode.com/files/redis-2.4.8.tar.gz
~# tar -zxvf redis-2.4.8.tar.gz
~# cd redis-2.4.8
~# make && make install && make test
~# mkdir -p ~/.redis/
~# cp -pa /<path_source_of_redis>/redis.conf ~/.redis/
[Server 1]
Konfigurasi yang saya gunakan kira2 seperti berikut :
redis.conf

 

 

 

 

 

 

 

 

 

 

 

 

 

Continue reading