Selasa, 26 April 2011

Perintah Dasar Linux

Perintah untuk berbagai operasi dasar di sistem operasi linux, beserta penjelasannya, dapat saudara lihat pada tabel yang telah penulis susun sebagai berikut:
PerintahKeterangan
any_command --helpMenampilkan keterangan bantu tentang pemakaian perintah. "--help" sama dengan perintah pada DOS "/h".
lsMelihat isi file dari direktori aktif. Pada linux perintah dir hanya berupa alias dari perintah ls. Untuk perintah ls sendiri sering dibuatkan alias ls --color, agar pada waktu di ls ditampilkan warna-warna sesuai dengan file-filenya, biasanya hijau untuk execute, dsb.
ls -alMelihat seluruh isi file pada direktori aktif beserta file hidden, lalu ditampilkan layar per layar.
cd directoryChange directory. Menggunakan cd tanpa nama direktori akan menghantarkan anda ke home direktori. Dan cd - akan menghantarkan anda ke direktori sebelumnya.
cp source destinationMengopi suatu file
mcopy source destinationMengcopy suatu file dari/ke dos filesystem. Contoh <tt>mcopy a:autoexec.bat ~/junk . Gunakan man mtools untuk command yang sejenis : mdir, mcd, mren, mmove, mdel, mmd, mrd, mformat....
mv source destinationMemindahkan atau mengganti nama file
ln -s source destinationMembuat Simbolic Links, contoh <tt>ln -sf /usr/X11R6/bin/XF86_SVGA /etc/X11/X, membuat Simbolic link dari file XF86_SVGA ke X
rm filesMenghapus file
mkdir directoryMembuat direktori baru
rmdir directoryMenghapus direktori yang telah kosong
rm -r files(recursive remove) Menghapus file, direktori dan subdirektorinya. Hati-hati menggunakan perintah ini apabila anda login sebagai root, karena root dengan mudah dapat menghapus seluruh file pada sistem dengan perintah di atas, tidak ada perintah untuk undelete di Linux
moreUntuk melihat isi suatu file, dengan tambahan perintah more, maka isi file tersebut ditampilkan layar per layar.
less filenameMelihat suatu file layar per layar, dan tekan tombol "q" apabila ingin keluar,
pico filenameEdit suatu text file.
pico -w filenameEdit suatu text file, dengan menonaktifkan fungsi word wrap, sangat berguna untuk mengedit file seperti /etc/fstab.
lynx file.htmlMelihat file html atau browse ke net dengan text mode, dimana gambar/image tidak dapat ditampilkan, tapi lynx adalah suatu browser yang sangat cepat, sangat berguna bila anda hanya menginginkan suatu artikel tanpa image.
tar -zxvffilename.tar.gzMeng-untar sebuah file tar sekaligus meng-uncompress file tersebut (*.tar.gz atau *.tgz), untuk meletakkannya direktori yg diinginkan tambahkan option -C direktori, contoh tar -zxvf filename.tar.gz -C /opt (meletakkan file tersebut di direktori /opt
tar -xvffilename.tarMeng-untar sebuah file tar yang tidak terkompress (*.tar).
gunzipfilename.gzMeng-uncompress sebuah file zip (*.gz" or *.z). dengan menggunakan gzip (juga zip atau compress) jika anda menginginkan mengompress file.
bunzip2filename.bz2Meng-uncompress file dengan format (*.bz2) dengan utiliti "bzip2", digunakan pada file yang besar.
unzipfilename.zipMeng-uncompress file dengan format (*.zip) dengan utiliti "unzip" yang kompatibel dengan pkzip for DOS.
find / -name"filename"Mencari "namafile" pada komputer anda dimulai dengan direktori /. Namafile tersebut mungkin saja berisi wildcard (*,?).
locate filenameMencari file dengan string "filename". Sangat mudah dan cepat dari perintah di atas.
pineEmail reader yang sangat mudah digunakan, dan menjadi favorit banyak pemakai mesin Unix. Atau anda bisa pakai email yang sangat customize, yaitu mutt ,
talk username1Berbicara dengan keyboard dengan user lain yg sedang login pada mesin kita (atau gunakan talk username1@machinename</t> untuk berbicara dengan komputer lain). Untuk menerima undangan percakapan, ketikkan <tt>talk username2. Jika seseorang mencoba untuk berbicara dengan anda dan itu dirasakan mengganggu, anda bisa menggunakan perintah mesg n untuk menolak pesan tersebut. Dan gunakan perintahwho atau rwho untuk melihat siapa user yang mengganggu tersebut.
mcMenjalankan "Morton Commander" ... eh... salah maksudnya "Midnight Commander" sebagai file manager, cepat dan bagus.
telnet serverUntuk menghubungkan komputer kita ke komputer lain dengan menggunakan protokol TELNET. Gunakan nama mesin atau Nomor IP mesin, dan anda akan mendapatkan prompt login name dari mesin tersebut, masukkan passwordnya, oh ya .. anda juga harus punya account di mesin remote tersebut. Telnet akan menghubungkan anda dengan komputer lain dan membiarkan anda untuk mengoperasikan mesin tersebut. Telnet sangat tidak aman, setiap yang anda ketik menjadi "open text", juga dengan password anda! Gunakan ssh alih-alih telnet untuk mengakses mesin secara remote.
rlogin server(remote login) Menghubungkan anda kekomputer lain. Loginname dan password, tetapi apabila account anda tersebut telah dipakai, maka anda akan mendapatkan pesan kesalahan pada password anda. Sangat tidak aman juga, gunakan sshsebagai gantinya.
rsh server(remote shell) Jalan lain untuk menghubungkan anda ke remote machine. Apabila login name/password anda sedang dipakai di remote mesin tsb, maka password anda tidak akan berlaku. Idem dengan rlogin, gantikan dengan ssh.
ftp serverFtp ke mesin lain, ini sangat berguna untuk mengopy file ke/dari remote mesin. Juga tidak aman, gunakan scp dari keluarga ssh sebagai gantinya.
minicomProgram Minicom (dapat dikatakan seperti "Procomm/Hyperterminal for Linux").
./program_nameMenjalankan program pada direktori aktif, yang mana tidak terdapat pada PATH anda
xinitMenjalankan X-window server (tanpa windows manager).
startxMenjalankan X-window server dan meload default windows manager. Sama seperti perintah "win" under DOS dengan Win3.1
startx -- :1Menjalankan sesi X-windows berikutnya pada display 1 (default menggunakan display 0). Anda dapat menjalankan banyak GUI terminal secara bersamaan, untuk pindah antar GUI gunakan <Ctrl><Alt><F7>, <Ctrl><Alt><F8>, etc, tapi ini akan lebih banyak memakan memori.
xterm(pada X terminal) ,menjalankan X-windows terminal. Untuk keluar ketikkan exit
xboing(pada X terminal). Sangat lucu deh ...., seperti games-games lama .....
gimp(pada X terminal) Program image editor yang sangat bagus, bisa disamakan dengan Adobe Photoshop, yang membedakan adalah program ini gratis.
netscape(pada X terminal) menjalankan netscape, versi pada waktu tulisan ini dibuat telah mencapai versi 4.7
netscape -display host:0.0(pada X terminal) menjalankan netscape pada mesin yang aktif dan menampilkan outputnya pada mesin yang bernama host display 0 screen 0. Anda harus memberikan akses untuk mesin aktif untuk menampilkannya pada mesin hostdengan perintah xhost
shutdown -h now(sebagai root) Shut down sistem. Umumnya digunakan untuk remote shutdown. Gunakan <Ctrl><Alt> untuk shutdown pada konsol (dapat dijalankan oleh user).
haltreboot (sebagai root) Halt atau reboot mesin. Lebih simple dari perintah di atas.
man topicMenampilkan daftar dari sistem manual pages (help) sesuai dengan topic. Coba man man. lalu tekan q untuk keluar dari viewer. Perintah info topic Manual pages dapat dibaca dilhat dengan cara any_command --help.
apropos topicMenampilkan bantuan manual berdasarkan topik..
pwdMelihat direktori kerja saat ini
hostnameMenampilkan nama local host (mesin dimana anda sedang bekerja). Gunakan perintah netconf (sebagai root) untuk merubah nama host dari mesin tersebut, atau edit file /etc/hosts
whoamiMencetak login name anda
id usernameMencetak user id (uid) atau group id (gid)
dateMencetak atau merubah tanggal dan waktu pada komputer, contoh merubah tanggal dan waktu ke 2000-12-31 23:57 dengan perintah; date 123123572000
timeMelihat jumlah waktu yg ditangani untuk penyelesaian suatu proses + info lainnya. Jangan dibingungkan dengan perintah date
whoMelihat user yang login pada komputer kita.
rwho -aMelihat semua user yg login pada network anda. Layanan perintah rwho ini harus diaktifkan, jalankan setup sebagai root untuk mengaktifkannya.
finger usernameMelihat informasi user, coba jalankan; finger root
lastMelihat user sebelumnya yang telah login di komputer.
uptimeMelihat jumlah waktu pemakaian komputer oleh seseorang, terhitung proses reboot terakhir.
ps(=print status) Melihat proses-proses yang dijalankan oleh user
ps axuMelihat seluruh proses yang dijalankan, walaupun tanpa terminal control, juga ditampilkan nama dari user untuk setiap proses.
topMelihat proses yang berjalan, dengan urutan penggunaan cpu.
uname -aInformasi system kernel anda
freeInformasi memory (dalam kilobytes).
df -h(=disk free) Melihat informasi pemakaian disk pada seluruh system (in human-readable form)
du / -bh(=disk usage) Melihat secara detil pemakaian disk untuk setiap direktori, dimulai dari root (in human legible form).
cat /proc/cpuinfoCpu info. Melihat file pada /proc directori yang bukan merupakan file nyata (not real files).
cat /proc/interruptsMelihat alamat interrupt yang dipakai.
cat /proc/versionVersi dari Linux dan informasi lainnya.
cat /proc/filesystemsMelihat filesystem yang digunakan.
cat /etc/printcapMelihat printer yang telah disetup
lsmod(as root) Melihat module-module kernel yang telah di load.
setMelihat environment dari user yang aktif
echo $PATHMelihat isi dari variabel PATH. Perintah ini dapat digunakan untuk menampilkan variabel environmen lain dengan baik. Gunakan set untuk melihat environmen secara penuh.
dmesgMencetak pesan-pesan pada waktu proses boot. (menampilkan file: /var/log/dmesg).
clearMembersihkan layar.
adduserMenambah pengguna.

Mengenal File System pada Linux

Pada saat pertama kali kita menggunakan Linux pasti kita bertanya-tanya apa lagi pada saat kita mengeksplorasi direktory dan file-filenya, ada kemungkinan timbul pertanyaan-pertanyaan. “Apa maksud dari Home Directory, Root Folder (/), /etc, /var/, /boot, /home?”
“Apakah Linux mengenal istilah ‘Drive A’, ‘Drive C, D’?”
“Mengapa tidak ditemukan file program seperti .exe, .com, dll di dalam Linux ?”
Untuk mengerti filesystem di Linux, kita perlu sedikit mengubah pengertian yang telah kita anut selama ini terhadap filesystem, khususnya file system di system operasi Windows. Oleh karena itu, modul ini memerlukan asumsi-asumsi sebagai berikut :
A. Pemahaman terhadap filesystem di Windows
B. Pemahaman komputer secara umum, misalnya apa itu direktori, dansebagainya.
Dalam modul ini, yang dimaksud dengan filesystem adalah suatu cara pengorganisasian file dan direktori di dalam suatu media penyimpanan (misalnya harddisk).
1. Direktori / Partisi Filesytem di dalam Linux sebenarnya ada persamaan dengan Windows, misalnya kedua OS ( Operating System ) ini sama-sama mengenai istilah ‘root directory’. Di dalam Windows tidak terdapat direktori bernama ‘root’, tapi sebenarnya yang dimaksud dengan root direktori dalam Windows adalah ketika user berada dalam prompt C:/. Root direktori ini adalah tempat awal dimana nantinya semua direktori akan bercabang.
2. Linux Tidak Mengenal ‘Drive C, Drive D’ Dll Disinilah perbedaan cara organisasi file dari Linux. Kita bisa katakan bahwa /etc, /boot, dll itu adalah ‘partisi’ seperti yang dikenal dalam Windows (walaupun tidak sama persis. Sebab Windows hanya mengenal 1 partisi utama dan partisi extended. Sedangkan di dalam Linux kita bisa membuat direktori atau partisi itu sangat banyak). Jadi /etc, /boot, /home itu bisa dikatakan sebagai partisi, tetapi jangan mengunci dalam pengertian filesystem Windows. Sebenarnya kita bisa saja membuat direktori bernama ‘C’ atau ‘D’, tapi hal ini tidak ada gunanya atau hubungannya dengan organisasi file/direktori dalam Linux. Dalam Linux, file-file dikelompokkan lebih berdasarkan fungsi, jadi misalnya: semua file konfigurasi akan berada dalam direktori /etc. Sedangkan Windows menggolongkan file berdasarkan Program, Misalnya program WinZip, maka boleh dibilang semua file program WinZip akan berada dalam direktori C:/Program Files/Winzip (kecuali bila diinstall dalam direktori lain).
3. Penamaan File Sistem penamaan file di dalam Linux lebih fleksibel. Dalam artian, tidak semua file memerlukan extension seperti halnya di dalam Windows. Jadi tidak akan ditemukan file berextension ‘exe’ atau ‘com’ di dalam Linux. File-file aplikasi di Linux tidak memerlukan extension. Extension file dalam Linux hanya berguna untuk menandakan apa fungsi dari file itu, misalnya extension ‘conf’ untuk file konfigurasi (misalnya: named.conf), extension ‘sh’ untuk file script.
4. Device = Nama File Satu lagi yang menarik dari Linux. Device-device seperti floppy disk, harddisk, CDROM, modem, dll, ditulis dalam bentuk sebuah file. Device ?device tersebut dapat dilihat dalam direktori /dev/ (device).
5. Daftar Direktori Dalam Linux Seluruh informasi yang tersimpan dalam Linux berada pada sebuah struktur file. Sistem file yang tersusun dalam direktori-direktori yang menyerupai struktur tree (seperti pohon dengan akar berada diatas dan cabang dibawah).
/
(root!)
|
|
—————————————————————-
| | | | | | | | |
| | | | | | | | |
/bin /boot /dev /etc /home /lib /tmp /usr /sbin
|
|
—————–
|
/home/adi /home/sabar
/= root directory
/home = direktori tempat user menaruh filenya.Jadi misalnya user adi akan memiliki direktori home sbb: /home/andi/
/etc = direktori tempat semua file konfigurasi, baik dari program aplikasi maupun system Linux
/bin = direktori tempat binary dari program-program yang bisa dijalankan.
/sbin = sama seperti /bin, tapi khususnya untuk program-program yang berkaitan dengan system.
/tmp = sama seperti direktori direktori temp pada Windows, namun pada Linux direktori /tmp ini akan dihapus secara periodic
/usr = direktori yang berisi file-file program yang tidak kritis/penting sekali.
/var = direktori tempat menaruh file-file yang berubah-ubah terus, seperti file log, dan mail.
/boot = direktori tempat menaruh file-file yang berkaitan dengan proses booting dari Linux
/dev/hda = harddisk IDE pertama Anda
/dev/hda1 = partisi pertama pada harddisk IDE pertama
/dev/hdb2 = partisi kedua pada harddisk IDE kedua
/dev/fd0 = floppy drive pertama
/dev/ttyS1 = serial port yang pertama
/dev/hdc = biasanya CDROM
/dev/sda = device pertama pada SCSI controller
6. Kesimpulan Memang ada kemungkinan akan mengalami kesulitan di dalam filesystem Linux di awalnya. Tapi setelah bergelut dan bereksperimen (misalnya memformat menginstall Linux secara manual, membuat partisi, dll) beberapa lama serta sering menggunakan Linux, kita akan mulai terbiasa melihat struktur filesystem Linux ini.

Jenis-jenis Partisi Pada Linux

1. EXT2

Ext2 pertama kali dirilis pada bulan Januari 1993. Filesystem ini ditulis oleh Rémy Card, Theodore T. dan Stephen Tweedie, file system ini merupakan penulisan ulang besar-besaran dari Extended file system. Hingga bulan April 2001, file system ini masih menjadi file system tama di Linux. File system ini juga di implementasikan di sistem operasi lain seperti: NetBSD, FreeBSD, GNU HURD, Windows 95/98/NT, OS/2, dan RISC OS. Ext2 memiliki banyak kemiripan dengan filesystem asli Unix. Ia memiliki konsep block, inode, dan directory. Serta memiliki ruang kosong untuk Access Control Lists (ACLs), fragment, undeletion, dan compression walaupun fungsi-fungsi tersebut belum diimplementasikan (terdapat melalui patch terpisah).
Terdapat juga mekanisme versioning yang mengizinkan fitur tambahan (seperti journaling) yang kompatibel. Pada file system EXT2, file data disimpan sebagai data blok. Data blok ini mempunyai panjang yang sama dan meskipun panjangnya bervariasi diantara EXT2 file sistem, besar blok tersebut ditentukan pada saat file sistem dibuat dengan perintah mk2fs. Jika besar blok adalah 1024 bytes, maka file dengan besar 1025 bytes akan memakai 2 blok. Ini berarti kita membuang setengah blok per file. EXT2 mendefinisikan topologi file sistem dengan memberikan arti bahwa setiap file pada sistem diasosiasiakan dengan struktur data inode. Sebuah inode menunjukkan blok mana dalam suatu file tentang hak akses setiap file, waktu modifikasi file, dan tipe file.
Setiap file dalam EXT2 file sistem terdiri dari inode tunggal dan setiap inode mempunyai nomor identifikasi yang unik. Inode-inode file sistem disimpan dalam tabel inode. Direktori dalam EXT2 file sistem adalah file khusus yang mengandung pointer ke inode masing-masing isi direktori tersebut. Gambar struktur ext2 file sistem Inode dalam EXT2 gambar ext2 inode Inode adalah kerangka dasar yang membangun EXT2. Adapun kelebihan dari file system ini, yaitu ketika proses boot, sistem pada umumnya menjalankan pemeriksaan rutin (e2fsck) terhadap filesystem. Terdapat beberapa field Superblock dari filesystem ext2 yang memberitahukan apakah fsck harus dijalankan (karena apabila memeriksa filesystem pada waktu boot akan memakan waktu yang sangat lama apabila ukurannya besar). Fsck akan dijalankan apabila filesystem tidak di unmount secara bersih, apabila jumlah mount maksimum telah dilampaui atau apabila jumlah waktu maksimum antara pemeriksaan telah dilampaui. Selain itu, Ekstensi journaling untuk kode ext2 dikembangkan oleh Stephen Tweedie. Dengan metode ini, resiko korupsi metadata dapat dihindari dan kebutuhan untuk menunggu e2fsck selesai setelah terjadi crash tanpa harus mengubah tatanan on-disk ext2. Singkat kata, journal adalah file biasa yang menyimpan seluruh block metadata (dan data tambahan) yang telah dimodifikasi, sebelum dituliskan kedalam filesystem. Ini berarti mungkin untuk menambahkan journal kedalam filesystem ext2 yang telah ada tanpa harus menkonversi data yang sudah ada.
Ketika melakukan perubahan terhadap filesystem (perubahan nama file), data disimpan pada transaksi di dalam journal dan bisa sempurna ataupun tidak sempurna ketika terjadi crash. Ketika transaksi sempurna ketika terjadi crash (atau keadaan normal ketika sistem tidak crash), maka setiap block di dalam transaksi tersebut akan menunjukkan keadaan filesystem yang valid, dan dikopikan kedalam filesystem. Apabila transaksi tidak sempurna ketika terjadi crash, maka tidak ada jaminan bahwa block tersebut konsisten dan transaksi akan diabaikan (yang berarti perubahan terhadap filesystem akan hilang).
2. EXT3
EXT3 file sistem EXT3 adalah peningkatan dari EXT2 file sistem. Peningkatan ini memiliki beberapa keuntungan, diantaranya:
- Setelah kegagalan sumber daya, “unclean shutdown”, atau kerusakan sistem, EXT2 file sistem harus melalui proses pengecekan dengan program e2fsck. Proses ini dapat membuang waktu sehingga proses booting menjadi sangat lama, khususnya untuk disk besar yang mengandung banyak sekali data. Dalam proses ini, semua data tidak dapat diakses. Jurnal yang disediakan oleh EXT3 menyebabkan tidak perlu lagi dilakukan pengecekan data setelah kegagalan sistem. EXT3 hanya dicek bila ada kerusakan hardware seperti kerusakan hard disk, tetapi kejadian ini sangat jarang. Waktu yang diperlukan EXT3 file sistem setelah terjadi “unclean shutdown” tidak tergantung dari ukuran file sistem atau banyaknya file, tetapi tergantung dari besarnya jurnal yang digunakan untuk menjaga konsistensi. Besar jurnal default memerlukan waktu kira-kira sedetik untuk pulih, tergantung kecepatan hardware.
- Integritas data EXT3 menjamin adanya integritas data setelah terjadi kerusakan atau “unclean shutdown”. EXT3 memungkinkan kita memilih jenis dan tipe proteksi dari data.
-  Kecepatan Dari pada menulis data lebih dari sekali, EXT3 mempunyai throughput yang lebih besar daripada EXT2 karena EXT3 memaksimalkan pergerakan head hard disk. Kita bisa memilih tiga jurnal mode untuk memaksimalkan kecepatan, tetapi integritas data tidak terjamin.
- Mudah dilakukan migrasi Kita dapat berpindah dari EXT2 ke sistem EXT3 tanpa melakukan format ulang. REISER Reiser file sistem Reiser file sistem memiliki jurnal yang cepat. Ciri-cirinya mirip EXT3 file sistem. Reiser file sistem dibuat berdasarkan balance tree yang cepat. Balance tree unggul dalam hal kinerja, dengan algoritma yang lebih rumit tentunya. Reiser file sistem lebih efisien dalam pemenfaatan ruang disk. Jika kita menulis file 100 bytes, hanya ditempatkan dalam satu blok. File sistem lain menempatkannya dalam 100 blok. Reiser file sistem tidak memiliki pengalokasian yang tetap untuk inode. Resier file sistem dapat menghemat disk sampai dengan 6 persen. SWAP Swap merupakan partition yang boleh dibuat pada hard disk dan digunakan sebagai virtual memory. Dengan maksud, swap ini digunakan apabila (fizikal memory) yang ada pada komputer telah digunakan secara maksimun, maka swap akan digunakan untuk menampung memori tambahan. Swap tidak boleh digunakan untuk data.