Điểm:3

Cách bắt đầu tập lệnh của riêng tôi ở CUỐI quá trình khởi động

lá cờ ch

Tôi đang cố chạy tập lệnh python của riêng mình khi khởi động. Hay cụ thể hơn là ở CUỐI của trình tự khởi động Mã python không

a) ghi vào màn hình LCD I2C

b) thông báo qua âm thanh rằng nó 'Sẵn sàng' Khi được thử nghiệm trong một phiên bình thường, tất cả đều hoạt động.

Tôi đã thử và thành công trong việc tạo dịch vụ systemd cho việc này. Vấn đề là nó chạy quá sớm - màn hình được ghi vào nhưng âm thanh không phát. Tôi đoán là điều này sẽ cần một chỉ thị 'Sau' trong quá trình thiết lập dịch vụ nhưng tôi không biết phải lên lịch cho 'Sau' như thế nào
Yêu cầu systemd cung cấp thông tin mang lại danh sách 258 hoặc 360 thứ mà nó đang chăm sóc - thực sự không giúp được gì. Tôi đã thử thêm After=sound.target nhưng không được Vì vậy, có một thứ chung chung 'khi-bạn-đã-làm-xong-tất-cả-thứ-của-bạn' mà tôi có thể sử dụng để kích hoạt nhu cầu 'người dùng' của mình sau tất cả các nhu cầu của 'hệ thống' không?

[Đơn vị]
Sau = sound.mục tiêu
Mô tả=Thực hiện điều này khi khởi động

[Dịch vụ]
Loại = đơn giản
ExecStart=/usr/bin/python3 /home/jc/jcCode/at_start_pyscript.py

[Cài đặt]
WantedBy=multi-user.target

Cảm ơn
JC 
raj avatar
lá cờ cn
raj
Hãy thử bắt đầu tập lệnh của bạn từ cron bằng cách sử dụng thông số thời gian `@reboot`.
Doug Smythies avatar
lá cờ gn
Hãy thử thay đổi `Sau=sound.target` thành `Sau=đồ họa.mục tiêu` hoặc `Sau=mặc định.mục tiêu`. Âm thanh dường như không có bất kỳ điều kiện tiên quyết nào, nhưng hai điều kiện còn lại thì có (và thực tế là giống nhau).
jc508 avatar
lá cờ ch
Doug - Tôi nghĩ rằng tôi đã vấp phải một vấn đề quan trọng hơn cần được giải quyết trước khi tôi thử các đề xuất của bạn. Thiết bị đầu ra âm thanh đang được đặt lại thành 'Đầu ra tương tự' trên mỗi lần khởi động. Vì vậy, nó có thể đang phát âm thanh cho cái xô lớn trên bầu trời. BTW làm thế nào bạn xác định các điều kiện tiên quyết? Nó sẽ tiết lộ một danh sách cây của tất cả mọi thứ?
Doug Smythies avatar
lá cờ gn
Tôi chỉ nhìn xung quanh và đoán. Không phải là rất kỹ thuật như thế nào.
jc508 avatar
lá cờ ch
@raj Tôi đã thử điều 'khởi động lại' và lần đầu tiên nó hoạt động. Dễ dàng hơn nhiều so với tất cả những thứ khác xung quanh. Cảm ơn
raj avatar
lá cờ cn
raj
@ jc508 vì vậy tôi đặt nó làm câu trả lời.
Điểm:1
lá cờ cn
raj

Hãy thử bắt đầu tập lệnh của bạn từ cron bằng cách sử dụng @khởi động lại đặc tả thời gian. Ví dụ tạo một tệp /etc/cron.d/myscript với các nội dung sau:

@reboot root /usr/bin/python3 /home/jc/jcCode/at_start_pyscript.py

Đă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.