Skip to main content

Beberapa Catatan Tentang Linux


Tulisan ini lebih merupakan catatan penulis berkenaan dengan Linux. Semoga ada beberapa yang bisa diimprove dan diimplementasikan pada release selanjutnya.


Graphical User Interface

Pada umumnya, end user akan merasakan impresi pertama adalah saat pertama kali melihat performa tampilan GUI-nya. Maklum di abad 21 ini, semuanya sudah dipermudah dengan hanya klak-klik tombol mouse. Adapun pada hakekatnya command prompt itu lebih powerful ketimbang menggunakan aplikasi sejenis dalam mode GUI. Dan konsep ini selalu melekat pada orang-orang yang memang berkecimpung mengelola server. Maklum saja, karena server tidak memerlukan tampilan GUI sama sekali pada hakekatnya. Karena alasan performa server terbebani dengan tampilan GUI.

Bila dalam ranah server, saya setuju dengan tampilan text based dalam mengelola server tersebut. Akan tetapi pada ranah desktop, maka yang menjadi point atraktif sebuah OS adalah tampilan GUI yang memukau sebening kristral. Bila Anda pernah membandingkan tampilan GUI Linux, Windows dan Mac OS X, maka yang paling bening menurut saya adalah Mac OS X, kemudian Windows baru yang terakhir Linux. 


Bila melihat Mac OS X, ia adalah turunan Unix juga, sama dengan Linux. Oleh karena itu saya percaya bahwa pada tahun-tahun mendatang, tampilan GUI Linux bisa seatraktif Mac OS X. 



Paket Managemen

Selanjutnya adalah mengenai paket management, ada beragam aliran paket managemen di Linux, secara garis besar ada 2 yang terkenal, yaitu RPM dan Debian. Selain itu ada juga yang lain, seperti Slackware yang masih menggunakan paket file tarbal. Akan tetapi kenyataan ini bisa dimaklumi, karena adanya kebebasan dalam dunia Linux yang open source, jadi Linux membuka pintu seluas-luasnya bagi developer untuk membuat paket managemen sendiri, atau akan mengikuti patron yang sudah ada. Akan tetapi ada satu format yang bisa diterima oleh semua distro, yaitu binary file, yang biasanya dikompres dalam format tar.gz atau tar.bz2. Dan format seperti itu bisa diinstal ke semua distro yang ada. Dan ini adalah common format untuk Linux. Akan tetapi untuk alasan performa, biasanya distro yang merupakan turunan Debian seperti Ubuntu, akan menyediakan paket standard untuk Ubuntu pada aplikasi tersebut. Dengan dalih, lebih secure dan lebih terintegrasi dengan distro tersebut. 

Jadi mau tidak mau, kita harus belajar beberapa jenis paket management tersebut agar bisa memahami Linux secara komprehensif. Termasuk paket yang masih mengunakan tarbal. Dengan demikian dapat disimpulkan bahwa paket managemen di Linux itu ada beberapa jenis standart, tidak hanya satu seperti di Windows atau Mac OS X.


Konsekuensi dari ada beberapa jenis paket management, maka pengelolaannya juga bermacam-macam. Bila kita menggukanan paket RPM kita harus menggunakan tools rpm. Kalau Debian, kita bisa menggunakan tools apt-get. Bahkan sesama paket RPM, misalnya antara OpenSUSE dan Fedora memiliki tool yang berbeda. Bila di OpenSUSE selain tools rpm, kita bisa menggunakan tools zypper, sedangkan di Fedora kita bisa menggunakan tools rpm atau yum. 


Adapun kalau kita menggunakan paket binary file, maka pengelolaannya sama, dan itu berlaku common di berbagai distro. Sebagai contoh paket firefox yang bentuk binarynya adalah firefox.tar.bz2, cara menginstallnya adalah # tar xvf firefox.tar.bz2, maka akan diekstrak-lah ke subfolder /firefox dari tempat instalasi tersebut dilakukan. Dan cara menjalankannya tinggal cari file executablenya dari folder /firefox. 


Jadi bisa disimpulkan bahwa managemen paket di Linux ada beberapa aliran, antara lain RPM, Debian, tarbal dan binary file. Jadi ke-4 jenis paket managemen ini perlu Anda pelajari, bila Anda ingin expert. Disinilah letak belajar yang agak berat bagi mereka yang hanya sekedar end user. Akan tetapi bagi Anda yang mau belajar, maka akan ada imbalan yang pantas untuk Anda setelah mempelajarinya. Anda akan menjadi seorang super user bahkan expert di Linux.



Kolaborasi

“Kekurangan” lain Linux adalah masalah marketing. Karena sebagian disto Linux itu free, maka pada umumnya para developer tidak membutuhkan marketing yang jor-joran dikarenakan tidak ada budget untuk itu. Marketingnya hanya dilakukan secara online di website masing-masing distro. Akan tetapi khusus kernel Linux-nya biasanya tambahan fitur-fiturnya dibahas dalam forum-forum kernel Linux. Seperti kernel versi 4.x yang memiliki fitur tidak perlu restart system setelah upgrade kernelnya. Beda dengan kernel versi sebelumnya yang selalu memerlukan restart system. Ini adalah khabar baik untuk penggunaan Linux pada ranah server. Sebenarnya fitur itu sudah ada pada Linux versi komersial seperti Red Hat dan Suse, karena biasanya server mengerjakan tugas-tugas yang kritikal, maka fitur itu wajib ada pada kernel yang digunakan.

Untuk distro yang dikomersialkan, fitur itu menjadi nilai jual daripada OS yang lain. Karena menurut pengalaman saya sewaktu bekerja di perusahaan yang menggunakan server Windows NT,  beberapa kali IT manager menginformasikan akan melakukan restart server. Bila menggunakan Linux, tentu hal itu tidak perlu dilakukan. Inilah nilai jual kernel Linux ketimbang kernel yang lain.


Untuk menutupi “kelemahan” marketing ini, maka kita sebagai user Linux-lah yang harus aktif mencari informasi dari forum-forum kernel Linux atau forum-forum pada distro yang kita gunakan. Pada forum inilah developer bisa mengadopsi feedback dari end user untuk perbaikan kernel atau distro kedepannya agar lebih baik lagi. Inilah yang disebut dengan kolaborasi diantara pengguna Linux. 


Dari forum-forum itulah juga yang mendorong patch cepat dilakukan oleh developer. Jadi release patch kernel Linux bisa dilakukan dengan cepat. Misalnya dari versi 3.10.17 ke versi 3.10.18 bisa dikerjakan mingguan. Coba bandingkan dengan OS lain yang memakan waktu tahunan.



Simple

Oleh karena peruntukkan Linux itu bisa digunakan untuk server atau desktop, maka ada distro yang membuat kebijaksanaan untuk membedakan ISO instalernya seperti yang diberlakukan pada Fedora, Red Hat, Suse. Jadi ISO installernya ada yang untuk desktop, server atau cloud. Untuk yang desktop saja juga dibedakan lagi berdasarkan desktop environmentnya, seperti KDE, Gnome, XFCE, LXDE. Ini berlaku khususnya pada ISO installer desktop.

Walaupun begitu, ada juga yang tidak mengikuti kebijaksanaan itu, seperti Slackware. Yang dibedakan hanyalah arsitekturnya saja, yaitu 32 bit atau 64 bit. Inilah bentuk kesederhanaan Slackware. Semuanya bisa dipoles sesuai keinginan Anda. Bila digunakan untuk server, tidak perlu install GUI-nya. Sebaliknya bila digunakan untuk desktop, GUI-nya perlu diinstal. Dengan demikian, maka mendownload ISO Slackware itu mudah tinggal pilih arsitektur mana yang dipilih. Jadi bagi pengguna awal hal itu tidak membingungkan.


Kalau kita ingin menggunakan Fedora, maka mau tidak mau kita mesti memahami apa bedanya KDE dan Gnome, atau bahkan XFCE dari sisi end user. Sebelum kita mendownload ISO installernya. Oleh karenanya maka sebenarnya, disini Slackware lebih mudah bagi pemula daripada distro yang lain. Inilah kelebihan Slackware: Simple.



Referensi

Sebenarnya manual yang paling baik adalah dokumentasi dari si pembuat software itu sendiri. Akan tetapi bagi pemula hal itu tentu akan membingungkan. Karena ada banyak hal yang dibahas pada manual tersebut. Misalnya manual listing file (man ls), maka ada banyak opsi yang ditampilkan. Bagi pemula itu membingungkan. Akan tetapi sebaliknya hal itu usefull bagi mereka yang sudah expert. 

Oleh karena itu maka saya  merekomendasikan bagi pemula untuk belajar dari buku The Linux Command Line, karya William Shotts yang bisa di download e-book-nya secara free di linuxcommand.org. Buku tersebut merupakan buku yang Linux centris. Dan membahas Linux command dalam mode text, jadi bisa digunakan pada semua distro Linux. Dengan membaca buku itu, akan menjadi landasan yang kuat untuk Anda dalam melangkah lebih jauh dalam mengeksplorasi Linux. Selamat membaca. 


Selamat datang di dunia open source dan open knowledge dimana tidak ada satupun hal yang disembunyikan.

Comments

Popular posts from this blog

openSUSE Leap

Mengapa openSUSE Leap menarik bagi sebagian pengguna Linux? Hal itu wajar mengingat openSUSE Leap merupakan distro gabungan (hybrid) antara SUSE yang dikenal dengan keamanan sekelas enterprise dan aplikasi yang terkini dari dunia open source. Akan tetapi bila Anda mencobanya, maka akan ditemukan sebuah perilaku yang menurut saya tidak lazim, yaitu sewaktu kita membaca manual dari perintah Linux dengan man. Maka kita dihadapkan pada pilihan opsi, manual mana yang akan ditampilkan. Hal ini berbeda dengan distro lain, yang tidak memiliki perilaku tersebut. Oleh karena itu, saya sebut itu menjadi tidak lazim. Untuk mengatasi ketidak laziman tersebut, kita bisa lakukan dengan cara menambahkan dua buah kode berikut pada file .bashrc MAN_POSIXLY_CORRECT=1 export MAN_POSIXLY_CORRECT Selain itu, kita bisa juga gunakan comman info sebagai pengganti man. Hal ini bisa dilakukan dan langsung muncul manual command yang diminta. Dari sisi keamanan, secara default ia sudah mengaktifkan firewall-nya

Java Tutorial Getting Started

Baru saja menyelesaikan Getting Started, meliputi: Your First Cup of Java The Java Phenomenon The “Hello World” Application The “Hello World” Applet Common Problem (and Their Solution) Yang dipelajari: Java 2SE version 1.4.2 Result: Good job. There is no error found!

Visual Studio Code Untuk Belajar Python, C, C++ dan C#

Setelah mencari IDE (Integrated Development Environment) apa yang terbaik untuk mendevelop Python, Akhirnya saya mendapatkan pencerahan setelah menemukan Visual Studio Code . Rupanya ada perbedaan antara IDE dengan Editor. Bila Editor adalah semacam text editor saja, seperti notepad++, Emacs, vim, maka IDE adalah editor + compiler. Oleh karena itu, maka IDE biasanya lebih berat dalam hal performance. Karena memang membundle editor + compilernya. Secara default, Visual Studio Code didesain bagi pengembang aplikasi web, yang meliputi html, css, java script, type script. Jadi untuk mendevelop bahasa pemrograman seperti Python, perlu sedikit cara agar bisa digunakan juga sebagai compiler. Setting Python Tekan F1, lalu ketik Task: Configure Taks Runner. Kemudian gantilah "command" : "python.sh", "isShellCommand" : true, "showOutput" : "always", "args" : ["{$file}"] Itu artinya bila kita menjalankan task runner (run