Tạo phím nóng tắt máy tính trong Ubuntu

Quản Trị Mạng - Trong bài viết hướng dẫn dưới đây, chúng tôi sẽ trình bày những bước cơ bản để tạo phím chức năng tắt máy tính trong Ubuntu. Cụ thể, tại đây chúng ta sẽ sử dụng ngôn ngữ lập trình Python để đảm bảo tính ổn định và hiệu quả của quá trình này.

Về mặt kỹ thuật, quá trình tắt máy trong Ubuntu đều phải dựa trên câu lệnh xset:

xset dpms force off

Từ trước đến giờ, đã có khá nhiều cách bàn về vấn đề này, nhưng cho tới phiên bản Ubuntu Karmic (9.10) thì đã bị tạm dừng vì một số nguyên nhân. Nguyên nhân chính là do sự không tương thích của cấu trúc lệnh trên so với hệ điều hành, đã gây ra hiện tượng tự khởi động lại sau vài phút. Thật may mắn rằng thành viên nxmehta trong diễn đàn Ubuntu đã tìm ra được phương án tối ưu các đoạn mã Python, và chức năng đã trở lại hoạt động bình thường. Sau nhiều lần thử nghiệm, quá trình nãy đã thực sự ổn định trên các nền tảng khác như Karmic hoặc Natty.

Trước tiên, chúng ta sẽ phải cần đến yếu tố hỗ trợ. Mở Terminal và gõ lệnh sau:

sudo apt-get install python python-xlib

Quá trình trên sẽ tiến hành cài đặt gói python và python-xlib (nếu chưa có sẵn trong hệ thống). Tiếp theo, các bạn mở 1 chương trình soạn thảo hoặc chỉnh sửa Text nào đó (ví dụ như gedit) và copy toàn bộ mã sau:

#!/usr/bin/python

import time
import subprocess
from Xlib import X
from Xlib.display import Display

display = Display(':0')
root = display.screen().root
root.grab_pointer(True,

X.ButtonPressMask | X.ButtonReleaseMask | X.PointerMotionMask,
X.GrabModeAsync, X.GrabModeAsync, 0, 0, X.CurrentTime)

root.grab_keyboard(True,

X.GrabModeAsync, X.GrabModeAsync, X.CurrentTime)

subprocess.call('xset dpms force off'.split())
p = subprocess.Popen('gnome-screensaver-command -i'.split())
time.sleep(1)

while True:

print display.next_event()
p.terminate()
break

Lưu file này lại. Trong bài thử nghiệm này, chúng tôi lưu tại đường dẫn ~/bin/screen_off.sh. Sau đó, nhấn chuột phải và chọn Properties:

Tại thẻ Permissions, đánh dấu vào ô Allow executing file as program. Sau đó nhấn Close. Việc tiếp theo là gán phím tắt cho chức năng này, tại đây chúng tôi sẽ gán với phím Caps Lock, do vậy phải tắt bỏ chức năng sẵn có của phím này trước. Các bạn mở Keyboard > Layouts > Options:

Chọn ô Caps Lock is disabled bên dưới mục Caps Lock key behavior

Sau đó, mở mục điều khiển chính của Keyboard Shortcuts:

Nhấn nút Add, đặt tên cho nút chức năng này (tại đây là Turn Off Monitor), đường dẫn tới file thực thi đặt tại ô Command và nhấn Apply. Sau khi gỡ bỏ chức năng mặc định của phím Caps Lock thì tại bước này, các bạn sẽ nhìn thấy hệ thống sắp xếp nút này thành VoidSymbol. Và từ đây, mỗi khi bạn muốn tắt máy thì chỉ cần sử dụng nút lệnh này, thay vì chọn menu Power > Shutdown như trước. Chúc các bạn thành công!

Thứ Năm, 05/05/2011 08:57
31 👨 3.563
0 Bình luận
Sắp xếp theo