13/03/2012 19:24:37 PM

Thay đổi Message Of The Day - MOTD trong Ubuntu

(Lượt xem: 1928)

Thông thường, mỗi khi người dùng khởi động ứng dụng Terminal trong Ubuntu thì hệ thống sẽ ngay lập tức hiển thị 1 đoạn tin nhắn, hay còn gọi là Message Of The Day – MOTD. Tuy nhiên, nhiều người sử dụng trong số chúng ta lại không biết rằng phần tin nhắn đó hoàn toàn thay đổi được, các bạn có thể tự soạn thảo nội dung text theo ý muốn, gán thêm một số dạng dữ liệu khác.

Quản Trị Mạng - Thông thường, mỗi khi người dùng khởi động ứng dụng Terminal trong Ubuntu thì hệ thống sẽ ngay lập tức hiển thị 1 đoạn tin nhắn, hay còn gọi là Message Of The Day – MOTD. Tuy nhiên, nhiều người sử dụng trong số chúng ta lại không biết rằng phần tin nhắn đó hoàn toàn thay đổi được, các bạn có thể tự soạn thảo nội dung text theo ý muốn, gán thêm một số dạng dữ liệu khác. Về mặt kỹ thuật, mỗi khi có 1 tài khoản người dùng nào đó đăng nhập vào bên trong hệ thống thì tiến trình pam_motd sẽ chạy 1 đoạn mã trong thư mục /etc/update-motd.d, và sau đó hiển thị bảng thông báo tin nhắn. Trong bài viết dưới đây, chúng tôi sẽ giới thiệu với các bạn một số bước cơ bản để thực hiện việc này.

Tuy nhiên, đoạn tin nhắn này chỉ hiển thị khi người dùng đăng nhập vào Ubuntu ở chế độ Text, chứ không phải Graphic Mode. Chúng ta có thể mở phần Virtual Terminal với shortcut Ctrl + Alt + F1 nếu dùng giao diện đồ họa, sử dụng Ctrl + Alt + F7 để quay trở về Desktop đồ họa như cũ, hay còn gọi là X server. Nhấn Ctrl + Alt + F2 cho tới Ctrl + Alt + F6 để chuyển sang các chế độ Virtual Terminal khác.

Đây là 1 đoạn MOTD chuẩn của Ubuntu với các thông tin có liên quan tới số hiệu phiên bản của hệ điều hành và các số liệu khác được cập nhật qua chức năng Update của Ubuntu:

MOTD mặc định

Mục đích chính của bài thử nghiệm này là gán những đoạn tin nhắn tự tạo của người dùng vào MOTD khi họ đăng nhập vào hệ thống Ubuntu, và về mặt kỹ thuật đoạn MOTD này sẽ được tạo ra bởi các đoạn mã script khi người dùng đăng nhập, do vậy chúng ta không chỉ thay đổi file /etc/motd, mà còn phải thêm thông tin vào file /etc/motd.tail, phần nội dung bên trong file này sẽ được gán vào phía cuối của MOTD khi hệ thống khởi tạo.

Sử dụng 1 chương trình soạn thảo, chỉnh sửa text nào đó như Nano để mở file /etc/motd.tail bằng lệnh sau:

sudo nano /etc/motd.tail

Ở chế độ mặc định thì file này hoàn toàn trống rỗng, chúng ta có thể nhập bất kỳ nội dung nào nếu muốn (tham khảo thêm bài viết về cách tạo ảnh theo mã ASCII tại đây). Khi hoàn tất, nhấn Ctrl + O để lưu thay đổi, sau đó đóng Nano bằng cách nhấn Ctrl + X:

Trong lần đăng nhập tiếp theo sau đó, các bạn sẽ thấy sự khác lạ trong đoạn thông báo hiển thị. Còn nếu muốn kiểm tra sự thay đổi ngay lập tức thì chúng ta chỉ cần thoát ra khỏi Terminal bằng lệnh exit, sau đó mở lại là được:

Tuy nhiên, nếu muốn xóa bỏ 1 đoạn thông tin thì sẽ phải làm thế nào? Không đơn giản chỉ là việc chỉnh sửa 1 file bất kỳ nào đó, vì từng phần của thông báo được tự động tạo ra bởi mã script trong thư mục /etc/update-motd.d. Chúng ta có thể kiểm tra danh sách đầy đủ các file trong thư mục bằng cách gõ lệnh /etc/update-motd.d trong Terminal, sau đó nhấn Tab:

Các đoạn script sẽ được thực thi theo thứ tự, và đó là lí do tại sao những phần thông tin này thường bắt đầu bằng số. Chúng ta có thể đổi lại tên các file script và số để sắp xếp lại thứ tự theo ý muốn. Và để xóa, thay đổi thông tin của script khỏi MOTD, đơn giản chúng ta chỉ cần không cho phép chúng được chạy bằng cách gõ bỏ quyền thực thi qua lệnh chmod -x.

Còn nếu muốn xóa bỏ các đoạn thông tin dạng text trong MOTD, hãy sử dụng cú pháp lệnh dưới đây:

sudo chmod -x /etc/update-motd.d/10-help-text

Và trong lần đăng nhập tiếp theo, họ sẽ không còn thấy các dòng thông tin như vậy nữa:

Bên cạnh đó, chúng ta có thể tự viết script để gán các phần thông tin dynamic theo ý muốn vào MOTD. Ví dụ, thử sử dụng gói weather-util để tạo script và hiển thị thông tin về tình hình thời tiết tới MOTD. Gõ lệnh dưới đây để bắt đầu cài đặt:

sudo apt-get install weather-util

Tiếp theo, chúng ta sẽ cần dùng tới các loại mã International Civil Aviation Organization, có thể được tìm thấy tại đây. Và dưới đây là cách sử dụng weather-util với mã tương ứng:

weather -i CODE

Dùng lệnh sau để tạo script tương ứng với vị trí địa lý và mở bằng Nano:

sudo nano /etc/update-motd.d/98-weather

Sau khi Nano mở, các bạn nhập đoạn mã dưới đây, thay thế CODE với mã local weather tương ứng:

#!/bin/sh
echo
weather -i CODE
echo

Lưu thay đổi và đóng Nano lại:

Tạo khả năng thực thi cho script bằng lệnh:

sudo chmod +x /etc/update-motd.d/98-weather

Và thông tin về thời tiết tương ứng sẽ hiển thị giống như hình dưới đây mỗi khi người dùng đăng nhập vào hệ thống:

Tuy nhiên, MOTD không chỉ hiển thị đầy đủ với tài khoản người dùng đăng nhập trực tiếp, đối với bất kỳ ai sử dụng SSH hoặc Telnet để truy cập từ xa cũng thấy đoạn MOTD đã được chỉnh sửa trên. Chúc các bạn thành công!

  • Mẫu giao diện web thiết kế bởi Topweb
Tài nguyên





Xem tất cả
Tư vấn khách hàng
Điện thoại để được tư vấn tốt nhất
0973668377