Câu trả lời này áp dụng cho các phiên bản Ubuntu có Upstart (<= 14.10). Sử dụng một cách tiếp cận khác cho các phiên bản có Systemd (> = 15.04).
Có vẻ như bạn đang tìm kiếm một chức năng đã được cung cấp trong Ubuntu với Upstart . Các khổ respawn
thơ trong cấu hình sẽ làm chính xác những gì bạn cần. Tôi sẽ đề nghị chống lại việc sử dụng một cách ít tiêu chuẩn hơn để đối phó với điều này.
Không có thêm thông tin chi tiết về quy trình bạn đang cố gắng quản lý với nó, thật khó để nói cấu hình sẽ như thế nào. Nó phụ thuộc vào việc nó rèn và đặt chính nó vào nền chẳng hạn. Tài liệu Upstart trên khổ respawn
thơ sẽ cung cấp cho bạn thêm thông tin.
Thật không may, vẫn chưa thể chạy Công việc người dùng đúng cách: không thể khởi động để chạy công việc người dùng
Thí dụ
Giả sử chúng ta muốn duy trì ứng dụng Máy tính chạy, ngay cả khi ứng dụng bị giết bằng lửa (tín hiệu 9).
Tạo một tập tin cấu hình trong /etc/init/calculator.conf
(dựa trên bài viết này ):
#!upstart
description "Calculator"
# Start job via the daemon control script. Replace "gert" with your username.
exec su -l gert -c 'export DISPLAY=:0; /usr/bin/gnome-calculator'
# Restart the process if it dies with a signal
# or exit code not given by the 'normal exit' stanza.
respawn
# Give up if restart occurs 10 times in 90 seconds.
respawn limit 10 90
Bắt đầu nó bằng cách chạy
sudo start calculator
Nó mở trên màn hình hiện tại của bạn ( :0
) và tận hưởng sự tuyệt vời bằng cách thấy nó khởi động lại sau khi đóng nó.
Xác định ID tiến trình, ví dụ bằng cách thực hiện ps aux | grep calculator
:
gert 13695 0.2 0.4 349744 16460 ? Sl 13:38 0:00 /usr/bin/gnome-calculator
Giết nó bằng lửa.
sudo kill -9 13695
Xem nó xuất hiện trở lại:
gert 16059 4.6 0.4 349736 16448 ? Sl 13:40 0:00 /usr/bin/gnome-calculator
Lưu ý rằng điều này sẽ thanh lịch hơn với các kế hoạch cho các gói Ubuntu 13.04 với sự hỗ trợ Công việc Người dùng phù hợp.