V. Starting Up and Shutting Down
2. Process scheduling
Thông thường các hệ thống lớn hoặc cần cung cấp dữ liệu thường xuyên hệ thống luôn được chạy 24/24. UNIX đưa ra một số lệnh cho phép thực hiện các process theo thời gian định sẵn.
Lệnh at: Lệnh at được sử dụng để để đặt schedule cho một lệnh thực hiện trong thời gian qui định.
at time date < file
Việc đặt lịch theo khoảng thời gian nào đó tuỳ theo người đặt qui định. Có thể là hh:mm, có thể hh:mm(pm,am). Có một số từ về thời gian dùng làm option là noon, midnight, now, next. Có thể đặt ngày, tháng thực hiện May 10 hoặc day of the week .
at 20:30 < reorg.data at 8:30 pm < reorg/data at 20:30 today < reorg.data at 8:30 pm Friday < reorg.data
at 0900 Monday next week < reorg.data
Dùng lệnh at -l để hiện danh sách các các process được schedule. Ví dụ:
$ at -l
user = tparker job 827362.a at Wed Aug 31 06:00:00 EDT 1995 user = tparker job 829283.a at Wed Aug 31 09:30:00 EDT 1995 Dùng lệnh at –r <job> để bỏ một schedule.
Ví dụ:
at -r 2892732.a
Lệnh cron và crontab: cron là một tiện ích cho phép thực hiện các lệnh tại một thời
điểm chỉ định mà không cần một ai trực tiếp khởi động nó. Hệ thống UNIX tự động load cron như là một daemon khi nó khởi động. Khi hoạt động cron đọc thời gian và công việc mà nó được định thực hiện trong crontab file. Việc thực hiện các tác vụ đặt trong crontab file là luôn luôn được thực hiện nó chỉ ngừng thực hiện khi kết thúc tiện ích cron hoặc khi thay đổi thông tin trong crontab file.
Trên hầu hết các hệ thống việc truy nhập và tạo các schedule chỉ được thực hiện bởi người quản trị hệ thống.
Ngày nay một số hệ điều hành UNIX còn cho phép người sử dụng tự tạo các crontab của riêng họ.
Để tạo crontab file sử dụng lệnh crontab với tham số -l. Nó sẽ tạo ra một crontab file cho phép tạo các tác vụ mong muốn.
$ crontab -l > new_crontab_file $ vi new_crontab_file
[edit the file to update your crontab] $ crontab new_crontab_file
$
Một crontab file được thể hiện dưới khuôn dạng sau:
<minute> <hour> <day-of-month> <month-of-year> <day-of-week> <command> Giá trị chấp nhận của các trường:
minute (0-59) hour (0-23)
day of month (1-31) month of year (1-12)
day of week (0-6, 0 is Sunday) Command (rest of line)
Ví dụ
0 17 1 * 0 date | mail user
Lệnh sẽ được thực hiện vào 5 p.m. vào ngày đầu tháng và 5 p.m. mỗi ngày chủ nhật. Các file cron tab được đặt trong thư mục cron để thực hiện. Thư mục này có thể ở một vị trí nào đó tuỳ loại UNIX thông thường là /usr/spool/cron/ hoặc /var/spool/cron/.