Phương pháp tốt nhất là bắt đầu quá trình trong bộ ghép kênh đầu cuối. Ngoài ra, bạn có thể làm cho quá trình không nhận được tín hiệu HUP.
Bộ ghép kênh đầu cuối cung cấp các thiết bị đầu cuối "ảo" chạy độc lập với thiết bị đầu cuối "thực" (thực ra tất cả các thiết bị đầu cuối ngày nay là "ảo" nhưng đó là một chủ đề cho một ngày khác). Thiết bị đầu cuối ảo sẽ tiếp tục chạy ngay cả khi thiết bị đầu cuối thực sự của bạn được đóng bằng phiên ssh của bạn.
Tất cả các quy trình bắt đầu từ thiết bị đầu cuối ảo sẽ tiếp tục chạy với thiết bị ảo đó. Khi bạn kết nối lại với máy chủ, bạn có thể kết nối lại với thiết bị đầu cuối ảo và mọi thứ sẽ như không có gì xảy ra, ngoài thời gian đã qua.
Hai bộ ghép kênh đầu cuối phổ biến là màn hình và tmux .
Màn hình có một đường cong học tập dốc. Dưới đây là một hướng dẫn tốt với các sơ đồ giải thích khái niệm: http://www.ibm.com/developerworks/aix/l Library / au-recu_screen /
Các HUP tín hiệu (hoặc SIGHUP) được gửi bởi nhà ga cho tất cả các tiến trình con của nó khi nhà ga được đóng lại. Hành động chung khi nhận SIGHUP là chấm dứt. Do đó, khi phiên ssh của bạn bị ngắt kết nối, tất cả các quy trình của bạn sẽ chấm dứt. Để tránh điều này, bạn có thể làm cho các quy trình của mình không nhận được SIGHUP.
Hai phương pháp dễ dàng để làm như vậy là nohup
và disown
.
Để biết thêm thông tin về cách thức nohup
và disown
công việc, hãy đọc câu hỏi và câu trả lời này: https://unix.stackexchange.com/questions/3886/difference-b between-nohup-disown- and
Lưu ý: mặc dù các quy trình sẽ tiếp tục chạy nhưng bạn không thể tương tác với chúng nữa vì chúng không còn được gắn vào bất kỳ thiết bị đầu cuối nào. Phương pháp này chủ yếu hữu ích cho các quy trình hàng loạt chạy dài, một khi đã bắt đầu, không còn cần bất kỳ đầu vào nào của người dùng.
screen
cung cấp cho bạn nhiều tùy chọn hơn, nhưng nếu bạn đang sử dụngauthorized_keys
để cho phép mọi người chạy tập lệnh từ xassh
, thìnohup
tùy chọn này là một cách đơn giản để kịch bản bắt đầu các quy trình kéo dài hơnssh
phiên được sử dụng để khởi động chúng .