Tôi có thể cung cấp một cách giải quyết cho điều này
Đừng bận tâm đến các cài đặt trong GUI, bạn có thể khóa màn hình của mình và gửi màn hình của bạn ở chế độ chờ thông qua dòng lệnh
Để khóa màn hình của bạn, bạn có thể sử dụng
gnome-screensaver-command -l
hoặc (nếu không sử dụng gnome3)
xdg-screensaver lock
và để tắt màn hình của bạn (chế độ chờ), bạn có thể sử dụng
xset dpms force off
Bây giờ, vì bạn không muốn làm điều này bằng tay, nhưng sau một vài phút rảnh rỗi, chúng tôi cần tìm hiểu xem bạn đã nhàn rỗi bao lâu. Điều này có thể được thực hiện vớixprintidle
sudo apt-get install xprintidle
xprintidle
sẽ trả về milisecond của (xserver) idletime
Bây giờ, hãy kết hợp điều này thành một tập lệnh (*). Sử dụng trình chỉnh sửa yêu thích của bạn để sao chép / dán phần sau, sửa đổi IDLE_TIME
theo ý thích của bạn
nano /home/yourusername/idle_stby_lock_screen.sh
#!/bin/sh
# Wanted trigger timeout in milliseconds.
IDLE_TIME=$((5*60*1000)) # replace the '5' with how many minutes you'd like
# Sequence to execute when timeout triggers.
trigger_cmd() {
echo "Triggered action $(date)"
}
sleep_time=$IDLE_TIME
triggered=false
while sleep $(((sleep_time+999)/1000)); do
idle=$(xprintidle)
if [ $idle -ge $IDLE_TIME ]; then
if ! $triggered; then
gnome-screensaver-command -l
export DISPLAY=:0; xset dpms force off
triggered=true
sleep_time=$IDLE_TIME
fi
else
triggered=false
# Give 150 ms buffer to avoid frantic loops shortly before triggers.
sleep_time=$((IDLE_TIME-idle+150))
fi
done
Sau đó làm cho nó thực thi với
chmod +x /home/yourusername/idle_stby_lock_screen.sh
Bạn có thể kiểm tra nó trên dòng lệnh
/home/yourusername/idle_stby_lock_screen.sh
nếu bạn hài lòng với nó, bạn có thể thêm nó vào phần khởi động Ubuntu của mình, như được mô tả trong các câu trả lời ở đây hoặc với ứng dụng "Khởi động" trong Ubuntu - chỉ cần đảm bảo sử dụng đường dẫn tuyệt đối đến tập lệnh của bạn.