Home > Hack, Tips n Trick, Ubuntu > Bermain-main dengan XSession

Bermain-main dengan XSession

Beberapa waktu lalu saya bereksperimen dengan yang namanya X Session. Karena beberapa kali mencoba Window Manager selain Gnome, saya menjadi belajar proses yang terjadi saat seorang user login melalui X login manager, macam GDM, KDM, dsb. Nah, kembali ke topik utama, saat kita login, maka XServer akan menjalankan sebuah script kecil yang disebut dengan xsession, ada di /usr/share/xsession.

Lalu terbersit ide, kenapa tidak saya modifikasi xsession sehingga saya bisa langsung menjalankan VirtualBox? Atau langsung saja saya jalankan ssh ke server? Atau RDesktop ke server Windows? Setelah googling, ternyata ada juga yang sama pikiran dengan saya, bedanya dia memodifikasi xsession untuk VirtualBox.
Ok, langsung saja ke caranya. Paling mudah adalah menggunakan xsession yang sudah jadi. Di Ubuntu (di distro lain saya kurang tahu), xsession disimpan di /usr/share/xsession/ dengan file berakhiran *.desktop. Anda cukup copykan dan kita hanya perlu mengubah saja parameternya. Untuk langkah-langkah dibawah, saya lebih suka menggunakan terminal, tapi kalau anda mau menggunakan GUI, ketik ini dulu di terminal: sudo nautilus.

1. Copy-kan salah satu file *.desktop yang ada di /usr/share/xsession.

Misal, saya mengcopy file xterm.desktop sebagai dasar untuk xsession saya, karena menggunakan virtualbox saya akan namakan sesinya adalah virtualbox. Perintah di terminal (pastikan anda sudah ada di folder /usr/share/xsession): cp xterm.desktop virtualbox.desktop

Isi file xterm.desktop adalah sebagai berikut:
[Desktop Entry]
Encoding=UTF-8
Name=xterm
Comment=Failsafe session with only xterm
Exec=xterm
TryExec=xterm
Icon=
Type=Application
X-Ubuntu-Gettext-Domain=gdm

2. Bagian yang perlu anda ubah adalah: Name, Comment, Exec, TryExec. Anda bisa mengubahnya dengan nano atau gedit.
3. Isikan Name dengan nama session yang akan ditampilkan oleh Login Manager, dalam hal ini saya berikan nama “VirtualBox”
4. Beri comment dengan komentar tentang apa yang akan dilakukan xsession anda, misal “Running VirtualBox Manager”
5. Exec dan TryExec pada dasarnya sama, tapi bagian ini hanya bisa melakukan sebuah perintah TANPA PARAMETER.

Jadi karena kita hanya akan menjalankan VirtualBox Manager, maka bagian itu saya isikan dengan “virtualbox”. Hasil jadi file virtualbox.desktop saya adalah sebagai berikut:

[Desktop Entry]
Encoding=UTF-8
Name=VirtualBox
Comment=Running VirtualBox Manager
Exec=virtualbox
TryExec=virtualbox
Icon=
Type=Application
X-Ubuntu-Gettext-Domain=gdm

Xsession tidak bisa menjalankan perintah dengan parameter, jadi bila anda memerlukan perintah dengan parameter, anda harus membuat sebuah script sederhana yang akan dijalankan oleh xsession. Contohnya, saya akan membuat “RDesktop Session”, yaitu xsession yang akan melakukan login dengan RDesktop ke server Windows (ada di alamat ip 192.168.1.69). Isi file xsession (saya beri nama rdesktop.desktop) adalah sebagai berikut:

[Desktop Entry]
Encoding=UTF-8
Name=RDesktop
Comment=RDesktop to 192.168.1.69
Exec=/usr/bin/startrdesktop.sh
TryExec=/usr/bin/startrdesktop.sh
Icon=
Type=Application
X-Ubuntu-Gettext-Domain=gdm

Dari perintah diatas, saya mengarahkan xsession ke script startrdesktop.sh yang ada di /usr/bin/
isi script /usr/bin/startrdesktop.sh adalah sebagai berikut:

#!/bin/sh
rdesktop 192.168.1.69

Nah, bagaimana bila saya memerlukan xsession untuk menjalankan VirtualMachine tertentu? Misalnya pada saat saya login, saya akan langsung dibawa ke VirtualMachine bernama “WinXP” (sesuaikan dengan nama VM yang ada di tempat anda). Dengan tidak menjalankan Desktop Manager, artinya saya akan mempunyai RAM yang lebih banyak untuk Virtual Machine saya. Sama seperti cara diatas, hanya saja ada sedikit perubahan, antara lain:

1. Isi file xsession (saya beri nama winxp.desktop) adalah sebagai berikut:

[Desktop Entry]
Encoding=UTF-8
Name=Windows XP VM
Comment=Start Windows XP Virtual Machine
Exec=/usr/bin/startwinxp.sh
TryExec=/usr/bin/startwinxp.sh
Icon=
Type=Application
X-Ubuntu-Gettext-Domain=gdm

2. Isi file script /usr/bin/startwinxp.sh:

#!/bin/sh
VBoxSDL --startvm --fullscreen "WinXP"

Kesimpulan dari artikel diatas, dengan menggunakan Linux sebenarnya ada banyak kemudahan yang bisa anda dapatkan. Misal, anda lebih membutuhkan thinclient, anda tidak perlu melakukan instalasi full desktop, tapi cukup menggunakan CD Ubuntu Server dan instalasi paket tambahan GDM (bisa ditambah fluxbox dan pcmanfm bila perlu)

  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: