Dengan mengharap ridha
Allah, saya menyatukan tulisan-tulisan lama saya menjadi satu dalam rangka
membantu saudara-saudara yang sedang belajar perintah shell atau perintah
terminal di Linux. Pada awalnya saya berpikir lebih baik dipisah-pisah tetapi
akhirnya saya menyerah, lebih gampang kalau dijadikan satu soalnya cukup sulit
dibaca/ditulis kalau terpisah-pisah. Tulisan ini akan menjelaskan shell
berikut perintah-printahnya yang saya jadikan bab-bab kecil. Tulisan ini
terbatas sekali dengan pengalaman saya dan mohon maaf jika ada yang kurang.
Semoga Allah menolong saya mengikhlaskan niat dan semoga ini dapat dimanfaatkan
semua saudaraku di seluruh dunia.
Perkenalan
Ini adalah sebuah
artikel tutorial berseri tentang shell Linux. Yang akan dibahas dalam
artikel ini adalah penerapan perintah-perintah shell dalam sistem
operasi. Artikel berseri ini ditujukan bagi siapa saja. Yang pertama ini berisi
perkenalan tentang apa itu shell. Yang kedua berisi konsep-konsep dasar shell.
Yang ketiga adalah pengingat untuk hal-hal yang patut diketahui ketika Anda
menerapkan tutorial shell kami ini. Mulai yang keempat, tutorial inti
kami berikan. Semoga artikel ini bermanfaat.
Kami berusaha
menuliskan apa yang telah kami ketahui tentang shell. Karena penerapan shell
bisa sangat luas dan kami masih baru belajar, kami hanya dapat memberikan
sedikit. Anda dapat melakukan sendiri penjelajahan lebih jauh.
Pengertian
Shell ( dengan nama lain command interpreter)
adalah program yang menyediakan antarmuka untuk pengguna sistem operasi.
Program antarmuka ini bertugas menerjemahkan perintah-perintah dari pengguna ke
sistem operasi. Wujud dari program antarmuka ini ada dua, yaitu berbasis teks
(CLI/Command Line Interface) dan berbasis grafis (GUI/ Graphical User
Interface). Demikian secara umum pengertian shell.
Shell yang akan dibahas pada artikel tutorial ini
adalah shell CLI di Linux. Mengapa kita membahas shell CLI?
Karena dua alasan, yaitu ia lebih cepat daripada shell GUI dan ia mampu
melaksanakan perintah-perintah dasar yang tidak semuanya bisa dilakukan lewat shell
GUI. Lebih cepat karena shell CLI tidak perlu banyak
interpretasi/penerjemahan instruksi ke kernel daripada shell GUI. Lebih
mampu karena memang semua perintah yang kita akses lewat shell GUI
diinterpretasikan/diterjemahkan dulu ke perintah CLI lalu diserahkan ke kernel
untuk diproses tetapi tidak semua perintah shell CLI dimiliki oleh shell
GUI. Inilah keunggulan shell CLI yang menjadikannya patut dipelajari.
Contoh Shell
Untuk shell
CLI, di Windows kita mengenal Command Prompt (cmd.exe). Di dunia Linux, kita
mengenal ksh, csh, sh, fish, bash, dan lain-lain. Untuk shell GUI, kita
mengenal antarmukanya Windows Shell (explorer.exe) di Windows. Di dunia
Linux, kita mengenal Fluxbox, Enlightenment, GNOME, KDE, LXDE, dan XFCE sebagai
shell GUI.
Contoh shell di Linux,
yang CLI (bash) dan GUI (Lingkungan Destop GNOME).
Kegunaan Shell
Secara umum, shell
berguna sebagai penerjemah instruksi dari pengguna ke kernel. Secara khusus,
banyak sekali gunanya sampai tidak bisa disebutkan semua. Keberadaan shell
sangat penting bagi pengguna dalam pengoperasian sistem operasi. Sekadar
contoh, ketika berinteraksi dengan komputer, kita mungkin pernah melakukan
salin-tempel (copy-paste) berkas. Atau secara sederhana, menginstal program,
menjelajahi isi hard disk, menghapus berkas, membuat folder, dan
lain-lain. Itu semua kita lakukan dengan memerintah kernel. Nah, yang
menerjemahkan perintah-perintah itu kepada kernel adalah shell. Semua
instruksi yang kita berikan kepada kernel diterjemahkan dulu oleh shell.
Jadi, shell selalu berperan dalam tiap-tiap perintah yang kita berikan
kepada sistem operasi.
Salah satu kegunaannya
(shell GUI) yang lain adalah menyediakan antarmuka yang mewakilkan
perintah-perintah CLI dalam wujud tulisan dan gambar. Secara sederhana, jika
kita sekarang memakai sistem operasi dengan prinsip ‘klik dan jalankan’ (atau
jika kita kini menjalankan program dengan memakai menu-menu yang tinggal
diklik) maka bisa dipastikan itu memakai shell GUI. Kegunaan shell
GUI itu untuk apa? Tidak lain adalah menyederhanakan kerumitan CLI yang
akhirnya berimbas pada kemudahan penggunaan. Contohnya: menyunting video akan
jauh lebih mudah dengan memakai GUI daripada mengetik perintah-perintah dengan
CLI.< 7 April 2011: 19.33>
Di Mana Harus Memulai
Belajar?
Artikel tutorial ini
dibuat berdasarkan percobaan dengan bash di Ubuntu 10.10. Anda dapat mengakses
bash lewat Terminal di Applications > Accessories > Terminal. Anda
yang tidak memakai Ubuntu pun bisa mempraktikkan ini dengan memakai shell
yang ada. Tidak masalah meskipun Anda tidak memakai bash karena
perintah-perintah dasar Linux itu sama. Sekadar info, istilah terminal
dipakai secara umum untuk perangkat yang berfungsi sebagai tempat input maupun
output. Terminal yang digunakan untuk mempraktikkan tutorial yang akan datang
adalah GNOME Terminal. Terminal ini hanya tampilan luar shell-nya saja. Anda
pun bisa mengakses shell-nya lewat Ctrl+Alt+FAngka (misalnya Ctrl+Alt+F1).
Linux biasanya menyediakan 6 shell CLI plus 1 shell GUI yang
semuanya bisa berjalan bersama-sama. Dan semuanya bisa diakses dari F1 sampai
F7. Sebaiknya Anda memulai dengan Terminal saja dulu agar bisa menyambi pekerjaan
lainnya.
Konsep-konsep Dasar
Case Sensitive
Shell di Linux
membedakan input antara huruf besar dan huruf kecil. Sehingga linux tidak sama
dengan Linux dan tidak sama juga dengan LiNuX. Sifat seperti itu dinamakan case
sensitive. Jadi, Anda harus benar-benar teliti dalam menuliskan nama file,
direktori, atau perintah.
Direktori
Nama lainnya adalah
folder. Direktori adalah tempat maya di dalam sistem berkas yang menampung file
atau direktori lainnya. Contoh penulisan alamat direktori yang umum dari shell
di Linux adalah:
/home/master/Videos/
yang bermakna /
sebagai direktori tertinggi, master sebagai direktori di bawah /, dan Videos
sebagai direktori di bawah master. Ciri khas sistem operasi Unix-like seperti
Linux adalah dipergunakannya / (slash) sebagai pemisah antardirektori. Sistem
operasi MS-DOS dan Windows menggunakan (backslash) sebagai pemisah.
Struktur prompt
Anda akan menemukan
yang seperti ini di shell:
Apa maksudnya?
Maksudnya sebagai berikut.
master: adalah
username Anda.
@: penanda bahwa Anda
sekarang sedang login pada suatu mesin.
localhost: nama mesin.
master@localhost:
penanda lokasi absolut, bahwa Anda login di dalam sebuah mesin.
:: pemisah antara
penanda lokasi absolut (yang menjadi induk) dan penanda lokasi relatif (yang
bisa diubah).
~: sebenarnya
/home/username-anda. Ini penanda lokasi relatif Anda, yaitu lokasi yang dapat
Anda ubah-ubah dalam satu mesin. Ini akan berganti dengan sendirinya ketika
Anda berpindah ke direktori lain.
$: penanda bahwa Anda
sedang login sebagai pengguna biasa. Jika Anda login sebagai root, tandanya
menjadi #.
Root dan nonroot
Ada dua jenis pengguna
di dunia Linux, root dan nonroot. Root, secara kasar adalah administrator
sistem. Jadi, ia memiliki otoritas tertinggi dan mampu melakukan apa pun
terhadap sistem. Sedangkan nonroot adalah pengguna biasa yang otoritasnya
terbatas (tidak bisa melakukan instalasi, masuk ke sistem, mengubah isi sistem,
menghapus isi sistem, dkk.) Anda akan berlatih memerintah dengan shell sebagai
root dan nonroot. Ingat, login sebagai root berbahaya! Kalau sembarangan, bisa
jadi satu sistem terhapus karena otoritas root yang luar biasa.
Secara default, Ubuntu
tidak mengizinkan Anda memasuki shell sebagai root. Anda masuk sebagai pengguna
biasa. Untuk bisa menjadi root, Anda harus menyetel sandinya dahulu. Berikut
caranya:
$ sudo passwd
Enter new UNIX
password:
Masukkan saja sandi
yang Anda inginkan. Jika selesai, Anda bisa menjadi root dengan perintah
$ su
Cara menggunakan shell
Ketikkan perintah lalu
tekan enter.
Penulisan perintah
Anda akan terbiasa
memerintah dengan format demikian.
$ perintah [opsi]
[file]
# perintah [opsi]
[file]
$ adalah tanda bagi
pengguna biasa dan # adalah tanda bagi pengguna super/root. Tanda kurung siku
di atas hanya penanda, jadi mereka tidak ikut ditulis dalam perintah. Contoh
mudahnya perintah rm sebagai pengguna biasa
$ rm -r /home
yang berarti menghapus
direktori /home beserta isinya.
Anda pun boleh
menggunakan lebih dari satu opsi atau menggabungkannya. Contoh
$ rm -i -r /home
$ rm -ir /home
Keduanya bermaksud
sama, yaitu menghapus direktori /home beserta isinya (-r) secara interaktif
(-i). Contoh-contoh ini berlaku untuk semua perintah shell.
Yang Patut Diketahui
Ketika belajar memberi
perintah lewat shell, mungkin Anda akan mengalami kesulitan. Artikel ini
memuat cara-cara umum untuk menyelesaikan masalah yang biasa ditemui itu. Dan
kami akan jelaskan gaya kami dalam menyusun tutorial shell.
Manual dan help
Jika Anda tidak
mengetahui fungsi dari suatu perintah, misalnya ls, cukup berikan perintah ini:
man ls
dan Anda akan melihat
manual dari perintah ls di layar. Begitu pula dengan perintah lainnya. Untuk
keluar dari manual, tekan Q. Anda pun bisa melihat berkas bantuan suatu
perintah, misalnya ls, dengan perintah ini:
ls –help
Perintah ini dapat
Anda laksanakan untuk semua perintah dan semua program (yang sudah menyertakan
manual/help dalam sistem).
Opsi perintah
Hampir semua perintah
di shell memiliki opsi. Opsi adalah parameter tertentu yang membuat
perintah melakukan suatu hal yang khusus. Contohnya -a atau –all adalah opsi
untuk ls yang fungsinya sama, memperlihatkan semua berkas tanpa terkecuali.
Opsi biasanya diawali dengan sebuah atau dua buah tanda minus. Opsi ditulis
setelah perintah dan harus dipisahkan oleh spasi (boleh lebih dari satu).
Contoh penggunaan opsi untuk perintah ls adalah
ls -a /home
Kebiasaan umum shell
- Anda dapat mengulang perintah yang sudah pernah Anda
lakukan dengan tombol panah atas atau bawah di kibor. Ini berguna sebagai
pintasan agar Anda tidak perlu mengulang perintah-perintah yang sama.
- Anda dapat memasukkan alamat/nama berkas yang ada di
dalam direktori saat ini sebagian saja dan shell akan melengkapinya
secara otomatis, dengan mengetik beberapa karakter awal namanya lalu
menekan Tab.
- Anda dapat menjalankan program yang telah terinstal
dalam sistem dengan mengetik namanya. Contohnya shotwell.
Gaya kami menulis
Karena beberapa
keterbatasan, kami membatasi pengunggahan skrinsot ke server TeknoPLASMA. Jadi,
kami berusaha menyalin-rekat teks di shell ke artikel-artikel tutorial
ini sebagai penjelasan. Kami berusaha menggunakan font yang berbeda
dengan font paragraf untuk perintah-perintah. Kami berikan hal-hal umum
(seperti perkenalan, konsep, dan hal-hal lain) pada artikel-artikel awal, dan
pada artikel-artikel tutorialnya kami tidak lagi menjelaskan hal-hal umum
tersebut. Anda yang membaca tutorial, silakan merujuk ke artikel-artikel awal
itu jika mengalami kesulitan.
$ dan #
Kami akan membedakan
perintah untuk pengguna biasa (nonroot) dengan pengguna super (root). Contoh
penulisan kami demikian:
$ chmod +x run.exe
yang berarti Anda
harus menjalankan perintah sebagai pengguna biasa ($), dan
# chmod +x run.exe
yang berarti Anda
harus menjalankan perintah sebagai pengguna super/root (#). Sekali masuk shell,
Anda telah menjadi pengguna biasa. Cara menjadi root telah dijelaskan pada
artikel mengenai konsep-konsep dasar.
Perintah-perintah
Dasar Terminal
Berikut ini saya beberkan
perintah-perintah dasar terminal yang saya ketahui dan sering saya gunakan di
Linux.
ls dan cd
Ada perintah list (ls)
dan change directory (cd). Secara sederhana, ls dipakai untuk melihat isi suatu
direktori dan cd dipakai untuk berpindah dari suatu direktori yang sedang
dipakai ke direktori lainnya. Penerapan ls dan cd secara luas dapat Anda
temukan di program manajer berkas Anda (entah itu Windows Explorer, Nautilus,
Konqueror, atau lainnya). Kita langsung praktikkan.
Misalnya sekarang Anda
masuk shell dan prompt menunjukkan demikian:
master@master:~$
~ itu artinya Anda
yang sedang menggunakan shell sedang berada di direktori /home/master. Cobalah
perintah ls dan lihat hasilnya.
master@master:~$ ls
Destop
examples.desktop gstreamer0.10-ffmpeg Publik Unduhan
Dokumen Gambar Musik
Templat Video
Sekarang cobalah
perintah ls -l.
master@master:~$ ls -l
total 40
drwxr-xr-x 2 master
master 4096 2011-05-19 17:59 Destop
drwxr-xr-x 2 master
master 4096 2011-05-20 07:59 Dokumen
-rw-r–r– 1 master
master 179 2011-05-19 17:55 examples.desktop
drwxr-xr-x 2 master
master 4096 2011-05-21 18:26 Gambar
drwx—— 2 master master
4096 2011-02-14 08:47 gstreamer0.10-ffmpeg
drwxr-xr-x 2 master
master 4096 2011-05-19 17:59 Musik
drwxr-xr-x 4 master
master 4096 2011-05-21 16:47 Publik
drwxr-xr-x 10 master
master 4096 2011-05-19 23:11 Templat
drwxr-xr-x 23 master
master 4096 2011-05-19 22:58 Unduhan
drwxr-xr-x 2 master
master 4096 2011-05-19 17:59 Video
Lalu cobalah perintah
ls -a.
master@master:~$ ls -a
. .gconf .profile
.. .gconfd Publik
.bash_history
.gksu.lock .pulse
.bash_logout .gnome2
.pulse-cookie
.bashrc
.gnome2_private .recently-used.xbel
.cache .gstreamer-0.10
.shotwell
.config
gstreamer0.10-ffmpeg .shutter
.dbus .gtk-bookmarks
.sudo_as_admin_successful
Destop .gvfs Templat
.dmrc .ICEauthority
.themes
Dokumen .icons
.thumbnails
emblem-sem.png .local
Unduhan
.esd_auth .mozilla
Video
.evolution Musik
.xsession-errors
examples.desktop
.nautilus .xsession-errors.old
.fontconfig
.openoffice.org
Gambar .pki
Anda juga bisa
mengetahui isi direktori di luar direktori prompt Anda sekarang dengan perintah
semisal ls /boot.
master@master:~$ ls
/boot
abi-2.6.35-22-generic
memtest86+_multiboot.bin
config-2.6.35-22-generic
System.map-2.6.35-22-generic
grub
vmcoreinfo-2.6.35-22-generic
initrd.img-2.6.35-22-generic
vmlinuz-2.6.35-22-generic
memtest86+.bin
Penjelasan
Perintah ls bersama
opsinya dapat dipakai untuk memperoleh informasi berkas apa saja yang ada dalam
suatu direktori. Dengan memakai opsi, kita dapat memperluas fungsi ls misalnya
untuk mengetahui tanggal modifikasi berkas, ukuran berkas, menentukan tampilan
informasi, memberi warna pada teks, menampilkan berkas tersembunyi, menampilkan
berkas berdasarkan jenis, dan lain-lain. Sedangkan perintah cd digunakan untuk
berpindah dari satu direktori ke direktori lain.
mkdir
Cobalah di Home Anda
$ mkdir belajar
dan akan tercipta
sebuah folder bernama belajar di Home Anda.
Catatan: syarat
melakukan mkdir adalah belum ada folder dengan nama yang sama dengan yang akan
dibuat dalam folder yang dikenai perintah.
rm
Kali ini kita akan
belajar menghapus dengan rm (remove). Cobalah hapus direktori belajar dari
pelajaran membuat direktori.
$ rm
/home/master/belajar
Perintah ini bisa
dipakai untuk menghapus direktori maupun file. Cobalah membuat sebuah file odt
di direktori Home Anda, misalkan namanya belajar.odt
$ rm
/home/master/belajar.odt
Syarat berlakunya rm
untuk menghapus direktori adalah folder itu kosong. Jika berisi, harus memakai
opsi -r (rekursif). Contoh, buat dahulu sebuah folder di direktori Home Anda,
lalu masuk dan buat lagi folder lain (misalnya belajar-02). Bisa juga Anda
masukkan satu file tak terpakai misalnya belajar.odt. Jadi, isi folder tersebut
(misal namanya belajar) adalah direktori belajar-02 dan file belajar.odt.
Cobalah
$ rm -r
/home/master/belajar
dan direktori belajar
beserta isinya akan terhapus.
Untuk lebih
berhati-hati, gunakan opsi -i (interactive) agar kita ditanyai dulu sebelum
menghapus. Contohnya
$ rm -ir
/home/master/belajar
Anda bisa menjawab
setiap pertanyaan dengan y atau n lalu eksekusi dengan menekan enter. Opsi -i
ini berguna ketika kita akan menghapus semua file dalam direktori yang salah
satunya sangat penting, agar isi yang penting tidak ikut hilang.
halt
Kali ini kita belajar
mematikan komputer dengan halt. Cobalah
$ sudo halt
Fungsi halt adalah
menghentikan sistem. Perintah ini langsung mematikan komputer tanpa menentukan
jangka waktu. Anda hanya bisa melakukan halt ketika menjadi root.
shutdown
Kita bisa mematikan
komputer dengan shutdown. Fungsinya sama dengan halt, bedanya ia bisa dilakukan
dengan menentukan jangka waktu. Cobalah
$ sudo shutdown 21.00
dan komputer Anda akan
mati pada jam 21.00. Format opsi yang bisa diterima oleh shutdown adalah +m
untuk m yang bisa Anda ganti dengan bilangan menit yang Anda mau dan jj:mm
untuk menentukan jam berapa komputer akan dimatikan. Contoh untuk opsi pertama
$ sudo shutdown +60
Ini akan mematikan
komputer satu jam ke depan.
reboot
Kita bisa melakukan
restart komputer dengan reboot. Cobalah
$ sudo reboot
Perintah ini juga
langsung me-restart komputer. Anda juga hanya bisa melakukannya ketika menjadi
root.
poweroff
Sama dengan halt.
eject
Sekarang kita
mempelajari perintah eject. Secara sederhana, eject dipakai untuk mencabut
suatu perangkat dari sistem. Dengan opsi, eject dapat pula dipakai untuk
mengaitkan kembali perangkat yang sudah dicabut. Kita langsung praktikkan.
Untuk CD-ROM
Cobalah perintah eject
cdrom. Perangkat pembaca CD Anda akan terbuka bakinya. Lalu cobalah eject -t
cdrom, baki itu akan masuk kembali.
Cobalah perintah eject
-v cdrom. Anda akan melihat langkah-langkah yang dilakukan shell untuk
membuka baki CD-ROM Anda. v di sini singkatan dari verbose.
Jika Anda sudah
melihat manual dari eject, Anda akan menemukan opsi -i on|1|off|0. Opsi ini
berguna ketika Anda membawa laptop yang masih menyala di dalam tas dan Anda
tidak ingin CD-ROM terbuka secara tidak sengaja karena tombolnya terpencet oleh
sesuatu. Cara menulisnya adalah eject -i on atau eject -i 1 untuk mengunci, dan
eject -i off atau eject -i 0 untuk membuka. Tanda pipa (|) berarti ‘atau’.
Catatan: tidak semua
perangkat optik mendukung perintah eject.
Untuk Flash Disk
Jika flash disk
yang Anda masukkan bernama ARASAFAREL, maka perintah eject-nya adalah
eject ARASAFAREL
Memang sesederhana
itu.
0 comments:
Post a Comment