Brien M. Posey
Quản trị mạng - Windows Task Scheduler có từ rất lâu rồi. Công cụ này xuất hiện ít nhất cũng từ thời Windows NT 4.0 và đã giải quyết được nhiều vấn đề trong những năm đã qua. Từ thời đại của Windows NT, Windows Task Scheduler đã tồn tại dưới dạng một công cụ dòng lệnh có tên AT.
AT được sử dụng để chạy các nhiệm vụ ở một thời điểm cụ thể. Mặc dù AT đã thực hiện tốt công việc của nó nhưng nó vẫn yêu cầu quản trị viên phải nhập vào một số các khóa chuyển đổi dòng lệnh phức tạp.
Chính vì sự phức tạp đó nên Microsoft đã giới thiệu một giao diện đồ họa cho công cụ AT (có lẽ được phát hành đầu tiên trong Windows 98 Resource Kit). Công cụ này có tên gọi WinAT, đã đơn giản hóa quá trình xử lý bằng cách sử dụng Windows task scheduler, tuy nhiên có một số lý do mà nó chưa bao giờ đáp ứng được các yêu cầu của các quản trị viên.
Mặc dù vậy nhưng AT vẫn tồn tại trong Windows Vista và Windows Server 2008, Microsoft đã mang Windows Task Schedulers sang tận thế kỷ 21. Lệnh AT không thực sự được thay đổi nhiều nhưng thực tế nếu quan sát màn hình capture được thể hiện trong hình A, bạn sẽ thấy rằng phiên bản Windows Vista của lệnh AT cũng giống như những gì được sử dụng nhiều trong các phiên bản Windows trước đây.
Hình A: Phiên bản Windows Vista của lệnh AT giống như những gì bạn vẫn thấy nhiều trong các phiên bản Windows cũ
Các phiên bản Windows Vista và Windows Server 2008 của Task Scheduler cung cấp nhiều tính năng hơn so với những gì đã được thể hiện trong các phiên bản trước, tuy nhiên các tính năng mới này vẫn chưa được bộc lộ thông qua lệnh AT mà thay vào đó, có một giao diện người dùng mới cung cấp cho bạn sự truy cập vào tất cả các tính năng mới này. Trong Windows Server 2008, bạn có thể truy cập vào Windows Task Scheduler bằng cách mở Server Manager và điều hướng thông qua cây giao diện để vào Server Manager | Configuration | Task Scheduler. Bạn có thể quan sát về diện mạo của giao diện trong hình B.
Hình B: Màn hình Windows Task Scheduler ban đầu hiển thị tất cả các nhiệm vụ đã được hoàn thành trong 24h vừa qua.
Các Trigger
Một trong những khác biệt lớn nhất giữa task scheduler của Windows Server 2008 và Windows Vista là số lượng các trigger có sẵn. Một trigger là một sự kiện để tạo nên hành động đã được lập lịch biểu. Nếu bạn đang sử dụng lệnh AT như một giao diện cho Windows Task Scheduler, thì chỉ có trigger có sẵn đối với bạn là schedule trigger. Cho ví dụ, bạn có thể cấu hình Windows Task Scheduler để thực hiện một hành động tại một thời điểm cụ thể nào đó. Bạn cũng có tùy chọn tạo sự kiện diễn ra có tính chất định kỳ, nhưng đó là các tùy chọn trigger khác.
Nếu bạn sử dụng giao diện đồ họa cho Windows Task Scheduler, bạn sẽ có tùy chọn cho việc tạo các trigger được lập lịch trình, tuy nhiên có rất nhiều tùy chọn có sẵn khác nữa. Một trong số các trigger khác được cung cấp ở đây gồm:
- At Log On
- At Startup
- On Idle
- On an Event
- At Task Creation / Modification
- On Connection to User Session
- On Disconnect from User Session
- On Workstation Lock
- On Workstation Unlock
Như những gì bạn có thể hình dung, các kiểu trigger khác nhau này cho phép bạn rất nhiều khả năng linh hoạt. Cho ví dụ, bạn có thể tạo một nhiệm vụ để tự động chạy một kịch bản khi một sự kiện hệ thống nào đó xuất hiện. Ngược lại bạn có thể tạo một nhiệm vụ để hiển thị một thông báo cảnh báo bảo mật mỗi khi người dùng mở khóa máy tính của họ.
Các Action
Microsoft đã tạo rất nhiều kiểu schedule trigger mới, họ cũng cho phép bạn có nhiều tùy chọn trong quá trình thực hiện hành động nào đó khi một trigger xuất hiện. Nếu đã từng làm việc với AT command, thì bạn sẽ biết rằng trước đây tùy chỉ có tùy chọn của bạn cho việc thực hiện hành động để chạy một lệnh. Lệnh này có thể là một chương trình thực thi, hoặc nó cũng có thể là một file .bat.
Tuy nhiên Windows Task Scheduler GUI trong Windows Server 2008 vẫn cho phép bạn thực thi lệnh khi một trigger xuất hiện, nhưng bạn không chỉ có tùy chọn đó mà còn có thể gửi một email (với một đính kèm mang tính tùy chọn) hoặc hiển thị một thông báo trong một cửa sổ trên máy tính mà trên đó trigger xuất hiện.
Nói theo góc độ kỹ thuật, tất cả các tùy chọn này đều hoàn toàn mang tính khả thi khi sử dụng lệnh AT. Sự khác biệt ở đây là nếu bạn muốn sử dụng lệnh AT để gửi một thông báo email hoặc để hiển thị một thông báo văn bản nào đó thì bạn sẽ phải viết một kịch bản để tạo thông báo, sau đó thiết lập một nhiệm vụ để khởi chạy kịch bản tại thời điểm lập lịch trình. Windows Server 2008 cho phép bạn hoàn toàn thoải mái trong việc tạo kịch bản vì nó cung cấp các công cụ hiển thị các thông báo văn bản email. Tất cả những gì bạn cần phải thực hiện là điền vào trong các trường.
Các điều kiện
Điều thú vị về Windows Server 2008 Task Scheduler là rằng nó còn cho phép bạn có thể kiểm soát các điều kiện trigger nào có hiệu lực. Cho ví dụ, bạn có thể chỉ muốn một nhiệm vụ lập lịch trình để chạy nếu máy tính chạy bằng nguồn AC, bằng không trong trường hợp nó chạy bằng battery. Ngược lại nếu máy tính đang ở trong chế độ ngủ đông (hibernation) thì bạn cần phải quyết đinh xem máy tính có nên thức giấc để thực hiện nhiệm vụ đã được kích hoạt, hoặc muốn máy tính vẫn ở chế độ ngủ.
Nếu Windows đang chạy trên một laptop thì đôi khi kết nối mạng có thể bị đứt (kết nối mạng không dây). Nếu nhiệm vụ đã được kích hoạt phụ thuộc vào mạng thì nó sẽ không có tác dụng khi chạy, chính vì vậy bạn cần làm sao để Windows biết được có hay không nhiệm vụ phụ thuộc vào mạng.
Trên đây là tất cả các ví dụ về các điều kiện có thể ảnh hưởng đến cách một nhiệm vụ có thể chạy. Như những gì bạn có thể thấy trong hình C, Windows cho phép bạn thiết lập trước các điều kiện này, và các điều kiện khác để Windows Task Scheduler biết được điều kiện nào sẽ chạy nhiệm vụ kích hoạt.
Hình C: Windows cung cấp một số các điều kiện mang tính tùy chọn để bạn có thể cấu hình
Các thiết lập
Các thiết lập cũng giống như các điều kiện, tuy nhiên được sử dụng khi một nhiệm vụ kích hoạt đang chạy. Cho ví dụ, một thiết lập cho phép bạn thông báo cho Windows biết những gì cần phải thực hiện nếu nhiệm vụ kích hoạt thất bại, hoặc nếu nó chạy nhưng vượt quá thời gian cho phép. Bạn cũng có thể sử dụng các thiết lập này để áp đặt một nhiệm vụ phải dừng trong các tình huống nào đó hoặc thậm chí còn tự động xóa một nhiệm vụ đã quá hạn. Hãy xem các thiết lập có sẵn đối với bạn trong hình D.
Hình D: Các thiết lập cho phép bạn điều khiển cách một nhiệm vụ tiến hành như thế nào khi nó được bắt đầu
Kết luận
Trong phần này, chúng tôi đã giới thiệu cho các bạn các thành phần cơ bản để “make up” Windows Task Scheduler. Trong phần 2 của loạt bài này, chúng tôi sẽ giới thiệu cho các bạn cách tạo một nhiệm vụ, và một số nhiệm vụ built in.