Pages

6 peringkat proses semasa boot Linux

Pernahkah anda terfikir apakah proses yang terjadi semasa boot Linux? Artikel ini akan menjelaskan peringkat yang dilalui oleh sistem operasi Linux.







Berikut merupakan 6 peringkat awal yang berlaku semasa Linux boot bermula.

1.BIOS
Peringkat pertama adalah BIOS. BIOS adalah singkatan kepada Basic Input/Output System. BIOS menjalankan fungsi memeriksa integriti di dalam satu sistem komputer.BIOS mencari (search), mendapatkan(load) dan melaksana (execute) boot loader program. Dengan ringkasnya, BIOS akan melaksanakan MBR program.

2.MBR
MBR adalah singkatan kepada Master Boot Record. Ianya terletak di sektor pertama boot disk (biasanya /dev/hda, or /dev/sda ). Saiz bagi MBR adalah kecil iaitu 512 bytes sahaja. MBR ada 3 komponen iaitu primary boot loader yang mengisi 446 bytes yang pertama, seterusnya partition table info dalam 64 bytes dan mbr validation check pada 2 bytes yang terakhir. MBR mengadungi maklumat tentang GRUB ( ataupun LILO pada sistem komputer yang lama ). Secara ringkasnya, MBR mendapatkan GRUB dan melaksanakan GRUB.

3.GRUB
GRUB adalah singkatan kepada Grand Unified Bootloader. GRUB membolehkan anda memilih. Jikalau anda mempunyai lebih dari satu image kernel di dalam pc anda, anda boleh memilih kernel tersebut di dalam pilihan GRUB. GRUB mengenali filesystem yang ada di dalam Linux ( berbanding dengan loader Linux yang lama, LILO tidak mengenali file system!). Konfigurasi file untuk GRUB adalah di /boot/grub/grub.conf ( /etc/grub.conf merujuk kepada file ini )


4.Kernel
Kernel akan mount root file system seperti yang dinyatakan di dalam grub.config (“root=” in grub.conf)
Kernel akan melaksanakan program init (/sbin/init)
Seterusnya Kernel akan mount root sistem initrd images..

*initrd=(Initial RAM Disk)-digunakan oleh kernel sebagai root file system sementara (temporary root file system)

5. INIT
INIT akan melaksanakan run levels bagi Linux. Boleh check files etc/inittab sekiranya anda ingin melihat run levels Linux.

Berikut merupakan pilihan run levels untuk Linux:

0 – halt
1 – Single user mode
2 – Multiuser, without NFS
3 – Full multiuser mode
4 – unused
5 – X11
6 – reboot

Init akan mengenalpasti default bagi initlevel dari /etc/inittab dan seterusnya load program.

6.Run Level Program
Bila run levels program berjalan, anda akan nampak pada screen arahan seperti "starting sendmail …. OK".
Bergantung kepada default init level setting, sistem akan melaksanakan program dari salah satu direktori berikut:

  • Run level 0 – /etc/rc.d/rc0.d/
  • Run level 1 – /etc/rc.d/rc1.d/
  • Run level 2 – /etc/rc.d/rc2.d/
  • Run level 3 – /etc/rc.d/rc3.d/
  • Run level 4 – /etc/rc.d/rc4.d/
  • Run level 5 – /etc/rc.d/rc5.d/
  • Run level 6 – /etc/rc.d/rc6.d/

Okay, there you have it. .Itulah 6 peringkat yang berlaku semasa proses boot Linux. :)

Subsystem for Unix-based Applications (SUA)

Microsoft mempunyai satu teknologi yang membenarkan anda menjalankan arahan Unix di dalam Windows. Dahulunya teknologi ini dipanggil sebagai Interix, kemudian diberi nama sebagai Services for Unix dan kini dikenali sebagai Subsystem for Unix-based Applications (SUA).Namun, servis untuk SUA hanya terdapat dalam versi Windows yang terpilih sahaja iaitu:

  • Windows Server 2008
  • Windows Server 2003 R2
  • Windows 7 - Enterprise or Ultimate Edition
  • Windows Vista - Enterprise or Ultimate Edition

Untuk mengaktifkan dan install SUA:

  • Pergi ke Control Panel.
  • Klik pada Programs and Features.
  • Klik Turn Windows features on or off in the left panel.
  • Pilih dan tanda kotak pilihan Subsystem for UNIX-based Applications.

Gambarajah 1: Kotak pilihan untuk SUA




















  • Klik OK.
  • Pada menu Start, klik All Programs > Subsystem for UNIX-based Applications > Download Utilities for Subsystem for UNIX-based Applications.
  • Download SUA installer daripada website Microsoft.
  • Selepas download installer tersebut, double-click pada UNIX-based Applications_X86.exe di dalam folder download tadi.
  • Install mengikut arahan.

Saya merekomenkan anda supaya memilih custom setup dan enable GNU Utilities, seterusnya pilih 3 kotak pilihan yang membenarkan su (superuser) untuk root (allow su to root), enable setuid dan enable case sensitivity.

Selepas itu, pergi semula ke Start menu dan lancarkan Korn shell dan jalankan arahan terminal Unix di dalamnya. :)

Gambarajah 2: Korn Shell

Minix

















Hari ini, aku nak bercerita sedikit tentang Minix. Satu sistem operasi yang telah wujud sebelum Linux dan perkaitan nya dengan Linux. Kalau di ikut kan sejarah, Minix merupakan "ibu" kepada Linux di mana kernel pertama Linux telah di cipta oleh Linus Torlvald menggunakan Minix sebagai hos nya.

Minix ( Mini-Unix) adalah salah satu OS yang berada dalam keluarga Unix-like yang berasaskan arkitektur microkernel yang telah dicipta oleh Andrew S.Tanenbaum (seorang profesor di dalam bidang komputer sains di sebuah universiti di Amsterdam)untuk tujuan pembelajaran (educational purpose).Minix telah di cipta pada tahun 1987 dan telah diedarkan kepada umum secara percuma di bawah lesen BSD sejak April 2000. Untuk pengetahuan umum, kernel Linux telah dicipta hasil inspirasi Linus Torvald terhadap Minix. Walaupun Linus Torvald menyukai Minix, tetapi rekabentuk arkitektur Linux jauh berbeza dengan Minix. Ini terbukti apabila Linus Torvald menggunakan arkitektur Monolithic kernel dan bukannya microkernel seperti Minix.

Pada peringkat awalnya, kernel Linux telah dicipta di dalam persekitaran Minix ( Minix sebagai hos komputer)dan disebabkan faktor inilah kernel Linux mengandungi filesystem Minix.

Sejak minggu lepas aku sudah menguji Minix menggunakan VirtualBox. Aku juga berjaya untuk update Minix dengan menggunakan arahan "pkgin update" seterusnya "pkgin in minix-all" (install semua package tambahan untuk Minix). Nanti aku akan postkan printscreen Minix pada virtualbox aku.

Struktur Directory Linux

Merujuk kepada artikel " Mari mengenal Shell Linux" saya akan menerangkan serba sedikit tentang direktori yang terdapat di dalam kebanyakkan sistem Linux sekarang. ( directory-adalah seperti konsep folder di dalam Windows.).

/ - Root directory untuk sistem Linux anda.(Merupakan directory utama dan teratas di dalam sistem Linux)

/boot - Disinilah kernel Linux dan semua file boot loader Linux disimpan. vmlinuz adalah nama file untuk kernel Linux.

/etc- adalah directory yang mengandungi semua configuration file untuk sistem Linux.Kesemua file yang terdapat di dalam directory ini adalah berbentuk text.

/bin, /usr/bin - adalah directory yang mengandungi kesemua program yang terdapat di dalam Linux. Directory /bin mengandungi program penting yang digunakan sistem Linux untuk beroperasi manakala /usr/bin pula adalah directory yang mengandungi aplikasi untuk program yang digunakan pengguna.

/sbin, /usr/sbin -adalah directory seperti /bin dan /usr/bin tetapi directory ini khas untuk system administration ataupun superuser.

/usr -adalah directory yang mengandungi support untuk aplikasi untuk pengguna sebagai contoh seperti /usr/share/X11 (menyokong files untuk X Windows System).

/usr/local -adalah directory menyimpan semua files program yang telah di install. Program yang di maksudkan di dalam ini adalah program yang bukan berasal dari official distribution ( Kalau program yang berasal dari official distribution akan masuk kedalam directory /bin ataupun /usr/sbin)

/var -adalah directory yang menyimpan semua files yang berubah semasa sistem sedang berjalan. Sebagai contoh /var/log adalah directory yang menyimpan log files. Log files ini akan update seiring dengan sistem

/lib -adalah shared libraries (sama seperti DDLs di dalam Windows)

/home -adalah directory untuk pengguna.(sama seperti konsep folder My Documents di dalam Windows)

/root -adalah directory untuk superuser

/temp -adalah directory dimana program menyimpan temporary files mereka,

/dev -ini adalah directory istimewa kerana directory ini menyimpan files yang tidak diketahui. Sebagai contoh, Unix ataupun Linux menganggap devices seperti sebuah file. Sebagai contohnya, floppy disk anda, akan dikenali sebagai file /dev/fd0 ataupun IDE pertama hard disk anda akan dikenali sebagai file /dev/sda.

/proc -ini juga adalah satu directory istimewa yang terdapat di dalam sistem Linux. Ini kerana, /proc sebenarnya tidak wujud tetapi ianya adalah virtual directory. (P/S: Cuba taip /proc/cpuinfo ke dalam terminal linux anda.)

/mnt - adalah directory yang digunakan sebagai mount points.

Mari mengenal SHELL Linux (Part-1)

Mari mengenal SHELL Linux. Shell dalam definisi artikel ini merujuk kepada shell yang terdapat di dalam sesebuah sistem operasi Unix/Linux(OS). Bagi seorang yang berada di dalam persekitaran kerja yang menggunakan Unix ataupun Linux pasti tahu apa itu shell.  Dalam artikel yang saya akan tulis ini, saya akan jelaskan secara jelas dan ringkas tentang konsep shell dan fungsi-fungsinya. Artikel ini akan dipecahkan kepada beberapa bahagian (saya tidak akan dapat menerangkan konsep shell ini di dalam satu artikel kerana topik ini adalah luas)

Apa itu "Shell"

Secara ringkasnya, shell adalah satu program yang menerima arahan (command) anda dari keyboard dan memberi arahan tersebut kepada sistem operasi (OS). Dahulunya, di dalam Linux hanya ada user interface sahaja. Tetapi sekarang, kebanyakkan distro Linux mempunyai Graphical User Interface (GUI) di samping Command Line Interface (CLIs). Dalam kebanyakkan sistem Linux ada satu program yang dikenali sebagai bash (Bourne Again SHell) bertindak sebagai program shell. Terdapat juga beberapa program shell yang lain seperti ksh, tcsh, dan zsh.

Terminal emulators adalah satu program yang digunakan untuk berhubung dengan shell. Antara contoh terminal emulators yang popular adalah seperti konsole, gnome-terminal, x-term, rxvt, kvt, nxterm, dan eterm.

Untuk memahami lebih mendalam tentang shell, saya akan menerangkan tentang struktur organisasi filesystem yang terdapat di dalam sistem operasi Linux. Berbeza dengan struktur sistem operasi Windows ( kita panggil folder, manakala di dalam Linux dipanggil sebagai directory), struktur filesystem bagi Linux tersusun seperti tree-like patern of directory. Rujuk gambarajah di bawah.


Salah satu perkara yang membezakan Unix/Linux dan Windows adalah Unix/Linux tidak mempunyai konsep drive letter. Sebagai contoh, kebiasaannya kita akan mempunyai nama "C" untuk mewakili folder filesystem Windows manakala "D", "E" sebagai drive lain. Linux pula mengamalkan konsep single tree.

Bersambung....

Mengemas kini Ubuntu Linux


Soalan: Saya mempunyai versi terbaru dari Ubuntu Linux. Bagaimana cara mengemas kini Ubuntu Linux untuk memperbaiki keselamatan dan aplikasi atau upgrade?

Jawapan. Ubuntu dapat dipertingkatkan dengan menggunakan Antaramuka (GUI) atau menggunakan kaedah tradisional iaitu menggunakan arahan terminal

Menggunakan arahan "apt-get"

apt-get adalah arahan untuk pengendalian pakej. Anda boleh menggunakan pilihan arahan berikut:

=> Apt-get update: Update digunakan untuk menyeneraikan dan mendapatkan indek fail pakej daripada sumber-sumber mereka melalui internet.

=> Apt-get upgrade: Upgrade digunakan untuk memasang versi terbaru dari semua pakej yang dipasang pada sistem

=> Apt-get install pakej-name: install pakej diikuti oleh satu atau lebih dikehendaki untuk pemasangan. Jika pakej telah dipasang akan cuba untuk update ke versi terbaru.