Lập lịch khởi động lại trên máy chủ Ubuntu được đặt ở xa


17

Tôi làm việc trên một máy chủ Ubuntu ở nơi tôi không thường đến. Tôi sử dụng ssh trên openvpn để truy cập nó. Máy có nhiều giao diện có dây, nhiều tuyến tĩnh và nhiều cổng mặc định tới mạng WAN. Tôi thường xuyên thay đổi địa chỉ giao diện và tuyến đường. Hầu hết các thay đổi tôi thực hiện tạm thời - khởi động lại sẽ đặt lại các thử nghiệm tôi đã thực hiện. Trong một số trường hợp, một số sửa đổi đã bị lỗi và máy đã ngoại tuyến. Trong những trường hợp như vậy, tôi đã phải gọi cho ai đó tại nơi đặt máy chủ để gửi máy vào khởi động lại.

Bây giờ tôi muốn lên lịch khởi động lại - giả sử sau 2 giờ máy sẽ chuyển sang chu kỳ khởi động lại. Và trong hai giờ đó tôi có thể làm bất cứ thí nghiệm tạm thời nào tôi muốn. Nếu tất cả các thay đổi tạm thời thành công thì tôi sẽ có thể ngăn việc khởi động lại "afer 2 giờ" xảy ra. Vì vậy, những gì tôi muốn là:

  1. Làm thế nào để bảo máy chủ khởi động lại sau một thời gian xác nhận?
  2. Nếu tôi quyết định rằng máy không nên khởi động lại, tôi sẽ có thể hủy nó.

Câu trả lời:


14

Trên loại thiết bị đầu cuối shutdown -r 10 Waiting 10 minutes before the restart&sẽ làm cho máy chủ khởi động lại sau 10 phút, phát một thông báo giải thích rằng và nhấn control + c sẽ làm gián đoạn yêu cầu khởi động lại.

Trên loại thiết bị đầu cuối shutdown -r 18:00 Rebooting at 18:00 hours&sẽ làm cho máy chủ khởi động lại vào lúc 18:00 giờ, sẽ phát một thông báo giải thích điều đó và có thể bị gián đoạn với control + c.

Bạn cũng có thể làm gián đoạn mọi yêu cầu tắt / khởi động lại trên thiết bị đầu cuối "làm việc" của mình với shutdown -a.


2
Đây là một chút vấn đề vì nó tương tác và chặn lớp vỏ bạn đang chạy. Tôi không chắc liệu điều này có thể dự đoán được qua SSH hay không nếu phiên giảm.
Alain O'Dea

Tôi không thể tìm thấy bất kỳ sự kết hợp nào nohupsudođiều đó sẽ làm cho công việc này hoạt động nếu chạy từ phiên ssh bình thường như một người dùng nhóm quản trị bình thường.
HDave

Điều này có thể được chạy kết hợp với Màn hình để cho phép lệnh được áp dụng và phiên ssh bị hủy không?
Andy Davies

30

Bạn cũng có thể sử dụng atđể lên lịch khởi động lại. Ví dụ sudo at 22:00để chạy lệnh lúc 22:00 với quyền root. Sau đó nhập lệnh bạn muốn chạy: /sbin/shutdown -r nowvà kết thúc bằng ctrl-d. Nếu bạn quyết định không chạy lệnh này, hãy chạy sudo atrm 1để xóa lệnh đầu tiên trong athàng đợi. Với sudo atqbạn có thể thấy hàng đợi.


Giải pháp này là hoàn hảo!
Sukima

5
Điều này nên được đánh dấu là câu trả lời chính xác! Họ atcác lệnh là điều mà mọi quản trị viên máy chủ nên biết.
HDave

2
trong trường hợp bạn chưa quen at, trước tiên hãy thực hiện sudo at 22:00. Điều này đưa bạn vào một loại vỏ. Sau đó, bạn nhập lệnh, và ctrl-dđể thoát. Xem thêm hỗn hợp.com / ubfox / từ
Tim Richardson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.