2015-03-10 15 views
6

Trên máy chủ của tôi, tôi sử dụng tính năng tìm kiếm đàn hồi thường xuyên bị hỏng và kết quả là lỗi 500 đối với người dùng của tôi.cách sử dụng systemD để khởi động lại dịch vụ khi xuống?

Tôi đã hiểu systemD hiện là tham chiếu để quản lý dịch vụ. Đôi vơi tôi vậy la tôt rôi.

Làm cách nào để tôi có thể sử dụng systemD để tự động khởi động lại dịch vụ tìm kiếm đàn hồi khi nó bị hỏng? Tôi đã tìm cách khởi động lại nhưng không tự động, mà không kiểm tra xem nó có bị hỏng không.

Trả lời

8

Nếu bạn đang sử dụng tập tin dịch vụ systemd để bắt đầu dịch vụ của bạn sau đó thêm bên dưới dòng trong tập tin dịch vụ của bạn từ nơi bạn đang nhìn chằm chằm dịch vụ của bạn

[Service] 
Type=simple 
ExecStart=here will be your service executable name 
Restart=always  
RestartSec=0 
  • Restart=

    Cấu hình cho dù dịch vụ có trách nhiệm được khởi động lại khi quá trình dịch vụ thoát, bị giết hoặc hết thời gian chờ. Đưa một trong số không, thành công, trên-thất bại, bất thường, trên cơ quan giám sát, on-abort, hoặc luôn luôn. Nếu thiết lập để không (mặc định)

  • RestartSec=

    Cấu hình thời gian để ngủ trước khi khởi động lại một dịch vụ (như cấu hình với Restart=). Lấy một giá trị đơn vị ít hơn trong vài giây

Hai tùy chọn này phải nằm trong thẻ [Service] trong tệp dịch vụ.

+0

bạn có thể lập phương cách làm việc này khi bắt đầu từ đầu không? Sử dụng apt-get install system-sysv cho tôi một "Package" systemd-sysv 'không có ứng viên cài đặt " –

+0

Bắt đầu từ đầu - không hiểu ... Linux đi kèm với một thành phần khung hệ thống được gọi là systemD. Kernel khởi động lần thứ hai khi systemD này hoạt động, nó khởi động tất cả các dịch vụ khi khởi động một thiết bị. SystemD là một thay thế của System V init. là systemD có sẵn trong nền tảng Linux của bạn. Nếu có thì đây chỉ là một vài thay đổi về dòng trong tệp dịch vụ để nó hoạt động. – PAL

+0

đẹp, tôi có thể làm công việc đó. Tôi cần chuyển từ Linux 14.04 thành 14.10 và sau đó hầu hết các dịch vụ hữu ích đã có tệp đơn vị của họ trong /run/systemd/generator.late –

0

Tôi đã sử dụng monit monit cho việc này. A post at askfedoraproject gợi ý với tôi rằng đây vẫn là một cách hay để theo dõi quy trình và tự động khởi động lại chúng.

Nó cung cấp cấu hình chi tiết tốt của các chức năng giám sát, cách quyết định xem một quá trình có thất bại hay không và các hành động cần thực hiện để khôi phục nó.

0

Systemctl - Hệ thống quản lý và dịch vụ cho các hệ thống Linux

Khái niệm cơ bản về systemd: Các tính năng: 1.Parallel khởi động của dịch vụ hệ thống lúc khởi động 2.On kích hoạt nhu cầu của daemon 3.Dependecy kiểm soát dịch vụ dựa Logic

* limited support at runlevel 
* panic is not support panic command(systemctl no custom commands) 
* systemctl can only communicate with services which are started by systemd 
* sysd stop only running services 
* system services don't inherit any context like HOME or PATH variable 
* All services subject to default timeout of 5 minutes can be configured.These prevents from system to freeze in case of some application stop to respond. 

đơn vị Systemd: dịch vụ, đường dẫn, gắn kết, ảnh chụp, trao đổi, hẹn giờ, thiết bị vv Đơn vị Loại file Extension Mô tả Đơn vị dịch vụ .service Dịch vụ hệ thống. Đơn vị mục tiêu .target Một nhóm đơn vị hệ thống. Đơn vị tự động .automount Điểm tự động của hệ thống tệp. Đơn vị thiết bị .device Tệp thiết bị được hạt nhân nhận dạng. Đơn vị gắn kết .mount Điểm gắn kết hệ thống tệp. Đơn vị đường dẫn .path Tệp hoặc thư mục trong hệ thống tệp. Đơn vị phạm vi .phạm vi Quy trình được tạo bên ngoài. Đơn vị cắt .slice Một nhóm các đơn vị được sắp xếp theo thứ bậc quản lý các quy trình hệ thống. Đơn vị chụp nhanh .snapshot Trạng thái đã lưu của trình quản lý systemd. Đơn vị ổ cắm .socket Ổ cắm truyền thông giữa các quá trình. Hoán đổi đơn vị .swap Thiết bị trao đổi hoặc tệp hoán đổi. Đơn vị hẹn giờ .timer Bộ hẹn giờ hệ thống.

đơn vị tập tin của filelocation:/etc/systemd/hệ thống

tập tin Conf: /etc/systemd/system.conf

Systemd cung cấp rất nhiều functionallity về cơ bản bạn có thể kiểm soát tất cả các resouces của hệ thống Linux mà cung cấp cho bạn nhiều chức năng. Chúng tôi tập trung vào việc quản lý dịch vụ hệ thống trong bài viết này.

để biết thêm chi tiết: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/chap-managing_services_with_systemd

HỆ THỐNG QUẢN LÝ DỊCH VỤ: systemctl Mô tả systemctl bắt đầu name.service Bắt đầu một dịch vụ. systemctl stop name.service Dừng một dịch vụ. systemctl restart name.service Khởi động lại dịch vụ. systemctl try-restart name.service Chỉ khởi động lại dịch vụ nếu nó đang chạy. tải lại systemctl name.service Tải lại cấu hình. systemctl status name.service systemctl is-active name.service Kiểm tra xem dịch vụ có đang chạy hay không. danh sách đơn vị systemctl - dịch vụ kiểu --all Hiển thị trạng thái của tất cả các dịch vụ. systemctl Mô tả systemctl bật tên.service Bật dịch vụ. systemctl tắt tên.service Tắt dịch vụ. systemctl status name.service systemctl được kích hoạt name.service Kiểm tra xem dịch vụ có được bật hay không. systemctl list-unit-files - dịch vụ kiểu Liệt kê tất cả các dịch vụ và kiểm tra nếu chúng được bật. danh sách phụ thuộc systemctl - sau Danh sách dịch vụ được yêu cầu khởi động trước đơn vị được chỉ định. phụ thuộc danh sách systemctl - trước Danh sách dịch vụ được yêu cầu khởi động sau đơn vị được chỉ định.

Các vấn đề liên quan