Anda di halaman 1dari 53

MODUL I INTRODUCTION to LINUX

I.1 PROSES INSTALASI


1. Sejarah Linux Anda mungkin tidak percaya bahwa pembuatan Linux dimulai dari hobi seorang mahasiswa Finlandia bernama Linuz Torvalds yang terinspirasi oleh ketidakpuasannya terhadap kinerja Minix. Minix sendiri adalah sistem operasi yang dikembangkan oleh Andy Tanenbaum. Versi resmi pertama Linux, yaitu 0.02 diumumkan oleh Linus pada tanggal 5 Oktober 1991. Versi ini hanya dapat menjalankan shell bash ( GNU Bourne Again Shell ) dan gcc ( GNU C Compiler ). Secara teknis Linux sebenarnya hanyalah merupakan sebuah kernel, kernel adalah program yang dimuat saat booting, fungsinya sebagai interface antara userlevel program dengan hardware, yaitu melakukan tugas seperti sistem operasi, menangani task switching dalam multitasking, menangani permintaan membaca dan menulis peralatan disk, melakukan tugas-tugas network seta mengatur penggunaan memori. Program lain seperti kompiler, editor, window manager hanyalah distribusi yang melengkapi kernel menjadi sebuah sistem operasi yang lengkap. Salah satu pendorong perkembangan Linux yang cepat adalah sifat-open sourcenya yang dilindungi melalui lisensi GPL ( General Public License ). Dengan sifat tersebut, berbagai programer dapat turut serta mengembangkan Linux, sehingga Linux dapat berkembang pesat seperti sekarang ini. Saat ini telah berkembang begitu banyak distribusi Linux, beberapa diantaranya adalah : Slackware, Debian, Caldera, Redhat, Mandrake, Suse ,Gento, dll. Semua distro ini menggunakan Linux sebagai kernelnya, sedangkan letak perbedaan dari mereka adalah aplikasi pendukung yang disertakan pada tiap distro. Pada pelatihan ini digunakan RedHat, karena fleksibilitas RedHat dalam hal perpaduan CLI dan GUI serta penggunaannya baik untuk penggunaan rumahan, perkantoran, maupun server. 2. Kenapa saya harus belajar Linux ? Anda pasti telah mendengar masalah penegakkan HAKI yang katanya akan dilaksanakan oleh pemerintah secara konsekwen. Bagi anda yang begitu mendewakan windows ini adalah berita buruk, betapa tidak windows yang selama ini anda dapatkan dengan cara membajak tidak bisa didapat secara bebas lagi. Bukan hanya itu selain membeli OS-nya andapun harus mengeluarkan kocek tambahan untuk mendapatkan aplikasi-aplikasi lainnya seperti office. Sifat gratis Linux, menjadi daya tarik tersendiri bagi perusahaan menengah dan menengah kebawah. Ditambah lagi kenyataan bahwa sifat user friendly dan kompabilitas Linux semakin lama semakin baik. Bagi perusahaan menengah keatas daya tarik Linux terletak pada kestabilan dan keamanannya. Dua kelebihan ini ( stabil dan aman ) adalah karena Linux dikembangkan oleh begitu banyak orang sehingga setiap kekurangan dan bug dapat cepat ditemukan dan diperbaiki. Coba anda bandingkan dengan Windows yang hanya dikembangkan oleh ribuan orang.

Hal-hal di atas kemudian memberikan peluang bisnis, khususnya yang berkaitan dengan jasa dan sdm, serta memberikan peluang kerja. 1. Pra-instalasi Sebelum melakukan instalasi, ada baiknya dilakukan planning terlebih dahulu khususnya yang berkaitan dengan : 1. Kelas yang akan diinstal. Kelas instalasi yang ditawarkan dimaksudkan untuk memberikan pilihan kepada user dalam hal kesederhanaan proses. User dalam memilih kelas sesuai dengan manfaatnya atau secara manual memilih sendiri paket yang akan diinstal melalui costum. Penggolongannya terdiri dari empat kelas, yaitu : a Personal Desktop Kelas ini dikhususkan bagi anda yang baru mencoba Linux. GUI langsung diinstal pada option ini.

b. Kelas Workstation Pilihlah kelas ini jika anda hanya ingin memanfaatkan GUInya saja. Pada option ini software development tools juga ikut diinstal. Jika nantinya memilih partisi secara otomatis, maka untuk kelas ini semua partisi yang berhubungan dengan linux akan dihilangkan dan diganti dengan partisi swap, root dan boot secara otomatis. Jika terdapat partisi windows, maka kelas ini akan secara otomatis mengkonfigurasi dual boot. c. Kelas Server Kelas ini digunakan jika kita ingin menggunakan linux sebagai server dan kita tidak ingin berpusing ria mengkonfigurasi system. Jika dipilih partisi secara otomatis, maka semua partisi yang ada akan dihapus. Space harddisk minimal adalah 1,6 GB. Setelah proses instalasi selesai, maka kita akan menemukan partisi : swap, /, /usr, /home, /var, dan /boot. d. Kelas Costum Kelas ini memberikan fleksibilitas dan kebebasan yang tinggi pada user. Kita dapat mempartisi sendiri harddisk, memilih paket-paket yang akan diinstall, dan pemilihan boot loader beserta konfigurasinya. 2. Partisi harddisk Sebelum menginstall kita perlu merencanakan partisi harddisk sesuai dengan besarnya space untuk menginstall linux sesuai keinginan. Jika ternyata kita harus melakukan partisi, maka pindahkan terlebih dahulu data-data pada harddisk anda. Anda bebas memilih tool partisi seperti partition magic atau menggunakan disk druid yang dapat ditemui pada saat instalasi nanti. 3. Menuliskan spesifikasi hardware komputer yang akan diinstal Linux. Harddisk : jenis, ukuran, nomor Contoh : IDE hda = 20 GB Partisi : partisi dan mount point Contoh : /dev/hda1 = / Memory : besar memory Contoh : 128 MB

CD Room : jenis interface Contoh : IDE Adapter SCSI : merk, jenis, nomor Contoh : BusLogic SCSI Kartu Jaringan : nomor, merk dan jenis Contoh : 3COM 3C590 , DLink 650 Mouse : jenis, jumlah button, com Contoh : generic 3 button, MouseMan 2 button serial COM1 Monitor : merek, model, spesifikasi manufaktur Contoh : TECO TE551 VGA Card : merek, nomor model, besarnya RAM Contoh : Creative Labs Graphics 3D 8 MB Sound Card : merek, chipset, nomor model Contoh : Sound Blaster 32/64 AWE IP Address & netmask : hubungi admin jaringan anda IP Server DNS, Gateway : hubungi admin jaringan anda Hostname : nama komputer anda Contoh : Penyusup, Executor Spek ini dapat dilihat di : Manual book device BIOS komputer Dari windows : klik kanan pada My Computer, Propertis, Device Manager

2. Proses Installasi Red Hat 9


Setting BIOS agar pengecekkan device pertama untuk booting adalah di CD-Rom Masukkan CD 1 ke CD-Rom, tekan F10 atau save perubahan BIOS anda, lalu restart Tunggu hingga muncul tampilan bergambar orang bertopi merah di pojok kiri atas, dengan keterangan di bawahnya Red Hat Linux 9 Disini kita dihadapkan pada pilihan melakukan penginstallan dengan 2 mode, yakni secara graphical atau secara textmode Selain itu kita dapat menggunakan function key yang terletak di bagian bawah window. Fungsi masing masing function key tersebut antara lain : F1 Main, untuk kembali pada tampilan awal (yaitu tampilan saat ini) F2 Option, untuk menuliskan berbagai macam option pada saat kita hendak menginstall. Option yang tersedia antara lain : linux noprobe , untuk menghindari pengecekkan hardware pada saat penginstallan linux mediacheck , untuk mengecek media installasi kita linux rescue , untuk mengaktifkan mode rescue linux dd , digunakan untuk menginstall hardware tertentu yang drivernya belum dimiliki oleh paket bawaan linux

linux askmethod , untuk menetapkan metode penginstallan yang digunakan oleh CD-Rom linux updates , untuk meng-update versi linux linux lowres , untuk menginstall dengan resolusi monitor yang rendah, yaitu 640 x 480 F3 General, merupakan Help secara umum dalam hal membooting penginstallan F4 kernel, untuk menerapkan parameter kernel secara khusus, biasanya untuk tingkat advanced F5 rescue, merupakan penjelasan cara masuk mode rescue

3. Menginstall Secara Graphical Mode Tekan Bila media CD penginstall telah ada di tempatnya, maka akan muncul window CD Found Pilih OK untuk melakukan test media, atau Skip untuk langsung memulai menginstall. Menggeser pilihan dilakukan dengan panah kanan kiri atau menggunakan tombol Tab, kemudian tekan Space atau Enter Pada window media check, pilih test untuk mengetes CD pertama, bila telah selesai untuk CD pertama, maka dapat dilanjutkan untuk CD selanjutnya dengan menekan Eject CD lalu Test. Bila semua CD telah selesai di cek, masukkan kembali CD pertama dan tekan Continue Anda akan memperoleh tampilan sebuah window dimana di sebelah kiri adalah help-nya yang bila anda merasa tidak perlu menggunakan jendela Help dapat anda hilangkan dengan menekan tombol Hide Help. Tombol release note menjelaskan tentang spesifikasi hardware minimal untuk menginstall linux, dll yang dapat anda pelajari sendiri Klik next, setiap anda akan melanjutkan ke tahap selanjutnya Pilih bahasa, kemudian next Memilih jenis standar keyboard atau berdasarkan merk-nya, next Memilih jenis standar mouse, yang telah disorot pada saat pertama kali adalah jenis standar mouse anda yang telah terdeteksi oleh komputer. Disarankan untuk memilih ini, next. Keterangan : tombol emulate 3 button digunakan untuk mengakali sebuah mouse 2 tombol agar dapat berfungsi layaknya mouse 3 tombol Memilih jenis installasi yang akan digunakan. Kita menggunakan Custom agar dapat memilih jenis paket yang akan diinstall, Next. (pemilihan paket pada pelatihan ini akan ditentukan oleh tentor) Pada window ini, pastikan anda memilih Manually Partition with Disk Druid bila anda telah membuat partisi ext2 melalui program partition magic atau yang sejenisnya Pilih partisi yang telah anda persiapkan (di klik pada partisi yang dituju) Klik edit Pada mount point, klik tanda panah ke bawah lalu pilih / , bila ada jendela warning, pilih Continue, next

Memilih boot loader yang ingin anda gunakan dapat anda lakukan dengan meng-klik Change Boot Loader : Pilih Grub Pilih Lilo Atau tidak menginstall boot loader Pada pelatihan ini, kita memilih Grub sebbagai boot loadernya Kemudian kita dapat menentukan Operating System mana yang menjadi default bila kita menyalakan komputer kita. Anda dapat memilih linux atau windows. Misal kita pilih linux Bila anda menginginkan user komputer anda memasukkan password terlebih dahulu sebelum menggunakan linux anda, yang dapat anda lakukan adalah dengan meng-klik Use a boot loader password dan isikan password yang anda inginkan Untuk menetapkan dimana kita akan menginstall boot loader, kita klik Configure advanced boot loader option Pilihan tempat menginstall boot loader yaitu : Master Boot Record, pilihlah ini jika anda menginginkan bootloader yang anda install memegang control booting. First sector of boot partition, pilihlah ini jika anda menginginkan bootloader dari OS lain yang anda install sebelumnya memegang control booting. Disarankan anda memilih MBR agar dapat dengan mudah mengkonfigurasi booting anda dengan dual boot. Klik next Untuk network configuration, jangan dihiraukan dahulu, nanti dapat kita set saat linux telah terinstall, next Pilih bahasa pendukung selain bahasa Inggris, misal bahasa Indonesia Pilih daerah tempat tinggal anda, misal Jakarta (meliputi Jawa dan Sumatra), next Masukkan password root (harus selalu anda ingat !!!), misal SeniorMember, next Pada window ini, biarkan saja bila anda belum memahaminya (mengingat ini linux basic), next aja lagi Proses installasi dimulai, tunggu, tidur atau bikin kopi, ngobrol dulu dengan tentor juga ngga papa Bila di tengah penginstallan anda diminta untuk memasukkan disk, masukkanlah CD2 dan klik OK Setelah selesai menginstall, anda akan diminta untuk membuat boot disk (sebaiknya anda buat bila menginstall di rumah), next Pilih merk/jenis VGA anda dan tentukan juga berapa memory yang dimilikinya Pilih merk/jenis monitor anda dan tentukan frekuensi kerjanya (sebaiknya default aja), next Tentukan kedalaman warna dan tingkat resolusi yang anda inginkan dan sesuai dengan kemampuan komputer anda Memilih login secara graphical atau text mode, kita pilih text mode saja biar keren Next 5

Restart

I.2 SISTEM FILE ( Filesystem )


Filesystem adalah metoda metoda dan struktur struktur data yang digunakan operating system untuk memelihara file file pada sebuah disk atau partisi agar tetap pada tracknya. Saat ini Linux menggunakan filesystem ext3. Linux memiliki dukungan terhadap beberapa filesystem lain sehingga kita dapat menggunakan atau mengakses filesystem yang berbeda tanpa harus melakukan konversi filesystem terlebih dahulu. Berikut adalah beberapa tipe filesystem yang didukung oleh Linux. Minix, minix merupakan filesystem Linux pertama dan saat ini masih banyak digunakan untuk boot disk dan beberapa format disket. NTFS , NTFS adalah filesystem yang digunakan oleh windows NT dan keluarganya. Redhat 8 keatas ( Pysche & Shrike ) secara default dapat membaca filesystem ini. ext & ext2, filesystem ini merupakan filesystem lama Linux sebelum menggunakan ext3. Secara default file yang ada pada filesystem ini dapat dibaca dan ditulisi, tapi tidak bisa dieksekusi. ISO9660, filesystem ini digunakan oleh cdrom FAT, FAT32, Jika anda memiliki partisi tipe ini anda tidak perlu khawatir, karena linux dapat membaca dan menulis pada partisi ini. I.3 ORGANISASI DIREKTORI dan FILE Secara umum struktur direktori Linux adalah sbb :

Penjelasan : Unix dan keluarganya menggunakan system direktori seperti tree ( pohon ) yang dibalik, sehingga direktori tertinggi adalah root ( akar ). / => Direktori root, Merupakan root ( akar ) dari seluruh direktori /bin ,berisi filefile utilitas yang bersifat executable ( perintah-perintah ) /sbin ,berisi file-file executable yang hanya dapat digunakan oleh user root /etc ,berisi file-file konfigurasi yang spesifik terhadap system yang bersangkutan /boot ,berisi segala sesuatu yang berkaitan dengan proses booting kecuali configuration files dan map installer /home ,merupakan induk dari direktori user /mnt ,berisi mounting point /lib ,berisi file library dan kernel module /proc ,berisi parameterparameter kernel dan informasi runtime system /tmp ,berisi file-file yang bersifat temporary /var ,berisi file-file yang menampung varying content /usr ,berisi file-file yang berhubungan langsung dengan user /root ,adalah home directory bagi user root

I.4 SYSTEM X WINDOW


Ada beberapa istilah yang perlu diketahui dalam mengenal X Window : Screen, menunjuk kepada keseluruhan desktop atau secara teknis berarti tampilan layar utama yang X lihat. Anda dapat mempunyai lebih dari 1 buah

X server, bahkan sebenarnya anda dapat mempunyai lebih dari satu komputer menjalankan 1 buah X server, tetapi hal ini tidak akan dibahas pada pelatihan first series mengingat topik pembahasannya yang cukup kompleks. Root Window, adalah latar belakang dari screen anda. Tidak mempunyai karakteristik seperti window lainnya, tetapi lebih ke sebuah tempat dimana anda menjalankan aplikasi atau menyimpan gambar atau hanya memberi warna padanya. Window Manager, adalah interface utama antara X Window System dengan user. Tanpa window manager, system akan lebih sulit digunakan dan tidak akan terlalu produktif. Window Manager menyediakan fungsi-fungsi pengontrolan dan kostumasi border, menu, icon, virtual desktop, button dan toolbar dari X Window. Pointer, adalah panah atau indicator penunjuk yang merepresentasikan lokasi mouse atau pointing device lainnya, yang berhubungan erat dengan screen. Window, adalah frame dimana semua aplikasi berjalan. Frame ini mempunyai property yang dikontrol oleh window manager. Active Window, adalah window yang sedang digunakan, window ini disebut mempunyai focus dapat menerima input dari console atau pointing device. Menu dan icon berlaku sama seperti pada window system lainnya. Window yang terdiri hanya text saja disebut terminal emulator.

I.5 DESKTOP
KDE Desktop Environment adalah hasil sebuah proyek untuk menciptakan desktop environment yang solid dan terintegrasi, bukan hanya sebuah window manager. Utiliti KDE sangat lengkap hingga seorang newbie dapat saja mengatakan bahwa KDE adalah sebuah Operating System. Semua tool untuk bekerja dalam sistem yang window-based. GNOME adalah proyek lainnya yang sama dengan KDE namun berbeda dalam system dan kemampuan. GNOME tidak saja merupakan sebuah window manager, tetapi system desktop yang interoperable antar komputer dan platform. Kemampuan ini diperoleh karena GNOME menggunakan Common Object Resource Broker Architecture (CORBA). GNOME lebih diterima di dunia Open Source karena GNOME dibuat dengan Gtk+ toolkit yang gratis dan Open Source berdasarkan GNU License. Menjalankan X-Window Mudah sekali, ketikkan perintah : [root@pelatihan root]#startx Pada console Linux, maka anda akan dibawa memasuki GUI based desktop environment GNOME sebagai default. Mengganti X Window System dengan KDE tidak sulit, lakukan langkah-langkah berikut : Ketikkan perintah : [root@pelatihan root]#switchdesk Pilih KDE

[root@pelatihan root]#init 6 [root@pelatihan root]#startx

1.6 REPRESENTASI DEVICE


Linux memiliki cara yang unik dalam merepresentasikan suatu device, yaitu dengan menganggap device tersebut adalah file.Berikut adalah beberapa device yang dapat kita temui : Nama Jenis device /dev/hda Harddisk IDE pertama /dev/hdb Harddisk IDE kedua /dev/fd0 Floppy pertama /dev/fd1 Floppy kedua /dev/cdrom cdrom /dev/sda Harddisk SCSI pertama /dev/sdb Harddisk SCSI kedua /dev/aztcd cdrom aztech CDA268-01 /dev/cdsony cdrom sony CDU 31a /dev/mouse mouse /dev/logimouse mouse Logitech

LINUX TRAINING FIRST SERIES

pinguin.stttelkom.ac.id

10

MODUL II BASIC COMMAND, SHELL PROGRAMMING & BASH SCRIPTING


Dalam sistem Linux beberapa kategori file, yaitu : File teks, dalam format standar ASCII. File data, dalam format non-ASCII (berupa karakter khusus). File teks perintah, dalam format ASCII tetapi merupakan sekumpulan perintah otomatis (berupa script). File perintah (executable), dalam format binary. Direktori, merupakan kumpulan dari file-file bahkan direktori lainnya. Tanda . Menunjuk kepada direktory yang bersangkutan, .. menunjuk kepada direktori di atasnya. Hard Links, dapat dikatakan bukan merupakan tipe suatu file, akan tetapi nama lain dari suatu file tertentu. Hard links pada dasarnya merupakan alias dari file yang asli. Symbolic Links, menghubungkan pada suatu file dengan menunjuk pada nama file tersebut. Isi dari file dengan tipe ini adalah pathname dari file yang ditunjuk. Device driver khusus, terbagi menjadi dua yaitu character device dan block device.

II.1 PERINTAH-PERINTAH DASAR LINUX


Untuk berinteraksi dengan sistem, Linux menyediakan dua alternatif, yaitu CLI ( Command Line Interface ) dan GUI ( Graphical User Interface ). CLI menyediakan interfacing ke user dalam bertuk text, dimana user menginputkan sejumlah text tertentu untuk mendapatkan output yang diinginkan. Sedangkan GUI merupakan alternatif interfacing dalam bentuk grafis dan dilengkapi dengan petunjuk penggunaannya. Penggunaan CLI atau GUI ini terserah pada selera dan kebutuhan anda. Tetapi untuk tahap awal agar anda memiliki pemahaman yang baik tentang linux, maka pada pelatihan ini digunakan CLI. Sedangkan untuk penggunaan GUI secara mendalam akan dibahas pada pelatihan Linux SOHO yang akan menitikberatkan pada penggunaan aplikasi office untuk rumah dan perkantoran pada linux. Pada interface CLI Linux menggunakan shell. Shell merupakan sebuah command interpreter yang berfungsi untuk menterjemahkan setiap perintah yang anda ketikkan. Shell banyak jenisnya, tetapi shell yang paling banyak disupport oleh distro linux dan yang paling banyak digunakan adalah bash. Anda dapat mengecek jenis shell yang anda gunakan dengan mengetik: $env | grep SHELL SHELL=/bin/bash ini artinya anda menggunakan bash

11

Shell Prompt Sebelum mencoba perintah-perintah dasar pada Linux, ada baiknya kita mengenal shell prompt terlebih dahulu. Contoh : [pinguin@CnC pelatihan]$ Pinguin menunjukkan user aktif pada shell tersebut CnC menunjukkan nama mesin ( host ) dari yang bersangkutan Pelatihan menunjukkan current direktori $ berarti pinguin adalah user biasa # menunjukkan user root Format umum perintah : Perintah [option] [argumen] Bisa merupakan input dan atau output Pilihan untuk mengatur hasil yang diinginkan Jenis perintah Berikut adalah beberapa perintah dasar yang dirasa perlu untuk diketahui : ls Perintah ini sama halnya seperti perintah dir pada MS-DOS yang sudah kita kenal sebelumnya, yang berfungsi untuk menampilkan isi dari suatu direktori beserta atribut-atribut file-nya. Contoh : [root@pelatihan root]#ls a /pelatihan cd Perintah ini berfungsi untuk berpindah dari satu direktori ke direktori yang lainnya. Contoh : [root@pelatihan root]#cd /pelatihan mkdir Perintah ini sama halnya seperti perintah md pada MS-DOS, yang berfungsi untuk membuat sebuah direktori dalam direktori yang sedang aktif. Contoh : [root@pelatihan root]#mkdir /pelatihan rm dan rmdir Perintah rm digunakan untuk menghapus file, sedangkan rmdir menghapus direktori. Contoh : [root@pelatihan root]#rm [nama.file] [root@pelatihan root]#rmdir [nama.direktori]

12

find Perintah ini berfungsi untuk mencari file atau direktori. Contoh : [root@pelatihan root]#find direktori_pencarian nama_file_dicari print locate Fungsinya kurang lebih sama dengan perintah find, bedanya locate menggunakan sebuah database (biasanya terletak di /var/lib/locatedb) yang dapat di-update menggunakan perintah updatedb. Contoh : [root@pelatihan root]#locate [sesuatu] whereis Berfungsi untuk mencari posisi direktori dari suatu file Contoh : [root@pelatihan root]#whereis nama.file which Berfungsi untuk mencari direktori dari suatu perintah Contoh : [root@pelatihan root]#which [nama.perintah] tail Berfungsi untuk menampilkan x baris terakhir dari suatu file Contoh : [root@pelatihan root]#tail 10 [nama.file] pwd Berfungsi untuk menampilkan posisi current direktori Contoh : [root@pelatihan root]#pwd shutdown Berfungsi untuk merestart dan men-shutdown komputer Contoh : [root@pelatihan root]#shutdown r now ( -r = restart ) [root@pelatihan root]#shutdown h now ( -h = halt ) poweroff Berbeda dengan shutdown, selain man-shutdown, poweroff juga mematikkan power komputer secara otomatis. Contoh : [root@pelatihan root]#poweroff df 13

Berfungsi untuk menampilkan informasi tentang pemakaian partisi yang dimounting Contoh : [root@pelatihan root]#df -h touch Berfungsi untuk membuat file berukuran 0 KB Contoh : [root@pelatihan root]#touch coba.coba grep Perintah ini digunakan untuk pencarian data di dalam file, penggunakan grep akan lebih mengefisienkan waktu dibandingkan harus membaca file satu per satu. Contoh : [root@pelatihan root]#grep sesuatu nama.file cat Perintah cat ini akan menampilkan isi dari suatu file ke standart output (stdout). Contoh : [root@pelatihan root]#cat [nama.file] more Sama seperti cat, tapi tampilan akan berhenti setiap satu layar. Contoh : [root@pelatihan root]#more [nama.file] cp Perintah ini mirip dengan perintah copy pada MS-DOS, yang berfungsi untuk mengkopi suatu file ke tempat tertentu. Contoh : [root@pelatihan root]#cp [sumber] [tujuan] mv Perintah ini mirip dengan perintah move pada MS-DOS, yang berfungsi untuk memindahkan suatu file ke tempat lain atau bisa juga untuk mengganti nama file. Contoh : [root@pelatihan root]#mv [file1] [file2]

tar Berfungsi untuk mengumpulkan banyak file atau direktori menjadi satu kesatuan. Perintah ini tidak melakukan kompresi pada outputnya. Contoh : [root@pelatihan root]#tar nama.tar [file1] [file2] gzip dan gunzip Perintah untuk mengkompres dan men-dekompres sebuah file. 14

Contoh : [root@pelatihan root]#gzip nama.gz file [root@pelatihan root]#gunzip nama.gz bzip2 dan bunzip2 Perintah ini tergolong baru diimplementasikan. Dari pengamatan penulis, bzip2 mampu mengkompres file lebih baik dari gzip. Contoh : [root@pelatihan root]#bzip2 nama.bz2 file [root@pelatihan root]#bunzip2 nama.bz2 tar + gzip Anda dapat menggabungkan perintah tar dan gzip Contoh :
[root@pelatihan root]#tar czvf nama.tar.gz file1 file2 [root@pelatihan root]#tar xzvf nama.tar.gz coba/

tar + bzip2 Anda tentu bisa menggabungkan dua perintah ini Contoh :
[root@pelatihan root]#tar cjvf nama.tar.bz2 file1 file2 [root@pelatihan root]#tar xjvf nama.tar.bz2 coba/

rdev Berfungsi untuk menampilkan posisi root partition Contoh : [root@pelatihan root]#rdev

II.2 REDIRECTION dan PIPE


Redirection Fasilitas redirection memungkinkan kita untuk dapat menyimpan output dari sebuah proses untuk disimpan ke file lain (Output Redirection) atau sebaliknya menggunakan isi dari file sebagai input dalam suatu proses (Input Redirection). Komponenkomponen dari redirection adalah < , > , << , >> Output Redirection Untuk me-redirect standar output, kita gunakan simbol >. Penempatan tanda > setelah perintah cat akan mengarahkan/direct output ke nama file yang mengikuti tanda >. Contoh : [root@pelatihan root]#cat > nama.file Percobaan ^D 15

Melihat isi file nama.file [root@pelatihan root]#cat latih Percobaan Menambah isi file [root@pelatihan root]#cat >> [nama.file] tambahan ^D Berbeda dengan >, >> berfungsi menambahkan text ke file yang bersangkutan Lihat kembali isi dari file latih [root@pelatihan root]#cat [nama.file] Percobaan tambahan Anda juga dapat menggunakan output dari suatu perintah [root@pelatihan root]#find /* > file1

Input Redirection Untuk me-redirect standar input, kita gunakan simbol redirect <. Artinya kita meminta shell untuk membaca file sebagai inputan bagi command/perintah. Prinsip penggunaannya sama seperti output redirection. Contoh : [root@pelatihan root]#mail root < latih maka dengan kata lain, isi file latih tadi akan menjadi inputan bagi perintah mail. Dengan begitu sekarang kita memiliki mail dengan isi berupa file latih tadi. Pipeline Pipeline ( | ) merupakan fasilitas di shell UNIX yang berfungsi untuk memberikan input suatu proses dari output proses yang lain. Contoh : [root@pelatihan root]#find * maka akan ditampilkan keseluruhan pencarian, dan setelah kita gunakan pipeline : [root@pelatihan root]#find * | grep latih maka hanya akan ditampilkan hasil pencarian yang menemukan kata latih. Dengan kata lain, output dari perintah find akan menjadi input dari perintah grep yang kemudian hanya mengambil kata latih dari output find.

II.3 EDITOR
Seperti juga pada Ms-Windows, untuk Linux maupun semua varian UNIX terdapat editor file yang dinamakan vi atau vim (vi improved with syntax color highlighting). Selain vi terdapat program editor lain yang lebih mudah pemakaiannya seperti pico, joe, jove, mc (midnight commander), dll. Pada bab ini, akan dikenalkan bagaimana menggunakan editor vi, joe, pico dan mc. 1. Vi

16

Vi merupakan editor yang paling terkenal di dunia UNIX. vi adalah kepanjangan dari Visual editor. vi mendukung penggunaan warna untuk menandakan kode program dan juga penanda teks seperti penggunaan huruf normal, tebal maupun cetak miring. Untuk menjalankan perintah vi, kita gunakan sintaks sebagai berikut : [root@cnc root]#vi [nama.file] Editor vi mempunyai tiga mode : Input Mode, dengan mengetikkan perintah-perintah yang spesifik seperti a i u Contoh : terlebih dahulu buatlah file dengan mengetik vi nama.file tekan i sehingga muncul tulisan INSERT pada bagian bawah layar. Ketikkan sesuatu pada layar. tekan esc lalu tekan u, u digunakan untuk mengundo suatu perubahan setelah save terakhir. Ketikan lagi sesuatu. tekan Esc lalu ketikkan de, maka satu baris setelah posisi kursor akan didelete. Command Mode, untuk menggunakannya tekan Esc terlebih dahulu. Contoh : tekan Esc, :wq, enter, digunakan untuk menyimpan dan keluar dari editor tekan Esc, :q, digunakan untuk keluar dari dari vi tanpa melakukan editing tekan Esc, :q!, berfungsi untuk keluar tanpa menyimpan dari vi tekan Esc, :w, digunakan jika kita ingin mensave tanpa keluar dari vi Line Mode, suatu keadaan setelah ada proses input : ? / ! Contoh : tekan Esc lalu i, ketik kata coba tekan Esc lalu /coba, perintah ini akan menyebabkan kursor men-select kata bersangkutan.

Selain tiga mode ini anda dapat juga memadukan vi dengan interface grafis Linux, cobalah dan rasakan bedanya. 2. Pico Pico adalah teks editor jenis lain yang berdasarkan pada program compose email pine. Navigasi untuk perintahnya diletakkan di bawah dari layar. Semua karakter yang diketik langsung disisipkan ke dalam teks. Perintah untuk menjalankan editor pico adalah sbb : [root@cnc root]#pico [nama.file]

Tombo l

Fungsi

17

^G ^W ^R ^O ^X ^K ^C ^U 3. Joe

Help Mencari kata Membuka file Menyimpan file Keluar dari Pico Menghapus satu baris Menampilkan posisi kursor Undo untuk perintah menghapus

Perintah-perintah dalam editor joe saat ini mirip dangan perintah-perintah pada WordStar. Jika kita telah terbiasa dengan perintah pada WordStar, maka tidak akan kesulitan dalam menggunakannya. Untuk menjalankan Joe ketikkan perintah berikut : joe nama.file Tombol ^C ^KD ^KX ^KB ^KK ^KC ^KY ^KM ^Y ^X ^Z ^KU ^KV ^A ^E ^U ^V 4. Mc MC atau Midnight Commander merupakan aplikasi yang sangat berguna. Kemampuan mc sebagai editor hanya salah satu dari kemampuan-kemampuan lainnya. Syntax : [root@cnc root]#$ mc e nama.file atau mc kemudian insert file yang akan diedit lalu tekan F4 untuk mengedit. Perintah-perintah yang dapat digunakan dapat dilihat berikut ini : Fungsi Keluar tanpa menyimpan Simpan file dan kembali ke menu edit Simpan file dan keluar Memberikan tanda awal untuk memblok Memberikan tanda akhir untuk memblok Mengkopi daerah yang telah diblok Menghapus daerah yang telah diblok Memindahkan daerah yang telah diblok Menghapus satu baris Memindahkan kursor ke kata berikutnya Memindahkan kursor ke kata sebelumnya Memindahkan kursor ke tempat paling awal file Memindahkan kursor ke tempat paling akhir file Memindahkan kursor ke awal baris Memindahkan kursor ke akhir baris Menggulung layar ke layar sebelumnya Menggulung layar ke layar berikutnya

18

Masing-masing editor ini mempunyai kelebihan dan kekurangan. Contohnya pada editor pico yang sangat baik berjalan di terminal apapun, termasuk pada terminal bila kita sedang telnet dengan menggunakan client dari windows. Sedangkan vi digunakan karena banyak feature-feature yang sangat menarik sehingga membantu kita untuk lebih cepat dalam mengedit file. Editor joe dan mc, digunakan karena sederhana dan tampilannya yang menarik.

II.4 MENGAKSES DISK


Berbeda dengan Windows yang mengenal mekanisme drive ( A, B ,C ,dst ), Linux memiliki mekanisme sendiri yaitu mounting. Mekanisme ini deperlukan agar disk yang anda miliki, seperti floppy, cdrom dan harddisk dapat diakses. 1. Manual Gunakan cara ini untuk melakukan mounting yang bersifat insidentil. Syntack : root@pelatihan root]#mount [device] [directory] penjelasan : [device] : adalah representasi disk yang anda miliki [directory] : direktori tempat mounting point Contoh : root@pelatihan root]#mount /dev/cdrom /mnt/cdrom Perintah ini akan memounting cdrom ke /mnt/cdrom root@pelatihan root]#mount /dev/fd0 /mnt/floppy Perintah ini akan memounting floppy ke /mnt/floppy root@pelatihan root]#mount /dev/hda5 /mnt/drive_D Perhatikan /dev/hda5 merepresentasikan disk anda, yaitu harddisk. hd berarti bahwa anda menggunakan hasrddisk IDE, jika anda menggunakan SCSI, maka gunakan sd . huruf a pada hda menunjukkan ini adalah harddisk pertama ( dimulai dari a, b, c, dst )

19

angka 5 pada hda5 menunjukkan bahwa ini adalah partisi ke lima ( dimulai dari 1, 2, 3, dst ) Buatlah direktory /mnt/drive_D terlebih dahulu

2. Otomatis Gunakan cara ini jika anda menginginkan disk tersebut secara otomatis di mounting pada saat booting. Edit file /etc/fstab root@pelatihan root]#vi /etc/fstab Format isinya : [device] [direktori] [fstype] [option] [dump] [fsck] [fstype] : Untuk menentukan tipe dari filesystem yang akan di mount. Set = auto jika agar ditentukan secara otomatis. [option] : digunakan untuk memberikan advanced setting terhadap suatu meounting. Contoh aplikasinya adalah quota dan setiing keamanan. [dump] : digunakan agar mounting yang anda buat dapat digunakan oleh dump untuk fasilitas backup data. Set = 1 jika anda menginginkannya dan = 0 jika tidak [fsck] : digunakan agar mounting yang anda buat diperiksa oleh program fsck pada saat reboot. jika anda menginginkannya set = 1 untuk filesystem / (root) dan 2 untuk lainnya. Jika tidak set = 0. Contoh :
/dev/hda5 /mnt/windows auto defaults 0 2

II.5 PEMROGRAMAN SHELL ( BASH SCRIPTING )


1. Pendahuluan Apa itu shell ? shell adalah program (penterjemah perintah) yang menjembatani user dengan sistem operasi dalam hal ini kernel (inti sistem operasi). Umumnya shell menyediakan prompt sebagai user interface, tempat dimana user mengetikkan perintah-perintah yang diinginkan baik berupa perintah internal shell (internal command), ataupun perintah eksekusi suatu file program (eksternal command). Selain itu shell memungkinkan user menyusun sekumpulan perintah pada sebuah atau beberapa file untuk dieksekusi sebagai program. 2. Macam-macam shell Tidak seperti sistem operasi lain yang hanya menyediakan satu atau dua shell, sistem operasi dari keluarga unix misalnya linux sampai saat ini dilengkapi oleh banyak shell dengan kumpulan perintah yang sangat banyak, sehingga memungkinkan pemakai memilih shell mana yang paling baik untuk membantu menyelesaikan pekerjaannya, atau dapat pula berpindah-pindah dari shell yang satu ke shell yang lain dengan mudah, beberapa shell yang ada di linux antara lain : Bourne shell (sh) C shell (csh) Korn shell (ksh) Bourne again shell (bash), dsb Masing masing shell mempunyai kelebihan dan kekurangan tersendiri yang lebih didasarkan kepada kebutuhan pemakai yang makin hari makin meningkat. Untuk pelatihan ini digunakan bash shell dari GNU, yang merupakan pengembangan dari 20

Bourne Shell dan mengambil beberapa feature dari C shell serta Korn shell. Bash shell merupakan shell yang cukup banyak digunakan pemakai linux karena kemudahan serta banyaknya fasilitas perintah yang disediakan. 3. Pemrograman Shell Yaitu menyusun atau mengelompokkan beberapa perintah shell (internal ataupun eksternal) menjadi kumpulan perintah yang melakukan tugas tertentu sesuai tujuan pembuatannya. Kelebihan shell di linux dibanding sistem operasi lain adalah bahwa shell di linux memungkinkan kita untuk menyusun serangkaian perintah seperti halnya bahasa pemrograman (interpreter language), melakukan I/O, menyeleksi kondisi, looping, membuat fungsi, dsb adalah proses-proses yang umumnya dilakukan oleh suatu bahasa pemrograman, jadi dengan shell di linux kita dapat membuat program seperi halnya bahasa pemrograman. Pemrograman shell unix atau linux mempunyai istilah tersendiri, yaitu script shell. Sebelum memulai balajar shell programing terlebih dahulu anda harus memantapkan pemahaman mengenai perintah-perintah dasar yang telah diberikan. Simple bash script Langkah awal sebaiknya periksa dulu shell aktif anda, gunakan perintah ps (report proses status) [root@pelatihan root]#ps PID TTY TIME CMD 219 tty1 00:00:00 bash 301 tty1 00:00:00 ps bash adalah shell aktif di system saya, jika di sistem anda berbeda misalnya csh atau ksh ubahlah dengan perintah change shell [root@pelatihan root]# chsh Password: New shell [/bin/csh]:/bin/bash Shell changed dengan atau mengetikkan bash [root@pelatihan root]# bash sekarang coba anda ketikkan perintah dibawah ini pada prompt shell echo Script shell pertamaku di linux
[root@pelatihan root]# echo Script shell pertamaku di linux

Script shell pertamaku di linux String yang diapit tanda kutip ganda (double quoted) akan ditampilkan pada layar anda, echo adalah statement (perintah) built-in bash yang berfungsi menampilkan informasi ke standard output yang defaultnya adalah layar. jika diinginkan mengulangi proses tersebut, anda akan mengetikkan kembali perintah tadi, tapi dengan fasilitas history cukup menggunakan tombol panah kita sudah dapat mengulangi perintah tersebut, bagaimana jika berupa kumpulan perintah yang cukup banyak, tentunya dengan fasilitas hirtory kita akan kerepotan juga mengulangi perintah yang diinginkan apalagi jika selang beberapa waktu mungkin perintahperintah tadi sudah tertimpa oleh perintah lain karena history mempunyai kapasitas

21

penyimpanan yang ditentukan. untuk itulah sebaiknya perintah-perintah tsb disimpan ke sebuah file yang dapat kita panggil kapanpun diinginkan. Coba ikuti langkah - langkah berikut: Masuk ke editor anda, apakah memakai vi,pico,emacs,dsb... ketikkan perintah berikut: #!/bin/bash echo Hello, apa khabar simpan dengan nama file tes ubah permission file tes menggunakan chmod [root@pelatihan root]# chmod 755 tes jalankan [root@pelatihan root]# ./tes Hello, apa khabar Environment Variable Variabel lingkungan yang digunakan khusus oleh shell atau system linux kita untuk proses kerja system seperti variabel PS1, PS2, HOME, PATH, USER, SHELL,dsb...jika digunakan akan berdampak pada system, misalkan variabel PS1 yang digunakan untuk mengeset prompt shell pertama yaitu prompt tempat anda mengetikkan perintah - perintah shell (defaultnya \s-\v\$), PS2 untuk prompt pelengkap perintah, prompt ini akan ditampilkan jika perintah yang dimasukkan dianggap belum lengkap oleh shell (defaultnya >). anda dapat mengeset PS1 dan PS2 seperti berikut. Simpan dahulu isi PS1 asli sistem anda, sehingga nanti dapat dengan mudah dikembalikan [root@pelatihan root]# PS1LAMA=$PS1 Sekarang masukkan string yang diinginkan pada variabel PS1 [root@pelatihan root]# PS1=Hi ini Promptku! Hi ini Promptku!PS2=Lengkapi dong ? Maka prompt pertama dan kedua akan berubah, untuk mengembalikan PS1 anda ke prompt semula ketikkan perintah [root@pelatihan root]# PS1=$PS1LAMA Jika anda ingin mengkonfigurasi prompt shell, bash telah menyediakan beberapa backslash karakter diantaranya adalah: \a \d \e \H \n \w \t ASCII bell character (07) date dengan format Weekday Month Date (misalnya Tue May 26) ASCII escape character (033) hostname (namahost) newline (karakter baru) Direktory aktif time dalam 24 jam dengan format HH:MM:SS

22

dll man bash:-) Contoh pemakaiannya: [root@pelatihan root]# PS1=[\t][\u@\h:\w]\$ agar prompt shell hasil konfigurasi anda dapat tetap berlaku (permanen) sisipkan pada file .bashrc atau .profile Positional Parameter Parameter posisi yaitu variabel yang digunakan shell untuk menampung argumen yang diberikan terhadap shell baik berupa argumen waktu sebuah file dijalankan atau argumen yang dikirim ke subrutin. variabel yang dimaksud adalah 1,2,3,dst..lebih jelasnya lihat contoh script berikut : #!/bin/bash #argumen1 echo $1 adalah salah satu $2 populer di $3 Hasilnya [root@pelatihan root]#./argumen1 bash shell linux bash adalah salah satu shell populer di linux User Defined Variable User Defined Variable adalah variabel yang didefinisikan sendiri oleh pembuat script sesuai dengan kebutuhannya. Ada beberapa hal yang perlu diperhatikan dalam mendefinisikan variabel, yaitu: Dimulai dengan huruf atau underscore Hindari pemakaian spesial karakter seperti *,$,#,dll... Bash bersifat case sensitive, maksudnya membedakan huruf besar dan kecil, a berbeda dengan A, nama berbeda dengan Nama, NaMa,dsb.. Untuk mengeset nilai variabel gunakan operator assignment (pemberi nilai)=, contohnya : myos=linux #double-quoted nama=pinguin #single-quoted hasil=ls l; #back-quoted angka=12 Kalau anda perhatikan ada 3 tanda kutip yang kita gunakan untuk memberikan nilai string ke suatu variabel, adapun perbedaannya adalah: Dengan kutip ganda (double-quoted), bash mengizinkan kita untuk menyisipkan variabel di dalamnya. contohnya: #!/bin/bash nama=Pinguin kata=Hi $nama, apa khabarmu #menyisipkan variabel nama echo $kata; Hasilnya: Hi Pinguin, apa khabarmu Dengan kutip tunggal (single-quoted), akan ditampilkan apa adanya. contohnya: #!/bin/bash 23

nama=Pinguin kata=Hi $nama, apa khabarmu #menyisipkan variabel nama echo $kata; Hasilnya: Hi $Piunguin, apa khabarmu Dengan kutip terbalik (double-quoted), bash menerjemahkan sebagai perintah yang akan dieksekusi, contohnya: #!/bin/bash hapus=clear; isi=ls l; #hasil dari perintah ls -l disimpan di variabel isi #hapus layar echo $hapus #ls -l echo $isi; Hasilnya: silahkan dicoba sendiri

Output dengan printf #!/bin/bash #pr1 url=pelatihan.linux.edu; angka=32; printf Hi, Pake printf ala C \n \t \a di bash \n; printf My url %s \n %d decimal = %o octal \n $url $angka $angka; printf %d decimal dalam float = %.2f \n $angka $angka Hasilnya: [root@pelatihan root]# ./pr1 Hi, Pake printf ala C di bash My url pelatihan.linux.edu 32 decimal = 40 octal 32 decimal dalam float = 32.00 untuk menggunakan format kontrol sertakan simbol %, bash akan mensubtitusikan format tsb dengan isi variabel yang berada di posisi kanan sesuai dengan urutannya jika lebih dari satu variabel, \n \t \a adalah karakter sekuen lepas newline,tab, dan bell, Format control keterangan %d untuk format data integer %o octal %f float atau decimal %x Hexadecimal pada script diatas %.2f akan mencetak 2 angka dibelakang koma, defaultnya 6 angka, informasi lebih lanjut dapat dilihat via man printf

24

Input dengan read Setelah echo dan printf untuk proses output telah anda ketahui, sekarang kita menggunakan statement read yang cukup ampuh untuk membaca atau menerima masukan dari input standar syntax : $ read -opsi [nama_variabel...] berikut contoh scriptnya: #!/bin/bash #rd1 echo -n Nama anda : read nama; echo Hai $nama, apa khabarmu; echo Pesan dan kesan :; read echo kata $nama, $REPLY; Hasilnya: [root@pelatihan root]# ./rd1 Nama anda : Pinguin Hai Pinguin, apa khabarmu Pesan & kesan : pake linux pasti asyik-asyik aja kata Pinguin, pake linux pasti asyik-asyik aja Opsi Keterangan -p memungkinkan kita membuat prompt sebagai informasi pengisian -s membuat input yang dimasukkan tidak di echo ke layar (seperti layaknya password di linux) -n Menentukan banyak karakter yang diinput -d Menentukan karakter pembatas masukan
informasi secara lengkap lihat man bash

Pengaturan Warna Untuk pewarnaan tampilan di layar, Anda dapat menggunakan konstanta ANSI (salah satu badan nasional amerika yang mengurus standarisasi). Syntaxnya: \033[warnam Dimana: m menandakan setting color contohnya: [root@pelatihan root]# echo -e \033[31m HELLO\033[0m HELLO

25

konstanta 31m adalah warna merah dan 0m untuk mengembalikan ke warna normal (none), tentunya konstanta warna ansi ini dapat dimasukkan ke variabel PS1 untuk mengatur tampilan prompt shell anda, contohnya: [root@pelatihan root]# PS1=\033[34m [root@pelatihan root]# Menggunakan utility tput untuk penempatan posisi kursor kita dapat pula mengatur penempatan posisi kursor di layar dengan memanfaatkan utility tput. Syntaxnya: tput cup baris kolom contohnya: #!/bin/bash clear tput cup 5 10 echo HELLO tput cup 6 10 echo PAKE TPUT jika dijalankan Anda akan mendapatkan string HELLO di koordinat baris 5 kolom 10, dan string PAKE TPUT dibaris 6 kolom 10. informasi selengkapnya tentang tput gunakan man tput, atau info tput

26

LINUX TRAINING FIRST SERIES

pinguin.stttelkom.ac.id

27

MODUL III USER and PROCESS MANAGEMENT


Administrasi sistem adalah mengenai mengontrol linux dan komputer secara komplet. Pada sebuah lingkungan perusahaan besar dimana setiap orang memiliki tugas yang spesifik,komputer users diasumsikan memiliki pengetahuan yang cukup untuk menjalankan yang dibutuhkan oleh tugas mereka itu, memanajemen file-file, atau mungkin merancang sendiri desktop mereka. Users juga diharuskan memiliki kemampuan untuk memiliki kemampuan untuk menemukan informasi dari waktu ke waktu, sehingga mereka tidak benar-benar kepada administrator sistem. Administrator sistem mempunyai banyak tanggung jawab dan diasumsikan menjadi seperti pengatur bagi perusahaan atau departemen yang bersangkutan.Tanggung jawab dari administrator sistim antara lain seperti di bawah ini : Membuat dan mengatur account users. Menginstall dan mengkonfigurasi hardware dan software. Membuat dan memlihara backups. Mount devices. Mematikan sistem (apabila users tidak diberi wewenang ini). Log dan mengawasi perubahan pada sistem. Memastikan keamanan sistem. Melatih dan menjawab pertanyaan users.

III.1 MANAJEMEN USER dan GROUP


User pada sistem Linux dapat mengontrol akses ke file-file mereka dengan mengatur ijin-ijin untuk diri mereka sendiri, group mereka, dan orang lain di dunia ini. Sebagai contoh, user lia dari suatu divisi departemen membuat suatu dokumen dan menyimpannya. Ia memberikan ijin ke dirinya sendiri agar dapat membaca dan merubah file tersebut. Ia ingin orang lain yang bekerja satu departemen dengannya untuk membaca file tersebut tapi tidak merubahnya. Untuk orang lain di luar departemen tersebut ia putuskan tidak memiliki akses pada file tersebut, baik membaca maupun merubahnya. Itulah mengapa penting untuk mengadministrasi sistem pada Linux. Sistem administrator melakukan beberapa hal penting berkaitan dengan user dan group antara lain: Pendaftaran nama login Pembekuan nama login dan user Penghapusan nama login user Pembuatan grup baru Pengaturan direktori home Pengamanan file-file password Dalam sistem Linux, nama login dapat diberikan pada: Superuser atau root User biasa Contoh : Ita, Lia,Dhanang dll.

28

Aplikasi Contoh : Bind, Mysql, Squid,dll Device Contoh : lp Service Contoh : cron, ftp

Tujuan pemberian nama login adalah untuk memberikan identitas pada tiap entity agar dapat memiliki file, direktori dan proses sendiri. Bagi user biasa, nama login dapat digunakan untuk memasuki sebuah shell yang disiapkan sistem melalui proses otentifikasi password dan melakukan pekerjaan dalam sistem tersebut. 1. Pencatatan User dan Group Pada Linux RedHat , sebuah nama login valid terdapat dalam sistem apabila : Data-datanya terdapat pada file /etc/passwd Password yang telah dienkripsi berada pada file /etc/shadow Nama login berada pada group yang terdapat pada /etc/group Dengan menambah, merubah atau menghapus data-data pada file-file diatas maka anda telah dapat menambah, merubah atau menghapus user atau group. Namun untuk memudahkan pekerjaan, sistem Linux telah menyiapkan beberapa binary yang merupakan front-end dari file-file diatas, binary-binary tersebut antara lain: useradd, digunakan untuk menambahkan user ke sistem. userdel, digunakan untuk menghapus user ke sistem. usermod, digunakan untuk memodifikasi user dalam sistem. passwd, digunakan untuk memberikan & merubah password user. groupadd, digunakan untuk menambahkan group ke sistem. groupdel, digunakan untuk menghapus group dalam sistem. groupmod, digunakan untuk memodifikasi group dalam sistem. Untuk melihat info dari user, kita dapat mempergunakan perintah-perintah di bawah ini : who, menampilkan semua user yang sedang logged, console tempat mereka bekerja, serta tanggal serta jam mereka login. users, hanya menampilkan nama semua user yang sedang logged in w, hampir mirip dengan who hanya lebih detail lagi whoami, menampilkan id dari user yang menjalankan perintah itu sendiri groups, menampilkan group tempat kita berada id, menampilkan id dari semua user dan group last, menampilkan daftar dari user yang logged history, menampilkan daftar perintah yang dimasukkan. Untuk mengetahui daftar user, group, serta direktorinya kita dapat melihat isi daripada file /etc/passwd yang seperti terlihat di bawah ini : [root@pelatihan root]# vi /etc/passwd
root:x:0:0:root:root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin:

29

adm:x:3:4:adm:/var/adm: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail: news:x:9:13:news:/var/spool/news: uucp:x:10:14:uucp:/var/spool/uucp: operator:x:11:0:operator:root: games:x:12:100:games:/usr/games: gopher:x:13:30:gopher:/usr/lib/gopher-data: ftp:x:14:50:FTP User:/var/ftp: nobody:x:99:99:Nobody:/: xfs:x:43:43:X Font Server:/etc/X11/fs:/bin/false gdm:x:42:42::/home/gdm:/bin/bash rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/bin/false rpc:x:32:32:Portmapper RPC user:/:/bin/false mailnull:x:47:47::/var/spool/mqueue:/dev/null tamu:x:500:500:user1:/home/tamu:/bin/bash lia:x:501:501:user2:/home/lia:/bin/bash ita:x:502:502:user3:/home/ita:/bin/bash

sebagai contoh, kita lihat empat baris terakhir dari daftar di atas yang menunjukkan user biasa yaitu : tamu:x:500:500:user1:/home/tamu:/bin/bash lia:x:501:501:user2:/home/lia:/bin/bash ita:x:502:502:user3:/home/ita:/bin/bash cnc:x:503:503:user4:/home/cnc:/bin/bash Dari empat baris terakhir tersebut kita dapat mengetahui data-data dari user yang bersangkutan. Sebagai contoh kita lihat data-data user lia : lia : nama login user tersebut x : password yang dienkripsi, disimpan di /etc/shadow 501 : nomor UID (User ID) 501 : nomor GID (Group ID) user2 : komentar atau deskripsi nama login /home/lia : direktori home untuk user lia /bin/bash : default login shell Sistem Linux yang anda pergunakan, yaitu Redhat 9 memiliki shadow passwords. Ini merupakan suatu alternatif di dalam menyimpan password. Password yang dienkripsi akan disimpan di file bernama /etc/shadow, dimana hanya root yang bisa membacanya. Tampilan file /etc/shadow : [root@pelatihan root]# vi /etc/shadow
root:$1$2WGkLSii$69TVMXkLJbThXv.iGxxkt/:11461:0:99999:7::: bin:*:11455:0:99999:7::: daemon:*:11455:0:99999:7::: adm:*:11455:0:99999:7::: lp:*:11455:0:99999:7::: sync:*:11455:0:99999:7::: shutdown:*:11455:0:99999:7::: halt:*:11455:0:99999:7::: mail:*:11455:0:99999:7::: news:*:11455:0:99999:7::: uucp:*:11455:0:99999:7:::

30

ftp:*:11455:0:99999:7::: nobody:*:11455:0:99999:7::: xfs:!!:11455:0:99999:7::: apache:!!:11455:0:99999:7::: named:!!:11455:0:99999:7::: tamu:$1$VlFTU4s4$si1KMMuH0Rg9.dxnSu/6l/:11455:0:99999:7::: lia:$1$Md0G2DI6$UC6CYHlQ22RphEUV6DzTW0:11459:0:99999:7::: ita:$1$RQQRij40$91eC0KCSdsb60DooU2MrE0:11466:0:99999:7::: cnc:$1$SjhVHTK2$boWS2WTfNJFyuvrp2xWQW.:11466:0:99999:7:::

Baris pada /etc/shadow mengandung serangkaian karakter yang tidak dapat diartikan yang merupakan password dari user-user yang dienkripsi untuk alasan keamanan. Angka-angka yang mengikuti dibelakangnya merupakan nilai waktu expired atau masa aktif password dan nama login. Cara lain untuk mengetahui group-group yang ada adalah dengan melihat file di bawah : [root@pelatihan root]# vi /etc/group root:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon disk:x:6:root lp:x:7:daemon,lp games:x:20: gopher:x:30: ftp:x:50: users:x:100: utmp:x:22: xfs:x:43: apache:x:48: named:x:25: tamu:x:500: lia:x:501: ita:x:502: cnc:x:503: Pada etc/group hanya terdapat nama group, GID dan user-user yang menjadi anggota group tersebut. 2. Binary Administrasi User dan Group Berikut ini adalah binary yang digunakan untuk memodifikasi /etc/shadow, /etc/passwd, dan /etc/group.

/usr/sbin/useradd Fungsi : menambahkan user ke sistem atau mengupdate informasi user. Syntax : useradd [-c comment] [-d home_dir] [-e expire_date] [-f inactive_time] [-g initial_group] [-G group[,...]] 31

[-m [-k skeleton_dir] | -M] [-p passwd] [-s shell] [-u uid [ -o]] [-n] [-r] login useradd -D [-g default_group] [-b default_home] [-f default_inactive] [-e default_expire_date] [-s default_shell] Jika kita menggunakan perintah useradd dengan D option, perintah ini akan mengcreate user dengan nilai default yang diberikan sistem. Keterangan : -c comment info atau deskripsi nama login -d home_dir direktori home untuk user -e expire_date tanggal nama login berakhir, formatnya : yyyy-mm-dd -f inactive_days jumlah hari sebelum account tersebut berakhir bila password telah expired -g initial_group nomor GID (Group ID). -G group,[...] group tambahan -m direktori home akan dibuat bila tidak ada -p passwd memberikan password -s shell merupakan user login shell -u UID nomor UID (user id)

/usr/sbin/userdel Fungsi : menghapus user account dan file-file yang berhubungan Syntax : userdel [-r] login Dengan perintah userdel, akan menghapus semua entri berdasarkan nama login dari user. -r bila parameter ini disertakan maka direktori home user turut di hapus. /usr/bin/passwd Fungsi : merubah password user Syntax : passwd [username]

Untuk usermod, groupadd, groupdel, dan groupmod dapat Anda selidiki sendiri cara penggunaannya dengan mengetik perintah berikut : [root@pelatihan root]# man [item] item diganti sesuai yang kita inginkan misal groupadd,groupmod dll.

32

3. Mode Perijinan dan Kepemilikan Anda dapat mengecek perijinan dan kepemilikan file / direktori dengan perintah : [root@pelatihan root]#ls l -rwxr-xr-r 1 root root 1002 Feb 23 2003 zebra nama file Tgl terakhir dimodifikasi Ukuran file Group Owner Jumlah link Mode file

Mode file : menunjukkan hak akses terhadap file bersangkutan Formatnya : abcdefghij contoh : -rwxr-xr-x a : Menentukan jenis dari entry yang bersangkutan. Pada contoh di atas berarti file biasa. Berikut adalah karakter yang mungkin mengisi posisi a beserta artinya. Karakter Arti File biasa d Direktori l Simbolik link b Block special file c Character special file s Socket link p FIFO bcd : option ini menunjukkan hak akses pemilik. Pada contoh di atas berarti pemilik berhak untuk read (baca), write (tulis), execute (eksekusi) efg : option ini menunjukkan hak akses group. Pada contoh di atas berarti user satu group hanya bisa membaca dan mengeksekusi hij : option ini menunjukkan hak akses orang lain ( other ). Pada contoh di atas berarti orang lain bisa membaca dan mengeksekusi Jumlah link : menunjukkan jumlah link buat file ini Owner : menunjukkan pemilik dari file ini Group : menunjukkan group dari pemilik file ini Ukuran file : menunjukkan ukuran dari file bersangkutan Tgl terakhir dimodifikasi : menunjukkan kapan terakhir file ini diakhir Nama file : adalah nama dari file ini

Mengubah kepemilikan file anda juga dapat mengubah kepemilkan dan hak akses terhadap suatu file dengan perintah berikut : [root@pelatihan root]#chown cnc pinguin.server perintah ini mengubah kepemilikan file pinguin.server menjadi milik user cnc. Mengubah mode akses dengan huruf 33

[root@pelatihan root]#chmod ogu-w,ogu+r file.txt perintah ini menyebabkan pemilik (user), group dan other tidak bisa menulis (-w) tapi bisa membaca(+r). selain tiga karakter o u dan g, kita dapat menggunakan a (all) untuk menyatakan ketiga karakter yang lain. Mengubah mode akses dengan angka Untuk mempermudah administrasi, kita dapat menggunakan angka sebagai pengganti karakter-karakter tersebut. Cara mengkonvert : r = 1 w = 2 x = 3 Untuk mengkombinasikan ketiga karakter tersebut kita tinggal menambahkan angkaangkanya. Contoh : rw = 1+2 = 3 Penempatan angka berdasarkan urutan ugo (user group other) Contoh : [root@pelatihan root]#chmod 700 file.txt Perintah tersebut akan menyebabkan file.txt dapat dibaca, ditulis, dieksekusi oleh user ( 7 ) dan tidak dapat dibaca, ditulis, dieksekusi uleh selain pemilik ( 00 ). 4. Setting Password Kemudian kita tentukan password bagi pinguin, ketikkan: [root@pelatihan root]#passwd pinguin Masukkan kata yang mudah untuk diingat karena password adalah sesuatu yang sangat penting, apabila kita lupa harus mengontak sistem administrator agar diberi password baru. Untuk menguji apakah sudah benar tahapan-tahapan yang kita lakukan login-lah sebagai user yang baru kita buat. Jika berhasil masuk coba buat file kosong pada home direktori, lihat mode perijinan pada file tersebut serta kepemilikannya [root@pelatihan root]#vi coba mencoba pelatihan [root@pelatihan root]#ls -l 5. Quota User dan Group Langkah pertama untuk memberlakukan quota bagi user dan atau bagi group adalah dengan mengeset sebuah partisi dengan option usrquota dan atau grpquota pada /etc/fstab. Jika option tersebut digunakan, maka kernel secara periodik menginventarisir penggunaan ruang harddisk oleh user-user yang terdaftar pada /etc/passwd melalui binary quotacheck. Binary quotacheck akan mencatat hasil scan file sistem atau partisi yang diaktifkan quotanya dalam bentuk file, yaitu : quota.user : untuk catatan penggunaan oleh user quota.group : untuk catatan penggunaan oleh group beberapa tool quota berikut dapat digunakan untuk mengkonfigurasi quota, antara lain: quota, digunakan untuk melihat quota yang dimiliki oleh user atau group edquota, digunakan untuk mengedit quota user dan group

34

repquota, digunakan untuk melaporkan pemakaian ruang harddisk pada partisi yang diaktifkan usrquota dan grpquota. lakukan perintah man untuk quota, edquota dan repquota untuk melihat opsi-opsi yang dimiliki masing-masing binari. Langkah-langkah untuk melakukan pengQuotaan adalah sebagai berikut : 1. Tentukan jatah tiap user 2. Tentukan harddisk yang akan diquota 3. Edit file /etc/fstab 4. Buat file untuk menampung informasi quota 5. Merubah mode perijinan file tersebut 6. Mengaktifkan quota Misalnya saja ada beberapa user yang tergabung dalam beberapa group. Group mahasiswa terdiri dari pinguin, ita, lia dan dhanang. Masing-masing mendapat jatah 2 MB. Berarti group mahasiswa mendapat jatah 8 MB. Lalu kita tambah group asisten dan mendapat jatah 10 MB. Harddisk yang akan kita quota adalah hda1.

Lalu edit file /etc/fstab [root@pelatihan root]#vi /etc/fstab


/dev/hda1 / ext3 defaults,usrquota,grpquota 1 1

buat file penampungan informasi quota di direktori root : [root@pelatihan root]#touch /quota.user [root@pelatihan root]#touch /quota.group [root@pelatihan root]#chmod 600 /quota.user [root@pelatihan root]#chmod 600 /quota.group aktifkan quota : [root@pelatihan root]#/sbin/quotacheck guva [root@pelatihan root]#/sbin/quotaon guva pertama kita quota group asisten dengan mengetikkan perintah : [root@pelatihan root]#edquota g asisten kemudian akan muncul informasi yang harus kita edit menggunakan editor kesayangan anda.
10000) Quotas for group asisten /dev/hda1 : blocks in use : 799, limits (soft = 10000, hard = inodes in use : 454, limits ( soft = 3000, hard = 3000 )

save seperti biasa, berikan quota pada user yang lain. [root@pelatihan root]#edquota u pinguin

quotas for user pinguin /dev/hda1 : blocks in use : 100, limits (soft = 2000, hard = 2000) inodes in use : 14, limits (soft = 200, hard = 200)

untuk user lain cukup ketikkan : [root@pelatihan root]#edquota p pinguin u ita lia akibatnya user ita dan lia mempunyai quota yang sama dengan pinguin sebesar 2 MB. untuk melihat quota user lakukan perintah : 35

[root@pelatihan root]#quota u ita untuk group : [root@pelatihan root]#quota g mahasiswa

III.2 MANAJEMEN PROCESS


Dengan berjalannya sistem dan berbagai program dieksekusi maka diperlukan suatu management dalam mengotrol dan memonitor setiap proses. Proses di linux tercatat dalam bentuk bilangan angka (PID), sehingga setiap proses dapat diamati dari bilangan memory yang dipakai, user yang menjalankannya (process owner), lamanya proses tersebut dijalankan dan lain sebagainya. Proses-proses yang berlangsung dapat berupa daemon, user aplication, utilities dan lain-lain. Proses yang dijalankan di console, shell, xterm, dll disebut foreground process. Sedangkan background process adalah proses yang dijalankan secara background dan bisanya dijalankan dengan menambahkan & pada akhir dari baris perintah. Contoh : [root@pelatihan root]#ping localhost & perintah ini menyebabkan mesin melakukan ping ke alamat lokal secara kontinyu dan bekerja di background. 1. Monitoring proses Untuk memonitor proses-proses yang dijalankan oleh sistem dapat digunakan perintah ps dan top. ps perintah ps ini digunakan untuk melihat secara sekilas proses apa saja yang sedang dijalankan sistem. Option yang umum digunakan adalah -aux, untuk option lengkapnya dapat dilihat dengan mengeksekusi ps help. Syntax : [root@pelatihan root]# ps [option] contoh : [root@pelatihan root]# ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.2 0.8 1324 532? S 14:18 0:06 init [3] root 2 0.0 0.0 0 0 ? SW 14:18 0:00 [kflushd] root 3 0.0 0.0 0 0 ? SW 14:18 0:00 [kupdate] root 4 0.0 0.0 0 0 ? SW 14:18 0:00 [kpiod] root 5 0.0 0.0 0 0 ? SW 14:18 0:00 [kswapd] root 6 0.0 0.0 0 0 ? SW< 14:18 0:00 [mdrecoveryd] root 61 0.0 0.0 0 0 ? SW 14:18 0:00 [khubd] root 274 0.0 0.8 1384 560 ? S 14:18 0:00 syslogd -m 0 root 284 0.0 1.2 1652 772 ? S 14:18 0:00 klogd root 315 0.0 0.0 0 0 ? SW 14:18 0:00 [lockd] root 316 0.0 0.0 0 0 ? SW 14:18 0:00 [rpciod] rpcuser 326 0.0 1.1 1564 724 ? S 14:18 0:00 rpc.statd root 341 0.0 0.6 1308 420 ? S 14:18 0:00 /usr/sbin/apmd -p nobody 395 0.0 0.7 7604 488 ? S 14:18 0:00 identd -e -o 36

nobody nobody nobody nobody daemon lp root root xfs root root root root root root root root root root root

398 399 401 402 414 451 515 530 563 595 612 620 654 656 907 920 956 966 975 993

0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0

0.7 0.7 0.7 0.7 0.5 0.9 0.5 1.0 4.6 0.5 1.7 2.0 1.4 1.2 2.0 2.0 2.0 2.0 2.0 1.2

7604 488 ? S 14:18 0:00 identd -e -o 7604 488 ? S 14:18 0:00 identd -e -o 7604 488 ? S 14:18 0:00 identd -e -o 7604 488 ? S 14:18 0:00 identd -e -o 1356 364 ? S 14:18 0:00 /usr/sbin/atd 2360 580 ? S 14:19 0:00 lpd Waiting 1348 372 ttyS0 S 14:19 0:00 gpm -t ms 1552 644 ? S 14:19 0:00 crond 4368 2976 ? S 14:19 0:00 xfs -droppriv -da 1300 364 ? S 14:19 0:00 rhnsd --interval 2252 1116 tty1 S 14:19 0:00 login -- root 2280 1304 tty1 S 14:19 0:00 -bash 1992 912 tty1 T 14:20 0:00 sh -c /bin/gunzip 1772 768 tty1 T 14:20 0:00 /usr/bin/less -is 2340 1332 pts/0 S 14:56 0:00 /bin/bash 2340 1332 pts/1 S 14:57 0:00 bash 2344 1332 pts/2 S 14:58 0:00 bash 2340 1332 pts/4 S 14:58 0:00 bash -rcfile .bas 2344 1332 pts/5 S 14:58 0:00 bash 2588 784 ? R 15:10 0:00 ps aux

keterangan : USER : Process owner PID : Process ID %CPU : Penggunaan CPU oleh proses %MEM : Penggunaan memori (dalam kB) oleh proses VSZ : Penggunaan virtual memori dalam proses RSS : Penggunaan memori yang resident oleh proses TTY : Terminal (tty), tempat asal proses tersebut dijalankan STAT : Keadaan dari suatu proses R Running proses S Sleeping proses I Idle proses Z Zombie proses D Uninterruptible sleep (biasanya IO) < proses dengan prioritas tinggi N proses dengan prioritas rendah dan lain-lain START : waktu dimana proses dijalankan TIME : lamanya proses dijalankan COMMAND : baris perintah yang dijalankan top Perintah ini secara mendasar fungsinya sama dengan ps, hanya saja top lebih aktual karena setelah kita eksekusi, top akan update proses yang dijalankan secara berkala. Juga top lebih spesifik dalam menjelaskan keadaan sistem. perintah ini memperlihatkan aktivitas prosesor secara real time, menampilkan daftar kegiatankegiatan CPU yang paling intensif pada sistem dan menyediakan antarmuka interaktif untuk memanipulasi proses-proses yang ada.

37

Kelemahannya adalah proses top ini lebih memakan banyak memori, CPU, dan runtime. Syntax : # top contoh : [root@pelatihan root]# top
9:37am up 2:33, 2 users, load average: 0.68, 1.27, 1.09 78 processes: 76 sleeping, 1 running, 0 zombie, 1 stopped CPU states: 12.3% user, 11.1% system, 0.0% nice, 76.4% idle Mem: 54760K av, 53340K used, 1420K free, 31148K shrd, 1144K buff Swap: 68504K av, 40232K used, 28272K free 28132K cached PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM 1706 root 6 0 488 488 392 S 6.9 0.8 941 root 5 0 18256 13M 1840 S 3.0 26.1 1665 root 4 0 2828 2048 1680 S 2.8 3.7 1 root 0 0 116 76 56 S 0.0 0.1 2 root 0 0 0 0 0 SW 0.0 0.0 3 root 0 0 0 0 0 SW 0.0 0.0 4 root 0 0 0 0 0 SW 0.0 0.0 5 root 0 0 0 0 0 SW 0.0 0.0 6 root -20 -20 0 0 0 SW< 0.0 mdrecoveryd 61 root 0 0 0 0 0 SW 0.0 0.0 303 root 0 0 216 168 120 S 0.0 0.3 313 root 0 0 540 184 156 S 0.0 0.3 328 rpc 0 0 92 0 0 SW 0.0 0.0 344 root 0 0 0 0 0 SW 0.0 0.0 345 root 0 0 0 0 0 SW 0.0 0.0 355 rpcuser 0 0 112 0 0 SW 0.0 rpc.statd 370 root 0 0 64 0 0 SW 0.0 0.0 421 root 0 0 128 48 28 S 0.0 automount 474 nobody 0 0 128 24 16 S 0.0 0.0 477 nobody 0 0 128 24 16 S 0.0 0.0 478 nobody 0 0 128 24 16 S 0.0 0.0 480 nobody 0 0 128 24 16 S 0.0 0.0 481 nobody 0 0 128 24 16 S 0.0 0.0 493 daemon 0 0 76 0 0 SW 0.0 0.0 524 root 0 0 212 16 0 SW 0.0 0.0 539 root 0 0 228 0 0 SW 0.0 0.0 563 lp 0 0 124 0 0 SW 0.0 0.0 611 root 0 0 628 316 276 S 0.0 sendmail 627 root 0 0 96 48 32 S 0.0 0.0 775 root 0 0 2680 48 36 S 0.0 0.0 790 root 0 0 168 104 72 S 0.0 0.1 TIME 0:14 3:25 0:02 0:05 0:00 0:00 0:00 0:09 0.0 0:00 0:01 0:00 0:00 0:00 0:00 0.0 COMMAND esd X kvt init kflushd kupdate kpiod kswapd 0:00 khubd syslogd klogd portmap lockd rpciod 0:00

0:00 apmd 0.0 0:00 0:00 0:00 0:00 0:00 0:00 0:00 0:00 0:00 0:00 0.5 identd identd identd identd identd atd xinetd sshd lpd 0:00

0:02 gpm 0:06 httpd 0:00 crond

Dari perintah ps dan top diatas dikenal sebutan zombie proses, merupakan suatu proses (biasanya proses anak) yang telah mati/dimatikan tetapi tetap ada. Hal ini dikarenakan proses ibunya (parent process) tidak mematikan proses anaknya dengan sempurna. Zombie proses ini akan mati apabila parent prosesnya mati.

38

kill Perintah ini akan mengirimkan signal tertentu untuk proses yang tertentu pula. apabila tidak ada sinyal yang terspesifikasi, sinyal TERM akan dikirimkan. Sinyal TERM ini akan mematikan proses-proses yang tidak mendapatkan sinyal tersebut. Untuk proses-proses lainnya, dapat digunakan sinyal KILL apabila sinyal TERM tersebut tidak dapat ditangkap. Setiap proses yang dijalankan di Linux dapat di deteksi dan kemudian dimatikan, seperti yang telah dijelaskan sebelumnya dalam perintah-perintah dasar Linux. Ketikkan : [root@pelatihan root]# kill [- nomor sinyal] PID silahkan kill salah satu PID.lihat hasilnya ketikan kembali perintah # ps -aux Pilihlah nomor sinyal yang terpenting : No sinyal Nama Deskripsi 1 SIGHUP Hangup, sinyal dikirim bila proses terputus. 2 SIGINT Sinyal interupt 3 SIGQUIT Sinyal quit 9 SIGKILL Sinyal kill, menghentikan proses 15 SIGTERM Sinyal terminasi software Untuk keterangan lebih lanjut silahkan lihat manualnya. 2. Booting dan Init Proses Ada beberapa tahapan proses booting dalam sistem operasi Linux. Pertama Lilo akan meload kernel, kemudian kernel akan memeriksa setiap device yang ada di mesin, dan selanjutnya akan menjalankan script init, Init adalah proses pertama yang dijalankan oleh sistem, init sendiri kemudian menjalankan proses-proses lain yang dijalankan pada saat booting. Init menjalankan semua proses berdasarkan /etc/inittab. Dalam init dikenal istilah run level. Dalam Linux dikenal run level 0-6 dan level S. masing-masing run level dijalankan berdasarkan keadaan sistem,runlevel 0, 1 dan 6 sudah disiapkan secara default (0 untuk halt, 1 untuk single user, 6 untuk reboot sistem, 2,3,4,5 untuk multi user), selain itu dapat disesuaikan dengan keinginan dari SysAdmin. Init sebenarnya adalah seperti parent dari semua proses. fungsi utamanya adalah menciptakan proses-proses dari script yang disimpan dalam file /etc/inittab. file ini biasanya memiliki masukan-masukan yang menyebabkan init untuk menghasilkan getty pada tiap baris dimana tiap users dapat login. Init juga mengontrol proses-proses autonomous yang dibutuhkan oleh sistem partikuler. Setelah init diketahui sebagai langkah terakhir sebagai urutan boot kernel, kemudian akan melihat file /etc/inittab untuk mengetahui adakah masukan untuk initdefault yang akan menginisialisasi run level dari sistem tersebut. Berikut adalah isi dari file /etc/inittab [root@pelatihan root]# vi /etc/inittab
# # inittab up This file describes how the INIT process should set

39

# the system in a certain run-level. # # Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org> # Modified for RHS Linux by Marc Ewing and Donnie Barnes # # Default runlevel. The runlevels used by RHS are: # 0 - halt (Do NOT set initdefault to this) # 1 - Single user mode # 2 - Multiuser, without NFS (The same as 3, if you do not have networking) # 3 - Full multiuser mode # 4 - unused # 5 - X11 # 6 - reboot (Do NOT set initdefault to this) # id:5:initdefault: # System initialization. si::sysinit:/etc/rc.d/rc.sysinit l0:0:wait:/etc/rc.d/rc l1:1:wait:/etc/rc.d/rc l2:2:wait:/etc/rc.d/rc l3:3:wait:/etc/rc.d/rc l4:4:wait:/etc/rc.d/rc l5:5:wait:/etc/rc.d/rc l6:6:wait:/etc/rc.d/rc 0 1 2 3 4 5 6

# Things to run in every runlevel. ud::once:/sbin/update # Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown -t3 -r now # When our UPS tells us power has failed, assume we have a few minutes # of power left. Schedule a shutdown for 2 minutes from now. # This does, of course, assume you have powerd installed and your # UPS connected and working correctly. pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down" # If power was restored before the shutdown kicked in, cancel it. pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled" # Run gettys in standard runlevels 1:2345:respawn:/sbin/mingetty tty1 2:2345:respawn:/sbin/mingetty tty2 3:2345:respawn:/sbin/mingetty tty3 4:2345:respawn:/sbin/mingetty tty4 5:2345:respawn:/sbin/mingetty tty5 6:2345:respawn:/sbin/mingetty tty6 # Run xdm in runlevel 5 # xdm is now a separate service x:5:respawn:/etc/X11/prefdm -nodaemon

40

Dalam UNIX dikenal istilah single user. Single user biasanya dieksekusi pada saat maintenance sistem, dimana kondisi sistem di haruskan tanpa ada gangguan dari luar (network). Selain menggunakan file /etc/inittab, kita juga dapat menggunakan perintah init untuk langsung mengeksekusi mode init tertentu ( 0, 1, 2, 3, 4, 5, 6 ). Contoh : [root@pelatihan root]#init 0 Perintah ini mirip dengan poweroff, dimana setelah shutdown power komputer juga dimatikan. Untuk penggunaan init lainnya silahkan lihat manualnya. 3. Log & Message Di dalam Linux dikenal dua cara logging, yaitu dengan syslogd dan klogd. Syslogd digunakan oleh berbagai macam program yang menggunakan fungsi syslog untuk memasukkan catatan (log) ke dalam log file yang di sediakan fasilitasnya oleh syslogd. File konfigurasi Syslogd terletak di /etc/syslog.conf, dari syslog.conf sysadmin dapat menentukan dimana log fle diletakkan. Secara default log file akan diletakkan di /var/log. Berikut adalah contoh dari file /etc/syslog.conf [root@pelatihan root]# vi /etc/syslog.conf
# Log all kernel messages to the console. # Logging much else clutters up the screen. #kern.* /dev/console # Log anything (except mail) of level info or higher. # Don't log private authentication messages! *.info;mail.none;news.none;authpriv.none /var/log/messages # The authpriv file has restricted access. authpriv.* /var/log/secure # Log all the mail messages in one place. mail.* /var/log/maillog # Log cron stuff cron.* /var/log/cron # Everybody gets emergency messages, plus log them on another # machine. *.emerg * # Save mail and news errors of level err and higher in a # special file. uucp,news.crit /var/log/spooler # Save boot messages also to boot.log local7.* /var/log/boot.log # # INN # news.=crit /var/log/news/news.crit news.=err /var/log/news/news.err news.notice /var/log/news/news.notice

41

Setelah syslogd hal yang perlu diketahui adalah klogd. Klogd adalah sistem daemon yang mencatat segala aktifitas kernel dan kemudian mendokumentasikannya ke dalam file. File /etc/rc/d/rc.local File ini merupakan tempat untuk menuliskan perintah-perintah tambahan yang sifatnya optional yang akan dieksekusi pada waktu booting, yaitu dilakukan setelah mengeksekusi inittab. Isi dari file ini adalah :
#!/bin/bash # #This script will be executed after all the other init scripts. #You can put your own initialization stuff ini here if you dont #want to do the full Sys V style init stuff. Touch /var/lock/subsys/local

Untuk menambahkan perintah-perintah tembahan tersebut kita tinggal menuliskan perintahnya disertai dengan shell yang akan mengeksekusinya. Contoh :
/bin/ping/ localhost

perintah ini akan menyebabkan pada waktu selesai booting akan melakukan perintah ping ke localhost secara otomatis. 4. Penjadwalan Proses Linux memiliki utilitas penjadwalan suatu proses. Dimana suatu proses atau pekerjaan dapat dilakukan pada waktu yang ditentukan secara otomatis atau juga suatu pekerjaan yang rutin dilakukan. Utilitas tersebut adalah at dan cron. Utilitas at Utilitas ini memungkinkan administrator untuk menjadwalkan pekerjaan pada waktu tertentu. Misalnya saja untuk melihat spasi harddisk yang digunakan pada pukul 12:00 siang [root@pelatihan root]#at 12:00 at>du a > /tmp/du.out at>at>ctrl-D Perintah diatas akan menyimpan hasil proses du a ke file /tmp/du.out. Untuk melihat proses apa saja yang dijadwalkan oleh at, gunakan perintah : [root@pelatihan root]# atm 1 ini akan menghapus proses penjadwalan nomor satu. Administrator dapat membatasi user-user mana saja yang dapat melakukan utilitas at ini dan mana yang boleh. File ada di /etc/at.deny dan file /etc/at.allow yang diijinkan menggunakan utilitas at. Sebaiknya gunakan saja salah satu dari file tersebut. Misalnya saja kita ketikkan user-user yang tidak boleh menggunakan utilitas at pada file /etc/at.deny sebagai berikut :
dhanang Anto

42

Kedua user diatas tidak bisa menggunakan utilitas at. Perlu diketahui bahwa suatu proses atau pekerjaan yang telah dikerjakan tidak akan diulangi kemballi kecuali telah diperintahkan kembali.untuk mengatasinya gunakan utilitas crontab atau cron. Utilitas Crontab Dalam menggunakan crontab ketikkan perintah : [root@pelatihan root]# crontab -e maka akan muncul editor teks vi, dan kita akan mengeditnya disini. Format penulisan crontab sebagai berikut:
minute hour day month weekday username command argument

sekarang kita mencoba menggunakannya dengan terlebih dahulu membuat file script hallo.sh :
#! /bin/sh wall Selamat Datang, anda berada di lab CnC

kemudian kita edit crontab dengan menambahkan sebagai berikut :


0,10,20,30,40,50 * * * * /bin/hallo.sh

maka setiap sepuluh menit script tersebut akan dijalankan sampai dengan menit ke 50. Penjadwalan yang kita edit akan disimpan pada direktori /var/spool/cron. Sama seperti utilitas at, administrator dapat membatasi siapa-siapa saja user yang dapat menjalankan utilitas ini dan siapa saja yang tidak boleh. File nya terdapat di /etc/cron.deny bagi yang dilarang dan file /etc/cron.allow bagi yang diperbolehkan. Daftar pekerjaan-pekerjaan yang akan dilakukan, ada pada file /etc/crontab.

43

LINUX TRAINING FIRST SERIES

pinguin.stttelkom.ac.id

44

MODUL IV SYSTEM UPGRADING, BASIC SECURITY & TROUBLESHOOTING

IV.1 REDHAT PACKAGES MANAGER (RPM)


Redhat memberikan kemudahan untuk para pengguna yang ingin melakukan pengaturan paket dalam sistemnya dengan menggunakan utilitas rpm (redhat packages manager). Utilitas ini cukup powerful, kita dapat dengan mudah melakukan instalasi, uninstalasi, upgrade, query, maupun verify satu atau lebih paket. Paket software rpm merupakan sebuah arsip dengan beberapa informasi yang berhubungan dengan file tersebut, tetapi berbeda dengan sistem kompresi tradisional yang menggunakan tar.zip, dengan rpm kita tidak dipusingkan masalah manajemen file seperti letak file dan direktori file misalnya. File rpm ditandai dengan penamaan unik yaitu memiliki ekstension .rpm. Seluruh paket rpm memiliki standar nama sebagai berikut nama-versi-rilis.arsitektur.rpm Misal suatu paket memiliki nama sebagai berikut apache-2.0-39.i386.rpm apache : paket apache (WebServer), 2.0 : versi filenya 39 : rilisnya i386 : khusus paket untuk arsitektur Intel 386. Syntax untuk perintah rpm # rpm [--option] [nama_paket] Beberapa kombinasi switches yang penting e Menghapus/uninstal paket h Menampilkan tanda # sebagai pengukur progress/kemajuan i install paket q menanyakan paket U Upgrade paket v Memverifikasi dan menampilkan apa yang terjadi. F Memperbaharui file yang telah ada Option yang penting: --replacefiles : Mengizinkan mengganti file yang lama dengan yang baru. --percent : Persentase kemajuan proses instalasi. --replacekgs : Mengizinkan mengganti paket yang lama dengan yang baru.

45

IV.2 KOMPILASI KERNEL


Kernel adalah program yang dimuat saat boot yang berfungsi sebagai interface antara user-level program dengan hardware. Fungsinya seperti layaknya sistem operasi, menangani task switching dalam multitasking, menangani permintaan membaca atau menulis peralatan disk, melakukan tugas-tugas network seta mengatur penggunaan memory. Ada beberapa hal yang harus dilakukan dalam kompilasi kernel, yaitu : 1. Download Source Kernel Setiap CD Distribusi telah dilengkapi dengan kernel yang mungkin versinya kurang up-to-date. Kernel terbaru dari masing-masing distribusi dapat diperoleh dengan cara men-download dari berbagai usmber di internet seperti; http://www.kernel.org ftp://ftp.cdrom/pub/linux/sunsite/kernel ftp://sunsite.unc.edu/pub/linux/kernel ftp://tsx-11.mit.edu/pub/linux/source/system Source kernel tersebut bisaanya dalam format linux-x.x.x.x.tar.gz diamana x.x.x.x menunjukkan versi kernel, misalnya 2.4.7-10. Nomor kernel tersebut terdiri dari 3 bagian, yang masing-masingnya dipisahkan oleh tanda titik : Major Number. Minor Number. Revision Number. Setiap dikeluarkannya kernel versi baru juga dikeluarkan sebuah file patch. File patch ini jauh lebih kecil dari file source kernel sehingga jauh lebih cepat bila digunakan untuk upgrade kernel. File patch hanya bekerja untuk meng-upgrade satu versi kernel dibawahnya. Misalnya, versi kernel 2.0.27 hanya bisa di-upgrade dengan file patch 2.0.28 menjadi kernel 2.0.28. 2. Konfigurasi Kernel Untuk memulai Kompilasi Kernel maka kita perlu meng-unpack source kernel yang telah kita download tadi misalnya linux 2.4.7-10. Source kernel bisaanya di unpack di direktori /usr/src/. Untuk meng-unpack file tadi kita gunakan perintah: [root@pelatihan root]# cd /usr/src [root@pelatihan root]# tar xvzf linux-2.4.7-10.tar.gz Perintah tersebut akan menguraikan file-file ke dalam direktori /usr/src/linux. Kemudian untuk lebih jelasnya untuk langkah-langkah kompilasi kita perlu membaca file /usr/src/linux-2.4.7-10/README. Untuk meng-unpack versi patch-nya digunakan perintah: [root@pelatihan linux-2.4.7-10]# gzip cd patch-2.4.7-11.tar.gz | path p0 Setelah itu perikasa apakah ada file yang berkhiran .rej di direktori /usr/src/linux. Bila ditemukan file seperti itu maka patch yang dilakukan tidak berhasil, periksa kembali apakah file patch yang dipakai sudah benar.

46

Konfigurasi Linux dimulai dari direktori /usr/src/linux. Untuk pindah ke direktori tersebut lakukan perintah: [root@pelatihan root]# cd /usr/src/linux-2.4.7-10 Sebelum kita memulai kompilasi sebaiknya kita lakukan perintah sebagai berikut: [root@pelatihan linux-2.4.7-10]# make mrproper Perintah ini akan menghapus seluruh jejak kompilasi yang pernah dilakukan sebelumnya. Ini memastikan agar tidak ada feature versi lama yang tersisa. Kemudian kita bisa langsung memulai konfigurasi kernel kita. Ada tiga cara untuk memulai konfigurasi kernel linux, yaitu: make config, berupa text base interface, cocok untuk user yang memiliki terminal model lama dan tidak memiliki setting termcap. make menuconfig, berupa text base juga tapi memiliki puldown menu berwarna, digunakan untuk user yang memilki standar console. make xconfig, interface menggunakan layar grafik penuh, untuk user yang sudah memilki Xwindow. Bila berhasil layar Linux Kernel Configuration akan ditampilkan setelah perintah diatas dijalankan. Ada sekitar 14 menu pilihan dimulai dari Code Maturity level Options sampai Kernel Hacking. Masing-masing memiliki submenu bila dipilih dan pilihan yes(y), module(m) atau no(no). Setiap pilihan untuk dimuat/kompile ke dalam kernel atau y akan memperbesar ukuran kernel nantinya. Jadi pilih feature-feature yang sering digunakan yang dimuat ke dalam kernel atau jadikan module untuk feature yang tidak sering digunakan, misalnya PPP support. 3. Kompilasi Kernel Proses inilah yang terpenting dalam seluruh proses kompilasi kernel, dimana Mesin komputer akan mengkompile semua file atau library yang ada dalam source kernel yang telah kita download tadi. Tahap kompilasi ini sangat potensial menimbulkan kesalahan dan kadang membuat frustasi bila teris-terusan mengalami kegagalan. Sebelum mengalami masalah tersebut, mempersiapkan emergency bootdisk adalah langkah yang tepat karena pada umumnya kesalhan akan mengakibatkan sistem mogok. Kompilasi bisa menghabiskan waktu sekitar 10 menit pad mesin dengan prosesor Pentium yang cepat hingga samapi 1,5 jam pada mesin Intel 386. Waktu kompilasi juga bertambah bila sistem digunakan untuk menjalankan proses lain pada saat itu. Untuk memulainya kita lakukan perintah sebagai berikut ( dengan direktori masih pada direktori /usr/src/linux-2.4.7-10) : [root@pelatihan linux-2.4.7-10]# make dep perintah ini akan membaca file konfigurasi dan membentuk dependency tree. Proses ini mengecek apa yang dikompile dan apa yang tidak dikompile. [root@pelatihan linux-2.4.7-10]# make bzImage Perintah ini merupakan proses kompilasi sesungguhnya. Bila tidak ada pesan kesalahan, akan terbentuk kernel yang terkompresi dan siap di instalasi. 47

4. Kompilasi Modul Sebelum instalasi kernel, modul-modul yang berhubungan perlu dikompile juga dengan perintah: [root@pelatihan linux-2.4.7-10]# make modules 5. Instalasi Modul Kernel Untuk melakukan instalasi modul Kernel yang telah kita buat tadi, dapat dilakukan dengan perintah : [root@pelatihan linux-2.4.7-10]# make modules_install 6. Editing Bootloader Lilo Jika anda menggunakan Lilo gunakanlah langkah berikut. Cek direktori kernel Anda, bisaanya nama kernel dimulai dengan vmlinuz, bisaanya ada di direktori /boot. Atau bisa juga dengan membuka file /etc/lilo.conf untuk memastikannya. Setelah itu copy file /usr/src/linux/arch/i386/boot/zimage ke direktori /boot dengan nama lain misalnya: [root@pelatihan linux-2.4.7-10]# cp /usr/src/linux-2.4.710/arch/i386/ boot/bzImage /boot/vmlinuz-2.4.7-10-baru Untuk menjalankan Kernel baru dalam sistem pada saat Booting Anda perlu mengubah konfigurasi LILO. Konfigurasi in terdapat dalam file /etc/lilo.conf.anaconda. Masukan kernel loader terbaru anda pada option lilo.conf, dengan menambah baris berikut:
image = /vmlinuz-2.4.7-10-baru root = /dev/hda3 label = linux-baru

Kemudian aktifkan konfigurasi lilo dengan perintah : [root@pelatihan root]# lilo atau [root@pelatihan sbin]# ./lilo C /etc/lilo.conf.anaconda Grub Bagian ini anda gunakan jika menggunakan GRUB sebagi bootloadernya. Tambahkan baris berikut ke /etc/grub.conf. (asumsi partisi root terletak di hda2 atau (hd0,1))
title kernel_baru root (hdo,1) kernel /boot/bzimage ro root=/dev/hda2

Kemudian langkah terakhir adalah me-reboot sistem.

48

7. Meload Modul Kernel Modul-modul dalam kernel agar dapat digunakan harus terlebih dahulu dimuatkan ke sistem. Beberapa perintah yang perlu kita ketahui dalam memuatkan modul kernel contohnya depmod, yang berguna untuk memeriksa dependency modul-modul yang akan digunakan pada /etc/conf.modules, Contoh perintah selengkapnya: [root@pelatihan linux-2.4.7-10]# depmod [option] module.o module1.o modprobe, perintah ini akan memuatkan modul ke sistem. Sintaks; [root@pelatihan linux-2.4.7-10]# modprobe [option] module [irq=Y io=0xZZZ] insmod, berguna untuk menambahkan suatu modul ke dalam /lib/modules agar nantinya dapat dimuatkan ke sistem. [root@pelatihan linux-2.4.7-10]# insmod [option] module rmmod, berfungsi untuk menon-aktifkan modul dari system. [root@pelatihan linux-2.4.7-10]# rmmod [option] module lsmod, berfungsi untuk melihat modul-modul apa saja yang telah di load ke sistem.

File /etc/conf.modules File ini adalah merupakan konfigurasi dari modul-modul yang akan dimuatkan ke kernel. Berikut adalah contoh dari isi /etc/modules.conf
# alias net-pf-1 off # Unix # alias net-pf-2 off # Ipv4 alias net-pf-3 off # Raw sockets alias net-pf-4 off # IPX alias net-pf-5 off # DDP / appletalk alias net-pf-6 0ff # Amateur Radio NET/ROM alias net-pf-10 off # Ipv6 alias net-pf-11 off # ROSE / Amateur Radio X.25 PLP alias net-pf-19 off # Acorn Econet alias cahr-major-10-130 softdog alias cahr-major-10-175 agpgart alias cahr-major-108 ppp_generic alias ppp-compress-21 bsd_comp alias ppp-compress-24 ppp_deflate alias ppp-compress-26 ppp_deflate alias loop-xfer-gen-0 lop_gen alias loop-xfer-3 loop_fish2 alias loop-xfer-gen-10 loop_gen alias cipher-2 des alias cipher-3 fish2 alias cipher-4 blowfish alias cipher-6 idea alias cipher-7 serp6f alias cipher-8 mars6 alias cipher-11 rc62

49

IV.3 DASAR-DASAR SEKURITI SISTEM


1. PAM (Pluggable Authentification Modules ) Dalam distribusi RedHat Linux yang terbaru, dilengkapi dengan skema autentifikasi yang unified, yang disebut PAM. PAM memperbolehkan kita untuk merubah metode authentifikasi yang ada dan mengenkapsulasi metode authentifikasi lokal tanpa harus mengkompile ulang source tersebut ke dalam mesin kita. Beberapa hal yang dapat dilakukan oleh PAM, yaitu : Menggunakan metode enkripsi password selain DES sehingga semakin sulit untuk di-hack. Menentukan batas penggunaan resource oleh user. Menggunakan password bayangan (shadow password) untuk user yang sedang aktif / login. Hanya mengijinkan user tertentu untuk login di waktu dan tempat yang ditentukan. Dengan menginstall dan menkonfigurasi sistem yang ada, kita dapat mencegah penyerangan (hacking) yang ingin merusak mesin kita. Kasus : Apabila kita ingin membatasi user yang dapat login dari mesin kita, maka kita perlu mengedit file /etc/security/access.conf dan tentukan user yang bisa login di console tertentu, dengan menambahkan baris :
-: ALL EXCEPT root console: tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 tty10 tty11 ty12 xconsole

kemudian untuk mengaktifkan aturan tersebut tambahkan baris berikut pada file /etc/pam.d/login :
Account required /lib/security/pam_access.so

Apabila kita ingin membatasi user baik dari jumlah login, penggunaan ruang hardisk, maupun jumlah file, kita dapat menggunakan file etc/security/ limits.conf

dan berikan batasan yang anda inginkan, misalnya :


* hard maxlogins 2

Kemudian pada file /etc/pam.d/login tambahkan baris seperti berikut :


Session required /lib/security/pam_limits.so

2. TCP WRAPPER TCP wrapper merupakan program yang digunakan untuk mengamankan server dari intrusi dari luar system kita terhadap layanan yang kita sediakan yang tidak kita harapkan. Layanan-layanan tersebut merupakan layanan yang diatur oleh xinetd. TCP Wrapper diatur oleh dua buah file yaitu :
/etc/hosts.allow /etc/hosts.deny

Urutan pengecekan file tersebut, yaitu dari hosts.deny baru host.allow. Misalnya kita ingin menolak sekuruh koneksi telnet ke system kita maka kita tinggal menambahkan baris berikut pada file /etc/hosts.deny :
In.telnetd:0.0.0.0/0.0.0.0

50

Jadi seluruh orang yang ingin mengakses layanan telnet akan ditolak. Jika kita ingin supaya fasilitas telnet boleh dilakukan dari system kita sendiri maka kita perlu menambahkan baris tersebut pada file /etc/hosts.allow :
In.telnetd:127.0.0.1

IV.4 TROUBLESHOOTING
1. Melepas dan memasang Hardware baru Untuk melakukan pendeteksian adanya perubahan hardware baik dilepas maupun dipasang, kita bisa lakukan dengan bantuan program kudzu. Caranya mudah yaitu jika kita selesai melepas atau memasang hardware baru lakukan perintah tersebut dengan mengetikkannya pada shell : [root@pelatihan sbin]# kudzu Jika memang ada perubahan hardware, maka kudzu akan mengkonfigurasi ulang hardware tersebut. Jika tidak ada, kudzu tidak akan melalukan hal tersebut. 2. Lupa Password Root Apabila kita lupa password untuk root maka kita tidak akan mampu untuk melakukan pengaturan pada mesin kita. Oleh karena itu kita harus berusaha agar kita tetap bisa masuk ke dalam system kita tersebut walaupun kita lupa password root-nya. Cara yang paling sederhana yaitu dengan menggunakan single user mode pada saat booting. a. boot loader tanpa password a.1 LILO Booting mesin anda Jika layar yang muncul adalah GUI, tekan ctrl-X agar masuk ke CLI Lakukan ketikkan linux s pada prompt LILO lalu tekan enter LILO : linux s Mount seluruh partisi yang tercatat pada /etc/fstab #mount a Masukkan password root yang baru #passwd root Reboot mesin anda #init 6 Dengan demikian kita sudah dapat masuk ke dalam system dengan mode single user. a.2 GRUB Booting mesin anda Setelah masuk ke login GUI, pilih Linux yang ingin anda masuki, lalu tekan e Carilah baris dengan kata kernel, tekan e, lalu di akhir baris tambahkan kata single dengan spasi di depannya, tekan enter Tekan b

51

b. boot loader dengan password Sebelum bagian ini dimulai kami tekankan terlebih dahulu tutorial ini bukan dimaksudkan untuk mengajari anda menjadi hacker/cracker, tetapi untuk digunakan sebagai bahan pendidikan. Ada beberapa cara untuk mengatasi kasus ini, namun kita hanya membahas satu cara yang kira-kira susah untuk diimplementasikan jika anda tidak memilki akses langsung secara fisik dengan mesin yang bersangkutan. Prinsip yang kita gunakan adalah menghapus password terenkripsi pada file /etc/shadow. Hal ini dapat dilakukan dengan cara memboot harddisk anda sebagai slave pada mesin lain yang telah terinstal linux. Kemudian carilah file shadow pada direktori /etc pada harddisk anda dan hapus passwordnya Contoh :
Root:$gfdsgfdshshfsdfssgfds#fds/:12276:0:88888:7:::

Hapus bagian yang ditebalkan, lalu kembalikan harddisk anda kemudian bootinglah seperti biasa.

52

LINUX TRAINING FIRST SERIES

pinguin.stttelkom.ac.id

53

Anda mungkin juga menyukai