Linux mempunyai filesystem--- artinya struktur direktori dan file file yang terkandung di dalamnya. yang mana hal ini sangat mirip dengan DOS. File file mempunyai nama yang harus mengikuti peraturan khusus yang tersimpan dalam direktori, beberapa bisa dieksekusi (executable) dan diantaranya mempunyai perintah sebagai switch. Lebih lanjut, Anda dapat menggunakan karakter wildcard, pengalihan (redirection), dan pemipaan (piping) :
Dibawah ini akan menjelaskan perbedaan kecil dengan DOS :
This_is.a.VERY.long.filename
(perhatikan
huruf besar dan kecilnya)
FILENAME.tar.gz
adalah berbeda dengan filename.tar.gz
juga
perhatikan : perintah ls
akan salah jika dituliskan LS
$ ls -F
letter.to.joe cindy.jpg cjpg* I_am_a_dir/ my_1st_script* old~
file cjpg*
dan my_1st_script*
adalah file executable. kalau di DOS file
backup akan berektensi .BAK kalau di Linux akan diberi tanda '~' kalau
file yang dimulai dengan tAnda titik (.) adalah file tersembunyi (hidden
file). contohnya: file dengan nama .I.am.a.hidden.file
tidak akan
ditampilkan jika kita memberikan perintah ls
/
sebagai parameter/switch kalau Linux
menggunakan tanda -
atau --
sebagai parameter/switch. contoh : di dos
menggunakan perintah dir /s
kalau Linux menggunakan perintah ls -R
catatan: ada program DOS spt pkzip, arj dan sebagainya yang menggunakan
tAnda - sebagai parameter/switch, seperti parameter gaya Unix.
Unix mempunyai beberapa jenis file yang tidak terdapat pada DOS, yaitu
link secara simbol (symbolic link). Kita dapat berpikir bahwa symbolic
link adalah pointer/penunjuk yang menunjuk ke suatu file atau direktori.
dan ini dapat digunakan sebagai pengganti dari file atau direktori
tersebut, hal ini mirip dengan shortcuts pada windows 95. contoh dari
symbolic link adalah : /usr/X11
, yang mana menunjuk pada /usr/X11R6
,
/dev/modem
yang mana menunjuk pada /dev/cua0
atau /dev/cua1
.
Untuk membuat symbolic link:
$ ln -s <file_or_dir> <nama_link>
contoh :
$ ln /usr/doc/g77/DOC g77manual.txt
sekarang Anda dapat menganggap g77manual.txt
sebagai pengganti dari
/usr/doc/g77/DOC
.
File file dan direktori dalam DOS mempunyai atribut atribut sbb :
A (arsip), H (Tersembunyi/hidden), R (Read-only/hanya baca), dan S (System). dan di Linux hanya ada H dan R, sedangkan untuk hidden namafile dimulai dengan titik, dan untuk atribut Read-only, silakan baca :
Didalam unix file mempunyai hak permisi akses (permission) , dan kepunyaan (owner), yang mana termasuk dalam grup, contoh :
$ ls -l /bin/ls
-rwxr-xr-x 1 root bin 27281 Aug 15 1995 /bin/ls*
pada field pertama terdapat hak permisi dari file /bin/ls
, yang mana
kepunyaan dari root, group bin dan informasi informasi di sampingnya (
Buku dari Matt adalah untuk tujuan ini ), dan ingatlah bahwa -rwxr-xr-x
berarti (dari kiri ke kanan) :
-
adalah tipe file ( -
= file biasa, d
= direktori, l
= link, dan
sebagainya ); rwx
adalah hak permisi akses untuk pemilik file (read/baca,
write/tulis, execute/eksekusi). r-x
adalah hak permisi akses untuk group
dari pemilik file (read/baca, execute/ekse kusi). (penulis akan
menjelaskan konsep dari group, tapi Anda akan tetap dapat bertahan hidup
tanpa ini, selama Anda masih pemula ;-) r-x
adalah hak permisi akses untuk
semua pengguna yang lain (read/baca, execute/eksekusi)
Inilah yang menyebabkan kenapa Anda tidak dapat menghapus file /bin/ls
jika tidak sebagai root. Anda tidak mempunyai hak tulis untuk
melakukannya. Untuk melakukan perubahan hak akses terhadap suatu file,
perintahnya adalah :
$ chmod <whoXperm> <file>
dimana who
adalah u
(user, yaitu pemilik), g
(group), o
(other/yg lain), dan X
adalah tanda +
atau -
, perm adalah r
(read), w
(write), x
(execute).
Contoh:
$ chmod u+x file
ini adalah untuk mengeset file menjadi executeble terhadap pemiliknya,
atau bisa disingkat menjadi chmod +x file
$ chmod go-wx file
ini adalah untuk menghilangkan hak write dan execute dari group dan other.
$ chmod ugo+rwx file
ini memberikan hak read, write, dan execute kepada semua orang.
# chmod +s file
ini membuat sesuatu yang dinamakan file "setuid" atau "suid" --- yaitu file yang mana setiap orang dapat mengakses dengan hak root.
Jalan pintas untuk mengeset hak permisi adalah dengan menggunakan angka,
rwxr-xr-x
dapat dituliskan 755 ( setiap angka menunjukkan bit bit: ---
adalah 0, --x
adalah 1, -w-
adalah 2, -wx
adalah 3 dst ). Ini terlihat
sulit tapi dengan sedikit latihan Anda akan memahami konsep ini.
root disebut superuser, yang dapat merubah hak permisi akses dari setiap orang. untuk lebih jelas tentang ini --- RMP ( Baca manual pagenya ! )
Dikiri adalah perintah DOS, dan perintah Linux di kanannya
COPY: cp
DEL: rm
MOVE: mv
REN: mv
TYPE: more, less, cat
pengalihan dan pemipaan: < > >> |
Wildcards: * ?
nul: /dev/null
prn, lpt1: /dev/lp0 or /dev/lp1; lpr
- CONTOH -
DOS Linux
---------------------------------------------------------------------
C:\GUIDO>copy joe.txt joe.doc $ cp joe.txt joe.doc
C:\GUIDO>copy *.* total $ cat * > total
C:\GUIDO>copy fractals.doc prn $ lpr fractals.doc
C:\GUIDO>del temp $ rm temp
C:\GUIDO>del *.bak $ rm *~
C:\GUIDO>move paper.txt tmp\ $ mv paper.txt tmp/
C:\GUIDO>ren paper.txt paper.asc $ mv paper.txt paper.asc
C:\GUIDO>print letter.txt $ lpr letter.txt
C:\GUIDO>type letter.txt $ more letter.txt
C:\GUIDO>type letter.txt $ less letter.txt
C:\GUIDO>type letter.txt > nul $ cat letter.txt > /dev/null
n/a $ more *.txt *.asc
n/a $ cat section*.txt | less
Catatan :
mv *.xxx *.yyy
tidak
berlaku di Linux (tidak ada rename massal).
cp -i
dan mv -i
akan ditampilkan peringatan apabila akan
terjadi penimpaan file (overwritten) thd file lain.
Untuk menjalankan program, ketikkan nama program seperti jika Anda
menjalankannya pada DOS, Jika direktori (pembahasan
direktori ) tempat
program berada, tertulis dalam PATH (pembahasan
System initialization),
program akan berjalan. Pengecualian: tidak seperti di DOS, di Linux
program yang terletak di direktori aktif tidak dapat dijalankan kecuali
direktori tsb termasuk dalam PATH, ketikkan ./prog
untuk menjalankannya.
ini adalah apa yang menjadi ciri khas baris perintah :
$ perintah -s1 -s2 -s3 ... -sn par1 par2 par3...parn < input > output
dimana -a1,...,-sn
adalah switch program, dan par1,...,parn
adalah
parameter program, Anda dapat memberikan beberapa perintah dalam satu
baris perintah dengan :
$ perintah1 ; perintah2 ; ... ; perintahn
Itu semua adalah tentang menjalankan program, tapi lebih enak kalau kita pergi ke langkah yang lebih jauh, Salah satu alasan penting untuk menggunakan Linux adalah terletak pada multitasking-nya. Sistem operasi --- yang dapat menjalankan beberapa program dalam waktu yang bersamaan. Anda dapat membawa suatu proses menuju ke latar belakang (background), dan meneruskan pekerjaan kita lebih jauh lagi. lebih lagi, Linux mengijinkan Anda untuk mempunyai beberapa sesion, yang mana membuat kita seperti mempunyai beberapa komputer untuk bekerja dalam waktu yang sama !
$ ALT+F1 ... ALT+F6
$ su - <loginname>
contoh :
$ su - root
ini sangat berguna, ketika Anda membutuhkan untuk memount (memuat) disk
(Pembahasan
Floppies): umumnya hanya root yang dapat melakukannya.
$ exit
jika ada pekerjaan yang terhenti, Anda akan diperingatkan.
$ namaprogram [-switches] [parameter] [< input] [> output]
$ namaprogram [-switches] [parameter] [< input] [> output] &
[123]
untuk mengenali proses yg berjalan digunakan angka (lihat dibawah ini,
dan dengan PID 123 adalah sebagai contoh))
$ ps -a
Ini akan menampilkan daftar dari proses yang sedang berjalan.
$ kill <PID>
Anda mungkin perlu untuk menghentikan/membunuh suatu proses jika anda tidak mengetahui bagaimana untuk keluar... ;-) Kadang kadang proses hanya akan terhenti/terbunuh oleh yang lain dengan memberikan perintah :
$ kill -15 <PID>
$ kill -9 <PID>
tambahan di sini, shell mengijinkan Anda untuk menghentikan ataupun menunda proses untuk sementara, mengirim proses ke background, membawa proses dari background ke foreground. Dalam konteks ini proses proses tersebut dinamakan "job"
$ jobs
ini akan menampilkan pekerjaan/job berdasarkan nomor job, bukan berdasarkan PID mereka.
$ CTRL-C
$ CTRL-Z
$ bg <job>
$ fg <job>
$ kill <%job>
dimana job bisa bernilai 1,2,3,... , dengan menggunakan perintah ini,
Anda dapat memformat disket, menggabungkan file file, mengkompilasi
program, dan mengunzip arsip-arsip dalam waktu yang bersamaan. Bisakah
Anda melakukannya di DOS ?? atau cobalah di Windows dan lihatlah perbedaan
performa nya !
untuk menjalankan program di remote komputer (remote mechine) yang mempunyai alamat : remote.bigone.edu, ketikkan :
$ telnet remote.bigone.edu
Setelah logging in, silakan jalankan program favorit Anda. tapi anda harus mempunyai account di remote komputer tersebut.
jika Anda mempunyai X11, anda dapat menjalankan aplikasi-X (X-application) di remote komputer, dan menampilkannya di X-Screen Anda. Biarkan remote.bigone.edu menjadi x-remote komputer dan local.Linux.box menjadi mesin Linux Anda, untuk menjalankan program-X (program berbasis X-Win) yang ada di remote.bigone.edu dari local.Linux.box, ikuti langkah langkah berikut :
$ xhost +remote.bigone.edu
$ telnet remote.bigone.edu
remote:$ DISPLAY=local.Linux.box:0:0
remote:$ namaprogram &
(pengganti dari DISPLAY..., ada kemungkinan Anda untuk menuliskan setenv
DISPLAY local.Linux.box:0.0. Ini tergantung pada remote shell. )