Xin lỗi về độ dài:
Tôi đã đăng cùng một bài trên Stack Overflow: https://stackoverflow.com/questions/69671377/attempting-to-enable-a-custom-service-in-ubuntu-18-04-minimal-returns-failed-to
Trên hệ thống này, tôi đã cài đặt AWS CLI2, cùng với các gói hỗ trợ và nhiều gói chung khác nhau như giải nén và quên.
Tôi có một phiên bản AWS chạy Ubuntu 18.04 LTS Minimal (ami-006e7e4c46a45d7d7). Tôi có một tệp .service (backuptos3.service) mà tôi đã tạo và đang chạy trên một số máy chủ CentOS. Nó thực hiện một kịch bản. (Backup_To_S3.sh) Có một tệp .timer đồng hành được cho là kích hoạt tệp .service này. (backuptos3.timer)
Tôi có "Backup_To_S3.sh" trong "/home/users/bin" với 755 quyền (có thể không phải là từ phù hợp). Các tệp "backuptos3.service" và "backuptos3.timer" cũng nằm trong "~/.config/systemd/user" với 755 quyền. Chủ sở hữu ở đây giống như chủ sở hữu của thư mục.
Khi tôi chạy lệnh:
Sudo systemctl kích hoạt backuptos3.service
Tôi gặp lỗi: "Không thể bật đơn vị: Tệp đơn vị backuptos3.service không tồn tại."
Tôi đã không tìm thấy một lời giải thích hợp lý về lý do tại sao và phải làm gì để khắc phục nó. Bất kỳ ý tưởng?
Tôi đã thay thế máy chủ (Rốt cuộc đó là AWS) bằng 18.04 LTS (Không phải tối thiểu) nhưng điều đó không khắc phục được. Tôi đã kiểm tra các ghi chú phát hành (nếu không có cơ hội ...) không có gì.
Điều này dường như không phù hợp: https://stackoverflow.com/questions/53297867/enable-docker-services-in-ubuntu-18-04
Hai cái này có vẻ phù hợp, nhưng tôi không hiểu chuyện gì đang xảy ra: https://github.com/nix-community/lorri/issues/68 và https://github.com/abraunegg/onedrive/issues/250
Tôi cũng thấy cái này: Không thể khởi động gunicorn.service: Không tìm thấy đơn vị gunicorn.service. Ubuntu 18.04. Vấn đề là câu trả lời được đề xuất là nơi vấn đề của tôi bắt đầu.
tôi đã sử dụng https://www.linux.com/training-tutorials/systemd-timers-two-use-cases-0/ để xây dựng các tập tin ban đầu.
Tôi đã bao gồm các tệp .service và .timer bên dưới.
# backuptos3.service
[Đơn vị]
Mô tả= Tải các bản sao lưu lên AWS S3
Tài liệu = ""
[Dịch vụ]
Loại = đơn giản
Người dùng = Ubuntu
ExecStart= /home/ubuntu/bin/Backup_To_S3.sh
Thời gian chờStopSec= 21600 # 6 giờ
[Cài đặt]
WantedBy= multi-user.target
và
# backuptos3.timer
[Đơn vị]
Mô tả=backuptos3
[Hẹn giờ]
Đơn vị=backuptos3.service
OnCalendar=*-*-* 02:30:00
Kiên trì = đúng
[Cài đặt]
WantedBy=basic.target
CẬP NHẬT: Sau một gợi ý từ Doug Smythies, tôi đã tìm kiếm thêm một chút về cách bật dịch vụ người dùng và dịch vụ gốc. Đã tìm thấy một bài viết tràn ngăn xếp (https://stackoverflow.com/questions/66534369/error-failed-to-enable-unit-invalid-argument) đã thảo luận về vấn đề Đối số không hợp lệ. Điều này dẫn đến một bài báo khác (https://stackoverflow.com/questions/48177558/what-does-failed-to-execute-operation-invalid-argument-mean-when-running-syst) có máy phân tích hệ thống sudo systemd-analyze verify yourname.service
Tôi đã chạy cái này và nghĩ ra:
Tệp cấu hình /etc/systemd/system/./backuptos3.service được đánh dấu là có thể thực thi được. Vui lòng xóa các bit quyền thực thi.
Vẫn tiếp tục. backuptos3.service: Dịch vụ có nhiều hơn một
ExecStart= cài đặt, chỉ được phép cho các dịch vụ Type=oneshot.
từ chối. backuptos3.service: Không thể tạo
backuptos3.service/start: Đơn vị backuptos3.service không được tải
đúng: Đối số không hợp lệ. backuptos3.service: Lệnh
/home/centos/bin/PDFS3Uploader.sh không thể thực thi được: Không có tệp như vậy hoặc
thư mục Đã cố xóa hệ thống tệp đĩa và chúng tôi không thể cho phép
điều đó.
Tôi sẽ làm việc thông qua khối này để xem liệu tôi có thể đạt được tiến bộ hay không.