LENGKAP!!! Praktikum Linux 10 "Linux Booting Process"
Linux Booting Process
Oleh: Damelia
π Pokok Bahasan:
- Linux Booting Process
π Tujuan Belajar:
Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu:
- Mengetahui inisialisasi booting proses pada sistem operasi Linux
- Melakukan perubahan inisialisasi booting proses
π Dasar Teori:
1. PC BOOT DAN LINUX INIT PROCESS
- BIOS : Basic Input/Output System adalah antar muka level terendah antara komputer dan peripheral. Bios melakukan pemeriksaan pada memori dan mencari instruksi pada Master Boot Record (MBR) pada floppy atau hard drive.
- MBR menunjuk ke boot loader (LILO : Linux boot loader)
- LILO akan menanyakan label sistem operasi yang akan mengidentifikasi kernel yang dijalankan. Kernel akan menjalankan sistem operasi Linux.
- Yang pertama kali dikerjakan oleh kernel adalah menjalankan program init. Init adalah root/parent dari semua proses yang dijalankan pada Linux.
- Proses pertama yang memulai init adalah skrip /etc/rc.d/rc/sysinit
- Berdasarkan run-level yang ditentukan, skrip dieksekusi untuk memulai proses tertentu untuk menjalankan sistem dan membuat sistem lebih fungsional.
2. LINUX INIT PROCESS
Proses sistem :
- Mengeksekusi program /sbin/init yang memulai semua proses-proses lain. Program ini akan diberikan ke mesin oleh proses awal yang didefinisikan pada file/etc/inittab
- Komputer akan di-booting ke runlevel yang didefinisikan oleh baris initdefault pada file /etc/inittab.
id:5:initdefault:
- Satu dari proses-proses yang dimulai oleh init adalah /sbin/rc. Skrip ini menjalankan sekumpulan skrip pada direktory /etc/rc.d/rc0.d/, /etc/rc.d/rc1.d, /etc/rc.d/rc2.d dan seterusnya.
- Skrip pada direktory tersebut dieksekusi pada setiap boot state dari oeprasi sampai menjadi operasi yang lengkap. Skrip mulai dengan S yang merupakan skrip startup sedangkan skrip yang dimulai dengan K menandakan skrip shutdown (kill). Angka yang mengikuti huruf tersebut merupakan urutan eksekusi (terendah ke tertinggi).
/etc/rc.d/init.d (Redhat)
cd /etc/rc.d/init.d
httpd stop
4. LINUX RUN LEVEL
State pada Runlevel / Halt :
Anda bila melakukan perpindahan level init dengan menggunakan perintah init dengan runlevel tertentu. Gunakan perintah ”init#” dimana # adalah satu dari 0, 1, 3, 5, 6. Dapat juga menggunakan perintah telinit.
Skrip untuk run level yang diberikan dijalankan selama boot dan shutdown. Skrip ditemukan pada direktory /etc/rc.d/rc#.d/ dimana simbol # menandakan run level, misalnya run level ”3” akan menjalankan semua skrip pada direktory /etc/rc.d/rc3.d/ yang dimulai dengan huruf ”S” selama sistem boot. Skrip ini akan menjalankan proses background yang dibutuhkan oleh sistem. Pada saat shutdown semua skrip pada direktory yang dimulai dengan huruf ”K” akan dieksekusi. Sistem ini menyediakan urutan sistem ke state yang berbeda untuk mode produksi dan maintenance.
5. AKTIVASI SKRIP INIT
Skrip start / stop /status berada pada direktory /etc/rc.d/init.d/ adalah suatu link ke direktory sebenarnya. Link tersebut kemungkinan dibuat atau dihapus menggunakan perintah chkconfig, misalnya chkconfig –del httpd akan menghapus web server dari proses startup dan shutdown. Sebaliknnya chkconfig –add httpd akan menambahke ke proses startup/shutdown dengan membangkitkan link dari skrip pada /etc/rc.d/init.d/ ke direktory /etc/rc.d/rc#.d/ yang sebenarnya. Untuk informasi lebih lanjut gunakan halaman manual LINUX untuk init.
Pada Red Hat 9.0, GUI tool /usr/bin/redhat-config-services dapat membantu untuk mengkonfigurasi service untuk start dan menyediakan deskripsi untuk setiap service yang tersedia. Service dasar meliputi :
Service utama yang direkomendasikan adalah : anacron, ard, autofs, crond, gpm, iptables, keytable, kudzu, microcode_ctl (Intel32 hardware only), network, random. syslog
6. SKRIP INIT
Skrip init berada pada direktory /etc/rc.d/script-name. Gunakan perintah chkconfig untuk membangkitkan soft link ke direktory yang sebenarnya untuk beberapa run level.
exit 0
atau menggunakan perintah service :
Dua baris dalam skrip yang memungkinkan perintah chkconfig mengontrol skrip untuk proses boot dan shutdown adalah
Bila menambahkan ke proses booting menggunakan perintah "chkconfig --add script-name" awal order/priority akan diset 80 sedangkan stop/shutdown diset 15. Proses akan ditambahkan ke runlevel 3, 4, dan 5. Hal ini dapat dilakukan dengan membangkitkan link dari lokasi skrip (/etc/rc.d/init.d/) ke direktori run level : /etc/rc.d/rc#.d/. Nama file dalam direktory run level akan menunjukkan apa yang digunakan untuk boot (mulai dengan “S”) atau shutdown (mulai dengan “K”).
7. CHKCONFIG
Perintah chkconfig membangkitkan dan memutuskan link antara direktori /etc/rc.d/init.d/dan direktori run level /etc/rc.d/rc[0-6].d/untuk mengontrol inisialisasi proses boot dan proses shutdown.
Contoh :
π TUGAS PENDAHULUAN:
Jawablah pertanyaan- pertanyaan berikut ini:
1. Sebutkan inisialisasi proses apa saja yang dilakukan oleh sistem operasi Linux pada saat booting
Jawab:
- BIOS: Basic Input/Output System merupakan interface level paling bawah yang menghubungkan antara komputer dan periperalnya. BIOS melakukan pengecekan integritas memori dan mencari instruksi pada? Master Boot Record (MBR) yang terdapat pada floppy drive atau harddisk.
- MBR menjalankan boot loader. Di linux, boot loader yang sering dipakai adalah LILO (Linux Loader) dan GRUB (GRand Unified Boot loader). Pada Red Hat dan Turunannya menggunakan GRUB sebagai boot loader.
- LILO/GRUB akan membaca label sistem operasi yang kernelnya akan dijalankan. Pada boot loader inilah sistem operasi mulai dipanggil. Untuk mengkonfigurasi file grub, buka filenya di /boot/grub/grub.conf
- Setelah itu, tanggung jawab untuk booting diserahkan ke kernel. Setelah itu, kernel akan menampilkan versi dari kernel yang dipergunakan, mengecek status SELinux, menegecek paritisi swap, mengecek memory, dan sebagainya.
- Kernel yang dipanggil oleh bootloader kemudian menjalankan program init, yaitu proses yang menjadi dasar dari proses-proses yang lain. Ini dikenal dengan nama The First Process. Proses ini mengacu pada script yang ada di file /etc/rc.d/rc.sysinit.
- Program init kemudian menentukan jenis runlevel yang terletak pada file /etc/inittab. Berdasarkan pada run-level, script kemudian menjalankan berbagai proses lain yang dibutuhkan oleh sistem sehingga sistem dapat berfungsi dan digunakan. Runlevel adalah suatu parameter yang mengatur servis yang akan dijalankan misalnya single user,
reboot, shutdown, dan sebagainya. Program yang mengatur runlevel ini adalah init yang terletak pada direktori /etc/inittab
2. Apa yang dilakukan sistem operasi Linux pada saat booting ?
Jawab: Mounting perangkat-perangkat yang terpasang dan melakukan beberapa inisialisasi proses-proses yang akan berjalan pada system.
3. Apakah isi dari file /etc/inittab. Sebutkan sistem proses yang dapat dimasukkan pada variabel initdefault dan jelaskan maksudnya.
Jawab: Berisi perintah-perintah untuk memulai system. Computer setelah selesai melakukan inisialisasi selanjutnya akan di booting ke run level yang didefinisikan oleh initdefault.
4. Apa yang dimaksud dengan run level pada linux ? Sebutkan perbedaan file pada /etc/rc.d/rc#.d/ yang menggunakan awalan ”S” dan awalan ”K”.
Jawab: Run level pada linux adalah proses kelanjutan dari booting linux yang salah satu fungsinya adalah untuk booting untuk masuk dalam mode teks atau GUI. Skrip yang dimulai dengan huruf “S” akan dijalankan selama system bootdan kemudian akan berjalan pada background, dan skrip yang berawalan huruf “K” akan dieksekusi pada saat shutdown, system ini menyediakan urutan system ke state yang berbeda untuk mode aktivasi skrip init.
5. Apa yang dimaksud dengan perintah service dan chkconfig ?
Jawab:
- Service menjalankan script system init dan berjalan sebagai proses yang dapat diprediksi.
- Chkconfig adalah perintah untuk membangkitkan soft link kedirektori yang sebenarnya untuk beberapa run level.
π PERCOBAAN:
- Login sebagai user.
- Bukalah Console Terminal dan lakukan percobaan-percobaan di bawah ini kemudian analisa hasil percobaan.
- Selesaikan soal-soal latihan
Percobaan 1 : Linux INIT Process
1. Program /sbin/init akan dijalankan pada saat booting. Eksekusi program ini berdasarkan file /etc/inittab. Lihatlah isi file /etc/inittab dan perhatikan mode default runlevel pada baris initdefault
#cat /etc/inittab
Analisa: Perintah cat /etc/inittab ternyata tidak dapat dilakukan, bahkan yang muncul adalah pesan error yang memberikan informasi bahwa file tersebut tidak ada.
2. Berdasarkan runlevel yang dipilih, proses init kemudian mengeksekusi skrip startup yang berada pada sub direktory /etc/rc.d. Skrip yang digunakan untuk runlevel 0 sampai dengan 6 berada pada sub direktory /etc/rc.d/rc0.d sampai /etc/rc.d/rc6.d.
#ls-l/etc/rc.d
Analisa:
3. Setiap nama file pada direktori misalnya /etc/rc.d/rc5.d dimulai dengan huruf “S” merupakan skrip startup sedangkan skrip yang dimulai dengan huruf “K” merupakan skrip shutdown. Angka yang mengikuti "K" atau "S" menandakan urutan skrip yang dijalankan. Contohnya ”kudzu” dengan nilai ”05” dijalankan sebelum ”wlan” dengan nilai ”09”
#ls /etc/rc.d/rc5.d
Percobaan 2 : Menentukan default boot runlevel
Analisa:
2. Hapus baris initdefault yang tidak diperlukan pada file /etc/inittab.Buatlah bari baru untuk set sistem boot menggunakan console VGA / teks
Analisa:
3. Setelah dilakukan perubahan variabel initdefault, lakukan reboot. Perhatikan apakah masuk ke mode teks
#reboot
Analisa:
4. Lakukan perubahan kembali dari 3 ke 5 dan lakukan reboot sistem. Ingat, jangan melakukan setting ke 6 karena sistem akan reboot terus-menerus. Sedangkan setting 0 maka sistem tidak pernah dimulai.
Analisa: Default runlevel=3
Percobaan 3 : Menggunakan Console GUI
Analisa:
2. Metode Manual : Jalankan aplikasi X terminal GUI dengan menjalankan perintah “startx” pada console VGA. Untuk keluar gunakan logout
#startx
Analisa:
3. Metode Otomatis : Anda dapat menjalankan X terminal GUI setiap kali rebootmenggunakan perintah init. Anda harus mengedit variabel initdefault”pada file /etc/inittab seperti percobaan 2 agar setiap booting masuk ke mode GUI. Ubahlah kembali ke mode 5.
#init 5
Analisa:
Percobaan 4 : Menggunakan Virtual Console
#cat /etc/inittab
Percobaan 5 : Shutdown dan Rebooting Sistem
#init 6
Analisa:
Percobaan 6 : Berpindah ke mode single user
Analisa:
# init 1
Analisa: Fungsi init 1 untuk kembali ke single user mode dan membuka semua file yang user lain tidak bisa gunakan. Fungsi dari shutdown untuk mematikan PC dengan delay 1 menit.
# shutdown 1
Percobaan 7 : Berpindah ke mode single user pada layar Grub
2. Hidupkan sistem Anda
grub append> ro root=LABEL=/
Analisa: Tidak bisa dilakukan karena tidak ada command grub
grub append> ro root=LABEL=/1
Analisa: Tidak bisa dilakukan karena tidak ada command grub
Analisa: Tidak bisa dilakukan karena tidak ada command grub
Percobaan 8 : Berpindah ke default runlevel dari mode single user
bash-2.05b# exit
Percobaan 9 : Memperbaiki password root
1. Kadangkala anda kehilangan atau lupa pada password root, atau sistem administrator sebelumnya tidak memberi password kepada Anda
2. Masuk ke console VGA dan tekan <CTRL> <ALT> <DEL>. Sistem akan shutdown
3. Reboot sistem dan masuk ke mode single user
4. Setelah masuk ke command prompt, ubahlah password root. Mode single user mengasumsikan orang pada consol sebagai “root”, sehingga anda tidak perlu menentukan nama user “root”
5. Masuk ke default runlevel dengan menggunakan perintah “exit”.
Percobaan 10 : Menggunakan perintah chkconfig
#chkconfig –list
$sysv-rc-conf --list
Analisa:
Analisa:
# chkconfig –level 35 sendmail off
# chkconfig sendmail off
# service sendmail stop
# chkconfig –list | grep mail
π LATIHAN:
2. Laporkan hasil perubahan password pada mode single user pada percobaan 9. Gunakan password root “redhat” (jangan lainnya !).
Analisa: Untuk mengganti atau mekalukan perubahan password pada mode single user, terlebih dahulu harus masuk dahulu kedalam super user dengan perintah $ sudo su. Setelah itu muncul pesan untuk membuat memasukan password baru dan muncul pesan kedua untuk memasukan kembali passwordnya.
3. Apakah kegunaan menggunakan perintah service ? Berikan contoh.
Analisa: Service adalah file ASCII yang menyediakan pemetaan antara nama tekstual untuk layanan internet, yang mendasari nomor port yang ditugaskan dan jenis protokol. Setiap program jaringan harus melihat ke dalam file ini untuk mendapatkan nomor port (dan protokol) untuk layanan. Misalnya seperti untuk dns, mysql dan masih banyak lagi. contoh
4. Apa kegunaan menggunakan perintah chkconfig ? Berikan contoh.
Analisa: Chkconfig menyediakan alat baris perintah sederhana untuk menjaga / etc / rc [0-6] d hirarki direktori dengan membebaskan administrator sistem tugas secara langsung memanipulasi berbagai link simbolik dalam direktori tersebut. chkconfig memiliki lima fungsi yang berbeda: yaitu menambahkan layanan baru untuk manajemen, menghapus layanan dari manajemen, daftar informasi startup saat ini untuk layanan, mengubah informasi startup untuk layanan, dan memeriksa keadaan startup layanan tertentu. Contohnya
$sysv-rc-conf --list
π Kesimpulan:
- BIOS: Basic Input/Output System merupakan interface level paling bawah yang menghubungkan antara komputer dan periperalnya. BIOS melakukan pengecekan integritas memori dan mencari instruksi pada? Master Boot Record (MBR) yang terdapat pada floppy drive atau harddisk.
- MBR menjalankan boot loader. Di linux, boot loader yang sering dipakai adalah LILO (Linux Loader) dan GRUB (GRand Unified Boot loader). Pada Red Hat dan Turunannya menggunakan GRUB sebagai boot loader.
- LILO/GRUB akan membaca label sistem operasi yang kernelnya akan dijalankan. Pada boot loader inilah sistem operasi mulai dipanggil. Untuk mengkonfigurasi file grub, buka filenya di /boot/grub/grub.conf
- Setelah itu, tanggung jawab untuk booting diserahkan ke kernel. Setelah itu, kernel akan menampilkan versi dari kernel yang dipergunakan, mengecek status SELinux, menegecek paritisi swap, mengecek memory, dan sebagainya.
- Kernel yang dipanggil oleh bootloader kemudian menjalankan program init, yaitu proses yang menjadi dasar dari proses-proses yang lain. Ini dikenal dengan nama The First Process. Proses ini mengacu pada script yang ada di file /etc/rc.d/rc.sysinit.
- Program
init kemudian menentukan jenis runlevel yang terletak pada file
/etc/inittab. Berdasarkan pada run-level, script kemudian
menjalankan berbagai proses lain yang dibutuhkan oleh sistem
sehingga sistem dapat berfungsi dan digunakan. Runlevel adalah
suatu parameter yang mengatur servis yang akan dijalankan
misalnya single user,
reboot, shutdown, dan sebagainya. Program yang mengatur runlevel ini adalah init yang terletak pada direktori /etc/inittab.











Komentar
Posting Komentar