iii
DAFTAR ISI
KATA PENGANTAR ………………………………………………………………. ii
DAFTAR ISI ………………………………………………………………………… iii
BAB I PENDAHULUAN
1...
iv
6.3 Talk ……………………………………………………………… 46
BAB VII MANAJEMEN PROSES
7.1 Background Proses.......................................
Halaman : 1
Sistem Operasi 2 : Linux
BAB I
PENDAHULUAN
(Pertemuan 1 )
Sistem Operasi adalah software yang mengatur dan men...
Halaman : 2
Sistem Operasi 2 : Linux
Sebagai sistem operasi modern Linux mendukung banyak sekali hardware yang
beredar di ...
Halaman : 3
Sistem Operasi 2 : Linux
Login : dsn970210
Password : ********
[dsn970210@omega /home/dsn970210]$
Pengguna sys...
Halaman : 4
Sistem Operasi 2 : Linux
[dsn970210@omega /home/dsn970210]$passwd
Changing password for dsn970210
(current) LI...
Halaman : 5
Sistem Operasi 2 : Linux
Menampilkan isi file text yang tercompresi
$ zcat data.txt.gz
Mengembalikan file dala...
Halaman : 6
Sistem Operasi 2 : Linux
Latihan :
1. Bagaimanakah cara mengganti prompt, dari prompt yang aktif saat ini
menj...
Halaman : 7
Sistem Operasi 2 : Linux
BAB II
INSTALASI SISTEM OPERASI
(Pertemuan 2 dan 3)
2.1 Source Instalasi Slackware
Se...
Halaman : 8
Sistem Operasi 2 : Linux
libraries, gdb debugger, Fortran, ncurses, clisp, f2c, p2c, Pascal, perl, dan rcs.
Di...
Halaman : 9
Sistem Operasi 2 : Linux
Catatan :
Di Linux dan sistem Unix lainnya, tampilan grafis dijalankan dengan sistem
...
Halaman : 10
Sistem Operasi 2 : Linux
Sebelum mulai instalasi, ada beberapa hal yang perlu disiapkan :
1. Usahakan untuk m...
Halaman : 11
Sistem Operasi 2 : Linux
4. Setelah selesai, keluarkan disket dan beri label boot disk. Pindah ke direktori
r...
Halaman : 12
Sistem Operasi 2 : Linux
Setelah muncul prompt Linux Slackware dan siap untuk instalasi. Langkah
berikutnya a...
Halaman : 13
Sistem Operasi 2 : Linux
Untuk mengetahui partisi yang saat ini sudah terbentuk dapat ditampilkan
menggunakan...
Halaman : 14
Sistem Operasi 2 : Linux
Pada Partition Number atau nomor partisi, isi 2, karena partisi satu sudah terisi Ms...
Halaman : 15
Sistem Operasi 2 : Linux
Dari tampilan di atas, tabel 3 partisi yang kesemuanya primary sudah berhasil dibuat...
Halaman : 16
Sistem Operasi 2 : Linux
Setelah perubahan dilakukan, kemudian memastikan sekali lagi apakah tipe partisi
sud...
Halaman : 17
Sistem Operasi 2 : Linux
• Select ; Memilih perangkat lunak yang akan diinstal
• Instal; Memulai instalasi da...
Halaman : 18
Sistem Operasi 2 : Linux
2.5.2 Source Instalasi
Slackware akan menampilkan pilihan beberapa metode instalasi ...
Halaman : 19
Sistem Operasi 2 : Linux
K Sumber (Source) dari kernel Linux
N Networking (TCP/IP, UUCP, Mail, News)
T Progra...
Halaman : 20
Sistem Operasi 2 : Linux
2.6 Instalasi Source Program
Source program dapat dilakukan proses instalasi dengan ...
Halaman : 21
Sistem Operasi 2 : Linux
Berbeda dengan cara tradisional menggunakan file tar.gz, metode RPM membuat
user tid...
Halaman : 22
Sistem Operasi 2 : Linux
misalnya:
rpm -e emacs
Untuk uninstalasi tidak dipakai nama paket RPM tapi nama pake...
Halaman : 23
Sistem Operasi 2 : Linux
BAB III
LINUX FILE SISTEM
(Pertemuan 4 & 5)
3.1 Organisasi File
Regular file / ordin...
Halaman : 24
Sistem Operasi 2 : Linux
menjadi file /dev/fd0, CD ROM menjadi /dev/hdb bahkan
hingga memory. Yang cukup terk...
Halaman : 25
Sistem Operasi 2 : Linux
3.2 Struktur File
a. Tipe File
Dalam Linux/UNIX terdapat 5 buah tipe File. Kelima ti...
Halaman : 26
Sistem Operasi 2 : Linux
b. Ijin Akses
Setiap obyek di Linux harus mempunyai pemilik yaitu nama pemakai Linux...
Halaman : 27
Sistem Operasi 2 : Linux
Format perubahan tersebut dengan argument sebagai berikut :
Chmod [ugoa] [=+-] [rwx]...
Halaman : 28
Sistem Operasi 2 : Linux
Contoh :
r w x
1 1 1 = 7
r - -
1 0 0 = 4
r - x
1 0 1 = 5
Dari contoh diatas, jika ak...
Halaman : 29
Sistem Operasi 2 : Linux
f. User Mask (umask)
Umask menentukan ijin akses awal pada saat file atau direktori ...
Halaman : 30
Sistem Operasi 2 : Linux
Contoh :
g. Link & Symbolic Link
Link adalah sebuah teknik untuk memberikan lebih da...
Halaman : 31
Sistem Operasi 2 : Linux
Setiap kali dilakukan link, maka akan diikuti juga oleh perubahan jumlah link pada
s...
Halaman : 32
Sistem Operasi 2 : Linux
- Mengetahui informasi file (file /etc/passwd)
- Mencetak file (lp namafile)
- Membu...
Halaman : 33
Sistem Operasi 2 : Linux
BAB IV
PROSES I/O
(Pertemuan 6)
Untuk menciptakan suatu proses, diperlukan intruksi ...
Halaman : 34
Sistem Operasi 2 : Linux
Input dari direktori, output tidak ada(membuat direktori baru), bila terjadi error m...
Halaman : 35
Sistem Operasi 2 : Linux
Dari contoh diatas setelah penggunaan 2> (standard error) untuk dibelokkan ke file
e...
Halaman : 36
Sistem Operasi 2 : Linux
Dengan demikian PIPA dapat menyerderhanakan penulisan program dan eksekusi
proses se...
Halaman : 37
Sistem Operasi 2 : Linux
grep : adalah perintah yang dapat digunakan untuk pencarian isi file sesuai dengan
p...
Halaman : 38
Sistem Operasi 2 : Linux
Paste : adalah perintah yang dapat digunakan untuk menggabungkan isi file satu
denga...
Halaman : 39
Sistem Operasi 2 : Linux
BAB V
Editor Vi
(Pertemuan 7)
Vi adalah sebuah aplikasi yang dapat digunakan sebagai...
Halaman : 40
Sistem Operasi 2 : Linux
Append ( a ) : memasukkan kalimat. Kata diselipkan pada posisi setelah
kursor.
Open ...
Halaman : 41
Sistem Operasi 2 : Linux
5.2 Perintah Advance
:50 : pindah ke baris 50
:$ : pindah ke baris terakhir
:= : Men...
Halaman : 42
Sistem Operasi 2 : Linux
:10m0 : Pindahkan baris 10 ke awal
:1,10m$ : Pindahkan baris 1 sampai 10 ke akhir fi...
Halaman : 43
Sistem Operasi 2 : Linux
Konversi Huruf Kecil dan Huruf Besar
~ : Dengan menekan tombol “~“ maka huruf kecil ...
Halaman : 44
Sistem Operasi 2 : Linux
BAB VI
Komunikasi Antar Pemakai
(Pertemuan 8)
1. Elektronik Mail
Dalam Linux, mail d...
Halaman : 45
Sistem Operasi 2 : Linux
2. Write
Write adalah perintah yang digunakan untuk mengirim pesan ke user lain.
For...
Halaman : 46
Sistem Operasi 2 : Linux
jika ingin menghubungi user dsn970210 yang berada di ttyp2 maka terminal ttyp0
dirub...
Halaman : 47
Sistem Operasi 2 : Linux
Talk adalah program yang dapat digunakan untuk komuniaksi secara maya dengan
cara ke...
Halaman : 48
Sistem Operasi 2 : Linux
Utilitas mesg adalah suatu perintah yang dapat digunakan user untuk memberi ijin
wri...
Halaman : 49
Sistem Operasi 2 : Linux
Latihan :
1. Bagaimanakah urutan pengiriman email yang disertai file (attachment)
me...
Halaman : 50
Sistem Operasi 2 : Linux
BAB VII
MANAJEMEN PROSES
(Pertemuan 9)
Setiap kali instruksi diberikan pada Shell Li...
Halaman : 51
Sistem Operasi 2 : Linux
belakang. Sehingga sementara sistem sedang memprosesnya, pemakai tetap dapat
bekerja...
Halaman : 52
Sistem Operasi 2 : Linux
Semakin banyak pemakai yang sedang menggunakan sistem, semakin banyak proses
yang ak...
Halaman : 53
Sistem Operasi 2 : Linux
PID : Proses Identification Number
%CPU : Prosentasi CPU yang digunakan
%MEM : Prose...
Halaman : 54
Sistem Operasi 2 : Linux
Beberapa pilihan perintah ps, sebagai berikut :
-a : Menampilkan semua proses (terma...
Halaman : 55
Sistem Operasi 2 : Linux
Sebenarnya untuk menghentikan proses yang tidak berada pada background, cukup
dengan...
Halaman : 56
Sistem Operasi 2 : Linux
Mengirimkan hang up signal kepada daemon ined dengan PID seperti yang
terseimpan pad...
Halaman : 57
Sistem Operasi 2 : Linux
Perintah diatas dipakai untuk memperoleh semua file berakhiran *.c dari root (/)
dan...
Halaman : 58
Sistem Operasi 2 : Linux
Artinya ada dua proses di latar belakang dengan PID 300 dan 302. Pilihan (option) –l...
Halaman : 59
Sistem Operasi 2 : Linux
$ fg %1
sleep 200 &
Proses yang sedang ditangguhkan ataupun yang sedang berada di la...
Halaman : 60
Sistem Operasi 2 : Linux
dengan menulis perintah baris demi baris dan menekan enter untuk masing-masing
perin...
Halaman : 61
Sistem Operasi 2 : Linux
Perintah batch
Dalam sistem Linux tidak hanya memiliki satu perintah untuk penjadwal...
Halaman : 62
Sistem Operasi 2 : Linux
file tersebut dengan nama user. Sehingga jika usernya adalah icha, maka dapat
diguna...
Halaman : 63
Sistem Operasi 2 : Linux
Latihan :
1. Bagaimanakah perintah untuk menampilkan semua proses yang dijalankan
ol...
Halaman : 64
Sistem Operasi 2 : Linux
BAB VIII
SHELL
(Pertemuan 10 dan 11)
Shell adalah “command Executive”, artinya progr...
Halaman : 65
Sistem Operasi 2 : Linux
Shell mana yang akan dipakai pengguna Linux, dapat dipilih saat membuat account
baru...
Halaman : 66
Sistem Operasi 2 : Linux
.bash_login
File .bash_login juga terletak dalam direktori home user. Urutan
pengeks...
Halaman : 67
Sistem Operasi 2 : Linux
Untuk menampilkan instruksi yang telah dilakukan dengan menjalankan command
history....
Halaman : 68
Sistem Operasi 2 : Linux
Intruksi dapat diedit dengan menggunakn fasilitas editor, misalnya editor vi.
Penggu...
Halaman : 69
Sistem Operasi 2 : Linux
Untuk menghasilkan sebuah prompt NamaUser@NamaMesin didirectory x $ jika
dituliskan ...
Halaman : 70
Sistem Operasi 2 : Linux
Contoh Program BASH
Eksekusi menggunakan . prg1.sh berarti adalah eksekusi shell, se...
Halaman : 71
Sistem Operasi 2 : Linux
$1 Parameter Pertama
$2 Parameter Kedua
${10} Parameter ke sepuluh
$* Semua paramete...
Halaman : 72
Sistem Operasi 2 : Linux
Hasil :
Saya hendah belajar Bourne Shell.
2. tanda( $ )
Digunakan untuk melihat isi ...
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Slackware indonesia
Upcoming SlideShare
Loading in …5
×

Slackware indonesia

1,036 views

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,036
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
44
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Slackware indonesia

  1. 1. iii DAFTAR ISI KATA PENGANTAR ………………………………………………………………. ii DAFTAR ISI ………………………………………………………………………… iii BAB I PENDAHULUAN 1.1 Sejarah Linux …………………………………………………… 1 1.2 Memulai Sistem …………………………………………………. 2 1.3 Perintah-perintah sederhana …………………………………… 4 BAB II INSTALASI SISTEM OPERASI 2.1 Source Instalasi Slackware ……………………………………. 7 2.2 Persiapan Instalasi ………..……………………………………9 2.3 Instalasi dengan Bootdisk ……………………………………..10 2.4 Partisi Hard disk ………………………………………………. 12 2.5 Proses Setup ……………………………………………………16 2.6 Instalasi Source Program …………………………………… 20 2.7 Instalasi Redhat Packet Manager …………………………….. 20 BAB III SISTEM FILE 3.1 Organisasi File …………………………………………………. 23 3.2 Struktur File ………………………………………………….25 3.3 Perintah-perintah File …………………………………………... 31 3.4 Perintah-perintah Direktori ……………………………………… 32 BAB IV PROSES INPUT/OUTPUT 4.1 File Descriptor ………………………………………………… 33 4.2 Redirection ……………………………………………………. 34 4.3 Append ………………………………………………………... 35 4.4 PIPA ………………………………………………………….. 35 4.5 Filter …………………………………………………………… 36 BAB VEDITOR 5.1 Perintah Dasar ……………………………………………….. 39 5.2 Perintah Advance ……………………………………………… 41 BAB VI KOMUNIKASI ANTAR PEMAKAI 6.1 Elektronik Mail …………………………………………………. 44 6.2 Write …………………………………………………………….. 45
  2. 2. iv 6.3 Talk ……………………………………………………………… 46 BAB VII MANAJEMEN PROSES 7.1 Background Proses................................................................ 50 7.2 Status Proses …………………………………………………… 51 7.3 Menghentikan Proses (kill) …………………………............. 54 7.4 Jobs ……………………………………………………………... 56 7.5 Penjadwalan Proses ……………………………………………. 59 BAB VIII SHELL 8.1 Profile ………………………………………………………….. 65 8.2 History ………………………………………………………… 66 8.3 Prompt String ……………………………………………………. 68 8.4 BASH Script ……………………………………………………. 69 8.5 Dialog …………………………………………………………… 76 BAB IX ADMINISTRASI USER DAN GROUP 9.1 User Identitas …………………………………………………… 80 9.2 Group Identifier …………………………………………………. 84 9.3 Superuser ……………………………………………………… 87 BAB XKERNEL 10.1 Download Kernel …………………….......……………………….. 90 10.2 Konfigurasi Kernel ……………………......……………………….. 91 10.3 Kompile Kernel dan Modul ................................................ 91 10.4 Instalasi Kernel................................................................... 92 10.5 Patch Kernel ………………………………..………………………… 93 10.6 Lilo ………………………………………………………………………. 94 BAB XI SISTEM BACKUP DAN RECOVER 11.1 Program cp ……………………….…………………………………….100 11.2 Program dd ……………………….……………………………………100 11.3 Program tar ……………………..……………………………………. 101 BAB XI KONEKSI JARINGAN 12.1 Perintah modprobe ………….…………………………………….. 103 12.2 Perintah ifconfig ……………..…………………………………….. 104 12.3 Perintah route ………………..……………………………………... 106 12.4 Menentukan DNS ………….………………………………………. 107 DAFTAR PUSTAKA ……………………….………………………………………. 109
  3. 3. Halaman : 1 Sistem Operasi 2 : Linux BAB I PENDAHULUAN (Pertemuan 1 ) Sistem Operasi adalah software yang mengatur dan mengkoordinasikan interaksi (proses) antar pemakai, sumber daya (resource) satu dengan yang lainnya. Sumber daya dapat berupa peralatan perangkat keras, memori, paket data dan layanan (service) lainnya. 1.1 Sejarah Linux Linux adalah Unix clone, kernel nya ditulis oleh Linus Torvalds dan dikembangkan dengan bantuan programer dan hackers dari seluruh dunia. Ide mengenai Linux oleh Torvald (mahasiswa Universitas Helsinki Finlandia) di munculkan sejak bulan Agustus 1991 melalui Internet Newsgroup pada pesannya yang berbunyi : Hello everybody out there using minix – I’m doing a (free) operating system (just hobby, won’t be big and professional like gnu) for 386(486) AT clones. Linux kernel dibungkus oleh library dan utilitas POSIX (Portable Operating System Interface Definition) yang dibakukan oleh organisasi standar dunia untuk UNIX, sehingga LINUX disebut sebagai UNIX-clone. Kontribusi yang cukup besar untuk LINUX berasal dari Free Software Foundation dengan proyek yang dikenal sebagai GNU (Gnu is Not Unix). Salah satu produk keluaran GNU yang paling terkenal adalah C-compiler gcc. Linux pertama kali dikembangkan untuk PC berbasis 386/486 dan kemudian dikembangkan juga untuk mesin-mesin lain. Hingga saat ini Linux juga berjalan di mesin-mesin DEC Alpha, SUN Sparcs, M68000 (seperti Atari dan Amiga), MIPS serta PowerPC. Linux bisa berjalan hanya dengan 150MB spasi hard disk, 2 MB RAM tapi secara realistis tentunya dibutuhkan ruang lagi untuk development tools, data dan sebagainya maka dibutuhkan sekitar 250MB spasi hard disk dan 12-16MB RAM. Kebutuhannya akan meningkat bila kelak dipasang Xwindow dsb.
  4. 4. Halaman : 2 Sistem Operasi 2 : Linux Sebagai sistem operasi modern Linux mendukung banyak sekali hardware yang beredar di pasaran tapi beberapa memang tidak didukung karena masalah teknis atau sekelompok sukarelawan sedang sedang mengusahakan driver-nya. Linux merupakan sistem operasi free, artinya Linux dapat didistribusikan tanpa harus membayar lisensi kepada penciptanya. Linux dapat di ambil (download) dari situs di Internet baik dengan melalui FTP maupun WEB. Linux memiliki semua feature yang dimiliki oleh Unix, termasuk multitasking, virtual memory, shared libraries, demand loading, shared copy-on-write exexutables, proper memory management dan TCP/IP networking. Untuk mempelajari sistem operasi, Linux sangat tepat digunakan karena sistem operasi Linux memperkenankan pengguna mengetahui kode sumber (source code). Dengan kebebasan untuk mengembangkan kode sumber, memudahkan seseorang mempelajari bagaimana sistem operasi disusun, dikembangkan dan juga diciptakan. Linux yang merupakan keluarga UNIX, memiliki fitur/kemampuan seperti halnya UNIX. Beberapa fitur tersebut diantaranya : - Multi tasking dan dukungan 32 bit; mampu menjalankan beberapa perintah secara bersamaan, dan dengan memanfaatkan model terlindung (protected mode) dari Intel 80836 keatas, Linux merupakan sistem operasi 32 bit. - Multiprocessor - MultiThreading, dapat menciptakan sub proses dengan cara effisien - Job Scheduler dan spooler - Security, login dengan password, ownership, group - Memperlakukan file dan peralatan secara konsisten - Pembelokan I/O, pipe dan filter - Local & Network File System 1.2 Memulai Sistem Setiap pemakai Linux harus mempunyai nama login (user account) yang sebelumnya harus didaftarkan pada Administrator System. Nama login umumnya dibatasi maksimum 8 karakter dan umumnya dalam huruf kecil.
  5. 5. Halaman : 3 Sistem Operasi 2 : Linux Login : dsn970210 Password : ******** [dsn970210@omega /home/dsn970210]$ Pengguna system Linux harus menggunakan tipe terminal tertentu karena tipe terminal di Linux sangat beragam dan tipe terminal yang digunakan harus disesuaikan. Untuk mengubah tipe terminal, dapat digunakan shell-variabel TERM seperti berikut : $TERM=ansi $xport TERM Untuk melihat tipe terminal yang sedang digunakan, dengan perintah : $ echo $TERM Dalam sistem operasi Linux dapat digunakan instruksi id dari prompt shell untuk mengetahui informasi lengkap mengenai user bersangkutan : $ id uid=500(dsn970210) gid=100(users) groups=100(users) Linux memberikan setiap pemakai sebuah nomor id yaitu 500 pada contoh diatas. UID ini adalah uniq (tunggal), artinya tidak digunakan oleh pemakai lain. Group adalah kelompok pemakai, dimana kelompok ini umumhya bekerja pada proyek atau aplikasi yang sama. UID dan nama login disimpan pada file yang bernama /etc/passwd , sedangkan GID disimpan pada file /etc/group. Untuk proses authentication, diperlukan password. Password digunakan untuk memproteksi akses, yaitu menghindari pemakaian sistem bagi orang yang tidak berhak. Orang yang berhak memakai nama login adalah orang yang mengenal password account tersebut. Password dapat diubah dengan ketentuan : - Sebaiknya terdiri atas minimal 6 karakter - Merupakan campuran dari alpabet dan numerik atau karakter lainnya. - Jangan memilih nama sendiri, nama keluarga, tanggal lahir, nama perusahaan atau apapun yang mudah ditebak.
  6. 6. Halaman : 4 Sistem Operasi 2 : Linux [dsn970210@omega /home/dsn970210]$passwd Changing password for dsn970210 (current) LINUX password : New LINUX password : ******* Retype new LINUX password : ******* Passwd : all authentication tokens updated sucessfully Pada saat login, maka user akan berada pada direktori HOME dan dapat dilihat sebagai berikut : $ pwd /home/dsn970210 Dari perintah tersebut, diketahui direkroti HOME pemakai dalam hal ini dsn970210 yang berada di /home/970210. Perintah pwd adalah print working directory, yaitu menampilkan direktori dimana saat ini user berada. Untuk keluar dari sistem dapat dilakukan dengan menjalankan instruksi : logout, exit atau (CTRL + d). 1.3 Perintah-perintah sederhana : Cara mengganti prompt [dsn970210@omega /home/dsn970210]$PS1=”$ “ $ Menampilkan tanggal sistem $ date Mon Apr 12 08:30:45 JAVT 2004 Meng-copy suatu file menjadi file lain $ cp f1 f2 Mencari sebuah string dalam suatu file $ grep anjik /etc/passwd Melakukan kompresi file $ gzip data.txt
  7. 7. Halaman : 5 Sistem Operasi 2 : Linux Menampilkan isi file text yang tercompresi $ zcat data.txt.gz Mengembalikan file dalam format un-kompres (dinormalkan) $ gunzip data.txt.gz Perintah untuk mencari informasi tentang utilitas tertentu dengan : which, whereis dan apropos. Perintah which digunakan untuk mencari instruksi dengan nama yang sama pada direksori yang berbeda. Which bermanfaat untuk mencari duplikasi utilitas yang ada di Linux. $which echo Perintah whereis digunakan untuk mencari PATH apa saja yang mengandung sebuah kata.Berikut contoh penggunaan perintah whereis untuk mencari kata stikom. $whereis passwd /usr/bin/passwd Perintah apropos dapat digunakan untuk mencari kunci kata yang dapat ditemukan pada linux direktori. $apropos passwd SSL_CTX_set_default_passwd_cb, SSL_CTX_set_default_passwd_cb_userdata (3) - set passwd callback for encrypted PEM file handling htpasswd (1) - Create and update user authentication files kpasswdd (8) - Kerberos 5 password changing server login_passwd (8) - provide standard password authentication type passwd (1) - modify a user's password passwd (5) - format of the password file passwd.conf (5) - format of the password configuration file pw_dup (3) - make a copy of a struct passwd pw_getconf (3) - passwd configuration access function pw_init, pw_setdir, pw_file, pw_edit, pw_prompt, pw_copy, pw_scan, pw_error (3) - utility functions for interactive passwd file updates pw_lock, pw_mkdb, pw_abort (3) - passwd file update functions rpc.yppasswdd (8) - YP update password file daemon ldappasswd (1) - change the password of an LDAP entry smbpasswd (5) - The Samba encrypted password file smbpasswd (8) - change a user's SMB password
  8. 8. Halaman : 6 Sistem Operasi 2 : Linux Latihan : 1. Bagaimanakah cara mengganti prompt, dari prompt yang aktif saat ini menjadi “:>“ 2. Bagaimana perintah untuk merubah tanggal sistem dengan perintah date ? 3. Bagaimana perintah untuk meng-copy file dari /etc/passwd menjadi file f1 di direktori saat ini ? 4. Bagaimana cara mengganti nama file f1 menjadi f2 5. Bagaimanakah perintah untuk mencari string nama anda dari file f2 ? 6. Perintah untuk menampilkan 10 baris awal ? 7. Apa yang terjadi jika dijalankan perintah $sort f2 ? 8. Dari baris perintah dijalankan perintah $gzip f2 , apa yang terjadi terhadap file f2 setalh perintah tersebut dijalankan. Jelaskan! 9. Apa fungsi dari perintah zcat ? Jika dijalankan perintah $zcat f2.gz, jelaskan apa yang terjadi terhadap file tersebut ? 10. Bagaimanakah caranya untuk mengembalikan file f2.gz menjadi bentuk aslinya sebelum dilakukan kompresi ?
  9. 9. Halaman : 7 Sistem Operasi 2 : Linux BAB II INSTALASI SISTEM OPERASI (Pertemuan 2 dan 3) 2.1 Source Instalasi Slackware Sebelum dilakukan instalasi, terlebih dahulu mengetahui isi dari CD Insteller Linux Slackware. Beberapa direktori dalam CD Installer Slackware yang penting adalah: • Slakware; berisi program sumber instalasi. Isi direktori ini akan direview nanti • bootdsks.144; berisi file untuk membuat boot disk format 1.44 • rootdsks; berisi image file root disk, termasuk di dalamnya skrip setup • kernels; berisi kumpulan precompiled kernel untuk berbagai macam jenis perangkat keras. Pada tahap instalasi, direktori yang perlu diperhatikan adalah direktori Slakware karena berisi paket program yang dikelompokkan dalam beberapa kategori yang disebut disk set, antara lain : 1. Paket Aplikasi Disk Set A Berisi program dasar untuk menjalankan Linux Slackware. Program disini cukup untuk dimuat dalam Disket 1.22. Instal program dari sini saja cukup untuk menjalankan Linux, dengan editor teks Elvis dan beberapa program komunikasi, serta sistem file standard (file system standard /FSSTND). Disk Set A membutuhkan 25 MB. 2. Disk Set AP Berisi aplikasi yang sering dijalankan di Linux. Di antaranya man pages, groff, ispell (GNU and international versions), term, joe, jove, ghostscript, Midnight Commander (seperti Norton Commander di DOS), bc, dan quota. Disk Set AP membutuhkan 20 MB. 3. Disk Set D Berisi program pengembangan. Beberapa diantaranya GCC/G++/Objective C compiler make (GNU and BSD), byacc dan GNU bison, flex, library C
  10. 10. Halaman : 8 Sistem Operasi 2 : Linux libraries, gdb debugger, Fortran, ncurses, clisp, f2c, p2c, Pascal, perl, dan rcs. Disk Set D membutuhkan 48 MB. 4. Disk Set E Berisi program paket editor teks GNU emacs 20.3. Disk Set E membutuhkan 35 MB. 5. Disk Set F Berisi koleksi FAQ, HOWTO, Mini-HOWTO, dan dokumentasi lainnya. Set ini berisi banyak sekali informasi bermanfaat. Disk Set F membutuhkan 11 MB. 6. Disk Set K Berisi kode sumber kernel (Kernel Source Code). Dapat mempergunakannya untuk mengkompilasi ulang kernel. Disk Set K membutuhkan 27 MB. 7. Disk Set N Berisi aplikasi pendukung jaringan. Termasuk di dalamnya dukungan TCP/UUCP, SLIP, PPP untuk koneksi ke Internet. Program pendukungnya adalah browser Lynx basis teks, Apache Web Server, Pine, Elm, Trn dan aplikasi Internet lainnya. 8. Disk Set N membutuhkan 23 MB. Disk Set T Berisi program format teks TEX and LA TEX2. TEX merupakan program terkenal dan canggih dalam format teks, termasuk penggunaan ekspresi matematis. Disk Set T membutuhkan 42 MB. 9. Disk Set TCL Berisi paket program pengembangan dari keluarga itcl, diantaranya Tcl dan Tk dapat dipakai untuk menyusun program yang dijalankan dibawah sistem X Window. Disk Set TCL membutuhkan 7 MB. 10. Disk Set X Berisi program dasar sistem Xfree86 3.3.2 dari MIT. Di dalamnya termasuk Library dan grafis antar muka pemakai yang dapat dijalankan di sistem Slackware. Disk Set X membutuhkan 70 MB.
  11. 11. Halaman : 9 Sistem Operasi 2 : Linux Catatan : Di Linux dan sistem Unix lainnya, tampilan grafis dijalankan dengan sistem client server. Sedangkan untuk tampilannya bisa dipilih bermacam macam, disebut Window Manager. Beberapa Window Manager yang terkenal adalah Gnome, KDE (K Desktop Evironment), Window Maker dan sebagainya. 11. Disk Set XAP Berisi berbagai macam aplikasi yang dijalankan di X, seperti Window Manager fvwm, fvwm95, browser grafis (arena& Netscape) dan berbagai macam game X. Disk Set XAP membutuhkan 65 MB. 12. Disk Set XD Berisi program pengembangan X. Termasuk di dalamnya X11 libraries, server linkkit, dan PEX support. Disk Set XD membutuhkan 14 MB. 13. Disk Set XV Xview yang mendukung Open Look window Manager yang biasa dijalankan pada mesin SUN. Termasuk pula di dalamnya program compiler Xview. Disk Set XV membutuhkan 11 MB. 14. Disk Set Y Berisi berbagai macam game yang dijalankan di atas console (tidak membutuhkan tampilan grafis). Disk Set Y membutuhkan 8 MB. 2.2 Persiapan Instalasi Dalam melakukan instalasi sistem operasi Linux Slackware kebutuhan perangkat keras Minimal CPU dengan prosesor 80836 atau 80846 sudah bisa menjalankan Linux. Memori minimal 4 hingga 8 Megabyte, dan paling tidak 16 Megabyte jika ingin menjalankan aplikasi X. Hard disk, IDE maupun SCSI dengan ukuran hard disk yang dibutuhkan minimal 20 Megabyte untuk menginstal aplikasi dasar Linux. Jika semua program diinstal paling tidak membutuhkan spasi hard disk hingga 400 Megabyte.
  12. 12. Halaman : 10 Sistem Operasi 2 : Linux Sebelum mulai instalasi, ada beberapa hal yang perlu disiapkan : 1. Usahakan untuk mencatat perangkat keras yang akan digunakan. Perangkat keras tersebut meliputi monitor, VGA card, Mouse, Hard disk dan CDROM (untuk yang SCSI), dan perangkat keras khusus lainnya. 2. Back up data-data yang penting. Meskipun penyusunan partisi dan format partisi di Linux dapat dijalankan secara aman tanpa mengganggu data yang ada, namun bisa saja terjadi salah ketik atau salah pilih yang membuat semua data hilang. 3. Siapkan partisi khusus untuk Linux. Jika sistem operasi yang ada tidak memungkinkan untuk diinstal ulang, gunakan program penambahan partisi seperti Partition Magic (program komersial) atau fips yang disertakan dalam CD. Dengan program tersebut dapat dlakukan penambahan partisi dari sisa hard disk kosong, tanpa harus menghapus partisi yang sudah ada. Lebih mudah jika menghapus semua partisi dalam hard disk, kemudian dipisah menjadi tiga hingga empat partisi. Satu untuk instal Windows (jika perlu), sistem file Linux, dan Swap Linux. 2.3 Instalasi dengan Boot Disk 1. Masuk ke DOS prompt A:> 2. Pindah ke direktori Bootdsks.144 A:>cd d:Bootdsks.144 D:Bootdsks.144> 3. Masukkan disket kosong ke dalam drive disket. Jalankan rawrite untuk menuliskan program boot Linux kedalam disket. Pilih image sesuai dengan perangkat keras D:Bootdsks.144>rawrite bare.I a: #untuk perangkat keras IDE secara umum D:Bootdsks.144>rawrite scsi.s a: #untuk perangkat keras SCSI secara umum
  13. 13. Halaman : 11 Sistem Operasi 2 : Linux 4. Setelah selesai, keluarkan disket dan beri label boot disk. Pindah ke direktori root disk. D:Bootdsks.144>cd ../rootdsks D:rootdsks> 5. Jalankan kembali rawrite untuk menuliskan root disk ke dalam disket. D:rootdsks>rawrite color.gz a: # untuk monitor color D:rootdsks>rawrite text.gz a: # untuk monitor monokrom D:rootdsks>rawrite pcmcia.gz a: # untuk instalasi pada laptop dengan dukungan pcmcia D:rootdsks>rawrite rescue.gz a: # untuk membuat disket rescue D:rootdsks>rawrite umsdos.gz a: # untuk menginstal Slackware pada partisi UMSDOS 6. Setelah selesai, keluarkan disket, dan beri label root disk. 7. Masukkan boot disk ke drive a, kemudian booting komputer. 8. Pada awal Booting akan terlihat tulisan LILO, dan tampil pesan dari boot linux. Setelah muncul Lilo dan pilihannya dapat memilih dan menekan enter jika setuju. Kernel akan mencoba mengenali perangkat keras. Perhatikan hingga sampai pada teks : VFS: Insert root floppy disk to be loaded into ramdisk and press enter 9. Keluarkan boot disk, dan ganti dengan root disk. Tekan Enter. Root disk akan dimuat dalam memory. Kemudian login sebagai root. Slackware login : root #
  14. 14. Halaman : 12 Sistem Operasi 2 : Linux Setelah muncul prompt Linux Slackware dan siap untuk instalasi. Langkah berikutnya adalah menyiapkan ruang untuk file Linux. Partisi hard disk diasumsikan sudah menyiapkan partisi kosong. Jika belum, maka perlu melakukannya terlebih dahulu dengan program Partition Magic yang harus dibeli secara terpisah atau Fips yang disertakan dalam CD. Catatan : Kemampuan Fips terbatas, dan tidak ada garansi jika mengalami error dalam menjalankannya. Untuk itu, back up data sangat diperlukan. Atau lebih mudah jika partisi ulang semuanya dengan menggunakan fdisk. 2.4 Partisi Harddisk Hard disk untuk bisa diisi sistem operasi, membutuhkan satu wadah, yang dinamakan partisi. Jika terbiasa menggunakan Microsoft, partisi disimbolkan dengan Drive. Misal, Drive C:(partisi pertama) Drive D:(partisi kedua) dan seterusnya. Dengan membagi hard disk ke dalam beberapa partisi dapat menjalankan berbagai sistem operasi secara bersamaan. Misalnya Linux - Windows 98 - Windows NT. Partisi dikategorikan dalam tiga jenis. Primary, Extended dan Logical Partition. Partisi utama, disebut primary, dalam satu hard disk maksimal hanya 4 partisi. Jika ingin lebih dari 4 partisi, maka perlu dibuat extended partition yang bisa memuat logical partition dengan jumlah lebih banyak. Jadi data hanya terletak di partisi primary atau logical, sedangkan extended hanya merupakan wadah dari partisi logical.
  15. 15. Halaman : 13 Sistem Operasi 2 : Linux Untuk mengetahui partisi yang saat ini sudah terbentuk dapat ditampilkan menggunakan perintah p pada prompt partisi. Perhatikan contoh berikut ini : Dari tampilan partisi di atas, hard disk diwakili dengan /dev/hda, hanya mempunyai satu partisi, yakni /dev/hda1. Di MSDOS ataupun windows biasa melihatnya sebagai Drive C. Partisi tersebut mempunyai sistem file DOS 16-bit, dan menempati silinder 2 hingga 204. Cara pembuatan partisi baru, seperti pada tahapan berikut : # fdisk Using /dev/hda as default device! Command (m for help): m # ketik m dan tekan enter a toggle bootable flag b edit bsd dick label c toggle the DOS compatibility flag d delete a partition l list of known partition types m print this menu n add new partition o create a new empty DOS partition table q quit without saving changes t change partition system ID u change display /entry units v verify partition table w write table to disk and exit x extra functionality (expert only) Disk /dev/hda: 16 heads, 63 sectors, 1024 cylinders Units = cylinders of 1008 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/hda1 * 2 2 126 63000 6 DOS 16-bit>=32M
  16. 16. Halaman : 14 Sistem Operasi 2 : Linux Pada Partition Number atau nomor partisi, isi 2, karena partisi satu sudah terisi Ms DOS. First cylinder adalah silinder pertama yang dipakai partisi ke dua ini. Last cylinder, bisa isikan nomor silinder, atau +xM, dimana x adalah jumlah Megabyte yang diinginkan, atau +xK, dimana x adalah jumlah Kilobyte yang diinginkan. Sebagai contoh, untuk menambah satu partisi lagi, yakni partisi ke-3 dengan ukuran 10 Mbyte, sebagai berikut : Dengan terbentuknya partisi ke-3 dari dua partisi yang sudah dibuat, dapat dilihat hasilnya dengan menekan perintah p. Dengan perintah p tersebut dapat diketahui informasi partisi yang dibuat tersebut menempati cilinder berapa. Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First cylinder (204-683): 204 Last cylinder or +size or +sizeM or +sizeK (204-683): +80M Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 3 First cylinder (474-683): 474 Last cylinder or +size or +sizeM or +sizeK (474-683): +10M
  17. 17. Halaman : 15 Sistem Operasi 2 : Linux Dari tampilan di atas, tabel 3 partisi yang kesemuanya primary sudah berhasil dibuat. Untuk partisi extended biasanya dimulai dari angka 5 ke atas. Misalnya /dev/hda5, /dev/hda6 dan seterusnya. Lanjutkan dengan mengganti system ID atau format sistem file untuk menambahkan swap. Swap adalah bagian dari Hard disk, baik berupa file atau satu partisi penuh yang dipakai sebagai virtual memory. Swap sangat membantu jika punya memory fisik yang terbatas. Command (m for help): p Disk /dev/hda: 16 heads, 38 sectors, 683 cylinders Units = cylinders of 608 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/hda1 * 1 1 203 61693 6 DOS 16-bit >=32M /dev/hda2 204 204 473 82080 83 Linux native /dev/hda3 474 474 507 10336 83 Linux native Command (m for help): t Partition number (1-4): 3 Hex code (type L to list codes): L 0 Empty 9 AIX bootable 75 PC/IX b7 BSDI fs 1 DOS 12-bit FAT a OS/2 Boot Manag 80 Old MINIX b8 BSDI swap 2 XENIX root 40 Venix 80286 81 Linux/MINIX c7 Syrinx 3 XENIX usr 51 Novell? 82 Linux swap db CP/M 4 DOS 16-bit <32M 52 Microport 83 Linux native e1 DOS access 5 Extended 63 GNU HURD 93 Amoeba e3 DOS R/O 6 DOS 16-bit>=32 64 Novell Netware 94 Amoeba BBT f2 DOS secondary 7 OS/2 HPFS 65 Novell Netware a5 BSD/386 ff BBT 8 AIX Command (m for help): t Partition number (1-4): 3 Hex code (type L to list codes): 82
  18. 18. Halaman : 16 Sistem Operasi 2 : Linux Setelah perubahan dilakukan, kemudian memastikan sekali lagi apakah tipe partisi sudah berubah. Terlihat bahwa /dev/hda3 telah berubah dari Linux native menjadi Linux swap. Langkah berikutnya adalah menyimpan tabel partisi yang telah dibuat. Command (m for help): w Setelah ditekan perintah w kemudian akan kembali ke shell prompt. Setelah itu lanjutkan dengan instalasi. Pertama , aktifkan swap yang telah dibuat sebelumnya # mkswap /dev/hda3 # swapon 2.5 Proses Setup Setelah mengaktifkan swap, jalankan skrip setup dari Slackware. # setup Akan muncul menu : • Help ; File help dari slackware, menyangkut instalasi • Key Map ; Memetakan keyboard, jika menggunakan keyboard non english • Swap ; Membuat dan mengaktifkan swap file • Target; Menentukan direktori tempt Linux akan diinstal • Source ; Menentukan direktori sumber file yang akan diinstal Command (m for help): p Disk /dev/hda: 16 heads, 38 sectors, 683 cylinders Units = cylinders of 608 * 512 bytes Device Boot Begin Start End Blocks Id System /dev/hda1 * 1 1 203 61693 6 DOS 16-bit >=32M /dev/hda2 204 204 473 82080 83 Linux native /dev/hda3 474 474 507 10336 82 Linux swap
  19. 19. Halaman : 17 Sistem Operasi 2 : Linux • Select ; Memilih perangkat lunak yang akan diinstal • Instal; Memulai instalasi dari paket program yang telah dipilih sebelumnya • Configure ; Mengkonfigurasikan Linux sebelum di restart • Exit ; Selesai instalasi dan keluar Perlu dicatat bahwa menu tersebut merupakan urutan instalasi yang harus dipilih satu demi satu. Untuk memulai instalasi, dapat abaikan dua menu pertama. Secara default, akan ditanya apakah akan memasukkan /dev/hda3 sebagai swap. Jika ya, maka Slackware akan menjalankan perintah mkswap untuk memformat /dev/hda3 dengan file sistem swap, kemudian mengaktifkannya dengan perintah swapon. Karena perintah ini telah dilakukan sebelumnya, dapat abaikan. Yang penting adalah memasukkan /dev/hda3 ke dalam file fstab sehingga saat Linux boot dapat langsung menggunakan swap. Catatan : Linux menuliskan semua sistem file dan device yang dipergunakan ke dalam file /etc/fstab. Saat akan dipergunakan dengan perintah mount, Linux akan membaca file ini. Device yang dipergunakan termasuk semua hard disk dan partisinya, CDROM, floppy dan device untuk back up. Untuk lebih jelasnya, ketikkan man fstab pada shell prompt. 2.5.1 Target Instalasi Secara default akan muncul /dev/hda2 sebagai satu-satunya Linux native yang ada dalam partisi yang sudah dibuat. Jika membuat lebih dari satu partisi yang berisi Linux native, Slackware akan menanyakan mount point dari masing-masing partisi. Misalnya /dev/hda5 mount pointnya /, lalu /dev/hda6 mount pointnya /usr/local dan seterusnya. Pada bagian ini ditanyakan pula apakah akan mengaitkan (mounting)/dev/hda1 dengan sistem file DOS? Mengaitkan /dev/hda1 memungkinkan membaca file-file yang berada dalam lingkungan DOS/Windows dari Linux. Selesai mengkonfigurasikan partisi di mana Linux akan diinstal, lanjutkan dengan sumber di mana file Linux Slackware binary berada.
  20. 20. Halaman : 18 Sistem Operasi 2 : Linux 2.5.2 Source Instalasi Slackware akan menampilkan pilihan beberapa metode instalasi berdasarkan di mana sumber file berada. 1. Floppy; Instal Slackware dari disket 2. Instal Slackware from CD-ROM; Instal Slackware dari CD-ROM. Kadang Linux gagal mendeteksi CD-ROM yang dipunyai. Hal ini disebabkan pilihan kernel yang tidak tepat saat membuat boot disk. Pastikan memilih kernel yang sesuai dengan perangkat keras yang akan diinstall. 3. Instal Slackware from Hardrive partition; Instal Slackware dari hard disk (misalnya telah menyalin file dari CD-ROM ke dalam hard disk). Path harus ditulis secara benar, sebab dalam lingkungan Linux semua huruf diperlakukan case sensitive. Dalam arti perbedaan huruf besar dan kecil dapat membuat file tidak dikenal. 4. Instal via NFS; Instal Slackware dari NFS (Network File Server) 5. Instal from pre-mounted directory; Jika sudah mempunyai partisi Linux sebelumnya, dan berisi file source, maka bisa melakukan pengaitan (mounting) sebelum instalasi dimulai. Direktori ini yang dipakai sebagai sumber instalasi. Pilih sesuai kebutuhan Anda, dan ikuti perintah-perintah berikutnya. 2.5.3 Select Packet Instalasi Slackware memberikan pilihan paket aplikasi yang akan diinstal. Paket yang ditawarkan adalah : A Aplikasi dasar yang dibutuhkan sistem Linux AP Berbagai aplikasi yang dapat dijalankan di console tanpa membutuhkan X D Program pengembangan, terdiri atas berbagai bahasa pemrograman E GNU Emacs, editor teks F Daftar FAQ, dan dokumentasi How To lengkap
  21. 21. Halaman : 19 Sistem Operasi 2 : Linux K Sumber (Source) dari kernel Linux N Networking (TCP/IP, UUCP, Mail, News) T Program pengolah kata tingkat lanjut TCL Bahasa Skrip Tcl/Tk X X Free, Server untuk tampilan grafis XD Program pengembangan X Free XV X View (Window Manager dan berbagai aplikasi tampilan grafis) Y Games yang tidak membutuhkan X (dijalankan di console) 2.5.4 Proses Instal Selesai memilih paket aplikasi yang dibutuhkan, dilanjutkan dengan instalasi. Slackware menawarkan berbagai metode instalasi : 1. Newbie; Slackware akan menanyakan setiap program yang akan diinstal, disertai dengan gambaran singkat dari berbagai program yang akan diinstal. 2. Expert ; Slackware akan memberikan daftar seluruh aplikasi, dan cukup memilihnya dengan memberikan pointer. 3. Full ; Instal seluruh aplikasi yang tersedia 2.5.5 Configure Pada proses configure ini dapat menjalankan konfigurasi awal dari sistem Linux yang telah diinstal. Konfigurasi mencakup password untuk root, Pembuatan disket boot, pengaturan LILO (Linux Loader, program yang menjalankan Linux saat booting), modem, mouse, dan beberapa konfigurasi network jika komputer sudah terhubung satu sama lain dalam jaringan. Setelah mengkonfigurasi sistem Linux, Anda dapat keluar dari program setup, dan tekan Ctrl-Alt-Del untuk booting komputer.
  22. 22. Halaman : 20 Sistem Operasi 2 : Linux 2.6 Instalasi Source Program Source program dapat dilakukan proses instalasi dengan melakukan proses kompilasi program terlebih dahulu. Kompilasi program dapat dilakukan dengan bantuan kompiler gcc dan juga library yang diperlukan. Source program umumnya dikemas dalam file terkompresi dengan format x.tar.gz atau tgz. Source program tersebut sebelum bisa dijalankan terlebih dahulu dilakukan pemekaran (exstrak), perhatikan contoh : $tar zxvf x.tar.gz Setelah dilakukan pemekaran file, kemudian baru bisa dilakukan proses kompilasi. Untuk mengkompilasi source program lebih dianjurkan membaca petunjuk instalasi yang berada dalam direktori hasil pemekaran tersebut. Umumnya petunjuk kompilasi dan instalasi berada pada file README. Namun demikian secara umum proses instalasi dilakukan dengan tahapan : $ configure # Konfigurasi komponen $ make # Proses kompilasi $ make install # Proses Instalasi program ke lokasi direktori yang sudah ditentukan Perintah configure memiliki banyak option, misalnya untuk menentukan target instalasi dengan menyebutkan letak direktori target, misalnya : $ configure -- prefix=/usr/local/namaprogram 2.7 Install RedHat Packet Manager (RPM) Salah satu utilitas yang paling powerful dan inovatif dari RedHat Linux adalah RPM, RedHat Package Manager. Teknologi RPM adalah sebuah cara yang paling mudah untuk melakukan instalasi, uninstalasi, ugrade, query, verify dan mem-build paket software. Paket software RPM adalah sebuah arsip dari file-file dengan beberapa informasi yang berhubungan dengan file-file tersebut, seperti nama, versi dan deskripsinya.
  23. 23. Halaman : 21 Sistem Operasi 2 : Linux Berbeda dengan cara tradisional menggunakan file tar.gz, metode RPM membuat user tidak direpotkan masalah manajemen file seperti letak file, direktori dsb. Untuk menjalankan RPM sangat mudah, berikut ini adalah perintah umum untuk: Install rpm -i [option] [nama_paket_rpm] misalnya: rpm -ivh vim-4.5-2.i386.rpm v dan h adalah option untuk menampilkan jalannya instalasi dan menampilkan grafik berbentuk hash (#). Option lainnya dapat di lihat di man rpm. Bila paket tersebut telah di instalasi atau ditemukan dependency, RPM akan memberitahukan dan instalasi di batalkan. Gunakan - -replacepkgs atau - -replacefiles bila ingin menimpa paket lama. Untuk dependency error, paket atau file yang di butuhkan harus di instalasi dulu. Sebaiknya tidak menggunakan option - -nodeps untuk mengatasi error dependency. Upgrade rpm -U [option] [nama_paket_rpm] misalnya; rpm -Uvh emacs-19.34-4.i386.rpm Upgrade ini adalah kombinasi dari uninstalasi dan instalasi, artinya RPM akan menguninstalasi dulu paket versi lama bila ditemukan dan menggantinya dengan versi baru. Bila tidak ditemukan versi lamanya maka otomatis RPM melakukan instalasi. Uninstalasi rpm -e [option] [nama_paket]
  24. 24. Halaman : 22 Sistem Operasi 2 : Linux misalnya: rpm -e emacs Untuk uninstalasi tidak dipakai nama paket RPM tapi nama paket itu sendiri. Dependency error juga terjadi bila paket yang ingin di uninstalasi dibutuhkan oleh program lain. Gunakan - -nodeps bila ingin tetap menghapusnya. Query rpm -q [option] [nama_paket] misal: rpm -ql kernel Option l menampilkan semua file yang dimiliki oleh paket kernel. Verify rpm -V [nama_paket] misal: rpm -V bash Latihan : 1. Bagaimanakah tahapan melakukan perubahan terhadap tipe partisi dari Linux Native ke Linux Swap 2. Dapatkah dalam sistem operasi Linux meletakkan file system secara terpisah, misalnya untuk direktori /etc diletakkan di harddisk ke -2 partisi ke-3. Jelaskan ! 3. Bagaimanakah cara melakukan instalasi sistem Linux melaui jaringan. (Source Instalasinya berada di komputer lain). Jelaskan 4. Bagaimana cara melakukan instalasi packet program pada Linux Slackware ? 5. Bagaimanakah cara/tahapan instalasi Linux dalam modus text antara distribusi : Slackware, Redhat, Suse, dan Mandrake.
  25. 25. Halaman : 23 Sistem Operasi 2 : Linux BAB III LINUX FILE SISTEM (Pertemuan 4 & 5) 3.1 Organisasi File Regular file / ordinary file adalah file yang digunakan untuk menyimpan data, source program, dokumen, grafik, program obyek, dan sebagainya. File ini terdiri dari 3 macam, antara lain : - File teks - File Script Shell - File Binary (executable) - File Data Sistem File pada Linux diatur secara hirarkhikal seperti UNIX, yaitu dimulai dari root dengan simbol “/”. Mulai dari root kebawah, dapat diciptakan File dan Direktori. Direktori adalah file yang berisi daftar nama file dan bilangan inode dari masing- masing file. Umumnya panjang nama file sampai dengan 14 karakter, walaupun ada juga sistem yang lebih panjang (s.d 256 karakter). Dalam sebuah direktori bisa terdapat direktori, atau biasa disebut dengan subdirektori.. Direktori yang berada tepat diatas suatu direktori disebut dengan direktori induk (parrent directory). Direktori tempat kerja dinamakan working directory atau current directory. Sedangkan direktori yang umumnya dituju user saat melakukan login adalah home directory. Setelah instalasi, Linux menciptakan sistem file yang baku, terdiri atas direktori. Direktori tersebut dikenal dengan direktori standar. Berikut susunan direktori standar yang ada pada Slackware (dan Linux secara umum). / Direktori root, yang menampung seluruh file yang ada dalam Linux. Pada direktori root biasanya tidak menampung file, kecuali image dari kernel (vmlinuz). /bin Berisi file yang dapat dieksekusi/dijalankan (file dengan ekstension exe pada DOS/Windows) /boot Direktori berisi file yang dieksekusi saat Linux booting. /dev Linux memperlakukan semua sebagai file. Direktori ini merupakan file dari hardware komputer. Misal floppy disk
  26. 26. Halaman : 24 Sistem Operasi 2 : Linux menjadi file /dev/fd0, CD ROM menjadi /dev/hdb bahkan hingga memory. Yang cukup terkenal adalah /dev/null, semua file yang dikopi kesini akan dibuang. /etc Berisi file-file konfigurasi Linux. Biasanya berbentuk file text dan dapat diedit dengan mudah. /home Berisi direktori dari masing-masing user. /lib Berisi kumpulan library yang diperlukan oleh program di root direktori. (file DLL pada sistem operasi Windows). /mnt Direktori tempat mounting device. Misalnya /dev/fd0 (disket) akan dimount ke /mnt/floppy, /dev/hda1 (partisi DOS) dimount ke /mnt/dos. Secara default direktori ini kosong, dan harus membuat direktori sendiri sebagai mount point-nya. /proc Sistem file semua yang ditulis di atas memory. Digunakan untuk menginformasikan sistem (biasanya tentang proses yang sedang berjalan). /root Direktori home, bagi root /sbin File eksekusi yang dijalankan oleh sistem atau root. /tmp Berisi file-file sementara /usr Berisi file dan program yang berorientasi pada user. Hampir semua program yang disertakan dalam distribusi diinstal di sini. /var Berisi data yang berubah pada saat Linux berjalan. Data ini biasanya hanya spesifik pada satu komputer, dan tidak dibagi dengan komputer lain dalam jaringan. Dalam Linux file sistem Linux, untuk mengacu suatu file harus dituliskan dimana file tersebut berada (PATH). Nama path dapat memperjelas, suatu file benar-benar yang dimaksudkan. Hal ini bisa terjadi persamaan nama dari suatu file dari direktori yang berbeda. Cara menyatakan nama path dari suatu file terdiri dari : - absolut path - relatif path Absolut path selalu dimulai dari root. Nama path selalu diawali dengan “/“, misalnya /home/anji/latihan/satu. Sedangkan relatif path selalu diacu secara relatif dari direktori kerja yang biasa menggunakan dua simbol, yakni sebuah titik dan dua buah titik. Misalnya : $./file1.sh $../c/program.c
  27. 27. Halaman : 25 Sistem Operasi 2 : Linux 3.2 Struktur File a. Tipe File Dalam Linux/UNIX terdapat 5 buah tipe File. Kelima tipe file tersebut antara lain : - File Biasa (Ordinary File) d Direktori b Block Device (Peralatan I/O) c Character Device (Peralatan I/O) p Named Pipe (FIFO) Block Device ; Merupakan file dari suatu peralatan yang menggunakan transmisi data per block (misalnya 1KB block). Contoh adalah DISK, FLOPPY, Tape. Character Device; Merupakan file dari peralatan yang menggunakan transmisi data per karakter. Contoh adalah terminal modem, ploter, dll Named Pipe; File yang digunakan secara intern oleh sistem operasi untuk komunikasi antar proses. -rw-r--r-- 1 root root 6253 Mar 11 11:37 /etc/passwd Tipe File Ijin Akses Jumlah Link Owner (pemilik) Group Ukuran File (jumlah karakter) Tanggal pembuatan File Nama File
  28. 28. Halaman : 26 Sistem Operasi 2 : Linux b. Ijin Akses Setiap obyek di Linux harus mempunyai pemilik yaitu nama pemakai Linux (account) yang terdaftar dalam file /etc/passwd. Account ini yang dapat digunakan sebagai acuan untuk pemberian security file (ijin akses) terhadap suatu file. Ijin akses dibagi atas 3 peran, yaitu untuk : - Pemilik (owner) - Kelompok (group) - Lainnya(others) Masing-masing peran tersebut dapat melakukan 3 bentuk operasi : Pada File R READ : Ijin untuk membaca W WRITE : Ijin untuk mengubah/membuat X Execute : Ijin untuk menjalankan program Pada Direktori R READ : Ijin untuk membaca daftar file dalam direktori W WRITE : Ijin untuk mengubah/membuat file di direktori tersebut X Execute : Ijin untuk masuk ke direktori c. Mengubah Ijin Akses (chmod) Perintah chmod digunakan sebagai perintah untuk mengubah ijin akses dari tiap-tiap file dengan memberikan mode huruf atau angka oktal(0-7) dari konversi desimal. an71k@lug:~$ ls -l /dev/fd0 brw-rw---- 1 root floppy 2, 0 May 15 1996 /dev/fd0 an71k@lug:~$ ls -l /dev/tty crw-rw-rw- 1 root tty 5, 0 Jul 18 1994 /dev/tty an71k@lug:~$ ls -ld /dev/ drwxr-xr-x 9 root root 32768 Apr 7 14:19 /dev/ an71k@lug:~$ ls -l /dev/initctl prw------- 1 root root 0 Apr 7 14:18 /dev/initctl|
  29. 29. Halaman : 27 Sistem Operasi 2 : Linux Format perubahan tersebut dengan argument sebagai berikut : Chmod [ugoa] [=+-] [rwx] File(s) Chmod [ugoa] [=+-] [rwx] Directory(s) u = user (pemilik) g = group (kelompok) o = others (lainnya) a = all Contoh : Selain dengan menggunakan format huruf depan dari pemilik(u), kelompok (g) ataupun lainnya (o), chmod dapat digunakan untuk mengubah ijin akses dengan format oktal. Untuk memberikan nilai oktal harus mengetahui posisi huruf dari masing-masing ijin. an71k@lug:~/coba$ touch file1 file2 file3 an71k@lug:~/coba$ ls -l total 0 -rw-r--r-- 1 an71k users 0 Apr 8 13:04 file1 -rw-r--r-- 1 an71k users 0 Apr 8 13:04 file2 -rw-r--r-- 1 an71k users 0 Apr 8 13:04 file3 an71k@lug:~/coba$ chmod u+x file1;chmod g=w file2;chmod o-r file3 an71k@lug:~/coba$ ls -l total 0 -rwxr--r-- 1 an71k users 0 Apr 8 13:04 file1* -rw--w-r-- 1 an71k users 0 Apr 8 13:04 file2 -rw-r----- 1 an71k users 0 Apr 8 13:04 file3 an71k@lug:~/coba$ chmod a=x file2 an71k@lug:~/coba$ chmod u+x,g-r,o=w file3 an71k@lug:~/coba$ ls -l total 0 -rwxr--r-- 1 an71k users 0 Apr 8 13:04 file1* ---x--x--x 1 an71k users 0 Apr 8 13:04 file2* -rwx----w- 1 an71k users 0 Apr 8 13:04 file3*
  30. 30. Halaman : 28 Sistem Operasi 2 : Linux Contoh : r w x 1 1 1 = 7 r - - 1 0 0 = 4 r - x 1 0 1 = 5 Dari contoh diatas, jika akan mengubah attribut sebuah file dengan attribut rwxr-x—x, maka dapat dilakukan dengan perintah : $chmod 751 namafile/direktori d. Mengganti Pemilikan (chown) Pemilik sebuah file/direktori dapat diganti sebagai berikut : $chown PemilikBaru File/direktori Beberapa hal yang perlu diperhatikan dalam melakukan perubahan pemilikan file/direktori : - Hanya pemilik file/direktori sendiri yang dapat mengganti pemilikan tersebut (kecuali superuser) - Setiap kali file/direktori dibuat, maka pemilik file tersebut adalah yang menciptakannya. Contoh : e. Mengubah group (chgrp) Group hanya dapat diganti oleh pemilik file/direktori tersebut. Untuk dapat melakukan perubahan group harus memastikan group yang menggantikan tersebut ada dalam daftar group dalam file /etc/group [dsn970210@omega kelas]$ chown benny file1 [dsn970210@omega kelas]$ ls -l total 0 -rw-r--r-- 1 benny dosen 0 Apr 8 13:42 file1 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 13:42 file2 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 13:42 file3
  31. 31. Halaman : 29 Sistem Operasi 2 : Linux f. User Mask (umask) Umask menentukan ijin akses awal pada saat file atau direktori dibuat. Pada umumnya sebuah sistem menggunakan konfigurasi umask 022. Dengan setting umask 022 membuat sistem pada saat membuat file dan direktori ber-ijin akses rw-r- -r-- untuk file dan rwxr-xr-x untuk direktori. Hal ini bisa terjadi karena nilai umask didapatkan dari kalkulasi berikut ini : Kreasi file (biasa) 666 Nilai Umask 022 ------- - 644 r w x r - - r - - Kreasi Direktori 777 Nilai Umask 022 -------- - 755 r w x r – x r – x [dsn970210@omega kelas]$ cat /etc/group | grep staff staff:*:20:root [dsn970210@omega kelas]$ ls -l total 0 -rw-r--r-- 1 benny dosen 0 Apr 8 13:42 file1 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 13:42 file2 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 13:42 file3 [dsn970210@omega kelas]$ chgrp staff file1 [dsn970210@omega kelas]$ ls -l total 0 -rw-r--r-- 1 benny staff 0 Apr 8 13:42 file1 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 13:42 file2 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 13:42 file3
  32. 32. Halaman : 30 Sistem Operasi 2 : Linux Contoh : g. Link & Symbolic Link Link adalah sebuah teknik untuk memberikan lebih dari satu nama file dengan data yang sama. Jika dilakukan perubahan pada file baru, maka apa yang terjadi pada file barus tersebut berpengaruh terhadap file aslinya. Symbolic Link diperlukan, bila file tersebut di “link“ dengan direktori/file yang berada pada partisi yang berbeda. Format Link : ln fileasli fileduplikat Format Symbolic Link ln –s /FullPath/FileAsli /FullPath/FileDuplicat [dsn970210@omega x]$ umask 022 [dsn970210@omega x]$ mkdir dir1 [dsn970210@omega x]$ touch f1 [dsn970210@omega x]$ ls -l total 2 drwxr-xr-x 2 dsn97021 dosen 512 Apr 8 14:49 dir1 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 14:50 f1 [dsn970210@omega x]$ umask 027 [dsn970210@omega x]$ mkdir dir2 [dsn970210@omega x]$ touch f2 [dsn970210@omega x]$ ls -l total 4 drwxr-xr-x 2 dsn97021 dosen 512 Apr 8 14:49 dir1 drwxr-x--- 2 dsn97021 dosen 512 Apr 8 14:50 dir2 -rw-r--r-- 1 dsn97021 dosen 0 Apr 8 14:50 f1 -rw-r----- 1 dsn97021 dosen 0 Apr 8 14:50 f2
  33. 33. Halaman : 31 Sistem Operasi 2 : Linux Setiap kali dilakukan link, maka akan diikuti juga oleh perubahan jumlah link pada struktur filenya. Seperti pada contoh, dari satu, kemudian 2 kemudian 3. 3.3 Perintah-perintah File - Menciptakan file (cat > namafile, touch) - Melihat isi file (cat namafile, more, less) - Melihat informasi file(ls, ls –l, ls –ld namadir, ls –al, ls /bin/[bc]*) - Menyalin File (cp file1 file2, cp file1 file2 dir) - Menghapus File (rm namafile, rm –rf namadir, rm file[sk]*) - Mengganti nama file (mv file1 file2, mv file1 file2 dir) [dsn970210@omega kelas]$ echo "Sedang belajar Linux" > file.txt [dsn970210@omega kelas]$ ls -l total 2 -rw-r----- 1 dsn97021 dosen 21 Apr 8 14:56 file.txt [dsn970210@omega kelas]$ ln file.txt x [dsn970210@omega kelas]$ ls -l total 4 -rw-r----- 2 dsn97021 dosen 21 Apr 8 14:56 file.txt -rw-r----- 2 dsn97021 dosen 21 Apr 8 14:56 x [dsn970210@omega kelas]$ mkdir dir1 [dsn970210@omega kelas]$ ln x dir1/file.ttt [dsn970210@omega kelas]$ ls -l dir1/ total 2 -rw-r----- 3 dsn97021 dosen 21 Apr 8 14:56 file.ttt [dsn970210@omega kelas]$ ln file.txt dir1/file.yyy [dsn970210@omega kelas]$ ls -l dir1/ total 4 -rw-r----- 4 dsn97021 dosen 21 Apr 8 14:56 file.ttt -rw-r----- 4 dsn97021 dosen 21 Apr 8 14:56 file.yyy [dsn970210@omega kelas]$ ln -s /etc/passwd [dsn970210@omega kelas]$ ls -l total 6 drwxr-x--- 2 dsn97021 dosen 512 Apr 8 14:57 dir1 -rw-r----- 4 dsn97021 dosen 21 Apr 8 14:56 file.txt lrwxr-x--- 1 dsn97021 dosen 11 Apr 8 15:04 passwd -> /etc/passwd -rw-r----- 4 dsn97021 dosen 21 Apr 8 14:56 x
  34. 34. Halaman : 32 Sistem Operasi 2 : Linux - Mengetahui informasi file (file /etc/passwd) - Mencetak file (lp namafile) - Membuat link (ln) 3.4 Perintah-perintah direktori - Mengetahui direktori kerja (pwd) - Membuat direktori (mkdir) - Memindahkan direktori kerja (cd) - Menghapus direktori (rmdir) - Mengubah nama direktori (mv) Latihan : 1. Program seperti date tergolong dalam file biner, data atau teks ? 2. Jelaskan termasuk dalam jenis file apakah disk, mouse, printer dan keyboard 3. Nama path yang mengacu pada root direktori adalah ? 4. Bagaimanakah caranya agar file dan direktori pada saat dibuat pertama kali ber-ijin akses file=rw-rw-r—dan direktori = rwxr--r--
  35. 35. Halaman : 33 Sistem Operasi 2 : Linux BAB IV PROSES I/O (Pertemuan 6) Untuk menciptakan suatu proses, diperlukan intruksi atau perintah yang kemudian menghasilkan keluaran(output), sehingga proses memerlukan input dan output. Instruksi (command) yang diberikan pada Linux (melalui shell) disebut sebagai eksekusi program yang selanjutnya disebut sebagai proses. Setiap kali instruksi diberikan, maka Linux kernel akan menciptakan sebuah proses dengan memberikan nomor PID (Proses Identity). Proses dalam Linux selalu membutuhkan input dan menghasilkan suatu output. 4.1 File Descriptor Linux berkomunikasi dengan file melalui file descriptor yang direpresentasikan melalui angka yang dimulai dari 0, 1, 2 dan seterusnya. 3 buah file descriptor standar selalu diciptakan oleh proses adalah : 0 = keyboard (standard input) 1 = layar (standard output) 2 = layar (standard error) Linux tidak membedakan antara peralatan hardware dan file, Linux memanipulasi peralatan hardware sama dengan file. Input dari sistem (kernel), output ke layar (standard output) : Input dari keyboard (standard Input), output ke layar : [dsn970210@omega kelas]$ cat Satu, dua tiga dicoba Satu, dua tiga dicoba sekarang selesai sekarang selesai ^d [dsn970210@omega kelas]$ who benny ttyp0 Apr 8 15:01 (202.155.19.101) dsn970210 ttyp1 Apr 8 14:47 (202.155.19.101) dsn030435 ttyp2 Apr 8 15:01 (202.155.19.82)
  36. 36. Halaman : 34 Sistem Operasi 2 : Linux Input dari direktori, output tidak ada(membuat direktori baru), bila terjadi error maka tampilan error muncul pada layar(standard error) [dsn970210@omega kelas]$ mkdir satu [dsn970210@omega kelas]$ mkdir satu mkdir: satu: File exists 4.2 Redirection (pembelokan) Pembelokan dilakukan untuk standard input, output dan error, yaitu untuk mengalihkan file descriptor dari 0, 1 dan 2. Simbol untuk pembelokan adalah : 0< atau < Pengganti standard input 1> atau > Pengganti standard output 2> Pengganti standard error Contoh : Standard output [dsn970210@omega kelas]$ cat 1> file.txt Sedang mencoba Menulis text ^d Perintah tersebut diatas sama halnya jika penulisan perintahnya adalah cat > file.txt Standard Input [dsn970210@omega kelas]$ cat 0< file.txt Sedang mencoba Menulis text Perintah tersebut diatas sama halnya jika penulisan perintahnya adalah cat < file.txt atau cat file.txt Standard Error [dsn970210@omega kelas]$ mkdir dir1 [dsn970210@omega kelas]$ mkdir dir1 mkdir: dir1: File exists [dsn970210@omega kelas]$ mkdir dir1 2> error.txt [dsn970210@omega kelas]$ cat error.txt mkdir: dir1: File exists
  37. 37. Halaman : 35 Sistem Operasi 2 : Linux Dari contoh diatas setelah penggunaan 2> (standard error) untuk dibelokkan ke file error.txt, error tidak muncul lagi, melainkan sudah tersimpan dalam file bernama error.txt tersebut. Menulis 2> tidak boleh dipisah dengan spasi 2 >. 4.3 Append Tanda >> dapat digunakan untuk menambahkan input pada file. Jika dalam pembelokkan ke file digunakan tanda > maka isi file sebelumnya akan terhapus. Agar file isi file pertama tidak terhapus dan dapat melakukan penambahan isi file baru, maka dapat digunakan tanda pembelokkan >> Contoh : [dsn970210@omega kelas]$ echo "Baris Pertama" > naskah [dsn970210@omega kelas]$ echo "Baris kedua" >> naskah [dsn970210@omega kelas]$ echo "Baris ketiga" >> naskah [dsn970210@omega kelas]$ cat naskah Baris Pertama Baris kedua Baris ketiga [dsn970210@omega kelas]$ echo "Baris keempat" > naskah [dsn970210@omega kelas]$ cat naskah Baris keempat 4.4 PIPA Dalam Linux, mekanisme pipa (pipe) digunakan sebagai alat komunikasi antar proses. Input proses1 output=input proses2 output Proses1 menghasilkan output yang selanjutnya digunakan sebagai input oleh proses2. Hubungan output input ini dinamakan PIPE, yang menghubungkan proses1 dengan proses2 dan dinyatakan dengan simbol “|”. Proses1 | proses2 Contoh : [dsn970210@omega kelas]$ ls -l | sort -r drwxr-x--- 2 dsn97021 dosen 512 Apr 8 16:07 dir1 -rw-r----- 1 dsn97021 dosen 28 Apr 8 15:48 file.txt -rw-r----- 1 dsn97021 dosen 25 Apr 8 16:08 error.txt -rw-r----- 1 dsn97021 dosen 14 Apr 8 16:20 naskah Output dari ls –l langsung diberikan sebagai input untuk program sort.
  38. 38. Halaman : 36 Sistem Operasi 2 : Linux Dengan demikian PIPA dapat menyerderhanakan penulisan program dan eksekusi proses secara lebih cepat. Identik dengan ``ls –l | sort“, tanpa mekanisme PIPA instruksi dijalankan sebagai berikut : [dsn970210@omega kelas]$ ls -l > tmp [dsn970210@omega kelas]$ cat tmp drwxr-x--- 2 dsn97021 dosen 512 Apr 8 16:07 dir1 -rw-r----- 1 dsn97021 dosen 25 Apr 8 16:08 error.txt -rw-r----- 1 dsn97021 dosen 28 Apr 8 15:48 file.txt -rw-r----- 1 dsn97021 dosen 14 Apr 8 16:20 naskah Contoh PIPA : $cat /etc/passwd | sort | head $head /etc/passwd | tail -5|sort 4.5 Filter Filter adalah utilitas yang dapat digunakan dalam sistem operasi Linux yang digunakan untuk meproses standard input dan menampilkan hasilnya pada standard output (layar). Contoh filter adalah wc, cat, sort, grep, head, tail, paste wc : Adalah perintah yang digunakan untuk menghitung jumlah baris, kata dan karakter pada file. Format : Wc [-lwc] [file ...] -l menghitung baris -w menghitung kata -c menghitung karakter [dsn970210@omega kelas]$wc –l document.txt cat : adalah perintah yang dapat digunakan untuk membaca isi file, menciptakan file baru dari standard input. sort : adalah perintah yang dapat digunakan untuk mengurutkan isi file perbaris. [dsn970210@omega kelas]$who | sort
  39. 39. Halaman : 37 Sistem Operasi 2 : Linux grep : adalah perintah yang dapat digunakan untuk pencarian isi file sesuai dengan pattern yang diminta. [dsn970210@omega kelas]$ tail -5 naskah.txt Sekarang besok Lusa Kemarin [dsn970210@omega kelas]$ grep esok naskah.txt besok Head : adalah perintah yang dapat digunakan untuk menampilkan beberapa isi file beberapa baris awal. Format : head [-jumlah] [file ..] -jumlah : untuk menentukan jumlah baris yang akan ditampilkan Contoh : [dsn970210@omega kelas]$ head -2 naskah.txt Sekarang Besok Tail : adalah perintah yang dapat digunakan untuk menampilkan isi file beberpa baris terakhir. Format : tail [-/+n] [ satuan] [file ..] +n : ke-n hingga terakhir -n : n buah yang terakhir satuan : menyatakan baris (l), blok(b) dan karakter (c) Contoh : [dsn970210@omega kelas]$ cat > naskah.txt Sekarang besok Lusa Kemarin [dsn970210@omega kelas]$ tail -2 naskah.txt Lusa Kemarin
  40. 40. Halaman : 38 Sistem Operasi 2 : Linux Paste : adalah perintah yang dapat digunakan untuk menggabungkan isi file satu dengan file lain perbaris, kemudian menampilkan dalam standard output dalam satu output. [dsn970210@omega kelas]$ cat > f1 1 2 3 4 [dsn970210@omega kelas]$ cat > f2 satu dua tiga empat [dsn970210@omega kelas]$ paste f1 f2 1 satu 2 dua 3 tiga 4 empat Pada rangkaian perintah yang memanfaatkan PIPA, misalnya : P1 | P2 | P3 …………| Pn-1 | Pn Maka P2 sampai Pn-1 mutlak harus utilitas Linux yang berfungsi untuk proses filter, sedangkan P1 (awal) dan Pn (akhir) boleh tidak filter. Beberapa perintah yang bukan merupakan filter adalah who, ls, ps, lp, lpr, mail. Latihan : 1. Buatlah perintah yang melibatkan 4 proses filter 2. Bagaimanakah perintah untuk mencari string “profile” yang berada dalam beberapa file yang berada dalam direktori /etc 3. Carilah semua file yang ada dalam sistem dan hasil pencarian diletakkan dalam file ketemu.txt dan jika terjadi errror karena permasalahan permisi file simpanlah dalam file error.txt
  41. 41. Halaman : 39 Sistem Operasi 2 : Linux BAB V Editor Vi (Pertemuan 7) Vi adalah sebuah aplikasi yang dapat digunakan sebagai file editor (membuat, mengubah, menghapus). Aplikasi vi dalam operasinya terbagi dalam dua modus, yakni modus instruksi dan modus editing. Pada modus instruksi, pemakai dapat melakukan instruksi-instruksi terhadap isi file (pencarian, penghapus, pindah baris, peng-copy-an) sedangkan modus editing adalah modus di mana proses penulisan ke buffer dapat dilakukan. Urutannya adalah shell modus instruksi modus editing modus instruksi shell 5.1 Perintah Dasar Pergerakan kursor : Kanan : l dan Kiri : h dan Atas : k dan panah atas Bawah : j , panah bawah dan <enter> Kanan 1 kata : w dan W Kiri 1 kata : b dan B Awal baris : 0 Akhir baris : $ Baris n : nG Akhir baris : G Editing : Insert ( i ) : memasukkan kalimat. Kata diselipkan pada posisi kursor, untuk mengakhiri tekan ESC Vi filename Shell Prompt $ Modus Instruksi Modus Editing a, i, o ESC:q
  42. 42. Halaman : 40 Sistem Operasi 2 : Linux Append ( a ) : memasukkan kalimat. Kata diselipkan pada posisi setelah kursor. Open ( o dan O ) : o membuat satu baris barus dibawah posisi kursor O membuat satu baris barus diatas posisi kursor Delete (x dan X ) : x menghapus 1 karakter pada posisi kursor X menghapus 1 karakter pada posisi sebelum kursor Delete word (dw) : menghapus sebuah kata Delete Line (dd) : menghapus satu baris Raplace (r dan R) : r mengganti 1 karakter pada posisi kursor R mengganti kata mulai dari posisi kursor sampai ditekan ESC Change Word (cw): mengganti kata dengan kata yang lain, kata yang diganti dibatasi dengan $. Undo (u) : Membatalkan editing sebelumnya Search ( / dan ? ) / mencari string mulai dari kursor kebawah ? mencari string mulai dari kursor keatas Copy ( y dan Y ) : y Copy dari kursor sampai akhir baris ke buffer Y Copy 1 baris penuh ke buffer yw Copy karakter dari posisi kursor hingga akhir kata yW Copy karakter dari posisi kursor hingga akhir kata yang dipisahkan spasi. yb Copy karakter dari awal kata hingga tepat sebelum posisi kursor yB Copy karakter dari awal kata yang dipisahkan spasi hingga sebelum posisi kursor y<enter> Copy baris pada posisi kursor dan baris sesudah posisi kursor yy Copy baris pada posisi kurosr y0 Copy dari awal baris hingga sebelum posisi kursor y$ Copy dari posisi kursor hingga akhir baris Paste (p dan P) : p Menyalin isi buffer khusus ke posisi sesudah kursor. P Menyalin isi buffer khusus ke posisi sebelum kursor
  43. 43. Halaman : 41 Sistem Operasi 2 : Linux 5.2 Perintah Advance :50 : pindah ke baris 50 :$ : pindah ke baris terakhir := : Mengetahui posisi kursor :q : keluar dari vi :wq : keluar dan menyimpan dulu :x : keluar dan menyimpan dulu Hapus (d) :15d : Hapus baris 15 :10,15d : Hapus dari 10 hingga 15 :.-3,.+3d : Hapus 3 baris sebelum kursor dan 3 baris setelah kursor Simpan (w) :w! : Save editing :1,10w tmp.txt : Simpan baris 1 sampai 10 ke file tmp.txt :w! coba.txt : Simpan seluruh isi file yang sedang diedit ke file bernama coba.txt Insert Isi File (r) :r coba.txt : baca file coba.txt dan letakkan setelah baris sekarang : 0,r coba.txt : baca file coba.txt dan letakkan pada awal file yang sedang diedit. :$r coba.txt : baca file coba.txt dan letakkan pada akhir file yang sedang diedit. Copy ( co ) :10,20co0 : Salin baris 10 sampai 20 dan letakkan pada awal file :1,10co30 : salin baris 1 sampai 10 dan letakkan setelah baris 30 (baris 31) : $-3,$co0 : 3 baris sebelum terakhir s.d terakhir di salin ke baris pertama Move (m)
  44. 44. Halaman : 42 Sistem Operasi 2 : Linux :10m0 : Pindahkan baris 10 ke awal :1,10m$ : Pindahkan baris 1 sampai 10 ke akhir file Find & Replace :s/s1/s2 : String s1 yang pertama pada baris kursor berada akan diganti menjadi s2 :s/s1/s2/p : Semua string s1 pada baris kursor berada akan diganti menjadi s2 :5,$/s1/s2/g : Semua string s1 pada baris 5 hingga baris yang terakhir akan diganti dengan s2 :1,$s/stikom/STIKOM/p : ganti semua kata [stikom] yang pertama menjadi [STIKOM] dan cetak hasilnya penggantian. Hanya kata pertama dalam satu baris yang diganti menjadi STIKOM :1,$s/stikom/STIKOM/gp : ganti semua kata [stikom] menjadi [STIKOM] secara global :1,$s/a/c/c/a/gp : ganti semua [a/c] menjadi [c/a] secara global Merubah tampilan :set all : melihat konfigurasi saat ini :set number/nonumber : mengaktifkan/menghilangkan nomor baris :set autoindent : set margin kiri :set tabstop 8 : merubah tab menjadi 8 karakter :set ruler : menampilkan posisi baris dan kolom :set showmarkups : menampilkan source program markup Menggeser isi satu atau beberapa baris >> : Menggeser isi baris ke kanan 1 tab << : Menggeser isi baris ke kiri 1 tab
  45. 45. Halaman : 43 Sistem Operasi 2 : Linux Konversi Huruf Kecil dan Huruf Besar ~ : Dengan menekan tombol “~“ maka huruf kecil akan berubah menjadi huruf besar dan demikian sebaliknya huruf besar menjadi huruf kecil. ~6 : 6 Huruf mulai kursor akan di konversi Mengulang perubahan yang terakhir Untuk mengulang perubahan perintah yang terakhir (penggantian, penghapusan, pengkonversian) dapat dilakukan dengan menggunakan perintah titik (.). Latihan : 1. Perintah untuk menampilkan nomor baris ketika menyunting file adalah ? 2. Suatu file bernama file.txt sudah ada pada direktori kerja. Bagaimanakah perintah untuk menyimpan baris pertama hingga baris kelima kedalam file file.tmp 3. Bagaimanakah perintah dalam vi untuk mengganti semua kata STIKOM menjadi Sekolah ? 4. Bagaimankah perintah dalam vi untuk menyisipkan file lain ke dalam file yang sedang di edit ? 5. Bagaimanakah perintah dalam vi untuk mendefinisikan suatu tombol !
  46. 46. Halaman : 44 Sistem Operasi 2 : Linux BAB VI Komunikasi Antar Pemakai (Pertemuan 8) 1. Elektronik Mail Dalam Linux, mail digunakan untuk mengirim dan menerima email. Formatnya : mail [-iInv] [-s subject] [-c list] [-b list] to-addr [...] [-sendmail-options [...]] mail [-iInNv] -f [name] mail [-iInNv] [-u user] Program mail adalah sebuah program yang bisa dikatakan cerdas dalam pengelolaan mail dalam mailbox user. Untuk melakukan pengiriman pesan menggunakan program ini dapat dilakukan sebagi berikut : $mail dsn970210 Subject : Testing Hai, Apaka kabar ? . <titik> Untuk mengakhiri penulisan pesan dalam mail dengan menekan <CTRL+D> atau tulis karakter titik, kemudian <enter> Untuk membaca email, dari baris perintah, ditulis mail <enter>, yang kemudian akan muncul daftar email seperti berikut ini : Pada kolom paling kiri terdapat status email. Status email tersebut antara lain : U Email belum terbaca Blank Email sudah terbaca N Email yang baru (baru datang) $ mail Mail version 8.1.2 01/15/2001. Type ? for help. "/var/mail/help": 2 messages 1 new 2 unread U 1 help@ambrosia.sti Fri Apr 2 14:50 17/477 test >N 2 dsn970210@omega.s Fri Apr 2 14:50 21/924 Testing &
  47. 47. Halaman : 45 Sistem Operasi 2 : Linux 2. Write Write adalah perintah yang digunakan untuk mengirim pesan ke user lain. Format perintah : write user [ttyname] Write digunakan untuk komunikasi dengan user lain, dengan melakukan copy satu baris pesan ke terminal lawan (teman). Saat kita menjalankan write untuk memberikan pesan ke user lain, dalam terminal user tersebut akan ditampilkan awalan message sbb: Message from yourname@yourhost on yourtty at hh:mm ... User yang menerima pesan seperti diatas, dapat membalas pesan tersebut dengan menulis write pula. Komunikasi dapat diakhiri dengan menuliskan end-of-file atau karakter interupt (^D), dengan menuliaskan end-of-line tersebut user lawan bicara akan mendapatkan pesan EOF, yang menandakan percakapan berakhir. Seseorang bisa menghindar dari pengiriman message diberikan oleh user lain dengan menjalankan perintah mesg. Jika seorang user login lebih dari satu terminal (tty1, tty2,dst), untuk menghubunginya perlu diperhatikan user bersangkutan yang login dari terminal yang dimaksudkan. Perhatikan contoh berikut : Dari contoh diatas, user icha dapat menghubungi user dsn970210 secara langsung dengan melakukan perintah : $write dsn970210 atau $write dsn970210 ttyp0 Perintah write dsn970210 artinya sama dengan write dsn970210 ttyp0 karena perintah write secara default akan menuju tty pertama dari user yang dimaksudkan, sedangkan [icha@omega icha]$ w 8:52AM up 34 days, 15:59, 3 users, load averages: 0.38, 0.29, 0.18 USER TTY FROM LOGIN@ IDLE WHAT dsn970210 p0 202.155.19.101 8:45AM 0 sh dsn970210 p1 202.155.19.101 8:45AM 0 -ksh icha p2 202.155.19.101 8:48AM 0 w
  48. 48. Halaman : 46 Sistem Operasi 2 : Linux jika ingin menghubungi user dsn970210 yang berada di ttyp2 maka terminal ttyp0 dirubah menjadi ttyp1, sehingga secara lengkap perintahnya dapat ditulis : $write dsn970210 ttyp1 Berikut contoh dialog antara user icha dengan user dsn970210 : Pada saat user icha menuliskan perintah write, pada layar user dsn970210 akan tampak message yang menginformasikan bahwa user icha sedang menghubunginya. Message from icha@omega.stikom.edu on ttyp2 at 09:02 ... Pesan yang dituliskan user icha dalam satu baris, akan terkirimkan pada layar user dsn970210 setelah ditekan <enter>. Kemudian user dsn970210 tinggal menulisakan perintah yang sama kepada user icha jika ingin membalasnya, seperti pada contoh dialog diatas. 3. Talk Perintah talk dapat digunakan untuk melakukan dialog/percakapan/perbincangan dua arah antara dua user. Format perintah : talk [-Hs] person [ttyname] [icha@omega icha]$ write dsn970210 ttyp1 Haii How are you ? Message from dsn970210@omega.stikom.edu on ttyp1 at 09:02 ... Haii Icha Fine thank you [dsn970210@omega dsn970210]$ Message from icha@omega.stikom.edu on ttyp2 at 09:02 ... Haii How are you ? write icha Haii Icha
  49. 49. Halaman : 47 Sistem Operasi 2 : Linux Talk adalah program yang dapat digunakan untuk komuniaksi secara maya dengan cara kerja melakukan pengkopian setiap perintah yang dituliskan user satu ke layar user lain yang diajak berkumunikasi. Argumen dari perintah talk antara lain : -s Digunakan untuk mengubah tampilan message menjadi scrolling. person Jika berdialog antar user dalam satu mesin, person disini adalah user yang digunakan untuk login. Sedangkan jika person yang akan diajak berdialog berada di mesin lain, perintah talk harus menyebutkan nama hostnya “user@host”. ttyname Jika berdialog dengan user yang login pada lebih dari satu terminal dalam sistem yang sama, perlu menyebutkan pada terminal berapa user yang dimaksudkan (ttyXX. Pada saat pertama kali user melakukan perintah talk ke user lain, pada tampilan user lawan akan muncul tampilan sebagai berikut : Message from Talk_Daemon@localhost... talk: connection requested by your_name@your_machine. talk: respond with: talk your_name@your_machine Untuk membalasnya user pada tampilan tersebut dituliskan perintah : $ talk your_name@your_machine Perhatikan contoh berikut ini : Pada contoh tersebut merupakan tampilan user yang diajak bicara dan bagaimana proses menjawabnya, yaitu dengan cara langsung menulis perintah talk pada user tersebut. 4. mesg Perintah mesg digunakan untuk menampilkan (tidak menampilkan) kiriman pesan dari user lain. Format perintah : mesg [y | n] Message from Talk_Daemon@omega.stikom.edu at 11:03 ... talk: connection requested by icha@omega.stikom.edu. talk: respond with: talk icha@omega.stikom.edu talk icha
  50. 50. Halaman : 48 Sistem Operasi 2 : Linux Utilitas mesg adalah suatu perintah yang dapat digunakan user untuk memberi ijin write terhadap suatu terminal melalui standard output. Ijin write disini dikhususkan untuk uttilitas seperti talk dan write yang biasanya menampilkan perintah dalam suatu terminal. Argument untuk merintah mesg ini terdiri dari : n Tidak menampilakan message y Mengijinkan message untuk ditampilkan. Jika kedua argument tersebut tidak diisi, maka arti perintah tersebut hanya untuk mengetahui status messagenya saja (n/y). 5. who Perintah who digunakan untuk menampilkan informasi user siapa saja yang sedang login dalam suatu sistem (mesin) Format perintah : who [-mqTuH] [file] who am i Perintah who merupakan utilitas yang dapat digunakan untuk mengetahui user yang sedang login saat itu. Masing-masing user yang sedang login ditampilakan informasi mengenai nama login, nama terminal (tty), tanngal dan jam, dan juga hostname user tersebut jiga bukan berasal dari komputer lokal. Option perintah who antara lain : -m Hanya menampilkan informasi tentang user yang login pada terminal aktif (sekarang). Perintah who seperti ini sama dengan perintah who am i -q (Quick.) Hanya menampilkan daftar user dan jumlah user yang sedang login. Jika option ini dipakai maka option-optioan lain tidak dihiraukan. -T Menampilkan informasi status terminal dalam kondisi writable atau tidak. Tanda “+” jika writable, “-“ Tidak writable dan “?” jika terjadi permasalahan pada terminal; -u Mencetak waktu idle tiap user. -H Menulis informasi user dalam kolom heading. am I Untuk memastikan user dalam terminal aktif.
  51. 51. Halaman : 49 Sistem Operasi 2 : Linux Latihan : 1. Bagaimanakah urutan pengiriman email yang disertai file (attachment) menggunakan aplikasi pine. 2. Jelaskan apa perbedaan tujuan email yang duliskan melalui to: , cc : dan bcc : 3. Aplikasi mail, write dan talk digunakan sebagai media untuk komunikasi antar user dalam sistem berbasis Linux. Dari ketiga aplikasi tersebut, manakah yang dapat digunakan untuk mengirim message ke user lain yang status messagenya adalah off (n) 4. Bagaimanakah cara untuk mengakhiri message dalam aplikasi write ? 5. Dapatkah satu user melakukan komunikasi menggunakan talk dengan 2 user lain secara bersamaan pada satu terminal. Jelaskan !
  52. 52. Halaman : 50 Sistem Operasi 2 : Linux BAB VII MANAJEMEN PROSES (Pertemuan 9) Setiap kali instruksi diberikan pada Shell Linux, kernel akan menciptakan proses-id. Proses ini disebut juga dalam terminologi UNIX sebagai JOB. Proses-id (PID) dimulai dari 0, yaitu proses INIT, kemudian diikuti oleh proses berikutnya (dapat dilihat dalam daftar urutan pada /etc /inittab). Proses-proses sistem terbagi dalam tiga tipe utama, yaitu : Interactive : Diprakarsai oleh sebuah shell dan berjalan dalam foreground dan Background. Batch : Secara tipical merupakan sebuah seri dari proses-proses yang dijadwalkan untuk dieksekusi pada suatu waktu tertentu Daemon : Secara tipikal diinisialisasi saat boot untuk membentuk fungsi-fungsi sistem yang dibutuhkan, seperti LPD, NFS dan DNS Proses Interaktive terdiri dari atas : - Proses fireground adalah suatu proses yang ketika berjalan, shell tidak menampilkan prompt hingga proses berakhir. - Proses background adalah suatu proses yang sewaktu-waktu berjalan, pemakai tetap dapat memberikan perintah yang lain. Sebab begitu perintah background diberikan (setelah di tekan ENTER), prompt akan ditampilkan kembali dan shell siap menerika perintah berikutnya. 7.1 Background Proses Untuk menghasilkan sebuah background proses, dapat dilakukan dengan menjalankan perintah yang diakhiri dengan simbol &. Pada kondisi seperti ini, sehll tidak akan menunggu sampai eksekusi perintah berakhir. Begitu perintah berakhiran & diberikan, shell siap menerima perintah lain. Kegunaan perintah ini misalnya untuk memperoleh daftar seluruh file dari direktori root (/) beserta anak-anaknya dan menempatkannya ke sebuah file. Karena proses ini kemungkinan memakan waktu yang cukup lama, pemakai dapat mengatur agar eksekusinya dilakukan dilatar
  53. 53. Halaman : 51 Sistem Operasi 2 : Linux belakang. Sehingga sementara sistem sedang memprosesnya, pemakai tetap dapat bekerja memberikan perintah-perintah lainnya. Contoh : $ls –lR / > lsroot 2>&1 & Pada contoh tersebut, perintah ls beserta pesan kesalahan ditempatkan ke file lsroot dan dilakukan secara background. Proses latar belakang cocok untuk proses yang tidak menggunakan keluaran ke layar terminal atau masukkan dari keyboard. 7.2 Status Proses Instruksi ps (proses status) digunakan untuk melihat kondisi proses yang ada. Ketika tidak ada option sama sekali, ps akan menampilkan proses yang saat itu dilakukan oleh sebuah terminal (tty?). Proses ksh adalah proses shell yang aktif pada saat user login ke dalam sistem dan proses ksh ini akan menunggu instruksi dari pemakai. Bila shell menjalankan instruksi, maka shell menciptakan proses anak dan menunggu hingga proses tersebut selesai. Sebuah sistem yang dibangun oleh serangkain proses, dengan perintah ps –e (everthing) dapat ditampilkan sejumlah proses-proses tersebut. $ ps PID TT STAT TIME COMMAND 29384 p0 Is 0:00.01 -ksh (ksh) 27221 p0 R+ 0:00.00 ps $ ps -u USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND dsn970210 29384 0.0 0.1 404 328 p0 Ss 7:35PM 0:00.01 -ksh (ksh) dsn970210 21658 0.0 0.1 284 164 p0 R+ 7:42PM 0:00.00 ps -u $ ps -e PID TTY TIME COMMAND 1 ? 00:00:05 init 2 ? 00:00:00 klogd 3 ? 00:00:00 inetd ---cut------
  54. 54. Halaman : 52 Sistem Operasi 2 : Linux Semakin banyak pemakai yang sedang menggunakan sistem, semakin banyak proses yang akan ditampilkan. Tanda tanya (?) menyatakan bahwa proses tersebut adalah proses daemon (proses yang hidup terus selama sistem hidup dan berjalan dilatar belakang). Sejumlah proses yang ditampilkan melalui ps –e berkedudukan sebagai pemimpin group proses (proses group leader), yaitu proses yang menjalankan proses yang lain. Sebagai contoh jika dijanlankan perintah ps –f (full listing), dengan hasil sebagai berikut : Proses sh sebenarnya memimpin group proses. Tampak bahwa PID dari bash tercantum dalam PPID dari proses ps –f. PPID (parrent PID) menyatakan proses induk dari proses yang sedang berjalan, dan STIME menyatakan awal proses dimulai. Contoh lain perintah ps : ps –u anjik : untuk menampilkan proses yang terkait dengan seorang pemakai ps –t tty02 : untuk menampilkan proses yang terkait dengan terminal ps –auxww : untuk menampilkan informasi detail tentang setiap proses yang berjalan dalam komputer. a : Mendaftar semua proses u : menampilkan informasi dalam “user-oriented style” x : memasukkan informasi dalam proses yang tidak menampilkan kontrol ttys. ww : memasukkan baris perintah dengan komplit, bahkan jika mereka menjalankan sampai 132 kolom. Field-field dalam output ps diantaranya : USER : username dari proses. (Jika proses memiliki UID yang tidak sesuai dengan /etc/passwd, perlu berhati-hati karena dimungkinkan terjadi proses penyerangan. $ps –f UID PID PPID C STIME TTY TIME CMD dsn970210 8907 1094 0 12:44 tty02 00:00:00 -bash dsn970210 9205 8907 0 13:02 tty02 00:00:00 ps -f
  55. 55. Halaman : 53 Sistem Operasi 2 : Linux PID : Proses Identification Number %CPU : Prosentasi CPU yang digunakan %MEM : Prosentasi MEMORY yang digunakan SZ : Jumlah virtual memori yang digunakan proses RSS : Resident set size, jumlah proses physical memory yang ditempati proses TT : Terminal yang mengontrol proses STAT : Field yang menunjukkan status proses TIME : CPU time yang sedang digunakan COMMAND : Nama perintah Pada field STAT yang merupakan status proses dapat digunakan sebagai indikator terhadap suatu proses, sejumlah status tersebut dapat diketaui dari huruf pertama field STAT adalah : R : actually running or runnable S : Sleeping (sleeping > 20 seconds) I : Idle (sleeping < 20 seconds) T : stop H : Halted P : In page wait D : In disk wait Z : Zombie <blank> : In core W : Swapped out > : Proses yang telah melampaui soft limit ketetapan memori Pada huruf ketiga field STAT menunjukkan keterangan apakah proses berjalan dengan altered CPU Schedule, antara lain : N : Proses berjalan pada prioritas rendah # : nice (nomor yang lebih tinggi dari 0) < : Proses berjalan pada prioritas tinggi
  56. 56. Halaman : 54 Sistem Operasi 2 : Linux Beberapa pilihan perintah ps, sebagai berikut : -a : Menampilkan semua proses (termasuk milik user) -c : Menampilkan nama perintah dari environment task_struct -e : Menampilkan environment setelah baris perintah dan “and” -f : Menampilkan “forest” fromat pohon (proses dan subproses) -h : Tidak ada header -j : Jobs format -l : Long format -m : Menampilkan info memori -n : Output memori untuk USER dan WCHAN -r : Hanya proses-proses yang berjalan -s : Format signal -S : Menambah child CPU time dan page fault -t xx : Proses-proses yang hanya diasoasikan dengan ttyxx -u : Format user, memberikan nama user dan waktu mulai -v : format vm (virtual memory) -w : Wide output -x : Menampilakn proses-proses tanpa mengontrol terminal 7.3 Menghentikan Proses (Kill) Kadang ada keinginan untuk membunuh atau menghentikan sebuah proses. Suatu alasan yang umum untuk menghentikan proses diantaranya : - Proses terlalu banyak menghabiskan CPU time - Proses berjalan terlalu lama tanpa menghasilkan output yang diharapkan. - Proses memproduksi terlalu banyak output pada layar atau ke sebuah file. - Proses mengunci terminal atau beberapa sesi lain. - Proses menggunakan file-file yang salah baik input maupun output, disebabkan kesalahan operator atau programming yang error. - Proses sudah tidak diperlukan lagi.
  57. 57. Halaman : 55 Sistem Operasi 2 : Linux Sebenarnya untuk menghentikan proses yang tidak berada pada background, cukup dengan menekan <CTRL+C>. Namun jika proses tersebut bekerja pada background, proses dapat dihentikan dengan perintah kill. Perintah kill bekerja dengan cara mengirim signal ke proses yang sedang berjalan melalui nomer proses yang sudah diketahui. Kill hanya dapat digunakan untuk menghentikan proses dari masing- masing user, hanya superuser saja yang berwenang untuk menghentikan proses user lain. Format penulisan perintah kill sebagai berikut : kill [-s signal_name] pid [...] kill -l [exit_status] kill -signal_name pid [...] kill -signal_number pid [...] Beberpa signal tersebut diantaranya: 1 HUP (hang up) 2 INT (interrupt) 3 QUIT (quit) 6 ABRT (abort) 9 KILL (non-catchable, non-ignorable kill) 14 ALRM (alarm clock) 15 TERM (software termination signal) Contoh : $ kill 123 Menghentikan proses dengan PID 123 $ kill -9 1234 Menghentikan dengan paksa proses dengan PID 1234. # kill -HUP `cat /var/run/inetd.pid`
  58. 58. Halaman : 56 Sistem Operasi 2 : Linux Mengirimkan hang up signal kepada daemon ined dengan PID seperti yang terseimpan pada /var/run/inetd.pid, dan meminta proses untuk membaca ulang susunan konfigurasi /etc/inetd.conf. # kill 0 Menghentikan semua proses yang berjalan dalam background. 7.4 JOBS Jobs control adalah fasilitas yang memungkinkan suatu program dihentikan secara sementara dan kemudian dijalankan kembali. Fasilitas ini dapat dipakai untuk memindahkan program yang sedang berjalan secara background (dilatar belakang) ke foreground (di latar depan) atau sebaliknya. Fasilitas ini meniru fasilitas pada C shell. Jika seseorang memberikan perintah (script shell, utilitas atau program), perintah tersebut akan menjadi sebuah job, terlepas perrintah itu dijalankan dilatar depan atau belakang. Jobs control biasanya diaktifkan secara otomatis begitu berada di prompt (shell). Untuk mengetahui fasilitas ini sudah dijalankan atau belum, dapat deketahui dengan perintah : $ set –o | grep monitor monitor on Jika perintah di atas menghasilkan informasi berupa “monitor on” berarti fasilitas job control sudah diaktifkan. Apabila fasilitas tesebut belum aktif, dapat diaktifkan dengan perintah : $ set -o monitor $ set -m Untuk menjalankan perintah di background, perlu akhiran & disetiap perintah yang akan dijalankan. $find / -name *.c –print > c.out 2> c.error &
  59. 59. Halaman : 57 Sistem Operasi 2 : Linux Perintah diatas dipakai untuk memperoleh semua file berakhiran *.c dari root (/) danhasilnya ditempatkan ke file c.out. Adapun kalau ada sesuatu kesalahan (misalnya karena tidak diperkanankan membaca direktori tertentu berhubungan dengan ijin akses) kesalahan tersebut direkam ke file c.error. Proses ini dilakukan dibelakang layar, dan diberi nomor job dan identitas proses (PID). Apabila nomor job adalah satu dan jobs belum berakhir, maka jika diberikan job kedua, maka nomor job tersebut sama dengan 2. $ du / > du.out 2>1 & [2] 272 Perintah du digunakan untuk memperoleh blok dari setiap file atau direktori. Setelah nomor job kedua diatas, jika dijalankan satu job lagi, maka : $ sleep 500 & #tidak melakukan apa-apa selama 500 detik [3] 273 Untuk melihat status proses dari perintah yang dieksekusi dilatar belakang, dapat digunakan perintah jobs. $ jobs [1] Stopped vi file1.txt & [2] - Running ps –aux & [3] + Running sleep 500 & Informasi dibagian kiri menyatakan nomor job. Tanda + sesudah nomor job menyatakan job yang terbaru. Tanda – menyatakan job kedua yang terbaru. Informasi seperti running menyatakan bahwa perintah job sedang dieksekusi (belum selesai). Kemungkinan lain informasi adalah : Stopped : job sedang berhenti secara sementara (ditangguhkan) Done : job sudah selesai dikerjakan. Bagian terkanan menyatakan nama perintah. Pemakai dapat memberikan pilihan –p pada perintah jobs. Pilihan ini akan menyebabkan jobs menampilkan PID dari semua proses yang dieksekusi dilatar belakang. $ jobs –p 300 302
  60. 60. Halaman : 58 Sistem Operasi 2 : Linux Artinya ada dua proses di latar belakang dengan PID 300 dan 302. Pilihan (option) –l akan menampilkan informasi seperti jobs tanpa option dan informasi PID (nomor proses) $ jobs –l [2] + 300 Running sleep 300 & [1] - 302 Running sleep 150 & Job yang berjalan dilatar depan dapat dihentikan dengan menekan tombol <CTRL + Z>. Sebagai contoh, saat menjalankan perintah sleep 500 di latar depan, kemudian menekan tombol <CTRL + Z>, maka proses tersebut akan dihentikan sementara. $ sleep 500 <CTRL + Z> [1] + Stopped sleep 500 Dengan menggunakan perintah jobs, status proses tersebut diatas dapat diketahui, sebagai berikut : $ jobs [1] + Stopped sleep 500 Job yang sedang ditangguhkan dapat diaktifkan kembali dengan cara diaktifkan dilatar belakang dan diaktifkan dilatar depan. Job yang sedang berhenti secara sementara dapat dijalankan kembali dilatar depan dengan cara menjalankan perintah fg. Dengan menjalankan perintah fg maka sleep 500 akan dijalankan di foreground, dan jika setelah di depan ingin ditangguhkan kembali tinggal menjalankan perintah bg. $ sleep 500 <CTRL + Z> [1] + Stopped sleep 500 $ bg #Eksekusi kelatar belakang [1] sleep 500 Pada bentuk fg dan bg tanpa argumen, job terbarulah yang diproses. Sedangkan jika %n digunakan, job dengan nomor n yang diproses. $ jobs [2] + Running sleep 1000 & [1] - Running sleep 200 &
  61. 61. Halaman : 59 Sistem Operasi 2 : Linux $ fg %1 sleep 200 & Proses yang sedang ditangguhkan ataupun yang sedang berada di latar belakang dapat dimatikan dengan menggunakan perintah kill. $ kill %1 # job nomor 1 dihapus [1] – Terminated sleep 200 & Jika dikehendaki, pemakai dapat menyuruh shell menunggu suatu proses dilatar belakang selesai dieksekusi. Perintah yang diperlukan adalah wait. Perintahnya adalah wait %n, dengan n adalah nomor job dari proses latar belakang yang ditunggu. 7.5 Penjadwalan Proses Pada sistem Linux, terdapat banyak cara untuk menangani eksekusi-eksekusi perintah. Diantaranya, diberi kesempatan untuk membuat daftar perintah dan menentukan kapan perintah dijalankan oleh sistem. Perintah at , sebagai contoh memberi peluang untuk menjalankan program berdasarkan waktu yang ditentukan. Perintah batch adalah semiliar dengan at, namun batch menjalankan program-program manakala sistem menemukan waktu untuk mereka. Perintah cron memungkinkan program untuk menjalankan secara pereodik, dan perintah crontab mengizinkan user untuk mengedit file-file yang digunakan oleh cron. Perintah-perintah scheduling tersebut sangat berguna sat ingin melakukan pengaturan terhadap sistem agar tidak terlalu sibuk menjalankan tugas-tugas. Teknik ini juga sangat baik untuk eksekusi script- script bagi layanan-layanan exksternal seperti query-query database. Perintah at Seperti telah diuraikan diatas, untuk menjadwalkan satu atau beberapa perintah pada waktu yang ditentukan dapat digunakan at. Sebagai contoh, untuk membentuk pekerjaan pada jam 2:30 a.m yakni melakukan pencetakan semua file yang terdapat pada direktori /home/mahasiswa/dimas dan melakukan pengiriman mail pemberitahuan ke user yang bernama anjik bahwa pekerjaan pencetakan telah dilakukan pukul 2.30 a.m. Untuk menuliskan shcedule pekerjaan dengan at yakni
  62. 62. Halaman : 60 Sistem Operasi 2 : Linux dengan menulis perintah baris demi baris dan menekan enter untuk masing-masing perintah dan untuk mengakhiri dapat digunakan <CTRL + D>. $ at 2.30 lp /home/mahasiswa/dimas/* echo “File sudah dicetak Pak !” | mail –s “Pencetakan “ anjik@stikom.edu <CTRL + D> Beberapa variasi penggunaan perintah at dapat dilakukan dengan : At hh:mm : Penjadwalan kerja berdasarkan jam (hh) dan menit (mm), menggunakan standard 24 jam At hh:mm month day year : Penjadwalan kerja berdasarkan jam (hh) dan menit (mm), bulan, hari dan tahun tertentu at –l : Mendaftar jadwal tugas-tugas, merupakan alias utk perintah atq. At now +count timeunit : Menjadwalkan pekerjaan sekarang plus hitungan berdasarkan time-unit ; time unit dapat berupa menit, jam, hari atau minggu at –d job_id : Membatalkan kerja dengan nomor job_id Sebagai user root, dapat dengan bebas menjalankan perintah-perintah ini, sedangkan user lian, file-file /etc/at.allow dan /etc/at.deny menentukan permisi permisi menggunakan perintah tersebut. Jika file /etc/at.allow ada, maka hanya user-user yang tercantum dalam file tersebut yang diizinkan untuk menggunakan perintah at . Jika file /etc/at.allo tidak tersedia, sistem akan mengecek file /etc/at.deny yang akan memberikan izin penggunaannya, tapi kalau /etc/at.deny kosong, setiap user dapat menggunakan perintah at ini.
  63. 63. Halaman : 61 Sistem Operasi 2 : Linux Perintah batch Dalam sistem Linux tidak hanya memiliki satu perintah untuk penjadwalan tugas- tugas. Dengan menggunakan perintah batch user dapat memberikan kelonggaran terhadap sistem untuk memutuskan sendiri kapan proses dijalankan. Perintah batch akan dijalankan oleh sistem jika sistem dalam keadaan tidak begitu sibuk. Tugas-tugas yang dijalankan melalui batch akan dieksekusi melalui background. Format menjalankan perintah batch yaitu dengan mengetikkan perintah di terminal dan mengakhiri dengan <CTRL + D> pada akhir baris. contoh : $ batch lp /home/mahasiswa/dimas/* echo “File sudah dicetak Pak !” | mail –s “Pencetakan “ anjik@stikom.edu <CTRL + D> Perintah cron dan crontab Untuk menjalankan perintah atau proses yang harus dilakukan secara reguler, dapat menggunakan perintah cron (chronograph). Dengan cron dapat menentukan tanggal dan waktu yang diinginkan untuk menjalankan sebuah perintah dalam file-file crontab. Program cron hanya dijalankan satu kali, yakni saat sistem di-boot. User-user individual hendaknya diberi izin untuk menjalankan cron secara langsung. Selain itu administrator juga menjalankan aplikasi cron pada start-up file Linux agar cron berjalan saat proses boot terjadi. Perintah/Aplikasi yang dapat digunakan untuk menuliskan jadwal proses adalah crontab. Dalam file crontab ini konfigurasi penjadwalan proses tersimpan. File contab user disimpan dalam direktori /usr/spool/cron/crontabs dan memberi nama
  64. 64. Halaman : 62 Sistem Operasi 2 : Linux file tersebut dengan nama user. Sehingga jika usernya adalah icha, maka dapat digunakan file text editor untuk mengeditnya pada direktori tersebut. $crontab icha Dengan eksekusi perintah tersebut maka file /usr/spool/cron/crontabs/icha akan terbentuk. Masing-masing baris dalam file crontab memuat sebuah pola waktu dan sebuah perintah. Di mana perintah tersebut akan dieksekusi pada pola waktu yang ditetapkan. Pola waktu dibagi dalam lima field yang dipisahkan oleh spasi atau tab. Minute hour day-of-month month-of-year day-of-week command Keterangan range waktu : Minute : 00 s.d 59 Hour : 00 s.d 23 (tengah malam 00) Day-of-month : 01 s.d 31 Month-of-year : 01 s.d 12 Day-of-week : 01 s.d 07 (Senin 01, Minggu 07) Lima field pertama adalah field waktu, sedangkan satu field terkahir adalam field perintah. Dapat digunakan asterisk (*) dalam field waktu jika tidak ingin menentukan waktu – waktu tertentu. Option perintah crontab terdiri dari : -e : mengedit file contab -r : menghapus isi file crontab -l : Menampilkan daftar crontab
  65. 65. Halaman : 63 Sistem Operasi 2 : Linux Latihan : 1. Bagaimanakah perintah untuk menampilkan semua proses yang dijalankan oleh seorang user pada satu terminal 2. Jelaskan apa maksud dari status jobs : running, stoped dan done ! 3. Jika dalam perintah ps digunakan option –f, jelaskan output yang dihasilkan ! 4. Bagaimakah perintah untuk melakukan restart terhadap suatu proses yang sedang berjalan ! 5. Apakah perbedaan status proses I (idle) dan S (sleeping) ! 6. Buatlah susunan jadwal proses untuk melakukan pengiriman email ke root setiap 5 menit sekali mengenai 5 baris isi dari file /var/log/message
  66. 66. Halaman : 64 Sistem Operasi 2 : Linux BAB VIII SHELL (Pertemuan 10 dan 11) Shell adalah “command Executive”, artinya program yang menunggu instruksi dari pemakai, memeriksa sintak dari instruksi yang diberikan, kemudian mengeksekusi perintah tersebut. Shell ditandai dengan prompt. Umumnya adalah $ (bash shell) untuk pemakai biasa dan # untuk superuser (root). Pada awalnya UNIX (System V) mengembangkan Shell yang dikenal dengan nama Bourne Shell (/bin/sh), shell tersebut dirancang oleh Steve Bourne dari AT & T. Pada perjalanannya /bin/sh kemudian dikembangkan oleh David Korn, oleh karenanya Shell tersebut kemudian dikenal dengan nama Korn Shell (/bin/ksh). UNIX Berkeley (BSD = Berkeley Software Distribution) juga mengembangkan Shell yang dikenal dengan nama C-Shell (/bin/csh). Shell ini mengambil syntac yang mirip dengan bahasa C (C-Language). Penciptanya adalah Bill Joy (salah satu pendiri/ Founder dari Sun MicroSystems). Linux mengembangkan Shell yang kompatibel dengan Bourne-Shell, juga mengadaptasi kemampuan yang ada di Korn-Shell. Shell ini disebut sebagai bash (Bourne Again Shell) dengan nama program (/bin/bash). Perbedaan antara shell-shell tersebut hampir tidak ada, kecuali pada fasilitas pemrograman dan editing. Umumnya pemakai UNIX aliran AT&T menggunakan Bourne-Shell dan Korn Shell, aliran BSD seperti SunOS menggunakan C-Shell, sedangkan pemakai Linux menggunakan BASH. Pada awalnya bash diciptakan untuk menghindari lisensi/copyright Unix.
  67. 67. Halaman : 65 Sistem Operasi 2 : Linux Shell mana yang akan dipakai pengguna Linux, dapat dipilih saat membuat account baru, atau mengubahnya pada file /etc/passwd. root:*:0:0:Charlie &,,,:/root:/bin/csh demon:*:666:666::/home/bofh/demon:/bin/ksh di0311111:*:1000:1001:Bill Gates:/home/di/di031111:/bin/sh Pada prinsipnya shell adalah program yang dapat dibuat melalui bahasa pemrograman seperti C atau lainnya. Kreatifitas pengembang software banyak yang menciptakan shell lainnya, walaupun kurang populer seperti tcsh, zsh dan lainnya. 8.1 Profile Saat seoarang user melakukan login, sistem akan menjalankan program antara lain : /etc/profile Berisi shell script yang berlaku untuk seluruh pengguna Linux yang melakukan session login. PATH="/usr/local/bin:/usr/bin:/bin:/usr/games:/var/qmail/bin" PS1='u@h:w$ ' umask 022 HOSTNAME="`cat /etc/HOSTNAME`" HISTSIZE=1000 HISTFILESSIZE=1000 export PATH TERM PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME PATH, merupakan daftar nama direktori. Bila sebuah instruksi diberikan dari prompt shell, maka instruksi tersebut akan dicari pada daftar tersebut. PS1, adalah prompt. Dalam hal ini dirinci sebagai berikut : PS1='u@h:w$ ' u = Nama user h = Nama Host W = Nama working directory .bash_profile Merupakan profile setiap pemakai yang terletak pada home direktori masing-masing user. Sebelumnya sistem melakukan pengecekan apakah ada file ini, jika ada sistem akan mengeksekusi. File .bash_profile adalah hiddent file yang terletak dihome direktori masing-masing user. Untuk melihatnya dapat digunakan perintah $ls –a
  68. 68. Halaman : 66 Sistem Operasi 2 : Linux .bash_login File .bash_login juga terletak dalam direktori home user. Urutan pengeksekusiannya adalah, jika dalam home direktori user tidak ditemukan file .bash_profile, maka sistem akan mencari file .bash_login. Seterusnya jika sistem tidak menemukan file .bash_login, sistem akan mencari file .profile untuk dieksekusi bila ditemukan. .bashrc File .bashrc akan dieksekusi untuk perpindahan dari satu shell ke shell yang lainmelalui instruksi su (substitute user). .bash_logout User pada saat logout, shell terlebih dahulu akan mencari file .bash_logout, bile file tersebut ada maka file .bash_logout akan dieksekusi terlebih dahulu. Biasanya file ini diisi perintah-perintah untuk membersihkan jejak user, untuk keamanan. $ cat .bash_logout clear Pada contoh diatas .bash_logout hanya berisi satu instruksi, yaitu clear yang berarti membersihkan layar saat proses logout dilakukan oleh user tersebut. 8.2 History History diadaptasi dari C-Shell, yaitu catatan dari semua instruksi yang sejauh ini telah dilakukan. Catatan ini dapat dilihat sebagai history, kemudian dapat dipilih kembali, diedit dan dieksekusi. History umumnya memudahkan pemakai untuk mengedit kembali instruksi kompleks dan panjang terutama bila terjadi kesalahan pada penulisan intruksi maupun parameter. History mempunyai batasan maksimum instruksi yang dapat disimpan. Hal ini dinyatakan pada variabel HISTSIZE. $echo $HISTSIZE
  69. 69. Halaman : 67 Sistem Operasi 2 : Linux Untuk menampilkan instruksi yang telah dilakukan dengan menjalankan command history. $history <enter> --cut---- 667 w 668 cat /etc/profile 669 cat /etc/profile | less 670 ls -a 671 history Daftar intruksi dilengkapi dengan nomor urut. Nomor kemudian dapat dijadikan parameter dalam mengedit atau mengulang instruksi. Selain instruksi history, instruksi fc (fix command) juga dapat digunakan, seperti berikut : $ fc –l 667 w 668 cat /etc/profile 669 cat /etc/profile | less 670 ls -a 671 history 672 fc 673 history 674 fc –l Secara lebih nyata, fc dapat menampilkan instruksi antara 2 buah nomor, misalnya no. 667 s.d 669 : an71k@lug:~$ fc -l 667 669 667 w 668 cat /etc/profile 669 cat /etc/profile | less Cara diatas dapat diganti dengan menggunakan kata depan instruksi yang diberikan, an71k@lug:~$ fc -l clear whereis 683 clear 684 ls -l 685 ps -aux 686 whereis ls
  70. 70. Halaman : 68 Sistem Operasi 2 : Linux Intruksi dapat diedit dengan menggunakn fasilitas editor, misalnya editor vi. Penggunaan vi ini dapat dinyatakan dengan parameter sebagai berikut : $ fc 685 Instruksi diatas akan mengaktifkan editor vi, dan instruksi tersebut dapat diedit dalam vi, kemudian setelah selesai tekan ESC ZZ untuk keluar dari editor. Navigator history, dapat digunakan sebagai bantuan untuk bernavigasi terhadap instruksi dalam daftar history. Navigator tersebut antara lain : ^P (CTRL + P) : Melihat instruksi sebelumnya ^N (CTRL + N) : Melihat instruksi sesudahnya !! : Eksekusi kembali instruksi sebelumnya !! -3 : Instruksi 3 sebelum terakhir akan di eksekusi !! 100 : Ulangi eksekusi instruksi no 100 8.3 Prompt String (PS) Prompt String merupakan script yang berada pada file /etc/profile atau .bash_profile yang berfungsi untuk mengubah tampilan prompt user. Setelah mengganti variabel PS1, berikutnya jalankan instruksi export PS1 agar dikenal disemua shell. Beberapa penggantian prompt seperti berikut ini : $ PS1=”! >” prompt dari nomor history 69 > 69 > PS1=”d > “ Prompt dari tanggal sekarang Mon Apr 12 > Mon Apr 12 >PS1=”t >” Prompt jam sistem 20:10:05 > 20:10:05 >PS1=”u >” Prompt username anjik > anjik >PS1=”w > “ Prompt tanda “~” yang artinya home direktori ~ > ~>PS1=”h >” Prompt hostname lug >
  71. 71. Halaman : 69 Sistem Operasi 2 : Linux Untuk menghasilkan sebuah prompt NamaUser@NamaMesin didirectory x $ jika dituliskan dalam prompt adalah : PS1=”u@h w $ “ Dalam menulis prompt selain PS1, juga dapat digunakan PS2 yang nantinya sebagai prompt jika shell memerlukan input. 8.4 BASH-Script Bash Script adalah file yang berisi koleksi program yang dapat dieksekusi melalui perintah shell (prompt). Program BASH-Script akan menjadi executable jika modus file ditambah dengan “x”. Perhatikan contoh, $ cat > prg1.sh echo “Contoh program Bash” ^ D Untuk dapat dijalankan dalam prompt/shell, terlebih dahulu akses mode file harus ditambah executable atau “x”, sebagai berikut : $ ls -l prg1.sh -rw-r--r-- 1 an71k users 27 Apr 12 17:45 prg1.sh $ chmod +x prg1.sh $ ls -l prg1.sh -rwxr-xr-x 1 an71k users 27 Apr 12 17:45 prg1.sh* Menjalankan Script Untuk menjalankan script tersebut dapat dilakukan dengan beberapa cara, antara lain : $ bash prg1.sh Contoh Program BASH $ sh prg1.sh Contoh Program BASH $ . prg1.sh Contoh Program BASH $ ./prg1.sh
  72. 72. Halaman : 70 Sistem Operasi 2 : Linux Contoh Program BASH Eksekusi menggunakan . prg1.sh berarti adalah eksekusi shell, sedangkan ./prg1.sh berada pada direktori aktual. Aturan dalam pembuatan script shell dinyatakan dengan menulis pada baris pertama shell script dengan : #! /bin/bash 8.4.1 Variabel Variabel adalah suatu nama yang dapat digunakan untuk menampung suatu nilai dan nilai yang ada dapat diubah. Pemberian nilai ke suatu variabel dapat melalui penugasan, sebagai berikut : Variabel=nilai Contoh : jalan=“Kedung Baruk 98 Surabaya“ Apabila nilai mengandung karakter khusus seperti spasi, nilai harus ditulis dalam tanda petik. Pemberian string “Kedung Baruk 98 Surabaya“ ke variabel jalan, sebelum dan sesudah tanda sama dengan (+) tidak boleh ada spasinya. Untuk memperoleh nilai/isi dari variabel perlu diawali dengan tanda “$”, perhatikan contoh : echo $jalan 8.4.2 Parameter Posisi Banyaknya sekali perintah UNIX yang melibatkan argumen (parameter). Misalnya untuk menciptakan file bernama a, b, dan c perlu menuliskan perintah berupa : $touch a b c Argumen-argumen seperti ini dapat dikenali pada skrip shell dan biasa disebut sebagai parameter posisi. Parameter di BASH Shell yang berhubungan dengan parameter posisi, antara lain : $# Jumlah parameter $0 Nama skrip Shell
  73. 73. Halaman : 71 Sistem Operasi 2 : Linux $1 Parameter Pertama $2 Parameter Kedua ${10} Parameter ke sepuluh $* Semua parameter Contoh penggunaan parameter : $cat prg3.sh #! /bin/bash # prg3.sh # = = = = = = echo “jumlah parameter = $#“ echo “semua parameter = $*“ echo “ Isi $0 : “ $0 echo “ Isi $1 : “ $1 echo “ Isi $2 : “ $2 $./prg3.sh mencoba parameter shell jumlah parameter = 3 semua parameter = mencoba parameter shell Isi $0 : ./prgprg3.sh Isi $1 : mencoba Isi $2 : parameter 8.4.3 Perintah dan fungsi yang dapat digunakan : Perintah - perintah dari yang diketikkan oleh user secara default telah disimpan ke dalam sebuah file. Perintah untuk melihat perintah yang terakhir anda ketikkan dengan menggunakan “history”. Perintah-perintah dari Bourne Shell programming ini hampir sama digunakan oleh user. Perintah-perintah tersebut dapat diketikkan pada editor vi , sehingga dapat dijadikan sebuah program. Bentuk prompt dari Bourne Shell adalah ‘$’. 1. echo Digunakan untuk menampilkan keterangan pada layar komputer. Option: -n digunakan untuk ganti baris baru. Contoh : $ echo -n “Saya hendak belajar Bourne Shell.”
  74. 74. Halaman : 72 Sistem Operasi 2 : Linux Hasil : Saya hendah belajar Bourne Shell. 2. tanda( $ ) Digunakan untuk melihat isi dari suatu variabel file. Contoh : $ kalimat=‘Hallo apa kabar’ $ echo $kalimat Hasil: Hallo apa kabar 3. tanda ( ` ....... ` ) Digunakan untuk menjalankan perintah yang ada di dalam tanda petik tunggal terbalik ( ` ...... ` ) Contoh: $ coba=`pwd` $ echo $coba Hasil: /home/siswa 4. Tanda ( ) 1.Digunakan untuk membedakan antara perintah dengan tanda yang akan dicetak. Contoh : $ echo “” “ Hasil: “ 2. Digunakan untuk menjalankan suatu perintah di dalam perintah. Contoh: $echo “Sekarang saya ada di direktory : `pwd` ” Hasil: Sekarang saya ada di direktory : /home/siswa

×