Thursday 12 March 2009



Rabu, 11 Maret 2009

Dikit Dasar Linux

Linux sebuah Operating System (OS) turunan dari UNIX, merupakan implementasi independent standart IEEE untuk OS yang bernama POSIX (Portable Operating System Interface). OS merupakan perangkat lunak (software)yang mengatur kordinat kerja antar semua perlengkapan perangkar keras (hardware) pada sebuah komputer. Linux memiliki kemampuan berbasis ke standart POSIX, meliputi true-multitasking, virtual memory, shared libraries, demand loading, proper memory management, dan multiuser. Seperti OS UNIX lainnya, Linux juga mendukung banyak software, dari TEX, Xwindow, GNU C/C++ ke TCP/IP.

***

Linux adalah sistem operasi yang tersebar secara luas dengan bebas di bawah lisensi GNU General Public License (GPL), Linux menjadi spesial dengan kode program (source code) Linux yang tersedia.

***

Linux pertama kali dibuat oleh Linus Torvalds, di Universitas Helsinki, Finlandia. Linux di kembangkan lagi oleh para programmer dan hacker UNIX dari seluruh dunia. Linux bisa di dapat dari distribusi-distribusi yang umum di gunakan, RedHat, Mandrake, Debian, Slackware, Caldera, Stampede Linux, TurboLinux. Menggunakan kernel yang sama, yaitu Linux kernel, perbedaannya pada paket aplikasi yang disertakan, penyusunan direktori, init style, dll.

Linux merupakan proyek hobi yang di kerjakan oleh Linus Torvalds yang memiliki inspirasi dari MINIX. Dan MINIX adalah sistem UNIX kecil yang dikebangkan oleh Andrew S. Tanembaum, seorang professor yang menggeluti penelitian OS dari Vrije Universuty , Belanda.
Dan kini Linux merupakan sistem UNIX yang lengkap, memiliki kemampuan untuk penggunaan jaringan (networking), pengembangan software, dan penggunaan sehari-hari.

Linux juga dikenal sebagai GNU/Linux, OS kompatible dengan UNIX.
Berisi kernel Linux dan kumpulan lengkap aplikasi dan program-programnya. Dengan source code (code yang bia di baca manusia) atau pun binary (bisa di baca oleh mesin), sehingga program tersebut dapat di ubah dan dikembangkan. Linux memiliki pengembangan dan support terbuka.

Linux dapat berinteraksi dengan operating sistem lain, dengan kompatibilitas file dan filesystem, network, dan simulasi operating sistem.
Linux bisa menggunakan file-file operating sistem lain. Sehingga Harddisk maupun flash dari operating sistem lain dapat di baca juga di tulis oleh Linux.
Untuk networkig, Linux juga bisa bekerja sama dengan baik pada OS lain.
Linux juga mendukung berbagai perangkat keras PC, disk IDE, EIDE, SCSI, MFM, RLL, EDSI, tape dan CD-ROOM drive SCSI dan EIDE, sound cards, video cards, motherboard chipsets, dll.

***

Device atau perangkat Linux umumnya muncul sebagai file. Sehingga program-program dapat membaca dan menulis ke device-device.
Hampir semua device dapat diakses oleh semua bahasa pemrograman tanpa ketergantungan pada Aplication Programming Interface (API).

Virtual memory membuat Linux mampu menjalankan program-program yang lebih dari seharusnya. Virtual memory pada Linux melebihi penggunaan sederhana dari swap space, program yang berjalan lebih dari sekali akan masuk ke memori. dan sistem virtual memory di gunakan untuk menggabungkan satu program image (text area) dengan banyak data images. Mengakibatkan penggunaan memori yang optimal, tetapi tetap memproteksi ruang memori.

Linux dapat berjalan di mesin sekecil 3Com Palm Pilot, Digital Itsy, dan mesin sebesar Beowulf Clusters.

Linux memiliki stabilitas yang tinggi.
Jika dikonfigurasi dengan benar, sistem akan hidup hingga hardware tidak memadai atau rusak, tidak ada tegangan listrik atau sistem di matikan.
Linux juga mempunyai file permission (ijin file) yang mencegah pengubahan atau penghapusan file tanpa ijin pemilik.

Dua bagian Linux (Linux server - Linux client) dapat berjalan pada satu komputer atau pada komputer yang berlainan.

Hampir semua informasi configurasi Linux disimpan pada file teks, sehingga dengan mudah di olah atau di ubah dengan script atau secara manual.

***

Dalam penataan dan perorganisasian direktori dan file root direktori adalah tingkat tertinggi, (/) mengandung sejumlah file penting, bin/, boot, dev/, etc/. home/, lib/, lost+found/, mnt/, proc/, sbin/, tmp/, usr/, dan var/.

/bin dan /sbin
Direktori ini menyimpan program-program penting yang di gunakan sebagai pemeliharaan sistem. File program yang tersimpan berupa file binary yang dapat di eksekusi (executable).

login
Shell
(bash, ksh, csh)
file utility (cp, mv, rm.in, tar)
editor (ed, vi)
filesystem utility (dd, df, mount, umount, syns)
system utility (uname, hostname, arch)
GNU utility (gzip, gunzip)

Pada direktori /sbin adalah program pemeliharaan atau sistem program. pada /sbin hanya dapat di eksekusi oleh root.

fsck, fdisk, mkfs, shutdown, lilo, init

/etc
Direktori ini menyimpan file-file konfigurasi systemwide yang dibutuhkan oleh program-program lainnya.

passwd, shadow, fstab, hosts, motd, profile, shell, services, lilo.conf

/home
Menyimpan direktori masing-masing user yang ada di sistem, HTTPD.

/mnt
Direktori ini mengandung subdirektori yang merupakan sebuah mount poin untuk device tertentu. cdroom/, floppy/, zip/.

/tmp dan /var
/tmp menyimpan file-file sementara (temporary), biasa juga di manfaatkan oleh program instalasi. Isi direktori dapat di hapus tanpa menimbulkan pengaruh apapun.

/var menampung varying content atau berbagai file.
catman/, lib/, local/, lock/, log/, nis/, preserve/, run/, spool/ dan tmp/.

/var/log adalah direktori yang sangat familiar bagi user, karena di dalamnya tersimpan pesan-pesan dari sistem.

/usr
Berisi semua program dan file yang langsung berhubungan dengan user dalam sistem.
bin/, dict/, doc/, info/, lib/, libexec/, local/, man/, sbin/, share/, src/, etc/, dll.

***

Command line atau baris perintah pada prompt, diakhiri dengan enter untuk mengeksekusi perintah tersebut. Baris perintah adalah cara efisien untuk melakukan suatu pekerjaan.

~ man ls
= akan menampilkan bagaibana cara penggunaan perintah ls secara lengkap.

&
= perintah ini dipakai di belakang perintah lain dan menjalankannya di bacground. Untuk membebaskan shell agar bisa menjalankan proses-proses lain.

adduser

= dilakukan oleh root untuk menambahkan account user yang baru.

alias
= memberi nama lain dari sebuah perintah.
~ alias dir=ls = untuk menyamakan perintah dir dan ls

untuk mengetahui perintah-perintah yang memiliki nama lain dengan alias
dan yang tidak memiliki nama lain dengan unalias.

bg
= memaksa sebuah proses yang dihentikan sementara (suspend), dengan Ctrl-z untuk membebaskan shell, dan bg agar berjalan pada background.

cat
= menampilkan isi dari sebuah file di layar.
~ cat nama_file

cd
= berpindah direktori, atau masuk ke sebuah direktofi
~ cd Documents/music = masuk ke direktori music.

chgrp
= mengubah kepemilikan kelompok file atau direktori, memberi ijin pada kelompok atau grup agar dapat mengakses suatu file.
~ chgrp group file

chmod
= menambah dan mengurangi ijin untuk mengakses file atau direktori.
Menggunakan sistem numeric coding atau sistem letter coding.
r = read, w = write dan x = execute.

Dengan menggunakan letter coding, dapat merubah permission/perijinan untuk masing-masing u (user), g (group), o (other), dan a (all), dengan tanda (+) untuk memberi ijin dan (-) untuk mencabut ijin.
Untuk memberi ijin read (baca) execute (eksekusi) file xxx_a pada user dan group dengan
~ chmod ug+rx xxx_a
~ chmod g-wx xxx_b
untuk mencabut ijin write dan execute.

chown
= merubah userID sebuah file atau direktori
~ chown userID file

clear
= membersihkan layar.

cp
= mencopy file.
~ cp source source_copy = mencopy file dari source ke source_copy.

date
= melihat time/pengaturan waktu.

df
= disk free, menampilkan ruang hardisk yang tersisa.

du
= disk usage, untuk menampilkan pemakaian hardisk pada masing-masing partisi.

fg
= mengembalikan suatu proses yang dihentikan sementara dengan perintah bg sebelumnya agar kembali berjalan di foreground.

find
= mencari sebuah file.
~ find / -name file.doc = untuk mencari file.doc yang di mulai dari direktori root (/).

grep
= global regular expresion adalah perintah untuk mencari file yang mengandung teks dengan kriteria yang ditentukan.
~ grep teks/kriteria file

gzip
= adalah software kompresi zip versi GNU, untuk mengkompresi sebuah file.
~ gzip nama_file

halt
= untuk mematikan sistem atau shutdown, perintah ini bisa di jalankan jika login sebagai root.

head
= melihat isi file dari baris depan, atau melihat isi dari awal sebuah file.
~ head nama_file

hostname
= menampilkan host atau domain name sistem dan bisa juga untuk mengesset nama host sistem.
~ hostname
localhost.localdomain


kill
= untuk mengirimkan sinyal ke sebuah proses yang ditentukan untuk menghentikan proses.
~ kill sinyal pid = pid adalah nomor proses yang akan di hentikan.

login
= masuk ke sistem dengan memasukkan login ID, atau untuk berpindah dari satu user ke user lain.

logout
= keluar dari sistem.

ls
= menampilkan isi dari sebuah direktori.

man
= untuk menampilkan manual page atau teks yang menjelaskan secara detail untuk menggunakan sebuah perintah.
~ man perintah

mesg
= digunakan oleh user untuk memberikan ijin kepada user lain menampilkan pesan di layar terminal.
~ mesg y = y maka user lain dapat menampilkan pesan di layar terminal.
~ mesg n = n maka user lain tidak dapat menampilkan pesan di layar terminal.

mkdir
= membuat direktori lain.

more
= mempaging halaman atau melihat isi file
~ more nama_file

mount
= untuk mount filesystem ke suatu direktori atau moun-point yang ditentukan. login sebagai root untuk menjalankan perintah ini.

mv
= untuk memindahkan file dari satu direktori ke direktori lain.
~ mv source target = memindahkan file source ke target.

passwd
= digunakan untuk mengganti password

ps -aux | grep paket
= mengecek service daemond, sudah dijalankan atau belum.
maka paket-paket yang di tentukan dan sedang berjalan akan di tampilkan.

pwd
= menampilkan nama direktori di mana pengguna saat itu berada.

rm
= untuk menghapus file.

rmdir
= menghapus direktori.

rpm -qa | grep paket
= mengecek paket sudah terintall atau belum.
maka paket-paket yang di tentukan akan di tampilkan.

shutdown
= untuk mematikan sistem.
~ shutdown -h now = untuk mematikan sistem
~ shutdown -r now = untuk merestart sistem (Ctr-Alt-Del),
atau
~ /sbin/reboot
~ /sbin/shutdown


su
= login sebagai root.

tail
= menampilkan baris terakhir dari file.
~ tail jumlah_baris file

talk
= mengadakan percakapan melalui terminal.

tar
= menyimpan dan mengekstrak file.

unmount
= untuk unmount file system dari mount-pointnya. Perintah ini adalah kebalikan dari perintah mount.
~ unmount file_system = setelah proses berjalan, maka direktori sebagai mount-point tidak bisa digunakan lagi.

unalias
= untuk membatalkan sebuah perintah yang memiliki nama lain atau alias.

uname
= untuk melihat nama dari program.

unzip
= untuk mengekstrak atau mengurangi file yang di kompres denga zip.
~unzip nama_file

uptime
= mengetahui waktu dan seberapa lama mesin telah hidup.

wget
= mendownload dengan URL.
~ wget URL

wall
= mengirimkan pesan dan menampilkan nya di terminal setiap user yang sedang login.

which
= untuk mengecek paket terletap pada direktori apa.
~ which nama_paket

whereis
= mengecek dimana sebuah paket terletak.
~ whereis nama_paket

who
= untuk menampilkan siapa saja yang sedang login.

xhost
untuk memberi akses (xhost +) atau menghapus akses (xhost -) host atau user ke sebuah server.

***

Ctrl-Alt-Backspace = Logout dari xwindow tanpa confirmasi.

Ctrl-Alt-Delete = Menjalankan menu end session dengan piliha Logout, Halt, dan Reboot.

Ctrl-Alt-Esc = Menjalankan xkill, menutup secara paksa suatu aplikasi.

Ctrl-Esc = Menjalankan ps -aux secara grafikal.

Ctrl-Alt-Fn = n mempunya fariabel 1 - 6. Untuk masuk ke CLI (Command Line Interface) atau text mode. Gunanya untuk ketika xwindow bermasalah kemudian masuk ke modus ini untuk menutup aplikasi yang tidak jalan.

Ctrl-D = Exit, identik dengan perintah exit di CLI.

Ctrl-Z = Stop, ketika akan menghentikan suatu job.

Ctrl-SysRq-b = Reboot, digunakan ketika Linuxbox terjadi crash.