Linux, Open Port Serial Without root permission.

terkadang kita membuat aplikasi di linux yang memiliki modul yang membutuhkan hak akses membuka port serial. namun, karena secara default, user biasa di linux tidak memiliki hak akses untuk membuka port  serial port, maka kita diharuskan untuk menambahkan sudo atau gksudo pada shotcut aplikasi kita. cara ini sangat berguna. saya juga lama menggunakan cara ini. kelemahan cara ini adalah, kita akan selalu diminta memasukkan password setiap membuka aplikasi kita. sungguh sesuatu yang sangat tidak nyaman. apalagi aplikasinya akan di deliver ke customer kita.

ternyata ada cara lain yang menurut saya lebih baik. yaitu dengan mendaftarkan user linux-nya ke group dialout. commandnya sebagai berikut:

sudo usermod -a -G dialout usernamelinuxnya

lanjutkan dengan ritual seperti biasa, yaitu logout dan login. lalu, coba buka aplikasi buatan kita, insyaAllah akan bisa membuka port serial tanpa harus menggunakan akses root. 🙂

QT5, Mengatasi “QMYSQL driver not loaded”

  1. cd /opt/Qt5.6.0/5.6/gcc_64/plugins/sqldrivers
  2. ldd libqsqlmysql.so
  3. jika ktemu “libmysqlclient_r.so.16 => not found“, pindah ”
    cd /usr/lib/x86_64-linux-gnu"
  4. cp libmysqlclient_r.so.18 libmysqlclient_r.so.16
  5. ulangi langkah 1 hingga 2, jika ketemu “libssl.so.10 => not found”, lanjutkan ke langkah 3. lalu, “sudo ln -s libssl.so.1.0.0 libssl.so.10”.
  6. ulangi langkah 1-2, jika ketemu “libcrypto.so.10 => not found”, lanjutkan ke langkah 3, lalu, “sudo ln -s libcrypto.so.1.0.0 libcrypto.so.10”.

sekian terima kasih. semoga membantu. 🙂

Membuat/Setting apache virtual host

terkadang kita ingin membuat 1 apache dapat diakses dengan banyak domain dengan merujuk ke folder yang berbeda-beda. nah, kebutuhan itu dapat ditangani oleh apache2. dengan fasilitas vitual host.

berikut saya catet-catetin beberapa step-step yang mungkin bermanfaat, khususnya buat saya sendiri. hehe…

untuk sebagai percobaan kali ini, saya menggunakan leptop kantor yang kebetulan saya telah install linux mint dan apache2. sebagai kebutuhan testing, saya ambil kasus menyediakan server cdn lokal dengan nama domain “cdn.dev”. cdn tersebut akan menyediakan file-file library front dan untuk mengelola libraray-library tersebut, saya menggunakan bower untuk menginstall setiap paketnya. 🙂  untuk masalah isi saya rasa gak usah diperdulikan dahulu. nanti aja di tulisan berikutnya.

tentukan dahulu domain “cdn.dev” telah merujuk ke ip kita. untuk melakukannya, edit file /etc/hosts tambahkan ” cdn.dev”(tanpa kutip, ada spasinya) setelah kata localhost  (dalam satu baris ya, jangan nambah baris lagi, 😀 ) lalu disimpan.(membutuhkan permisi root).

akses domain “cdn.dev” dari browser, apakah sudah merujuk ke local host?? jika tidak, komen aja dulu.

jika domain cdn.dev sudah merujuk ke localhost, maka selanjutnya kita lanjutkan dengan membuat virtual host untuk domain tersebut.

oke, untuk pertama kali, buka terminal dulu deh. (ctrl+alt+T)

bikin folder tempat file-file library kita. karena ini adalah cdn saya bikin direktory tersendiri dan karena rencanya mau make bower ya saya bikin aja dulu direktory bower componentnya. 🙂

sudo mkdir /var/www/html/CDN/

sudo mkdir /var/www/html/CDN/bower_components

 

selanjutnya bikin file config. saya biasanya sih ngopi dari yang sudah ada. 😀

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/cdn.conf”

(kalau diminta memasukkan password, ketik password, jangan update status di situ!!).

edit file config cdb.conf dengan editor kesayangan. untuk saat ini pake gedit aja, biar cemerlang. “sudo gedit /etc/apache2/sites-available/cdn.conf”. baca-baca aja isi filenya yg ada di sana. fokus ke ServerName dan DocumentRoot.

berikut yang saya lakukan pada file config saya:

ServerName cdn.dev
ServerAlias http://www.cdn.dev

ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/CDN/bower_components/

save lalu tutup geditnya. oia, untuk teks2 lainya abaikan saja dan jangan di hapus, edit pada point2 diatas aja.

kembali ke terminal, enabelin tu config. dengan cara “sudo a2ensite cdn.conf”.

selanjutnya reload apachenya dengan cara “sudo service apache2 reload”

 

nah, sekarang kita sudah bisa buka domain “cdn.dev” dari browser. dan semestinya sudah diarahkan ke direktory /var/www/html/CDN/bower_components/.

untuk mengujinya bikin aja dulu file index.php dengan isi apa aja di direktory “/var/www/html/CDN/bower_components/” .  coba deh akses cdn.dev di browser. harusnya sih sudah bisa tampil tu file index.

[next post] isi cdn.dev dengan file-file library front-end.

install OCI8 di linux mint.

  1. download instant client dan SDK di sini: http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
  2. extract instant client letakan semua file yang ada di folder hasil extract ke /opt/oci8lib. (sebenernya terserah mau diletakkan dimana).
  3. extract sdknya. buka folder hasil extrak. di sana ada folder sdk.
  4. copy file folder sdk(perhatikan, folder sdk, buka folder hasil extract) ke /opt/oci8lib. ini menyesuaikan dengan tahapan point 2. alias di copy ke folder library oci8 kita.
  5. buka terminal.
  6. lalu run command berikut:

    #menambah path
    echo ‘export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/oci8lib’ >> ~/.profile
    source ~/.profile
    #pindah ke tempat librarynya
    cd /opt/oci8lib
    echo /opt/oci8lib >> /etc/ld.so.conf
    ldconfig
    #buat link
    ln -s libclntsh.so.* libclntsh.so
    #install beberapa komponen
    sudo apt-get install php-pear
    sudo apt-get install php5-dev
    sudo apt-get install libaio-dev
    sudo apt-get install php-pear

    #install oci8-nya

    pecl install oci8-2.0.10

    #jika ditanyatanyain untuk nginput path, enter sajalah. 🙂

  7. testing.
    buat file phpinfo().

Install Driver Arduino Cina di Linux.

dengan menggunakan command “lsusb” arduino saya terdetek sebagai berikut:

Bus 001 Device 004: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

saya simpulkan bahwa arduino saya arduino china. 😀 nah, untuk dapat upload ke arduino saya ini maka saya mesti mengintall driver serial portnya. 🙂

caranya adalah sebagai berikut:

  1. download drivernya di sini.
  2. extract.
  3. buka folder dengan terminal
  4. lalu jalankan perintah “sudo make” (tanpa tanda kutip)
  5. masukkan password user linux
  6. lalu jalankan perintah “sudo make load” (tanpa tanda kutip).
  7. buka IDE Arduino
  8. setting Board, Processor dan Port. biasanya, untuk port di saya terdetek yang paling bawah. coba aja yang lain. 🙂
  9. oia, saya menggunakan linux mint 17.3. ketika saya upload ke arduino selalu gagal. sekarang sih sudah enggak. biar sukses ada beberapa hal yang saya lalukan. yaitu:
    1. cari shortcut arduino, di saya ada di Menu->Programming->Arduino
    2. klik kanan sortcut, lalu add to panel.
    3. selanjutnya akan ada shortcut Arduino di panel bawah, dekatnya button Menu.
    4. klik kanan shortcut tersebut, klik edit.
    5. lalu tambahkan “sudo “(tanpa tanda kutip dan ada spasi) di depan command.
    6. centang Launch in Terminal. lalu Ok saja.
    7. selanjutnya buka IDE Arduino dari shortcut baru yang di panel ini. nantinya akan selalu diminta pw setiap pertama buka Arduinonya. hehe.. insyaAllah dengan cara ini bisa.