BASH : operator OR ( || ) dan and ( && )

cd /tmp || exit 2

Apakah makna dari double pipe “||” ini ? Tanda || pada baris perintah “shell atau perl” mengacu pada: OR. jadi skrip kita mengandung perintah “ lakukan perintah pertama || \ OR perintah kedua ”

Jika perintah pertama berhasil, perintah kedua tidak akan dieksekusi, itu berarti perintah kedua akan di eksekusi jika exit status perintah pertama tidak sama dengan 0. operator ini adalah kebalikan dari operator “&&”, dimana perintah kedua akan dieksekusi jika dan hanya jika exit status perintah pertama sama dengan 0

contoh :

$ ls file_tidak_ada.txt || echo TIDAK_ADA
 ls: cannot access this_tidak_ada.txt: No such file or directory
 TIDAK_ADA
$ ls file_ada.txt && echo ADA
 file_ada.txt
 ADA


jadi apa gunanya?

misal kita ingin membuat sebuah perintah yang akan dieksekusi secara berulang sebanyak n kali sampai perintah itu berhasil dijalankan .

contoh kita akan menguji dengan 3 kali percobaan, apakah koneksi internet tersambung, dengan waktu jeda 15 detik. menggunakan wget (pada bash):

#!/bin/bash

for i in {1..3} 
do 
   wget -q --tries=10 --timeout=20 --spider http://www.blankonlinux.or.id && break || sleep 15

done

Happy hacking 🙂

Iklan

Grant user ke tabel spesifik pada database spesifik

Suatu saat si kampret mendapat tugas untuk memberikan hak akses melihat, menambah, dan menghapus data kepada tole pada suatu database server, yang memuat ribuan database yang didalamnya terdapat ribuan tabel dengan hak untuk mengedit data pada tabel dengan awatabelpilihan_ yang terdapat pada semua database dengan nama awalan database_ . setelah di cek ternyata si kampret harus memberikan akses pada 10000 tabel kepada tole, karena si kampret adalah orang yang pemalas, dengan pengetahuan seadanya  dibuatlah baris kode berikut supaya si kampret dapat segera tidur setelah semalaman dia ga tidur gara – gara harus bekerja hingga larut malam.

mysql -u kampret -ppassword -e “show databases like ‘databasepilihan_%'” | xargs -I {} echo {} | sed 1d > dbpilihan

pada baris pertama sikampret yang kebetulan menggunakan linux mengambil nama database yang dipilih, yaitu nama-nama database yang akan dipilih tabelnya dan memasukkan hasilnya kedalam sebuah berkas berjudul dbpilihan

for i in $(cat dbpilihan) ; do mysql -u kampret -ppassword -e “show tables from $i like ‘tabelpilihan_%'” | xargs -I {} echo $i.{} | sed 1d; done > tblpilihan_

pada perintah selanjutnya si kampret melakukan pembacaan perbaris pada berkas dbpilihan yang digunakan untuk menyeleksi tabel yang akan diberikan hak aksesnya kepada tole, kemudian memasukkan hasilnya kedalam tblpilihan_

for i in $(cat tblpilihan_) ; do mysql -u kampret -ppassword -e “GRANT SELECT, INSERT, UPDATE, DELETE ON $i to ‘tole’@’%'” ; done

Pada perintah terakhir si kampret melakukan pembacaan pada berkas hasil dan dengan perulangan dia melakukan pemberian kekuasaan kepada tole. dengan 3 langkah diatas si kampret berhasil menghemat beberapa jam untuk melakukan grant user pada 10000 tabel yang berbeda.

9 Langkah Koneksi Galaxy Nexus Dan BlankOn Linux

Koneksi antara galaxy nexus dan Linux memang tidak semudah dengan perangkat telepon pintar yang lain maupun pemasangan perangkat ini ke sistem operasi lain, namun semua dapat teratasi dengan 10 langkah yang diambil dari berbagai sumber ini permasalahan tersebut dapat teratasi

1. install libusb-dev
sudo apt-get install libusb-dev

2. Unduh dan kompilasi libmtp versi terbaru
wget http://nchc.dl.sourceforge.net/project/libmtp/libmtp/1.1.5/libmtp-1.1.5.tar.gz
tar -xvf libmtp-1.1.5.tar
cd libmtp-1.1.5
./configure –prefix=/usr
make
sudo make install

3. pasang mtptools dan mtpfs
sudo apt-get install mtpfs mtp-tools

4. pasang gmtp (untuk kemudahan)
sudo apt-get install gmtp

5. kaitkan Galaxy Nexus ke BlankOn, cek Product id dan vendor id
mtp-detect | grep idVendor
mtp-detect | grep idProduct

6. buat android rules dan restart udev
gksu gedit /etc/udev/rules.d/51-android.rules
isikan :
SUBSYSTEM==”usb”, ATTR{idVendor}==”VENDORID”, ATTR{idProduct}==”PRODUCTID”, MODE=”0666″
(sesuaikan VENDORID dan PRODUCTID dengan perangkat yang anda miliki misalkan punya saya)
SUBSYSTEM==”usb”, ATTR{idVendor}==”04e8”, ATTR{idProduct}==”685c”, MODE=”0666″

kemudian restart udev
sudo service udev restart

7. Edit /etc/fuse.conf hilangkan tanda “#” pada opsi “#user_allow_other”

8. lepas pasang usb kemudian jalankan gmtp

9. selesai

installasi manpages di Blankon Rote

Apalah arti linux tanpa manpage?

/Preface

Saya terbilang terlambat mencoba Linux BlankOn8 (Rote), sampai akhirnya saya memasangnya. kebiasaan melakukan administrasi linux melalui Command Linux Interface (CLI) ternyata susah dihilangkan, dan bagi saya CLI adalah sebuah penemuan spektakuler yang membuat semuanya terasa menjadi lebih mudah. tampilan baru BlankOn Rote ternyata belum terlalu menarik perhatian saya karena toh yang selalu saya cari ketika bermain main dengan linux adalah CLI.

setelah saya melakukan instalasi dan membuka CLI perhatian saya tertuju pada ketidaktersediaan manpages pada distribusi linux ini. manpages selama ini membantu saya dalam melakukan berbagai atraksi di mesin linux yang saya gunakan, manpages yang membuat saya selalu tidak memperdulikan apapun distribusi linux yang saya gunakan ternyata tidak terpasang dengan baik didalam distribusi kesayangan saya ini.

setelah sekitar 3 minggu pemasangan dan mencari kesana kemari tidak mendapatkan hasil yang berarti, akhirnya suatu tadi malam saya tanyakan ke kanal #blankon dan dijawab oleh salah seorang Heker yang menjadi manajer rilis BlankOn Rote yaitu heker aftian, instruksinya sangat simple ternyata, beliau menginstruksikan untuk melepas paket manpages kemudian membersihkan paket instalasinya, selanjutnya dilakukan instalasi ulang.

/core

Selanjutnya saya lakukan instruksi tersebut dengan pemahaman saya yang terbatas, sebagai berikut :

1. melepas paket manpages

clown@kuntilanak# apt-get remove manpages manpages-dev
clown@kuntilanak# apt-get clean

2. Membersihkan paket

clown@kuntilanak# manpath
clown@kuntilanak# rm /usr/shares/man/*

3. Pasang Kembali paket manpages

clown@kuntilanak# apt-get install manpages manpages-dev manpages-posix

/Penutup

setelah beberapa instruksi tersebut manpages di mesin BlankOn saya dapat digunakan kembali.

=====greetz====
@Aftian
#BlankOn
Segelas Kopi kapal api
Koneksi internet gratis
clown@kuntilanak

 

Instalasi Blankon di Macbook 5.2

==Curhat dikit==

Beberapa waktu yang lalu saya sempat memposting sebuah tulisan mengenai Instalasi distribusi GNU/Linux BlankOn ke Macbook White 5.2 tanpa membahas aspek teknis sama sekali. akhirnya beberapa hari yang lalu Instalasi tersebut mengalami gangguan. pada saat akan saya gunakan untuk memandu pelatihan BlankOn-nya tiba-tiba ngadat yang belakangan saya ketahui karena kernel panic. entah kenapa bisa begitu saya belum tahu juga. dan saya cukup kerepotan untuk melakukan langkah instalasi tersebut dari awal karena baanyak langkah yang harus diingat dan sumbernya berpencar. Baca lebih lanjut

Screencast : Openshot di Blankon linux

Openshot merupakan sebuah aplikasi video editor di linux yang cukup powerfull untuk pengeditan video ringan sampai menengah, saya biasa menggunakan aplikasi ini untuk pengeditan video dokumentasi kegiatan. Menurut saya fitur dalam video ini sangat banyak dan cukup memuaskan dibandingkan dengan aplikasi pengolah video lain di linux. berikut saya sertakan video screencast untuk pemula semoga membantu.

Unduh Paket aplikasi di Blankon Linux

Berikut ini adalah rangkaian sintaks bash yang saya gunakan untuk melakukan pengunduhan paket aplikasi di Blankon, sehingga aplikasi dapat diunduh dan dipasang pada mesin diluar jaringan (Luring), dan seandainya dapat dipasang pada sebuah server maka pengguna distribusi Blankon dapat melakukan pengunduhan aplikasi yang inginkan pada server tersebut dan melakukan pemasangan paket aplikasi secara Luring. Baca lebih lanjut

BlankOn #7 Pattimura di Macbook 5.2 (versi 0.1)

Tulisan ini sengaja saya beri versi 0.1 untuk memberikan tanda bahwa tulisan ini mungkin masih akan mengalami perbaikan di kemudian hari.

Beberapa waktu yang lalu saya mendapatkan sebuah perangkat baru yakni Macbook white 5.2 meskipun barangnya setengah hancur, tapi lumayan lah masih bisa dipakai buat ngetik tulisan ini. setelah melalui perenungan yang mendalam akhirnya perangkat ini saya putuskan untuk menggantikan Nebula (Lenovo Y400 yang ga kalah hancur 😉 ), didalam perangkat ini bersemayam OS bawaan dan saya sematkan distribusi Linux Blankon #7 Pattimura. Baca lebih lanjut

hacking apt-get update

Kemarin lusa gw memperkenalkan BlankOn kepada seorang kawan di kampus, setelah sehari dia mencoba untuk belajar secara mandiri esok harinya dia menanyakan bagaimana untuk menambah aplikasi pada distribusi linux tersebut, dan kami pun sepakat untuk bertemu di kampus.

Di kampus kami bertemu kemudian saya pandu beliau untuk melakukan instalasi aplikasi melalui manajemen paket synaptics. Namun yang terjadi adalah, semua update gagal, berkali-kali saya coba dengan mengganti lokasi mirror ke beberapa server. Dan hasilnya tetap nihil. Baca lebih lanjut

GNU Screen – Menyelamatkan aktifitas dari terputusnya koneksi dengan server

Suatu kali penulis melakukan penyalinan dokumen yang cukup besar (86Gb) antar server menggunakan scp koneksi komputer lokal penulis terputus yang menyebabkan kegagalan seluruh proses penyalinan dokumen sehingga penyalinan harus diulangi lagi. atas saran seorang teman penulis kemudian menggunakan screen.”GNU Screen is a full-screen window manager that multiplexes a physical terminal between several processes” kira -kira artinya GNU Screen merupakan sebuah window manager yang menduplikatkan sebuah terminal fisik diantara beberapa proses. kelebihan dari GNU Screen ini adalah opsi detach yang dapat menyelamatkan kita dari kehilangan koneksi, sehingga proses apapun yang kita lakukan di server yang membutuhkan waktu lama dapat di antisipasi dengan menggunakan aplikasi ini. selain itu aplikasi ini dapat dimonitor. misalkan kita sedang melakukan kompilasi secara remote pada suatu mesin server, download file, pemindahan ataupun pengkopian file, yang membutuhkan waktu lama kita cukup memonitor prosesnya saja. Baca lebih lanjut