Gambar 6 : Diagram pertama penamaan partisi pada Linux
Gambar 7 : Contoh kedua penamaan partisi pada Linux Sekarang anda sudah mengerti tentang bermacammacam partisi dan hard disk, pada saat anda membutuhkannya. Anda juga akan mengerti mengenai penamaan partisi pada Linux, walaupun anda belum tahu bagaimana cara pengelolaannya pada awalnya.
Sistem File LINUX Sistem File pada Linux (ext2), sebagaimana Sistem File UNIX lainnya tidak mengenal istilah drive seperti di DOS atau Windows (contoh: Drive C:, Drive D: dst). Sistem File Linux menggunakan sistem hirarki dan penyatuan (direktori dalam direktori) yang memperlakukan semua file, direktori dan device driver (termasuk diskdrive, floppy disk dan cdrom drive) sebagai file. Terminologi ini dikenal sebagai Everything is file dalam UNIX dan Linux. Sistem File Linux/UNIX mendukung nama file sebanyak 256 karakter, tidak termasuk tanda simbol dan tanda kutip kecuali titik(.), dan tanda minus (). Tanda titik dapat digunakan berkalikali dalam satu nama file, contoh: ini.nama.file
1
1. Melihat Direktori Aktif Jika kita ingin mengetahui sebenarnya kita berada di direktori mana, kita bisa memberikan perintah print working direktori, yaitu : [
[email protected]~] $ pwd /home/masaji Artinya kita sedang berada di direktori /home/masaji.
2. Melihat Isi Direktori Sekarang beralih bagaimana kita melihat filefile Linux yang ada, cobalah perintah dibawah ini: [
[email protected]~] [
[email protected]~] [
[email protected]~] [
[email protected]~]
$ $ $ $
ls ls -l ls -R ls -a
tentunya anda akan merasakan apa perbedaannya, pilihan l berguna untuk mengetahui informasi lengkap ttg file/direktori yang dilihat, contoh : masaji@masaji:~ > ls -l total 23 drwxr-xr-x 6 masaji drwxr-xr-x 6 masaji drwx-----3 masaji drwxr-xr-x 5 masaji -rw-r--r-1 masaji drwxr-x--- 44 masaji drwxr-xr-x 3 masaji -rw-r--r-1 masaji drwxr-xr-x 23 masaji -rw-r--r-1 masaji drwxr-xr-x 4 masaji masaji@masaji:~ >
users users users users users users users users users users users
397 435 5501 612 941 1060 195 1261 721 1108 503
May Apr May May May May Mar May May May May
10 20 14 13 13 9 21 13 11 13 14
22:04 00:34 09:14 14:44 23:56 11:10 00:48 23:55 07:24 23:55 06:08
Desktop KDesktop Mail bin cron-1 doc office52 pico-1 pict sudo-1 tmp
Kita bisa mengetahui kalau direktori /bin itu kepunyaan 'root' dan termasuk dalam group 'root', dibuat tanggal 23 Desember jam 01:35 Arti dari field pertama di sebelah kiri (misal : drwxrxrx). Perintah ls di Linux juga mengijinkan kita untuk menggunakan wildcard. Fungsi wildcard di Linux hampir serupa dengan di sistem operasi DOS, yaitu menggunakan :
2
* untuk mewakili serangkaian huruf yang belum diketahui dan ? untuk mewakili satu huruf Contoh: jika kita ingin melihat file apa saja di direktori /etc yg huruf depannya p, maka kita berikan perintah : [
[email protected]]$ ls doc/Linux/HOWTO N* Nfs-1 Nfs-2 Pilihan R di perintah ls artinya kita melihat semua file yang ada di seluruh subsub direktori yang terdapat dalam direktori yang aktif. Pilihan a artinya kita melihat semua file termasuk 'hidden file' , yaitu file file yang dimulai dengan tanda titik (.) Untuk memuat filefile di dalam sebuah direktori yang sangat banyak dan tidak cukup ditampung dalam 1 layar, kita bisa menggunakan pemipaan ke utilitas more atau less, contoh : [
[email protected]~] $ ls -lagR | more [
[email protected]~] $ ls -lagR | less Untuk melihat semua option yang ada silakan lihat manual page untuk perintah ls : [
[email protected]~] $ man ls
3. Berpindah Direktori Untuk berpindah direktori, kita bisa menggunakan perintah cd. Cara penggunaan hampir sama dengan perintah CD di DOS, perbedaannya : pada linux menggunakan tanda slash ( / ) bukan backslash seperti pada DOS. Untuk memasuki direktori /usr/doc kita akan memberikan perintah : [
[email protected]~] $ cd /usr/doc Kita bisa memasuki home direktori kita hanya dengan mengetikkan : [
[email protected]~] $ cd atau [
[email protected]~] $ cd ~
3
hasilnya adalah : [
[email protected]~] $ Kita bisa beralih langsung ke direktori yang aktif sebelum sekarang dengan memberikan perintah : [
[email protected]~] $ cd -
4. Bekerja dengan disket Device untuk disk drive terletak pada /dev/fd0 untuk 'drive' A, dan/dev/fd1 untuk 'drive' B'. Untuk memformat sebuah disket 1.44 MB di drive A kita bisa menggunakan perintah : [
[email protected]]# fdformat /dev/fd0H1440 sedangkan untuk memformat disket dengan kapasitas 1.2 MB di drive B, kita bisa menggunakan perintah : [
[email protected]]# fdformat /dev/fd0H1200 Setelah anda proses format dan verify selesai, anda harus menentukan filesystem apakah yang akan dibuat di disket tsb. Untuk membuat disket dengan format filesystem ext2, anda cukup mengetikkan perintah : [
[email protected]] # mkfs /dev/fd0 atau [
[email protected]]# mke2fs /dev/fd0 atau [
[email protected]]# mkfs.ext2 /dev/fd0 Sedangkan untuk membuat disket 1.44 MB dengan filesystem MSDOS anda tinggal mengetikkan perintah: [
[email protected]]# mkfs -t msdos /dev/fd0
4
atau [
[email protected]]# mkdosfs /dev/fd0 atau [
[email protected]]# mkfs.msdos /dev/fd0 Jika anda ingin membaca sebuah disket, anda harus memount/memuatnya dulu kedalam suatu direktori, sebagai contoh anda ingin membaca disket di drive A dan ingin memetakan isi direktori/file filenya di direktori /floppy, maka perintah yang digunakan : [
[email protected]]# mount /dev/fd0 /floppy Perintah diatas akan menyebabkan direktori /floppy berisi direktori/filefile dari disket di drive A. Catatan : sebelum anda mencabut disket dari drive disket, anda wajib melakukan unmount device tsb, dengan perintah umount <mountpointdir>, atau umount <device>. [
[email protected]]# umount /dev/fd0 perintah mount bisa juga digunakan untuk memount partisi lain dari harddisk, anda bisa membaca manual dari perintah mount tersebut.
4.a. Menyalin Seluruh Disket (diskcopy) dari Sebuah Disket ke Disket lainnya Jika anda ingin menyalin sebuah disket ke disket lainnya dengan cara membaca pertrack dan sector seperti perintah DISKCOPY pada DOS, anda dapat membuat image dari disket sumber dulu ke dalam sebuah file di harddisk dengan perintah : [
[email protected]]# dd if=/dev/fd0 of=/tmp/file-image atau dengan utilitas cat dan memanfaatkan fasilitas pengalihan : [
[email protected]]# cat /dev/fd0 > /tmp/file-image setelah file image terbentuk, anda bisa mengganti disket asal dengan disket target/tujuan, lalu salin fileimage menuju ke disket :
5
[
[email protected]]# dd if=/tmp/file-image of=/dev/fd0 atau bisa juga dengan memanfaatkan utilitas cat dan fasilitas pengalihan : [
[email protected]]# cat /tmp/file-image > /dev/fd0 Agar anda tahu saja, saat ini banyak distribusi linux yg menyediakan perintah mcopy dan mdir untuk menyalin disket tanpa memberikan perintah "mount"
5. Melihat Isi File Untuk melihat isi suatu file di Unix, kita menggunakan perintah 'cat'. 'more' atau 'less'. Contoh : [
[email protected]]# more selamat Selamat belajar Linux Beda masingmasing perintah adalah : cat berfungsi sebagaimana halnya TYPE pada DOS, yaitu dengan langsung mencetak semua isi file yang bersangkutan tanpa berhenti setiap kali layar penuh. more berfungsi sebagaimana halnya TYPE
|MORE pada DOS, yaitu mencetak isi file yang bersangkutan, tetapi akan berhenti setiap kali layar penuh, menunggu penekanan tombol spasi untuk mencetak baris berikutnya. Untuk keluar dari more sebelum semuanya selesai dicetak, ketikkan q.less mengijinkan kita untuk menggunakan panah atas dan panah bawah untuk melakukan navigasi atas isi file tersebut. Untuk keluar dari less sebelum semuanya selesai dicetak, ketikkan q.
6. Menyalin File Untuk menyalin file, Linux menyediakan perintah 'cp' dengan sintaks sebagai berikut : cp Misalnya, bila kita ingin menyalin file /home/masaji/temp/coba menuju ke direktori /home/masaji/doc, maka kita gunakan perintah seperti ini : [[email protected]]$ cp coba /home/masaji/doc atau
6
[[email protected]]$ cp coba doc perintah cp juga mengijinkan kita untuk melakukan penyalinan beberapa file sekaligus, misalnya kita ingin menyalin 3 file sekaligus yang bernama : coba1, coba2, coba3 ke dalam direktori /home/masaji/doc/coba, maka kita cukup mengetikkan perintah : [[email protected]]$ cp coba* /doc/coba
7. Menghapus File Linux menyediakan perintah/utilitas 'rm' untuk menghapus file, dengan syntax : rm [option] Pada kebanyakan mesin Unix rm akan menyertakan option -i yaitu konfirmasi ulang sebelum benar benar melakukan penghapusan terhadap file. Hal ini karena file sistem berbasis unix didisain untuk multiuser, jadi sulit untuk dilakukan undelete terhadap filefile yang telah dihapus. Perintah rm juga mengijinkan kita untuk menggunakan wildcard (coba lihat kembali tentang wildcard pada perintah ls diatas ). Pilihan rm yang sering digunakan : d f i r
-----
direktori menghapus direktori yang ada isinya (hanya root yg bisa) force menghapus file tanpa konfirmasi terlebih dulu. interactive konfirmasi sebelum penghapusan. R, --recursive menghapus semua isi direktori beserta sub-subnya.
Contoh, jika anda ingin menghapus semua isi direktori /tmp, anda bisa memberikan perintah : [[email protected]]# rm -rf /tmp
8. Mengganti Nama File Untuk mengganti nama file kita menggunakan perintah 'mv' Sintaksnya adalah : mv Contoh kita akan mengganti file rubah.tar.gz menjadi ru.tgz, kita berikan perintah : [[email protected]~]$ mv rubah.tar.gz ru.tgz
7
9. Memindahkan File ke direktori Lain Selain untuk mengganti nama file, perintah mv juga bisa digunakan untuk memindahkan suatu file ke direktori lain, perintah ini juga mengijinkan penggunaan wildcard Misalnya kita ingin memindahkan file /usr/sbin/ppp-on ke direktori /bin maka kita cukup mengetikkan perintah : [[email protected]]# mv /usr/sbin/ppp-on /bin
10. Mengetahui Jenis File Kita dapat mengidentifikasikan sebuah file dengan menggunakan utilitas 'file'. Misalkan kita akan mencari tahu file /etc/passwd itu berjenis apa, kita bisa memberikan perintah file contoh : masaji@masaji:~ > file doc/linux/Howto/Inggris/Wireless-HOWTO doc/linux/Howto/Inggris/Wireless-HOWTO: English text masaji@masaji:~ > file /bin/gzip /bin/gzip: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), not stripped masaji@masaji:~ >
11. Menterjemahkan perintah dari DOS ke Linux Berikut ini adalah alih bahasa sintaks perintah yang biasa anda gunakan pada DOS untuk ditransfer pada Linux. Dikiri adalah perintah DOS, dan perintah Linux di kanannya DOS
LINUX
COPY
cp
DEL
rm
MOVE
mv
REN
mv
TYPE
more, less, cat
Contoh: DOS
8
LINUX
C:\GUIDO>copy joe.txt joe.doc
$ cp joe.txt joe.doc
C:\GUIDO>copy *.* total
$ cat * > total
C:\GUIDO>copy fractals.doc $ lpr fractals.doc prn 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.as
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
Tidak ada
$ more *.txt *.asc
Tidak ada
$ cat section*.txt | less
Keterangannya sebagai berikut: * (asterix) adalah karakter yang paling fleksibel, * mewakili semua file kecuali file hidden. ketika menggunakan perintah more, tekan [SPASI] untuk melihat semua file yang ada, anda diijinkan menggunakan panah. Tidak ada UNDELETE pada Linux, maka dari itu berpikirlah dua kali sebelum menghapus. Linux mempunyai wildcard yang lain : yaitu [ ]. Gunakan: abc* untuk mewakili file file yang dimulai dengan huruf a,b,c; *IN,1,2,3 mewakili file yang diakhiri dengan huruf : I,J,K,L,M,N,1,2,3 ; Tidak seperti RENAME nya DOS ; perintah mv *.xxx *.yyy tidak berlaku di Linux (tidak ada rename massal). Menggunakan cp -i dan mv -i akan ditampilkan peringatan apabila akan terjadi penimpaan file (overwritten) terhadap file lain.
12. Membandingkan Dua Buah File
9
Suatu saat mungkin kita ingin membandingkan isi dari dua buah file teks yang berbeda, apakah isinya sama atau tidak. Untuk keperluan itu Linux memberikan utilitas diff, dengan syntax : diff [option]
Pilihan yang sering digunakan adalah : B menyebabkan spasi dan tab dibelakang diabaikan e menghasilkan skrip yang berguna untuk utilitas ed agar file pertama isinya jadi sama persis dengan file ke dua.
Coba perhatikan contoh dibawah ini : [[email protected] /]# cat satu Ini adalah contoh file pertama yang akan dibedakan dengan diff. [[email protected] /]# cat dua Ini adalah contoh file kedua yang akan dibedakan dengan diff. [[email protected] /]# diff satu dua 1c1 < Ini adalah contoh file pertama --> Ini adalah contoh file kedua
13. Melihat Kapasitas Hard Disk Untuk melihat kapasitas spasi yang terpakai dan spasi yang masih kosong, Linux menyediakan perintah 'df'. Contoh : masaji@masaji:~ > df Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda9 5726956 3936864 1790092 69% / /dev/hda5 1843820 541284 1302536 29% /Data /dev/hda6 23300 6876 15221 31% /boot /dev/hdc2 2947808 1213272 1734536 41% /home /dev/hdd1 971632 621312 350320 64% /Swap /dev/hda8 1052184 505640 546544 48% /Music /dev/hdd3 3897924 2131888 1564824 58% /Backup /dev/hdc1 2044240 530872 1513368 26% /Program /dev/hda1 1226524 902976 323548 74% /Windows masaji@masaji:~ >
10
Artinya : direktori / (root direktori) berada pada partisi /dev/hda9, mempunyai kapasitas 5.726,956 MB, spasi yang digunakan 3.936.864 KB dan masih tersedia spasi kosong sebesar 1.790,092 MB dan persentase spasi yang telah terpakai adalah 69%. Sama halnya dengan lainnya.
14. Melihat Spasi yang Digunakan dalam Suatu Direktori Jika anda ingin mengetahui berapa banyak ruangan yang dipakai oleh suatu direktori, anda bisa menggunakan perintah du. Misalnya, anda ingin mengetahui berapa banyak ruangan yang digunakan pada direktori /tmp : [[email protected] /mmm]# du /tmp 12 /tmp/lost+found 1 /tmp/screens/S-tamu 1 /tmp/screens/S-root 3 /tmp/screens 1 /tmp/.X11-unix 29 /tmp/.XF86Setup431/2e3e0245-35a6bf65 30 /tmp/.XF86Setup431 1 /tmp/.ICE-unix 40 /tmp/coba 114 /tmp
Pada contoh di atas, ruangan yang telah terpakai dalam direktori /tmp adalah 114 KB
1. Kaitan (Links) Di UNIX/Linux dikenal istilah link dalam sistem file, link sendiri berarti : pointer atau penunjuk yang menunjuk ke file/inode. (Inode bisa dimiliki lebih dari 1 file. Link ini berguna agar satu file dapat diacu dalam beberapa direktori lain yang berbeda. Dengan adanya link ini memungkinkan data yang sama dapat dipakai oleh sejumlah pemakai dalam suatu jaringan multiuser. Dan sebuah file dapat dianggap sama dengan file lain tanpa melakukan penyalinan yang tentunya akan memakan banyak ruang media penyimpanan anda. Terminologi link dalam Linux mempunyai kesamaan dengan shortcut pada Windows. Hanya saja, pengguna Linux diperbolehkan melakukan cd pada link tersebut jika link itu adalah sebuah direktori, sementara pada Windows tidak dapat.
11
Untuk membuat link, Unix menyediakan utilitas bernama 'ln' , dengan syntax : ln [option] file_sumber file_target Ada dua macam kategori link, yaitu : 1. 2.
Hard link Symbolic link
a. Hard link yaitu dua file yang menuju pada inode yang sama: [[email protected] /mmm]# ls -l total 1 rw-r-r-- 1 root root 34 Jan 23 14:44 satu [[email protected] /mmm]# cat satu ini file pertama ................. [[email protected] /mmm]# ln satu dua [[email protected] /mmm]# cat dua ini file pertama ................ [[email protected] /mmm]# ls -l total 2 rw-r-r-- 2 root root 34 Jan 23 14:44 dua rw-r-r-- 2 root root 34 Jan 23 14:44 satu setelah dilakukan ln file 'satu' di link ke file 'dua' maka file dua akan berisi sama persis dengan file 'satu' , juga disitu terlihat jumlah link ke inode ada 2 buah, anda bisa mencoba dengan : [[email protected] /mmm]# ls -i 2460 dua 2460 satu Terlihat bahwa file 'satu' dan file 'dua' mengarah pada inode yang sama. Perintah ln juga mengijinkan kita untuk mengaitkan dua buah file yang terletak pada partisi yang berbeda. Penghapusan terhadap file satu tidak akan menyebabkan file dua terhapus, demikian pula sebaliknya.
b. Symbolic link Symbolic link dapat dibuat dengan menyertakan option s pada perintah ln. Pada symbolic link, file target hanya merupakan pointer yang mengarah ke file sumber, kalau file sumber dihapus maka file target juga tidak akan berfungsi lagi karena pada symbolic link, yang mengarah pada inode hanya file sumber.
12
Untuk lebih jelasnya perhatikan contoh dibawah ini : [[email protected] /mmm]# ls -l total 1 rw-r-r-- 1 root root 34 Jan 23 14:44 satu [[email protected] /mmm]# ln -s satu dua [[email protected] /mmm]# ls -l total 1 lrwxrwxrwx 1 root root 4 Jan 23 14:52 dua -> satu rw-r-r-- 1 root root 34 Jan 23 14:44 satu [[email protected] /mmm]# ls -i 2461 dua@ 2460 satu [[email protected] /mmm]# cat satu ini file pertama ................ [[email protected] /mmm]# cat dua ini file pertama ................ [[email protected] /mmm]# rm satu rm: remove 'satu'? y setelah file satu dihapus, file dua tidak ikut hilang, tapi akan tidak berfungsi lagi. Karena dia mengarah pada file yang tidak ada.
2. Perizinan (Access Permission) dan Hak Kepemilikan File (File Ownership) Pada DOS, Filefile dan direktori dalam mempunyai atributatribut sbb : A arsip H Tersembunyi/hidden R Readonly (hanya baca) dan S System Sedangkan pada Linux hanya ada H dan R, yaitu untuk 'hidden file' namafile dimulai dengan titik. Di dalam Linux, filefile selalu mempunyai hak perizinan akses (permission). Kepemilikan (owner), dan termasuk dalam grup mana. Contoh : [masaji@linux]$ ls -l /bin/ls -rwxr-xr-x 1 root bin |||||||||| |||||||||+--- 10 ||||||||+---- 9 |||||||+----- 8 ||||||+------ 7
50144 Oct 20
2000 /bin/ls*
13
|||||+------||||+-------|||+--------||+---------|+----------+------------
6 5 4 3 2 1
Pada field pertama terdapat hak perizinan akses dari file /bin/ls. File 'ls' dimiliki oleh 'root' dan dimiliki oleh grup 'bin'. Sekarang perhatikan '-rwxr-xr-x' rwxrxrx berarti (dibaca kiri ke kanan) :
• •
(nomer 1) adalah tipe file ( = file biasa, d = direktori, l = link) rwx (nomer 2,3,4) adalah hak perizinan akses untuk pemilik file (read/baca, write/tulis,
•
execute/eksekusi). rx (nomer 5,6,7) adalah hak perizinan akses untuk group dari pemilik file (read/baca,
•
execute/eksekusi). rx (nomer 8,9,10) adalah hak perizinan akses untuk useruser selain pemilik sendiri dan grupnya.
Inilah yang menyebabkan kenapa anda tidak dapat menghapus file /bin/ls jika tidak sebagai root, karena anda tidak mempunyai hak untuk melakukannya/menuliskan. Seorang pemilik file atau seorang superuser dapat mengubah hak permisi akses terhadap file filenya. Untuk melakukan perubahan hak akses terhadap suatu file, perintahnya adalah : [[email protected]~] $ chmod <whoXperm> Dimana:
• • • • •
who adalah u (user, yaitu pemilik), g (grup), o (other/yg lain), X adalah tanda + atau , perm adalah: r (read), w (write), x (execute).
Contoh: [[email protected]~] $ chmod u+x file Diatas adalah untuk mengeset file menjadi executable terhadap pemiliknya, atau bisa disingkat menjadi chmod +x file
14
[[email protected]~] $ chmod go-wx file Diatas adalah untuk menghilangkan hak write dan execute dari grup dan other. [[email protected]~] $ chmod ugo+rwx file Diatas memberikan hak read, write, dan execute kepada semua orang. [[email protected]]# chmod +s file Diatas adalah yang dinamakan membuat file "setuid" atau "suid", yaitu file yang terhadapnya, setiap orang dapat mengakses dengan hak root.
Mengubah Kepemilikan File Superuser/root dapat mengubah hak kepemilikan dari sebuah file, yaitu dengan menggunakan perintah chown, sintaksnya adalah : chown Untuk lebih jelasnya lihat contoh dibawah ini : root@masaji:/usr/local/httpd/htdocs drwxr-xr-x 2 root masaji root@masaji:/usr/local/httpd/htdocs root@masaji:/usr/local/httpd/htdocs drwxr-xr-x 2 masaji masaji root@masaji:/usr/local/httpd/htdocs
> ls -ld coba/ 127 May 14 09:18 coba/ > chown masaji coba/ > ls -ld coba/ 127 May 14 09:18 coba/ >
Mengubah Hak Penggunaan Akses dengan Menggunakan Angka Anda dapat mengubah hak permisi akses dengan menggunakan angka, dengan cara sebagai berikut : rwxrxrx dapat dituliskan 755, karena setiap angka menunjukkan bit bit: --- adalah 0, --x adalah 1, -w- adalah 2, -wx adalah 3, dan seterusnya.
15
Angka 755 itu berasal dari :
• • •
rwx = 111, dimana 111 biner = 7 desimal rx = 101, dimana 101 biner = 5 desimal rx = 101, dimana 101 biner = 5 desimal
Menentukan Akses Pembuatan File Jika anda membuat/menciptakan sebuah file, maka default hak perizinan akses terhadap file baru tersebut akan dibuat berdasarkan nilai cadar yang disebut dengan umask. Umask (user filecreation mask) berupa tiga bilangan oktal yang mengatur hak perizinan akses terhadap penciptaan file/direktori. Kita coba mengetikkan perintah umask : [root@localhost]# umask 022 disitu muncul angka 022 artinya setiap file yang kita ciptakan akan mempunyai hak akses : 0 -> read/write untuk user 2 -> read only untuk group 2 -> read only untuk other Perhatikan tabel berikut : Read Write Execute 0 -> ya ya ya* 4 -> tidak ya ya* 1 -> ya ya tidak 5 -> tidak ya tidak 2 -> ya tidak ya* 6 -> tidak tidak ya* 3 -> ya tidak tidak 7 -> tidak tidak tidak Keterangan : Tanda [*] berlaku apabila yang dibuat berupa direktori. Kalau kita menginginkan user selain grup kita tidak bisa membaca, melihat ataupun menjalankan file yang baru kita buat, kita bisa merubah cadar menjadi bernomor 026: [root@localhost]# umask 026 Superuser/root dapat mengubah hak kepemilikan dari sebuah file, yaitu dengan menggunakan perintah chown, sintaksnya adalah : chown Untuk lebih jelasnya lihat contoh dibawah ini :
16
root@masaji:/usr/local/httpd/htdocs drwxr-xr-x 2 masaji masaji root@masaji:/usr/local/httpd/htdocs root@masaji:/usr/local/httpd/htdocs drwxr-xr-x 2 masaji masaji root@masaji:/usr/local/httpd/htdocs
> ls -ld coba/ 127 May 14 09:18 coba/ > chown masaji coba/ > ls -ld coba/ 127 May 14 09:18 coba/ >
Perizinan (Access Permission) dan Hak Kepemilikan File (File Ownership) Pada DOS, Filefile dan direktori dalam mempunyai atributatribut sbb : A -arsip H - Tersembunyi/hidden R - Read-only (hanya baca) dan S - System Sedangkan di Linux hanya ada H dan R, yaitu untuk 'hidden file' namafile dimulai dengan titik. Di dalam Linux, filefile selalu mempunyai hak perizinan akses (permission). Kepemilikan (owner), dan termasuk dalam grup mana. Contoh :
3. Mengubah Group Kepemilikan File Untuk mengubah group pada file, anda bisa menggunakan perintah chgrp, sintaksnya sebagai berikut : chgrp Untuk cara penggunaan, sama seperti perintah chown (lihat contoh pada perintah chown diatas )
4. Membuat File Baru Linux menyediakan perintah touch untuk membuat sebuah file kosong. Jika kita ingin membuat sebuah file kosong bernama baru di direktori /home/masaji/doc, kita tinggal mengetikkan perintah : [masaji@Linux~]$ touch doc/baru Kita bisa juga membuat file teks dengan menggunakan fasilitas pengalihan (redirection) dengan tanda '>' dan perintah cat. Misal :
17
[[email protected]]# cat > fbaru Ini contoh file baru ................... Setelah tombol Control+D ditekan, maka akan terbentuk file baru bernama 'fbaru' yang berisi seperti yang kita ketikkan, perintah ini mirip dengan perintah COPY CON pada DOS.
5. Mencari Sebuah File Jika anda ingin mencari sebuah file dan anda tidak tahu di direktori mana file tersebut berada, Linux menyediakan fasilitas untuk pencarian, yaitu dengan menggunakan perintah find atau whereis, Sintaksnya : find <expresi> Contoh : Jika anda ingin mencari file bernama WWWHowto, maka perintahnya adalah : [[email protected]]# find / -name WWW-Howto atau [root@localhost]# whereis WWW-Howto
Sistem Pemipaan Pada Linux Pada sistem operasi Linux anda diperkenankan untuk melakukan proses pemipaan atau pengalihan. Dengan menggunakan pemipaan atau pengalihan, memungkinkan suatu output dari suatu perintah bisa menjadi input dari perintah yang lain. Dengan fasilitas tersebut juga memungkinkan bagi kita untuk menyimpan keluaran dari sebuah perintah menjadi sebuah file, atau menjadikan isi dari sebuah file menjadi input dari sebuah proses. Pada Linux, pengalihan dan pemipaan dapat menggunakan: < > >> | Atau dengan wildcards, seperti: * ? nul: /dev/null
18
Penggunaan perintah untuk melakukan pencetakan dengan menggunakan sintaks: prn, lpt1:
/dev/lp0 or /dev/lp1; lpr
Pemipaan Untuk memahami konsep pemipaan, coba anda perhatikan contoh dibawah ini : [1] [root@localhost /mmm]# cat satu Ini adalah contoh dari file pertama yang akan dibandingkan dengan perintah diff apakah ada bedanya atau tidak? [2] [root@localhost /mmm]# grep 'tidak' satu [3] [root@localhost /mmm]# cat satu | grep 'tidak' Keterangan : Dengan perintah 'cat', anda dapat melihat isi dari file yang bernama 'satu', kemudian.... anda ingin menampilkan baris yang berisi kata 'tidak' dalam file yang bernama 'satu' dengan perintah : [root@localhost]# grep 'tidak' satu Dengan fasilitas pemipaan memungkinkan output dari perintah 'cat satu' menjadi input bagi perintah grep 'tidak' untuk menampilkan baris berisi kata 'tidak' hanya dalam satu baris perintah saja.
Pengalihan Pengalihan menggunakan tanda lebih dari [>] atau kurang dari [<]. Dengan pengalihan memungkinkan kita untuk mengalihkan isi sebuah file menjadi input dari sebuah proses, ataupun menjadi output. Contoh : [root@localhost /mmm]# total 92 -rw-r--r-1 root drwxr-xr-x 2 root drwxr-xr-x 2 root drwxr-xr-x 2 root drwxr-xr-x 2 root -rw-r--r-1 root -rwxr-xr-x 1 root
ls -l root root root root root root root
3409 4096 4096 4096 4096 0 130
May Apr Apr Apr May Jun Mar
17 28 28 28 7 6 1
07:27 02:34 02:33 02:33 22:18 08:54 01:46
04_2001.log 1/ 2/ 3/ 4/ coba coba.pl*
19
-rw-r--r-1 root root 62355 May 8 02:15 dialer.c [root@localhost /mmm]# ls -l > isi [root@localhost /mmm]# cat isi total 92 -rw-r--r-1 root root 3409 May 17 07:27 04_2001.log drwxr-xr-x 2 root root 4096 Apr 28 02:34 1/ drwxr-xr-x 2 root root 4096 Apr 28 02:33 2/ drwxr-xr-x 2 root root 4096 Apr 28 02:33 3/ drwxr-xr-x 2 root root 4096 May 7 22:18 4/ -rw-r--r-1 root root 0 Jun 6 08:54 coba -rwxr-xr-x 1 root root 130 Mar 1 01:46 coba.pl* -rw-r--r-1 root root 62355 May 8 02:15 dialer.c -rw-r--r-1 root root 0 Jun 16 13:26 isi Keterangan: Perintah 'ls -l' menghasilkan output isi dari direktori /mmm Dengan perintah 'ls -l > isi' menyebabkan file 'isi' berisi output dari perintah 'ls -l'.
Mengenal Proses pada Linux Pada mesin Linux kita mengenal istilah proses latar belakang dan latar depan. Latar depan adalah sebuah proses yang berjalan langsung di depan kita, sementara kendali utuh dari terminal kita dipegang oleh program yang sedang berjalan, sedangkan pada proses latar belakang, sementara program berjalan sebagai latar belakang, kita dapat melakukan tugas lain. Untuk menjalankan sebuah program menjadi proses yang berjalan di latar belakang kita bisa menambahkan tanda '&' setelah pemanggilan file. Contoh : [root@localhost]# ppp-on & Untuk melihat berapa proses yang sedang berjalan : [masaji@linux~] $ ps ax Ini akan menampilkan daftar dari semua proses yang sedang berjalan. Anda mungkin membutuhkan untuk menghentikan / mematikan suatu proses (program) yang sedang berjalan, pada saat anda tidak mengetahui bagaimana untuk keluar. Untuk menghentikan/'mematikan' suatu proses (program) : [masaji@linux~] $ kill [PID] atau kalau anda ingin mudah dan cepat, anda bisa mengetikkan perintah :
20
[masaji@Linux~]$ killall [program] Kadang kadang proses hanya akan terhenti/termatikan dengan memberikan perintah: [masaji@linux~] $ kill -15 [PID] atau [masaji@linux~] $ kill -9 [PID] Sebagai tambahan, 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". untuk mengetahui ada berapa banyak "job" : [masaji@linux~] $ jobs Ini akan menampilkan pekerjaan/job berdasarkan nomor job, bukan berdasarkan PID mereka. Untuk menghentikan proses yang berjalan di foreground (catatan: tidak semua program bisa dihentikan dgn cara ini) , anda bisa menekan tombol CTRLC. Untuk menunda proses yang berjalan di foreground (tapi tidak selalu bisa) CTRLZ. Untuk mengirim proses yang tertunda ke background (menjadi job): [masaji@linux~] $ bg [job] Untuk membawa job ke foreground : [masaji@linux~] $ fg [job] Untuk menghentikan/membunuh job: [masaji@linux~] $ kill [%job] dimana job bernilai 1,2,3, dan seterusnya. Misalnya, kita ingin melihat PID dari proses 'kicq' : masaji@masaji:~ > ps -aux | grep kicq masaji 15333 0.0 1.2 7416 1640 ? /opt/kde/bin/kicq masaji@masaji:~ >
S
13:48
0:02
21
Terlihat "kicq" mempunyai nomor proses 15333, untuk menghentikan proses tersebut, kita ketikkan perintah : [root@localhost /]# kill 15333
Dan, terlihat bahwa proses "kicq" tersebut sudah terhenti
Berkomunikasi Antar Pengguna Linux memberikan banyak fasilitas untuk komunikasi antar pemakai, apalagi dengan dukungan TCP/IP yang penuh, memungkinkan melakukan variasivariasi baru dan pengembangan dimasa mendatang tentang komunikasi antar pemakai baik dengan pemakai Linux sendiri ataupun pemakai sistem operasi lain. Namun saat ini kita hanya akan membahas elektronicmail/surat elektronik dengan utilitas 'mail', fasilitas bercakapcakap dua arah melalui perintah write/talk, dan beberapa fasilitas dasar lainnya.
1. Electronic Mail (Email) Dengan fasilitas email (surat elektronik), memungkinkan kita untuk melakukan komunikasi dengan pengguna lain. Linux menyediakan utilitas 'mail' untuk menangani masalah pengiriman email. Untuk mengirim surat elektronik, kita bisa mengetikkan perintah: [masaji@linux ~]$ mail root Subject: Halo mas Administrator... Selamat bekerja...!!! dari masaji Cc: Jika anda tidak ingin membuat Cc (carbon copy atau tembusan) kepada user lain, silakan kosongkan pada baris Cc: Perintah mail juga mengijinkan kita untuk menggunakan fasilitas pengalihan dari file, dimana nantinya isi dari file akan menjadi isi surat dari yang kita kirimkan, contoh:
22
[masaji@linux~] $ mail root < file_isi_email
Cara Membaca Email Untuk melihat email yang masuk anda bisa mengetikkan perintah 'mail' pada prompt, Contoh : [root@localhost ~]# mail Mail version 8.1 6/6/93. Type ? for help. "/var/spool/mail/tamu": 1 message 1 new >N 1 [email protected] Tue Jan 26 17:38 16/4/29"Hallo mas Administrator..." & Message 1: From masaji Tue Jan 26 17:38:01 1999 Date: Tue 26 1999 17:38:01 +0700 From: [email protected] To: [email protected] Subject: Hallo mas Administrator... Selamat bekerja ...!!! dari masaji & quit Sebagai informasi tambahan, anda bisa menggunakan programprogram mail client seperti pine, elm, mutt, XFMail, Netscape Mail dsb yang tentunya lebih nyaman daripada menggunakan utilitas mail.
2. Mengirimkan Pesan ke Pengguna (User) lainnya Seorang user dapat mengirimkan pesan ke user lain dengan menggunakan perintah write. Contoh: user tamu ingin mengirimkan pesan tertulis ke user masaji. [tamu@localhost /]$ write masaji halo masaji ... sedang apa disana...? Setelah perintah ini diketikkan maka, di layar dari user masaji akan muncul : Message from [email protected] on tty3 at 17:43 ... halo masaji ... sedang apa disana...? EOF
23
3. Menggunakan Komunikasi Dua Arah antar Pengguna dengan "talk" Seorang pengguna dapat melakukan komunikasi dua arah dengan pengguna lainnya secara langsung atau bercakapcakap dengan pengetikan keyboard. Untuk kepentingan itu anda dapat menggunakan perintah 'talk'. Contoh: user 'tamu' ingin berkomunikasi 2 arah dengan masaji : [tamu@localhost /]$ talk masaji [Waiting for your party to respond] setelah user tamu mengetikkan perintah 'talk masaji' maka user masaji akan menerima pesan dan harus dijawab dengan : Message from [email protected] at 17:52 ... talk: connection requested by tamu@localhost talk: respond with: talk tamu@localhost Setelah muncul pesan [Connection established] di layar terminal, barulah user tersebut dapat saling berbicara dengan teks.
4. Mengirim pesan dengan menggunakan "wall" Apabila menginginkan pengiriman pesan kepada semua pengguna, dapat menggunakan perintah 'wall'. Contoh : [root@localhost /root]# wall diberitahukan kepada semuanya ... 5 menit lagi system akan down ... Setelah pesan dikirim maka di terminal masing masing user akan muncul pesan : [user@localhost ~]$ Broadcast message from root (tty3) Tue Jan 26 17:58:14 1999... diberitahukan kepada semuanya ... 5 menit lagi system akan down ...
5. Menjalankan Program Jarak Jauh (Remote) 24
Untuk menjalankan program jarak jauh secara remote, kita bisa menggunakan fasilitas telnet (port 23). Sebagai contoh, kita akan melakukan remote ke komputer yang mempunyai alamat : remote.localhost, ketikkan : [masaji@linux~]$ telnet remote.localhost
Setelah mengisi Login dan Password, silakan jalankan program yang ingin anda jalankan. Shortcut (Jalan Pintas) Tab = Melengkapi kata (Tab Completion) Ctrl + L = Membersihkan layar Ctrl + U = Membersihkan baris pengetikan Ctrl + D = Log Out atau keluar dari sistem Ctrl + C = Menghentikan proses di konsole Ctrl + alt + del = merestart komputer Ctrl + alt + F1-F6 = Berpindah dari X ke Konsole Alt + F1-F6 = Berpindah antar terminal Alt + F7-F12 = Berpindah antar X Window aktiv Alt + F2 – console
pwd (Print Working Directory) Digunakan untuk mengetahui posisi aktiv dari direktori yang anda gunakan Gunakan bila anda sedang bingung atau tersesat Sangat cocok untuk orang yang pelupa :p Menampilkan isi direktori aktiv – ls ● Menampilkan isi direktori per list – ls -l ● Menampilkan isi direktori yang tersembunyi – ls -al 25
● Untuk mengetahui opsi lainnya – man ls – Tekan tombol Q untuk keluar dari manual cd (Change DIrectory) ● Digunakan untuk berpindah ke direktori home – cd /home ● Kembali ke home direktori dimanapun berada – cd ~ ● Kembali ke direktori sebelumnya – cd ● Berpindah satu langkah ke depan – cd .. ● Berpindah dua langkah – cd ../../ ● Berpindah ke direktori root (/) – cd / mkdir (Make Directory) ● Membuat direktori baru dengan nama belajar – mkdir belajar ● Membuat direktori 3 sekaligus – mkdir -p /saya/belajar/linux ● Membuat 5 buah direktori sekaligus dibawah direktori saya – mkdir /saya/{a,b,c,d,e} rm, rmdir (Remove Directory) ● rm = untuk menghapus file atau direktori – rm [nama-file] – rm -r [nama-direktori] ● rmdir = menghapus direktori – rmdir [nama-direktori] ● Menghapus direktori linux – rm -r /saya/belajar/linux ● Menghapus direktori belajar 26
– rmdir /saya/belajar mv (Move) ● Mengganti nama file atau direktori – mv [nama-file] atau mv [nama-direktori] ● Memindah file atau direktori – mv [nama-file] [direktori-tujuan] ● Mengganti nama a dibawah direktori saya menjadi latihan – mv /saya/a /saya/latihan atau ● Masuk ke direktori saya sehingga perintahnya – mv a latihan ● Memindahkan direktori latihan ke direktori b – mv -r latihan /saya/b w, who, whoami ● w dan who perintah yang digunakan untuk mengetahui user (pengguna) yang sedang login (aktiv) didalam sistem ● whoami merupakan perintah untuk mengetahui nama user yang digunakan (aktiv) ● w, who, whoami cocok untuk memantau keamanan komputer atau masuk kedalam sistem orang lain Mengakhiri Proses ● halt, init 0 (nol), poweroff dan shutdown merupakan perintah yang digunakan untuk mengakhiri semua proses dalam sistem (mematikan komputer) ● reboot dan tiga tombol pamungkas (ctrl + alt + del) merupakan perintah untuk merestart komputer
27