Lệnh last của Linux là một tiện ích hữu ích cung cấp thông tin chi tiết về các lần đăng nhập gần đây nhất vào hệ thống. Bằng cách truy vấn các tệp nhật ký của hệ thống, cụ thể là /var/log/wtmp, tiện ích này sẽ hiển thị danh sách toàn diện các phiên của người dùng, bao gồm tên người dùng, tên thiết bị đầu cuối, địa chỉ IP (nếu có) và thời gian cũng như thời lượng của mỗi phiên. Lệnh này đặc biệt có giá trị đối với quản trị viên hệ thống để theo dõi hoạt động của người dùng, theo dõi các lần đăng nhập và xác định truy cập trái phép. Ngoài ra, last có thể được tùy chỉnh với nhiều tùy chọn khác nhau để lọc kết quả, chẳng hạn như chỉ hiển thị thông tin đăng nhập của một người dùng cụ thể hoặc hiển thị các mục nhập từ một phạm vi ngày cụ thể, biến nó thành một công cụ đa năng để quản lý hệ thống và kiểm tra bảo mật.
Nếu bạn mới làm quen với quản trị hệ thống, bạn có thể cần truy cập hoặc theo dõi thông tin xác thực. Bạn có thể sẽ sử dụng một số công cụ cho mục đích này và một trong số đó là last. Trong hướng dẫn này, chúng tôi sẽ giải thích các chức năng cơ bản của chương trình này bằng một số ví dụ dễ hiểu.
Trước khi đi vào phần giải thích, chúng tôi xin đề cập rằng tất cả các ví dụ ở đây đều đã được thử nghiệm trên hệ thống Ubuntu 24.04, nhưng chúng sẽ hoạt động theo cùng một cách trên bất kỳ bản phân phối Linux nào gần đây.
Đây là cách trang hướng dẫn giải thích về công cụ này:
Sau đây là một số ví dụ theo kiểu Hỏi & Đáp sẽ giúp bạn hiểu rõ hơn về cách thức hoạt động của last.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%22275%22%3E%3C/svg%3E
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%22121%22%3E%3C/svg%3E
Lưu ý: Trong ảnh chụp màn hình, chúng tôi cố tình làm mờ một số phần chứa địa chỉ IP.
Bây giờ, nếu muốn, bạn có thể tùy chỉnh một chút đầu ra này bằng cách di chuyển cột liên quan đến địa chỉ IP sang cực bên phải. Bạn có thể thực hiện việc này bằng tùy chọn dòng lệnh -a.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%22116%22%3E%3C/svg%3E
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%22227%22%3E%3C/svg%3E
Ví dụ:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%2284%22%3E%3C/svg%3E
Vì vậy, bạn có thể thấy đầu ra chỉ chứa 3 dòng.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22525%22%20height=%22550%22%3E%3C/svg%3E
Ví dụ:
last -s yesterday -t today
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%2294%22%3E%3C/svg%3E
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%22445%22%3E%3C/svg%3E
Nếu bạn mới làm quen với quản trị hệ thống, bạn có thể cần truy cập hoặc theo dõi thông tin xác thực. Bạn có thể sẽ sử dụng một số công cụ cho mục đích này và một trong số đó là last. Trong hướng dẫn này, chúng tôi sẽ giải thích các chức năng cơ bản của chương trình này bằng một số ví dụ dễ hiểu.
Trước khi đi vào phần giải thích, chúng tôi xin đề cập rằng tất cả các ví dụ ở đây đều đã được thử nghiệm trên hệ thống Ubuntu 24.04, nhưng chúng sẽ hoạt động theo cùng một cách trên bất kỳ bản phân phối Linux nào gần đây.
Lệnh cuối cùng của Linux
Lệnh last sẽ hiển thị danh sách những người dùng đã đăng nhập gần đây nhất. Sau đây là cú pháp của nó:
Mã:
last [options] [username...] [tty...]
Mã:
last searches back through the /var/log/wtmp file (or the file desig?
nated by the -f option) and displays a list of all users logged in (and
out) since that file was created. One or more usernames and/or ttys
can be given, in which case last will show only the entries matching
those arguments. Names of ttys can be abbreviated, thus last 0 is the
same as last tty0.
When catching a SIGINT signal (generated by the interrupt key, usually
control-C) or a SIGQUIT signal, last will show how far it has searched
through the file; in the case of the SIGINT signal last will then ter?
minate.
The pseudo user reboot logs in each time the system is rebooted. Thus
last reboot will show a log of all the reboots since the log file was
created.
Câu hỏi 1. Làm thế nào để sử dụng lệnh cuối cùng?
Cách sử dụng cơ bản rất dễ. Tất cả những gì bạn phải làm là chạy lệnh 'cuối cùng' mà không có bất kỳ tùy chọn nào:
Mã:
last
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%22275%22%3E%3C/svg%3E
Câu 2. Làm thế nào để tùy chỉnh đầu ra trong trường hợp đăng nhập không phải cục bộ?
Theo mặc định, trong trường hợp các plugin không phải cục bộ, lệnh cuối cùng hiển thị đầu ra theo cách sau:data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%22121%22%3E%3C/svg%3E
Lưu ý: Trong ảnh chụp màn hình, chúng tôi cố tình làm mờ một số phần chứa địa chỉ IP.
Bây giờ, nếu muốn, bạn có thể tùy chỉnh một chút đầu ra này bằng cách di chuyển cột liên quan đến địa chỉ IP sang cực bên phải. Bạn có thể thực hiện việc này bằng tùy chọn dòng lệnh -a.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%22116%22%3E%3C/svg%3E
Câu hỏi 3. Làm thế nào để thực hiện lệnh đọc cuối cùng là một tệp khác?
Như đã đề cập ở phần đầu của hướng dẫn, lệnh cuối cùng sẽ đọc tệp /var/log/wtmp để chuẩn bị đầu ra của tệp đó. Tuy nhiên, nếu muốn, bạn có thể thực hiện lệnh để công cụ đọc một tệp hoàn toàn khác. Bạn có thể thực hiện việc này bằng tùy chọn dòng lệnh -f. Tất nhiên, bạn sẽ phải truyền tên tệp mới (cùng với đường dẫn của tệp) làm đầu vào cho tùy chọn này.
Mã:
last -f [new-file-path-and-name]
Câu 4. Làm thế nào để tạo thông tin ngày và giờ in cuối cùng đầy đủ?
Nếu bạn muốn last tạo thông tin ngày và giờ đầy đủ trong đầu ra, hãy sử dụng tùy chọn dòng lệnh -F.
Mã:
last -F
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%22227%22%3E%3C/svg%3E
Câu hỏi 5. Làm thế nào để chỉ hiển thị một số dòng cụ thể?
Nếu bạn muốn tùy chỉnh số dòng mà lệnh cuối cùng hiển thị trong đầu ra, bạn có thể thực hiện điều đó bằng cách sử dụng tùy chọn dòng lệnh -n. Tất nhiên, bạn sẽ phải truyền một số vào tùy chọn này làm dữ liệu đầu vào.Ví dụ:
Mã:
last -n 3
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22550%22%20height=%2284%22%3E%3C/svg%3E
Vì vậy, bạn có thể thấy đầu ra chỉ chứa 3 dòng.
Câu hỏi 6. Làm thế nào để last ẩn trường hostname trong đầu ra?
Cột thứ ba trong đầu ra của last là thông tin tên máy chủ. Tuy nhiên, vì lý do nào đó, nếu bạn muốn công cụ này ẩn thông tin này, hãy sử dụng tùy chọn dòng lệnh -R.
Mã:
last -R
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22525%22%20height=%22550%22%3E%3C/svg%3E
Câu hỏi 7. Làm thế nào để tạo thông tin hiển thị cuối cùng cho một khoảng thời gian cụ thể?
Giả sử bạn muốn last chỉ hiển thị đầu ra dựa trên thời gian - chẳng hạn, chỉ thông tin từ hôm qua và hôm nay - thì bạn có thể sử dụng các tùy chọn dòng lệnh -s và -t.Ví dụ:
last -s yesterday -t today
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%2294%22%3E%3C/svg%3E
Mã:
Please note the options that take the time argument understand the following formats:
YYYYMMDDhhmmss
YYYY-MM-DD hh:mm:ss
YYYY-MM-DD hh:mm (seconds will be set to 00)
YYYY-MM-DD (time will be set to 00:00:00)
hh:mm:ss (date will be set to today)
hh:mm (date will be set to today, seconds to 00)
now
yesterday (time is set to 00:00:00)
today (time is set to 00:00:00)
tomorrow (time is set to 00:00:00)
+5min
-5days
Câu hỏi 8. Làm thế nào để hiển thị những thông tin cuối cùng như thay đổi mức chạy?
Để hiển thị thông tin như thay đổi mức chạy và mục tắt hệ thống, hãy sử dụng tùy chọn dòng lệnh -x.
Mã:
last -x
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22500%22%20height=%22445%22%3E%3C/svg%3E