คุณสามารถเรียกใช้สคริปต์ที่ปิดตามคำแนะนำที่นี่
โดยพื้นฐานแล้วคุณสามารถวางสคริปต์ไว้/etc/rc6.d/
และทำให้สามารถเรียกใช้งานได้ ข้อเสียเปรียบอย่างหนึ่งของวิธีนี้คือสคริปต์ใด ๆ ในไดเรกทอรีด้านบนจะทำงานในฐานะผู้ใช้รูทซึ่งสามารถเปลี่ยนการอนุญาตของไฟล์และทำให้เกิดปัญหาได้ในภายหลัง อีกทางเลือกหนึ่งคือการปล่อยให้สคริปต์ของคุณในไดเรกทอรีบ้านของคุณและเพิ่มสคริปต์ต่อไปนี้ใน/etc/rc6.d
#!/bin/sh
sudo -u kaustab /home/kaustab/backup_work.sh
exit 0
ในที่สุดคุณควรลบการโทรไปread
เช่นกัน (หรือเพิ่มการหมดเวลา) เนื่องจากมันจะขอให้คุณกดปุ่มก่อนที่จะปิดและปิดกั้นการปิด
วิธีการของ Systemd
วิธีการสคริปต์ rc6.d ด้านบนเป็นวิธี sysv-init ดั้งเดิมสำหรับการเรียกใช้สคริปต์เมื่อปิดระบบ ด้วย Debian / Ubuntu รุ่นใหม่กว่าจะปลอดภัยกว่าหากใช้ไฟล์ systemd unit เพื่อเรียกใช้สคริปต์เมื่อปิดระบบ
วางสคริปต์ต่อไปนี้ใน/etc/systemd/system/backup-work.service
( ซอร์ส ) และรันsudo systemctl daemon-reload
[Unit]
Description=Backup work directory
DefaultDependencies=no
Before=shutdown.target reboot.target halt.target
# This works because it is installed in the target and will be
# executed before the target state is entered
# Also consider kexec.target
[Service]
Type=oneshot
User=kaustab
Group=kaustab
ExecStart=/home/kaustab/backup_work.sh # your path and filename
[Install]
WantedBy=halt.target reboot.target shutdown.target