Skip to content

Fluxbox cho máy cấu hình thấp

by on 25 Tháng Ba, 2008
Fluxbox screenshot

Linux vốn nổi tiếng là “thân thiện” với máy tính, chạy được trên mọi cấu hình. Tuy nhiên với những người dùng bình thường thì không phải lúc nào cũng vậy. Nhiều người vẫn phải “cắn răng” chạy Gnome (Ubuntu) trên những chiếc máy tính “không lấy gì làm mới cho lắm” và nói chung là chúng ì ạch ghê gớm! Chính vì vậy mình quyết định hướng dẫn cách cài đặt và sử dụng Fluxbox, một trình quản lý cửa sổ nhanh – gọn – nhẹ, dễ sử dụng để bạn có thể thay thế cho Gnome (hay KDE).

Trước hết phải nói ngay rằng Fluxbox chỉ là trình quản lý cửa sổ (Windows Manager) chứ không phải môi trường đồ họa như Gnome hay KDE, tức là Fluxbox chỉ cung cấp những tính năng để quản lý cửa sổ (đóng – mở, di chuyển, phóng to – thu nhỏ, workspace,…) chứ không cung cấp những ứng dụng kèm theo để bạn làm việc như quản lý file, mạng, phần cứng, phần mềm… Nói thế không có nghĩa là bạn không thể chạy những chương trình như Nautilus hay GEdit, OpenOffice.org… trên Fluxbox, bạn vẫn chạy những chương trình đó bình thường, chỉ có điểm khác là cửa sổ những chương trình này được quản lý bởi Fluxbox thay vì trình quản lý cửa sổ của Gnome. Và vì Fluxbox gọn nhẹ hơn Gnome rất nhiều (cộng với việc một số thứ của Gnome sẽ được bỏ đi khi dùng Fluxbox) nên chung kết là máy bạn sẽ chạy nhanh hơn.

Còn điều nữa, theo mình được biết thì bạn sẽ không chạy được Compiz với Fluxbox. Nhưng chắc đó cũng không phải là vấn đề vì nếu máy bạn chạy được Compiz thì chắc bạn chả cần đến Fluxbox làm gì😛 !

Hướng dẫn này dùng cho Ubuntu 7.10.


1. Cài đặt Fluxbox

Bạn mở cửa sổ dòng lệnh Terminal ra và thực hiện lệnh sau:

sudo apt-get install fluxbox fluxconf eterm

Sau đó bạn chạy lệnh fluxbox trong cửa sổ dòng lệnh, đừng để ý đến thông báo lỗi, việc này chỉ nhằm mục đích tạo ra thư mục chứa file cấu hình fluxbox cho bạn thôi. Những file cấu hình fluxbox được đặt trong thư mục .fluxbox trong thư mục nhà của bạn (/home/[user_name]/.fluxbox/menu).

2. File cấu hình khởi động ~/.fluxbox/startup:

Trong thư mục .fluxbox bạn sẽ thấy file startup với nội dung tương tự như ở dưới. Những ghi chú quan trọng đã được mình in đậm, nghiêng, bạn có thể dễ dàng làm theo:

# fluxbox startup-script:
#
# Lines starting with a '#' are ignored.
# You can set your favourite wallpaper here if you don't want
# to do it from your style.

# fbsetbg -f ~/pictures/wallpaper.png

# This sets a black background
/usr/local/bin/fbsetroot -solid black

# This shows the fluxbox-splash-screen
# fbsetbg -C /usr/local/share/fluxbox/splash.jpg

# Other examples. Check man xset for details.
# Turn off beeps:
# xset -b
# Increase the keyboard repeat-rate:
# xset r rate 195 35
# Your own fonts-dir:
# xset +fp $HOME/.font
# Your favourite mouse cursor:
# xsetroot -cursor_name right_ptr
# Change your keymap:
# xmodmap ~/.Xmodmap

# Applications you want to run with fluxbox.
# MAKE SURE THAT APPS THAT KEEP RUNNING HAVE AN & AT THE END.#
# unclutter -idle 2 &
# wmnd &
# wmsmixer -w &
# idesk &

# And last but not least we start fluxbox.
# Because it is the last app you have to run it with exec before it.

exec /usr/local/bin/fluxbox

# or if you want to keep a log:
# exec /usr/local/bin/fluxbox -log ~/.fluxbox/log

Thực ra file này trông thì thế nhưng lại cực kì đơn giản, vì tất cả những dòng có dấu # ở đầu cuối đều là dòng chú thích, những chương trình đó sẽ không được chạy. Vì thế nếu thu gọn lại bạn sẽ thấy chỉ có những sau:

/usr/local/bin/fbsetroot -solid black
exec /usr/local/bin/fluxbox

Dòng thứ nhất đặt màu nền cho fluxbox. Để đặt hình nền cho fluxbox bạn cần thêm vào dấu # vào trước dòng này để vô hiệu hóa lệnh fbsetroot. Đồng thời thêm dòng lệnh fbsetbg -f (đường dẫn tới file ảnh nền) như ghi chú trong file: fbsetbg -f ~/pictures/wallpaper.png (~ là viết tắt cho đường dẫn tới thư mục nhà của bạn).

Dòng thứ 2 là dòng khởi động fluxbox thật sự. Chính vì vậy tất cả những câu lệnh đứng sau đều sẽ không được thực hiện. Nếu bạn muốn một số chương trình chạy cùng fluxbox thì bạn thêm dòng lệnh chạy chương trình vào trước dòng này. Tất nhiên không có dấu # ở đầu và phải thêm kí tự & vào cuối. Mình khuyên các bạn thêm vào 2 dòng này:

gnome-settings-daemon &
nm-applet &

Dòng đầu tiên sẽ giúp những chương trình của Gnome chạy trong Fluxbox có giao diện hệt như khi chạy trong Gnome. Dòng thứ 2 khởi động applet Network Manager để giúp bạn quản lý kết nối mạng (biểu tượng mà bạn vẫn ở cạnh đồng hồ trong Gnome panel trong Gnome).

3. Sử dụng Fluxbox

Nếu bây giờ bạn thoát khỏi Gnome (Logout) và đăng nhập lại với tùy chọn session là Fluxbox thì bạn sẽ gặp một chút phiền toái. Đó là bạn không biết nhấn vào đâu để có menu chương trình quen thuộc. Thậm chí bạn không tìm thấy tùy chọn để thoát khỏi Fluxbox! Nếu bạn gặp phải trường hợp đó thì chỉ cần nhấn tổ hợp phím Ctrl + Alt + Backspace (Phím xóa lùi) để thoát trở lại màn hình đăng nhập.

Nguyên nhân là do hiện tại bạn chưa cấu hình menu chương trình cho Fluxbox. File cấu hình menu cho Fluxbox là file menu trong thư mục .fluxbox. Để chỉnh xửa file này bạn có một số cách:

  • Cách nhanh nhất: Trong cửa sổ dòng lệnh chạy lệnh sudo update-menus
    Cách này rất nhanh, nhưng có một bất lợi là mỗi khi bạn cài chương trình gì mới thì thanh menu cũng không được tự động cập nhật. Bạn phải chạy update-menus thủ công.
  • Cho người dùng bình thường: Cài đặt một chương trình nhỏ chuyên thực hiện việc cập nhật marchfluxmenu
    Bạn vào trang http://code.google.com/p/marchfluxmenu/ tải xuống file mfm-1.2-tar.bz và giải nén. Trong thư mục vừa giải nén bạn sẽ thấy file installer, cho chạy chương trình installer (bạn có thể chạy bằng cách gõ lệnh trong terminal) và hoàn tất. Theo hướng dẫn của tác giả chương trình thì bạn nên thêm dòng này vào file .fluxbox/startup để khởi chạy cùng fluxbox (hi vọng bạn biết đặt dòng này vào đúng vị trí như đã đề cập ở phần trên):
    ~/.marchfluxmenu/.mfmdaemon &
  • Cho ai thích tự mầy mò lấy: Bạn chỉnh file cấu hình này thủ công bằng trình soạn thảo văn bản như nano, gedit hay kate, hoặc dùng chương trình fluxmenu (có thể chạy từ cửa sổ dòng lệnh).

Cấu trúc file menu của Fluxbox khá đơn giản, dưới đây là file mẫu:

[begin] (fluxbox) {} <>
[exec] (Web Browser Firefox) {firefox}
[exec] (Terminal) {xterm} <>
[exec] (File manager) {nautilus --no-desktop}
[exec] (Gedit) {gedit}


[separator]
[exec] (GIMP) {gimp}
[exec] (OpenOffice.org Draw) {/usr/bin/oodraw}
[exec] (OpenOffice.org Calc) {/usr/bin/oocalc}
[exec] (OpenOffice.org Impress) {/usr/bin/ooimpress}
[exec] (OpenOffice.org Writer) {/usr/bin/oowriter}

[separator]
[submenu] (All Applications) {} <>
[include] (/etc/X11/fluxbox/fluxbox-menu) {} <>
[end]
[exec] (System monitor) {gnome-system-monitor}

[separator]
[exit] (Logout) {}
[exec] (Restart) {sudo shutdown -r now}
[exec] (Shutdown) {sudo shutdown -P now}
[end]

Bạn có thể thấy trong file trên một số dòng lệnh cớ bản sau:

  • [include] (…) sẽ chèn nội dung một file menu khác vào file menu của bạn.Nếu bạn dùng update-menus thì file menu sẽ được cập nhật ở /etc/X11/fluxbox/fluxbox-menu.
  • [exec] (Tiêu đề của mục chọn) {lệnh chạy chương trình} <đường dẫn tới file biểu tượng chương trình>
  • [submenu] (tiêu đề mục chọn) [end] thêm một mục menu con vào thanh menu
  • [separator] thêm một dải phân cách vào menu
  • [exit] (Logout – tiêu đề có thể thay đổi) thoát khỏi fluxbox và quay lại màn hình đăng nhập

File menu này là file mình đang sử dụng, bạn có thấy menu fluxbox của mình trong ảnh chụp màn hình ở trên.

4. Tắt máy trực tiếp từ Fluxbox

Menu của Fluxbox có một nhược điểm là không hỗ trợ những tính năng như khởi động lại hay tắt máy trực tiếp giống như trong Gnome. Để làm như vậy bạn cần thực hiện thủ thuật sau:

Trước hết thêm 2 mục chọn sau vào menu của Fluxbox (đơn giản cắt dán vào file .fluxbox/menu chỗ trước dòng [end] cuối file):

[exec] (Restart) {sudo shutdown -r now}
[exec] (Shutdown) {sudo shutdown -P now}

Trong cửa sổ dòng lệnh chạy lệnh:

sudo useradd -G users username

(với username là tên tài khoản của bạn, không phải tên bạn nhé🙂 )

Mở file /etc/sudoers để chỉnh sửa với quyền của root (từ cửa sổ dòng lệnh chạy sudo gedit /etc/sudoers &). Thêm 2 dòng sau vào cuối file:

%users ALL=NOPASSWD: /sbin/shutdown -r now
%users ALL=NOPASSWD: /sbin/shutdown -P now

Lưu lại và hoàn tất!

Chú ý: file /etc/sudoers cần được kiểm tra rất cẩn thận trước khi lưu vì nếu file này bị sai sót, sudo sẽ không hoạt động được. Trường hợp bạn “trót dại” thì khởi động lại máy với tùy chọn Rescue (thông thường trong GRUB là mục chọn thứ 2). Chờ đến khi khởi động môi trường dòng lệnh hoàn tất, nhập lệnh nano /etc/sudoers (không cần sudo ở đầu) để phục hồi lại những gì trót làm hỏng. Lưu file và khởi động lại.

5. Theme cho fluxbox

Nếu bạn tạo menu bằng lệnh update-menus thì bạn sẽ tìm thấy mục chọn Styles, bạn chỉ cần click vào tên là giao diện sẽ được tự động thay đổi.

Giao diện cho fluxbox tương đối đơn giản và nếu chịu khó chút bạn có thể có được giao diện của riêng mình. Nếu mở file .fluxbox/init bạn sẽ thấy dòng

session.styleFile: /usr/share/fluxbox/styles/....

Đó chính là dòng cấu hình theme cho fluxbox với đường dẫn đến thư mục chứa file cấu hình giao diện cho fluxbox. Bạn muốn đổi giao diện chỉ cần thay thế đường dẫn tới thư mục chứa giao diện của bạn. Có thể dùng chương trình fluxconf (chạy lệnh fluxconf & từ cửa sổ dòng lệnh) để chỉnh sửa thiết lập này.

Thư mục cho một giao diện thường gồm một file theme.cfg và thư mục pixmaps. Trong thư mục pixmaps chứa những ảnh dùng cho giao diện. File theme.cfg bạn hoàn toàn có thể tự chỉnh sửa để đạt được giao diện như mong muốn. Những thành phần cơ bản của fluxbox như sau:

Những thành phần cơ bản của giao diện fluxboxFile ảnh lấy từ How to style fluxbox. Đây là một bài hướng dẫn khá đơn giản và ngắn gọn nếu bạn thích tự làm giao diện cho mình. File theme.cfg mẫu có thể tải xuống theo từ trang FAQ của Fluxbox (Trang này cũng có một số thông tin khá hữu ích, bạn nên đọc).

Mình thì tải về gói giao diện của người khác làm cho nhanh. Trên customize.org hoặc Freshmeat có khá nhiều giao diện đẹp dành cho Fluxbox. Tải xuống, giải nén và thay đường dẫn trong file init là bạn đã có giao diện ưng ý.

Ví dụ: Mình đang xài giao diện BlackWhite (có chỉnh sửa một chút), giải nén vào thư mục .fluxbox/styles và file .fluxbox/init của mình có dòng session.styleFile: ~/.fluxbox/styles/BlackWhite

Nói đến giao diện lại phải nhắc lại chuyện ảnh nền. Nếu bạn sử dụng theme có sẵn của fluxbox thì nhiều khả năng bạn sẽ không thiết lập được ảnh nền (ảnh xuất hiện rồi biến mất). Nguyên nhân là file Theme có sẵn dòng cấu hình nền màn hình, làm cho ảnh nền của bạn không hiển thị được. Để giải quyết vấn đề này bạn tìm trong file init xem mình đang dùng theme nào và mở file theme.cfg của nó ra (nhiều khả năng phải dùng sudo gedit [đường dẫn tới file] & để mở). Thêm dấu # vào đầu những dòng bắt đầu với blackground để vô hiệu hóa chúng. Lưu file lại là xong.

Chú ý là mình khuyên các bạn dùng gedit hoặc kate để chỉnh sửa file này, mình đã vài lần dùng thử nano và bị hỏng giao diện, không hiểu lỗi do đâu???

Hi vọng các bạn se hài lòng với Fluxbox. Dưới đây là tổng hợp những liên kết hữu ích (rất tiếc là bằng tiếng anh hết):

From → Phần mềm, Ubuntu

11 phản hồi
  1. Hiện tại cũng có distro là http://fluxbuntu.org/

  2. maikhai permalink

    Hi!

    >Thực ra file này trông thì thế nhưng lại cực kì đơn giản, vì tất >cả những dòng có dấu # ở cuối đều là dòng chú thích, những >chương trình đó sẽ không được chạy. Vì thế nếu thu . . .

    . . . có dấu # ở ĐẦU chứ?
    hoặc đơn giản hơn chỉ cần “có dấu #” là đủ nghĩa rồi.

    Thân mến.

  3. Sorry, viết nhầm. Cám ơn bạn đã góp ý!

  4. Nguyễn Đình Trung permalink

    Hồi trước tớ hay dùng OpenBox. Thấy bảo so với FluxBox, OpenBox nặng hơn nhưng giao diện cũng đẹp hơn 1 chút.
    Thích nhất là cái chức năng tùy biến phím tắt trên Desktop của OpenBox hơn hẳn Metacity.

  5. NGOC MINH permalink

    Hic, ko hiểu sao, xong hai lệnh đầu tiên rồi (sudo apt-get install fluxbox fluxconf eterm + fluxbox) mà ko thấy cái fille startup nào trong thư mục .fluxbox T_T

    Can u tell me why?

  6. –> “Sau đó bạn chạy lệnh fluxbox trong cửa sổ dòng lệnh, đừng để ý đến thông báo lỗi, việc này chỉ nhằm mục đích tạo ra thư mục chứa file cấu hình fluxbox cho bạn thôi.”

  7. NGOC MINH permalink

    Thì mình có chạy rồi mà😐

    xong hai lệnh đầu tiên rồi (sudo apt-get install fluxbox fluxconf eterm + fluxbox)

  8. Vậy thì bạn có thể tự tạo file startup với nội dung nhu mình đã post ở trên. Hoặc cũng có thể mình nhớ nhầm, phải chạy startfluxbox chứ không phải fluxbox không. Bản thử xem thế nào.

  9. Ngoc Minh permalink

    Thanks, startfluxbox là được rồi … nhưng giờ ko chạy được cái file /etc/sudoers = quyền root là sao?

    Thử chạy “sudo gedit /etc/sudoers &” nhưng khi gedit hiện lên nó vẫn báo là READ ONLY và ko cho save T_T

  10. Ngoc Minh permalink

    Tạm thời đã cho cái FluxBox hoạt động được. Rất cảm ơn bạn duc.ngtuan. Nhưng bạn cho hỏi thêm chút là làm sao để gỡ bớt một số thứ trong cái menu hiện ra khi click chuột phải vào màn desktop?

    VD mình đã gỡ đám games đi rồi, nhưng menu chuột phải vẫn hiện ra T_T

  11. Ngoc Minh permalink

    Thôi ko cần nữa đâu, mình làm được rồi

    Sorry vì đã hỏi linh tinh😦

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s