Launchctl sự khác biệt giữa tải và bắt đầu, dỡ và dừng


19

Tôi đã đọc qua trang man launchctl và có một vài câu hỏi về chức năng của nó:

  • Sự khác biệt giữa tải và bắt đầu, dỡ và dừng là gì?
  • Tôi tìm nhãn công việc cho một daemon ở đâu, nó có trong tệp plist không?

Câu trả lời:


9

TL; DR

  • Bạn thường muốn sử dụng launchctl load -wlaunchctl unload -w.
  • startstopthường được dành riêng để thử nghiệm hoặc gỡ lỗi một công việc.

Chi tiết

  • launchctl start <label>: Bắt đầu công việc. Điều này thường được dành riêng để thử nghiệm hoặc gỡ lỗi một công việc cụ thể.
  • launchctl stop <label>: Dừng công việc. Đối diện với sự khởi đầu và có thể công việc sẽ ngay lập tức khởi động lại nếu công việc được cấu hình để duy trì hoạt động.

  • launchctl remove <label>: Loại bỏ công việc khỏi launchd, nhưng không đồng bộ. Nó sẽ không chờ công việc thực sự dừng lại trước khi quay lại, vì vậy không có lỗi xử lý trên cái này.

  • launchctl load <path>: Tải và bắt đầu công việc miễn là công việc không bị "vô hiệu hóa".
  • launchctl unload <path>: Dừng và dỡ công việc. Công việc vẫn sẽ khởi động lại vào lần đăng nhập / khởi động lại tiếp theo.

  • launchctl load -w <path>: Tải và bắt đầu công việc đồng thời đánh dấu công việc là "không bị vô hiệu hóa". Công việc sẽ khởi động lại vào lần đăng nhập / khởi động lại tiếp theo.
  • launchctl unload -w <path>: Dừng và dỡ tải và vô hiệu hóa công việc. Công việc sẽ KHÔNG khởi động lại vào lần đăng nhập / khởi động lại tiếp theo.

Tôi tìm nhãn công việc cho một daemon ở đâu, nó có trong tệp plist không?

Có, nó nằm trong tệp plist và nó thường khớp với tên tệp của tệp plist.


7

Tải và dỡ tải cho launchd tải tập tin cấu hình. Cho dù nó chạy chương trình và trong những điều kiện được xác định bởi tập tin plist. Một công việc hiện không chạy có thể được bắt đầu launchctl start ...và dừng lại với launchctl stop ....

Nhãn cho công việc được xác định bởi khóa nhãn và tên của plist cũng phải là nhãn công việc theo sau là phần mở rộng plist.


6
Làm thế nào để loại bỏ yếu tố này? Cụ thể nó khác với dỡ hàng như thế nào?
chrisortman

@chrisortman xóa giống như dỡ tải ngoại trừ việc nó không đợi công việc dừng trước. Nó chỉ trả về ngay lập tức mà không kiểm tra nếu có lỗi xảy ra.
Ryan McGeary
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.