Điểm:1

Cố gắng bật dịch vụ tùy chỉnh trong Ubuntu 18.04 Trả về tối thiểu "Không thể bật đơn vị: Tệp đơn vị backuptos3.service không tồn tại."

lá cờ es

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/68https://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

# 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.

user535733 avatar
lá cờ cn
Bạn có nhớ chạy `Sudo systemctl daemon-reload` sau khi thêm các tệp .timer và .system không?
LeviRCoding avatar
lá cờ es
Ban đầu tôi sẽ quên làm như vậy nhưng sẽ quay lại làm khi tôi quên. Tôi không nghĩ rằng có vấn đề nếu tôi bỏ lỡ nó ở vòng đầu tiên. Nó dường như thành công khi tôi chạy nó. Sau một thử nghiệm khác. Cùng một kết quả.
Doug Smythies avatar
lá cờ gn
Tôi không quen với các dịch vụ root (sudo run) trong `~/.config/systemd/user`. Vị trí đó có vẻ không chính xác với tôi. Các dịch vụ mà tôi đã viết nằm trong `/etc/systemd/system` và `/etc/systemd/system/multi-user.target.wants`, cái sau là một liên kết đến cái trước.
LeviRCoding avatar
lá cờ es
Tôi đã chuyển sang `/etc/systemd/system` đặt quyền một cách thích hợp sau đó tải lại daemon., cố gắng kích hoạt. Lỗi đối số không hợp lệ.
Điểm:0
lá cờ es

Doug Smythies đã đúng ở trên. (Không thể tìm ra cách cung cấp tín dụng ngoài điều này.) Tôi gặp một số vấn đề như đã lưu ý trong khối ở trên.

Cái trả về lỗi mà tôi đã đăng lần đầu tiên phải thực hiện bằng cách đặt các tệp .service và .timer ở ​​sai vị trí.

Các vấn đề khác liên quan đến quyền. Tôi đã phải kiểm tra tệp .service cho người dùng và thư mục người dùng cũng như sử dụng

Sudo chmod 775 <Tên dịch vụ>

sudo chown ubuntu:ubuntu <Tên dịch vụ>

Tôi cũng phát hiện ra rằng, bằng cách nào đó... tôi đã dán hai lần mã của mình vào tệp .service. (Tôi đoán: đôi khi thao tác nhấp chuột phải của tôi dán vào cả hành động nhấn và nâng của nút chuột.) Nano rõ ràng là hữu ích ở đây.

Cảm ơn vì sự giúp đỡ!

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.