Chuyển đến nội dung chính
Mô-đun 5 · Bài học 2 trong tổng số 211/11 trong khóa học~15 min
Bài học theo mô-đun (2/2)

Kiểm soát công việc và nhật ký (bg, fg, tail)

Khi sử dụng terminal, bạn có thể muốn chạy một lệnh dài hạn mà không cần khóa shell. Linux hỗ trợ Kiểm soát công việc, cho phép bạn gửi các quy trình xuống nền và chuyển chúng trở lại nền trước. Ngoài ra, bạn sẽ học cách theo dõi nhật ký để kiểm tra những gì đang xảy ra trên hệ thống.


Chạy các lệnh trong nền: & và jobs

Để bắt đầu một lệnh trực tiếp ở chế độ nền (giải phóng quyền điều khiển thiết bị đầu cuối ngay lập tức), hãy thêm ký tự & (dấu và) vào cuối lệnh:

Bash
sleep 1000 &

Lệnh này trả về mã số công việc (ví dụ: [1]) và một PID.

Công việc niêm yết: jobs

Lệnh jobs liệt kê các tiến trình đang hoạt động được liên kết với phiên shell hiện tại đang chạy ở chế độ nền hoặc bị treo:

Bash
jobs

Quá trình di chuyển: fg, bg và Ctrl+Z

Nếu một lệnh đang chạy ở nền trước và chặn thiết bị đầu cuối, bạn có thể:

  1. Nhấn Ctrl + Z để tạm dừng (tạm dừng) quy trình hiện tại.
  2. Sử dụng lệnh bg (nền) để khởi động lại quá trình bị treo trong nền:
    Bash
    bg %1   # Restarts job 1 in the background
  3. Sử dụng lệnh fg (tiền cảnh) để đưa quy trình nền trở lại nền trước:
    Bash
    fg %1   # Brings job 1 to the foreground

Nhật ký giám sát: tail và journalctl

Nhật ký hệ thống và ứng dụng ghi lại các sự kiện quan trọng. Thông thường, bạn cần quan sát các tệp này trong thời gian thực khi chúng được ghi.

Xem phần cuối của tệp: tail

Lệnh tail hiển thị các dòng cuối cùng của tệp (mặc định là 10 dòng):

Bash
tail /var/log/syslog
tail -n 20 /var/log/syslog    # Shows the last 20 lines

Để giám sát tệp trong thời gian thực (ví dụ: để xem thông báo nhật ký được tạo trong khi kiểm tra ứng dụng), hãy sử dụng tùy chọn -f (theo dõi):

Bash
tail -f logs/server.log

Hãy tự mình thử

Bài tập 1: Liệt kê các công việc đang hoạt động

tập thể dục#linux.m5.l2.e1
Nỗ lực: 0Đang tải…

Hiển thị danh sách các công việc hiện tại (các tiến trình nền hoặc bị tạm dừng) trong phiên cuối bằng cách sử dụng lệnh 'jobs'.

Đang tải trình chỉnh sửa…
Hiển thị gợi ý

Chỉ sử dụng lệnh 'công việc'.

Giải pháp khả dụng sau 3 lần thử

Bài tập 2: Đưa công việc lên hàng đầu

tập thể dục#linux.m5.l2.e2
Nỗ lực: 0Đang tải…

Đưa công việc nền hiện đang hoạt động lên nền trước bằng lệnh 'fg'.

Đang tải trình chỉnh sửa…
Hiển thị gợi ý

Sử dụng lệnh 'fg' để đưa công việc trở lại nền trước.

Giải pháp khả dụng sau 3 lần thử

Bài tập 3: Kiểm tra những dòng cuối cùng của nhật ký

tập thể dục#linux.m5.l2.e3
Nỗ lực: 0Đang tải…

Hiển thị các dòng cuối cùng của tệp nhật ký nằm tại 'logs/server.log' bằng lệnh 'tail'.

Đang tải trình chỉnh sửa…
Hiển thị gợi ý

Sử dụng 'tail' theo sau là đường dẫn tệp: 'logs/server.log'.

Giải pháp khả dụng sau 3 lần thử