ความคิดเห็นทั่วไป: แทนที่จะใช้ ซูโด
ใน ผู้ใช้
crontab ให้ลองใส่คำสั่งเหล่านี้ในไฟล์ ราก
crontab เพื่อให้รันได้โดยไม่ต้องใช้ sudo
สำหรับ crontab 3 บรรทัดของคุณ:
@เที่ยงคืน sudo apt-get update && sleep 60 && apt-get upgrade -y
มันเป็นไปได้อย่างสมบูรณ์ที่จะทำ apt-รับการปรับปรุง
และ apt-get อัพเกรด -y
ทางนี้. (ไม่ได้มีไว้สำหรับเซิร์ฟเวอร์ที่ใช้งานจริง และอยู่ภายใต้เงื่อนไขที่คุณเข้าใจความหมายของการอัปเกรดแบบอัตโนมัติ)
00 02 * * 1,3,5 ปิด sudo -r
ฉันไม่คิดว่าจำเป็นต้องรีบูต 3 ครั้งต่อสัปดาห์ ตัวฉันเองใช้สคริปต์รีบูตอย่างง่ายนี้: (เรียกว่า auto-reboot.sh
)
#!/bin/bash
[[ -f /var/run/reboot-required.pkgs ]] && รีบูต
ดังนั้นฉันจึงรันสคริปต์นี้ด้วย cron ทุกสัปดาห์ หลังจากอัปเกรดและล้างสคริปต์แล้ว จะรีบูตเฉพาะเมื่อจำเป็นต้องรีบูตเครื่อง (หาก /var/run/reboot-required.pkgs
มีอยู่). (อีกครั้ง สิ่งนี้ไม่ได้มีไว้สำหรับเซิร์ฟเวอร์ที่ใช้งานจริง)
@reboot sleep 60 && sudo netplan ใช้ && sleep 15 && sudo omd เริ่มต้นเว็บไซต์
ไม่เข้าใจทำไมต้องวิ่ง สมัครเน็ตแพลน
เมื่อรีบูต
นอกจากนี้ วิธีที่เชื่อถือได้มากกว่าในการเริ่มบริการที่ขึ้นอยู่กับบริการหรือเงื่อนไขอื่น (เช่น เครือข่าย) คือการสร้าง systemd .บริการ
ในการทำงาน มีแบบฝึกหัดมากมายสำหรับสิ่งนี้ (1, 2) ที่อยากแนะนำให้คุณลองดู