สร้างไฟล์ภายใน/lib/systemd/system-sleep/
ชื่อเช่นlightdm
::
sudo touch /lib/systemd/system-sleep/lightdm
ทำให้ไฟล์นี้ปฏิบัติการได้:
sudo chmod +x /lib/systemd/system-sleep/lightdm
ทุกครั้งที่คุณ "หยุด" หรือ "ดำเนินต่อ" Ubuntu ของคุณสคริปต์นี้จะทำงาน
เปิดโดยใช้โปรแกรมแก้ไขข้อความที่คุณต้องการเช่น: sudo nano /lib/systemd/system-sleep/lightdm
และวางบรรทัดนี้ลงในนั้นจากนั้นบันทึก:
#!/bin/sh
set -e
case "$1" in
pre)
#Store current timestamp (while suspending)
/bin/echo "$(date +%s)" > /tmp/_suspend
;;
post)
#Compute old and current timestamp
oldts="$(cat /tmp/_suspend)"
ts="$(date +%s)"
#Prompt for password if suspended > 10 minutes
if [ $((ts-oldts)) -ge 600 ];
then
export XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
/usr/bin/dm-tool lock
fi
/bin/rm /tmp/_suspend
;;
esac
มันทำอะไร
เมื่อคุณใส่อูบุนตูของคุณเข้าสู่โหมด "สลีป" สคริปต์นี้จะบันทึกการประทับเวลาปัจจุบันจากนั้นในขณะที่ระบบกลับมาทำงานอีกครั้งมันจะตรวจสอบการประทับเวลาเก่าด้วยแอพปัจจุบันหากความแตกต่างมากกว่านั้น "600" วินาที คุณล็อคหน้าจอ "lightdm" มิฉะนั้นจะไม่ทำอะไรเลย
สำหรับขั้นตอนสุดท้าย:
เปิด "การตั้งค่าระบบ" -> "ความสว่าง & ล็อค" ปิดใช้งานการถามรหัสผ่านหลังจากตื่นขึ้นมาจากการหยุดทำงานชั่วคราวเนื่องจากเราปล่อยให้การล็อคหน้าจอเป็นสคริปต์
หลังจากรีบูตหรือปิดคุณยังต้องใส่รหัสผ่านของคุณ