fight_against_software_piracy

January 15, 2008

Terminal dan Otentikasi Login

Filed under: Linux, Debian - Administrator @ 3:08 am

Akhirnya sistem operasi Linux siap untuk dioperasikan. Tanda bahwa Linux telah siap dioperasikan adalah tampilnya terminal atau XWindow-System tergantung dari runlevel yang dijalankan.

Yang terlebih dahulu yang akan kita bahas adalah terminal. Ada atau tidak ada XWindow-System, terminal tetap akan dijalankan. Perhatikan bahwa pada bagian akhir file /etc/inittab akan selalu ada entry seperti dibawah ini.

——————————————————————————————————————————
# Format:
# :::
#
# Note that on most Debian systems tty7 is used by the X Window System,
# so if you want to add more getty’s go ahead but skip tty7 if you run X.
#
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
——————————————————————————————————————————

Walaupun entry tersebut berbeda-beda untuk setiap distro, namun kurang lebih isinya sama. Maksud dari entry tersebut adalah memanggil 6 buah terminal yang terletak di tty1, tty2, tty3, tty4, tty5 dan tty6. Suatu terminal diaktifkan dengan menekan kombinasi tombol [Ctrl]+[Alt]+[Fn] dengan n menunjukkan nomor terminal yang bersangkutan. Terminal ketujuh atau tty7 umumnya digunakan oleh Xwindow-System.

Pemanggilan sebuah terminal mengikuti proses sebagai berikut:
1.Program init akan memanggil getty
2.getty akan menampilkan login untuk meminta user memasukkan username
3.Jika user memasukkan username, proses login akan meminta diperiksa. Jika cocok dengan username yang bersangkutan, shell default untuk user tersebut akan aktif. Jika tidak, suatu pesan bahwa username dan password tidak cocok akan ditampilkan dan init akan memanggil getty kembali.
4.Jika user melakukan logout, shell akan ditutup dan proses kembali ke nomor 1.

Umumnya terminal akan memberikan tampilan sebagai berikut:

nama_mesin login:

Tampilan yang diberikan oleh sebuah terminal dikonfigurasi oleh file bernama /etc/issu (lokal) dan /etc/issu.net (remote). Tesk yang ada dalam /etc/issu atau /etc/issu.net tersebut akan ditampilkan. Selain itu terdapat beberapa escaped character yang dapat digunakan untuk memberikan tampilan tertentu. Escaped character yang dikenal adalah sebagai berikut:

\d = menampilkan nama hari pada waktu lokal
\l = menampilkan baris di mana getty berjalan
\m = menampilkan arsitektur mesin atau jenis prosesor
\n = menampilkan nama host
\o = menampilkan nama domain
\r = menampilkan release kernel sistem yang bersangkutan
\t = menampilkan waktu lokal
\s = menampilkan nama sistem operasi yang bersangkutan
\u = menampilkan jumlah user yang sedang login
\v = menampilkan versi sistem operasi yang bersangkutan.

Untuk memeriksa username yang digunakan untuk login, proses login akan memeriksa file /etc/passwd. Format penulisan dari setiap entry yang ada pada file /etc/passwd tersebut adalah sebagai berikut:

account:password:UID:GID:GECOS:directory:shell

arti dari setiap bagian format penulisan tersebut adalah sebagai berikut:

1.Account: username
2.Password: password, password dalam keadaan terenkripsi dan tersimpan pada file /etc/shadow dan hanya dapat dilihat oleh user root
3.UID: angka yang menunjukkan user ID
4.GID: angka yang menunjukkan group ID
5.GECOS: umumnya berisi nama lengkap user, bagian ini sifatnya optional
6.directory: path lengkap dari home directory user
7.shell: shell yang digunakan oleh user yang bersangkutan.
Jika berhasil login, sebuah shell akan diaktifkan. Shell yang paling banyak digunakan oleh berbagai distro adalah bash. Secara umum tampilan shell bash dikonfigurasi oleh file /etc/profile. Pada distro RedHat konfigurasi juga dapat dilakukan pada file /etc/bashrc sedangkan pada distro Debian konfigurasi bash terletak pada file /etc/bash.bashrc. Selain itu masing-masing user dapat melakukan konfigurasi sendiri terhadap shell bash dengan menyimpan konfigurasi tersebut pada file $HOME/.bash_profile atau $HOME/.bashrc.

Salah satu contoh tampilan terminal shell yang digunakan oleh distro Debian adalah sebagai berikut:

amaronly@smart:~$
smart:~#

Arti dari terminal tersebut adalah sebagai berikut:

1.$ : user yang sedang login adalah user non-root
2.# : user yang sedang login adalah user root

Melalaui shell tersebut sistem operasi Linux anda telah dapat digunakan untuk bekerja.

Hak Cipta 2007 A. Samsul Amar
Penggandaan dan distribusi dari seluruh artikel ini diijinkan tanpa dikenakan royalti dalam sembarang media selama keterangan ini tetap dicantumkan.

Runlevel

Filed under: Linux, Debian - Administrator @ 3:02 am

KERNEL akan dimekarkan dan di-load ke dalam memori. Kernel me-mount partisi root dan menjalankan perintah init. Dalam menjalankan tugasnya, init akan membaca isi file /etc/inittab. Init tidak hanya bertugas saat proses booting, tetapi selalu running dan secara dinamis menjalankan tugas-tugas tertentu berdasarkan perintah yang diterima. Administrator sistem dapat mengubah proses sistem dan runlevel init dengan perintah telinit atau menyunting isi file /etc/inittab.

Runlevel adalah suatu set proses yang dikelompokkan hanya satu kelompok yang akan dijalankan pada saat sistem booting. Linux mengenal tujuh runlevel. Runlevel mana yang akan dipilih, tergantung isi file /etc/inittab.

Berikut ini contoh runlevel pada distro Debian dan distro Slackware adalah:
Runlevel Debian sebagai berikut:
1.Runlevel 0 is halt
2.Runlevel 1 is single-user
3.Runlevels 2-5 are multi-user
4.Runlevel 6 is reboot

Sedangkan Runlevel Slackware sebagai berikut:
1.Runlevel 0 is halt
2.Runlevel 1 is single-user
3.Runlevels 2,3,5 are multi-user
4.Runlevel 4 X11
5.Runlevel 6 is reboot

Runlevel 0,1 dan 6 selalu sama pada semua distro sedangkan runlevel 2,3,4 dan 5 berbeda setiap distro. Beberapa distro mengenal runlevel S atau s (single user).

Setiap entry pada file /etc/inittab memeiliki format/sintak sebagai berikut:

:::

Arti dari format/sintak tersebut adalah sebagai berikut:
1.id = empat buah karakter yang menunjukkan identitas suatu entry
2.runlevel = nomor runlevel yang digunakan oleh suatu entry
3.aksi = aksi yang dilakukan oleh suatu entry
4.proses = perintah yang harus dijalankan berdasarkan aksi tertentu

Aksi yang yang dapat digunakan oleh setiap entry adalah sebagai berikut:
1.respawn = proses akan di-restart apabila dihentikan
2.wait = proses akan dijalankan sekali pada saat runlevel dipanggil dan init akan menunggu sampai proses dihentikan
3.once = proses akan dijalankan sekali pada saat suatu runlevel dipanggil
4.boot = proses akan dieksekusi selama sistem booting. Kolom runlevel dibatalkan
5.bootwait = sama dengan boot, tapi init akan menunggu untuk dihentikan
6.off = tidak ada yang dikerjakan
7.ondemand = proses akan dieksekusi pada saat runlevel dipanggil
8.initdefault = menentukan runlevel default, jika tidak disebutkan, init akan meminta suatu runlevel pada konsole, kolom proses diabaikan
9.sysinit = proses akan dieksekusi selama sistem booting (sebelum entry boot atau bootwait), kolom runlevel diabaikan
10.powerwait = proses akan dieksekusi ketika init menerima sinyal SIGPWR. Init akan menunggu proses dijalankan hingga selesai sebelum melanjutkan proses berikutnya
11.powerfail = sama seperti powerwait tapi init tidak menunggu samapai proses selesai dikerjakan
12.powerokwait = proses akan dieksekusi ketika init menerima sinyal SIGPWR yang merujuk pada file “/etc/powerstatus” yang mengandung kata “Ok”, hal ini berarti power sudah berjalan kembali
13.ctrlaltdel = proses akan dieksekusi ketika init menerima sinyal SIGINT (tombol [CTRL]+[ALT]+[DEL] ditekan)
14.kbrequest = proses akan dijalankan ketika init menerima sinyal dari keyboard bahwa kombinasi tombol tertentu telah ditekan

Beberapa entry penting dari isi file /etc/inittab Debian tersebut adalah:
1.Entry id:2:initdefault: runlevel default adalah runlevel 2, berdasarkan daftar yang tersedia bahwa runlevel 2 adalah multi-user tepatnya adalah pada saat booting akan menjalankan modus teks, setelah selesai akan langsung dirubah ke modus grafis pada proses selanjutnya.
2.Entry si::sysinit:/etc/init.d/rcS menunjukkan proses yang akan dieksekusi selama booting. Proses yang akan dieksekusi adalah skrip yang tersimpan pada file /etc/init.d/rcS.
3.Entry ln:n:wait:/etc/init.d/rc n dengan n adalah nomor runlevel, sesuai dengan runlevel yang diberikan, skrip /etc/init.d/rc akan dieksekusi.
4.Entry x:2345:respawn:/sbin/getty 38400 ttyx dengan x adalah window dengan multi-user, yakni pada terminal ke 1-6 adalah teks dan pada terminal 7 dst dalah grafis (XWindow).

Pembahasan ini menggunakan distro Debian, akan tetapi perbedaannya hanya terletak pada penamaan dan letak filenya saja, silahkan anda sesuaikan dengan distro favorite anda.

Hak cipta 2007 A. Samsul Amar
Penggandaan dan distribusi dari seluruh artikel ini diijinkan tanpa dikenakan royalti dalam sembarang media selama keterangan ini tetap dicantumkan.

Get free blog up and running in minutes with Blogsome
Theme designed by Alex King