Serial Console Linux

Di kamar saya ada PC server milik rekan saya yang belum selesai diutak-atik. Sayangnya tidak ada monitor yang bisa dipakai. Biasanya saya mengakses PC server tersebut lewat network dengan koneksi SSH. Oh ya PC server ini berisikan Red Hat Linux Enterprise 5.1. Tanpa monitor saya tidak bisa melihat tampilan yang keluar saat proses booting maupun proses shutdown berlangsung. Iseng saya ingin mencoba menampilkan output-nya melalui port serial. Inginnya console yang biasanya ditampilkan ke monitor saya arahkan ke serial port, mirip-mirip yang biasa dipakai di server-server beneran šŸ˜€ . Mencari tahu di Google saya menemukan referensi yang tepat di sini :

http://www.vanemery.com/Linux/Serial/serial-console.html

Segera saja saya coba mengarahkan console-nya Red Hat ke port serial. Dari serial port PC tadi saya sambungkan dengan notebook menggunakan kabel serial (kali ini saya pakai kabel rollover-nya Cisco), seperti in fotonya :

Langkah-langkah yang harus saya jalankan sesuai tutorial yang ada di web tersebut adalah sebagai berikut :

1. Mengidentifikasi port serial yang ada pada motherboard dengan perintah seperti berikut ini :

[root@aptserver ~]# dmesg | grep tty
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
0000:00:09.0: ttyS1 at I/O 0xc008 (irq = 5) is a 16450
0000:00:09.0: ttyS2 at I/O 0xc010 (irq = 5) is a 8250
0000:00:09.0: ttyS3 at I/O 0xc018 (irq = 5) is a 16450

2. Mengaktifkan port serial supaya bisa dikenali oleh sistem operasi :

[root@aptserver ~]# setserial -g /dev/ttyS0
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4

3. MemodifikasiĀ file /etc/inittab supaya memperbolehkan user untuk login lewat console :

[root@aptserver ~]# cp /etc/inittab /etc/inittab.orig
[root@aptserver ~]# vi /etc/inittab
#tambahkan baris berikut ini di dalam /etc/inittab
s0:2345:respawn:/sbin/agetty -L -f /etc/issueserial 9600 ttyS0 vt100
[root@aptserver ~]# init q
[root@aptserver ~]# pkill agetty

4. Memodifikasi /etc/securetty supaya root bisa login lewat console :

[root@aptserver ~]# echo "ttyS0" >> /etc/securetty

5. Mengatur GRUB supaya menampilkan console tidak lagi ke monitor tapi ke port serial (tambahkan opsi console=ttyS0,9600):

[root@aptserver ~]# cp /boot/grub/grub.conf /boot/grub/grub.conf.orig
[root@aptserver ~]# vi /boot/grub/grub.conf
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.18-53.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-53.el5 ro root=LABEL=/ rhgb quiet acpi=off apm=on apm=power-off console=ttyS0,9600
initrd /boot/initrd-2.6.18-53.el5.img
[root@aptserver ~]#

6. Mematikan aplikasi kudzu supaya tidak memeriksa perubahan default console dari VGA ke port serial :

[root@aptserver ~]# chkconfig kudzu off

7. Reboot PC :

[root@aptserver ~]# shutdown -h now

Kira-kira seperti itu langkah-langkah konfigurasinya. Setelah reboot, PC akan menampilkan console-nya melalui port serial. Untuk mengaksesnya saya bisa menggunakan aplikasi Hyperterminal (kalau notebook saya menggunakan Windows). Dalam hal ini notebook saya berisi Ubuntu, sehingga saya harus memilih aplikasi yang bisa mengakses terminal serial. Yang umum dipakai orang adalah aplikasiĀ  minicom tapi saya menemukan aplikasi lain yang mirip, namanya cu. Aplikasi ini tersedia di kumpulan DVD repositori Ubuntu 8.10, saya tinggal menginstalnya dengan perintah :

tedy@tedy-laptop:~$ sudo apt-get install cu

Untuk menggunakan aplikasiĀ  cu format perintahnya seperti berikut ini :

tedy@tedy-laptop:/media/disk-1$ cu -l (serial_port) -s (baud_rate)

Karena notebook saya tidak memiliki port serial, maka saya menggunakan USB to serial adapter untuk menghubungkan kabel serial dari PC ke notebook. Fotonya seperti berikut ini :

Adapter tersebut dikenali oleh Ubuntu sebagai /dev/ttyUSB0 sehingga perintah yang saya pakai untuk mengakses console Red Hat adalah seperti berikut ini :

tedy@tedy-laptop:/media/disk-1$ cu -l /dev/ttyUSB0 -s 9600
Connected.

Red Hat nash version 5.1.19.6 starting
INIT: /etc/inittab[53]: duplicate ID field "s0"
Welcome to Red Hat Enterprise Linux Server
Press 'I' to enter interactive startup.
Setting clock  (utc): Fri Jan 30 09:29:11 WIT 2009 [  OK  ]
Starting udev: [  OK  ]
Loading default keymap (us): [  OK  ]
Setting hostname aptserver:  [  OK  ]
No devices found
Setting up Logical Volume Management:   /dev/cdrom: open failed: No medium found

Lihat pada contoh di atas saya bisa melihat proses booting yang sedang berlangsung di PC tersebut. Berikut screenshot-nya supaya lebih yakin šŸ˜€ :

Tentang Rdesktop

Sehari-hari sekarang saya bekerja dengan notebook S6410 milik kantor. Notebook ini diisi oleh Ubuntu 8.10 yang cukup bersahabat selama saya pakai untuk bekerja. Di kamar saya juga punya Lenovo Ideapad S9 yang saya pasangi Windows XP. Kadang lelah juga mata saya kalau menggunakan Lenovo karena layarnya yang cuma selebar 9″. Saya akali saja kelelahan mata ini dengan mengakses Windows dari Fujitsu S6410. Setelah mencari info lewat Google saya jadi tahu ada aplikasi di lingkungan Linux yaitu rdesktop. Aplikasi ini sama fungsinya seperti Windows Remote Desktop, yaitu mengakses desktop Windows dari remote computer. Aplikasi rdesktop memungkinkan pengguna Linux untuk mengakses Windows dari mesin Linuxnya.

Lihat screenshot-nya di bawah ini, ini adalah tampilan Windows yang berjalan di Lenovo. Jadi asyik bisa menggunakan Windows yang ada di S9 dengan tampilan layar lebih besar dari ukuran aslinya.

Apliakasi rdesktop ini tersedia bebas di Internet, iseng mencari di kumpulan repository Ubuntu 8.10 ternyata ada di sana. Saya tinggal menginstalnya dari DVD repositori tanpa harus men-download-nya lagi dari Internet. Instalasinya cukup mudah, seperti biasa tinggal jalankan saja perintah apt-get install seperti berikut ini :

tedy@tedy-laptop:~$ sudo apt-get install rdesktop

Untuk mengakses Windows desktop saya cukup menjalankan perintah berikut ini :

tedy@tedy-laptop:~$ rdesktop 192.168.1.13

Cukup mudah, tinggal sebutkan saja alamat IP Windows yang sedang berjalan di Lenovo. Perintah di atas dapat diperlengkapi dengan beberapa opsi menjadi seperti berikut ini :

tedy@tedy-laptop:~$ rdesktop -u "Tedy Tirtawidjaja" -p password -g 1280x700 192.168.1.13

Beberapa opsi yang dapat ditambahkan dalam perintah rdesktop ini adalah :

  • Ā -u : username Windows
  • -p : password Windows
  • -g : besar resolusi layar yang diinginkan
  • -r sound:local : opsi ini dipakai untuk “menarik” suara dari remote ke local computer. Pada kasus saya suara akan tetap keluar di speaker-nya Lenovo. Dengan opsi ini saya bisa memaksa supaya Windows mengeluarkan suaranya lewat Ubuntu di Fujitsu S6410.

Dengan aplikasi ini saya jadi bisa menggunakan Windows & Ubuntu secara bersamaan tanpa harus berpindah-pindah notebook. Oh ya sama halnya dengan Windows Remote Desktop, saat saya mengambil alih desktop Windows dari Ubuntu maka tampilan desktop di layar Lenovo S9 langsung terkunci. Jadi dalam satu waktu hanya ada 1 desktop yang aktif. Sebaliknya saat saya kembali login di Lenovo, maka session rdesktop di Ubuntu langsung berakhir secara otomatis.

Baby’s Expression

Waktu pulang ke Cirebon Imlek lalu, saya sempat mengambil banyak foto keponakan saya yang masih bayi. Masih niat memotret dengan EOS1000D, bagus juga untuk latihan motret. Tidak gampang memotret anak kecil karena dia selalu aktif bergerak, mau tidak mau saya manfaatkan saja fitur Auto kamera DSLR saya, daripada kehilangan momen lucu si bayi. Memotret di dalam ruangan juga sedikit merepotkan, tidak mungkin kalau saya mengambil foto tanpa flash. Tanpa lampu kilat tapi menaikkan ISO sampai 1600 pun tidak banyak membantu. Ya sudah saya serahkan saja urusan settingan kamera pada menu Auto, biar saya bisa konsen mencari momen si bayi. Bayi memang selalu punya banyak ekspresi lucu yang bisa diabadikan. Oh iya bayi dalam foto-foto ini namanya Darrel, umurnya baru 8 bulan (kalo gak salah inget šŸ˜€ )

Belakangan saya baru tahu kalau bapaknya bayi ini tidak senang saya terus-menerus memotret anaknya dengan flash. Katanya dia kuatir mata anaknya bermasalah karena terlalu sering terkena lampu kilat. Ah apa iya ya bahaya memotret bayi dengan sorotan flash? Saya cari di Google tentang masalah ini tapi belum menemukan referensi yang bersifat ilmiah. Rata-rata tulisan di forum hanya seputar rekomendasi dan perkiran-perkiraan, rata-rata mereka menyarankan untuk tidak menggunakan lampu kilat yang mengarah langsung ke mata. Mereka menyarankan untuk memotret dengan lampu kilat eksternal yang bisa diarahkan ke atas, “bouching” kalau tidak salah istilahnya (memanfaatkan cahaya pantulan). Apa daya saya belum punya lampu kilat eksternal. Ada yang tahu soal bahaya lampu kilat pada mata bayi? Tolong dibagi infonya ya kalau ada yang tahu.