Làm thế nào để vô hiệu hóa vĩnh viễn màn hình tiết kiệm điện bằng cách sử dụng dòng lệnh?


13

Tôi đã thử như sau:

1. Turn off: export DISPLAY=:0.0 && xset dpms force off 
2. Turn on: export DISPLAY=:0.0 && xset -dpms

Cái nào hiệu quả nhưng đó là một giải pháp tạm thời, chưa khắc phục được vấn đề của tôi. Khi tôi khởi động lại hệ thống, nó khởi động lại và cùng một chế độ tự động tắt.

Làm thế nào bây giờ tôi có thể từ xa bằng cách sử dụng SSH tắt nó mãi mãi?

QUAN TRỌNG:

- KIOSK (ATM machine will use this option)
- 24/7 advertising display/slides will use this

Lưu ý tùy chọn: hướng dẫn này tôi đã theo dõi http://v2kblog.blogspot.com/2008/08/diseac-monitor-power-saver.html , nhưng giải pháp vĩnh viễn không hoạt động.


không chắc chắn về giải pháp dòng lệnh - nhưng bạn sẽ có thể tắt quyền hạn bằng cách thêm tùy chọn dpms vào phần màn hình của xorg.conf
fossfreedom

OK - đáng để thêm những thứ đó vào câu hỏi của bạn. Tôi đoán bạn đã thử "màn hình xorg lừa và nó không hoạt động"? - cũng thêm nó vào câu hỏi của bạn.
fossfreedom

Điều này làm việc tốt cho tôi: crontab -e; * / 1 * * * * xuất HIỂN THỊ =: 0,0 && xset s 20; xset -dpms

Câu trả lời:


8
#! / bin / bash
xuất HIỂN THỊ =: 0,0

nếu [$ # -eq 0]; sau đó
  sử dụng tiếng vang: $ (tên cơ sở $ 0) "bật | tắt | trạng thái"
  thoát 1
fi

nếu [$ 1 = "tắt"]; sau đó
  echo -en "Tắt màn hình ..."
  xset dpms tắt
  echo -en "xong. \ nCheck:"
  xset -q | grep "Màn hình là"
elif [$ 1 = "trên"]; sau đó
  echo -en "Bật màn hình ..."
  xset dpms lực vào
  echo -en "xong. \ nCheck:"
  xset -q | grep "Màn hình là"
elif [$ 1 = "trạng thái"]; sau đó
  xset -q | sed -ne 's / ^ [] * Màn hình là // p'
khác
  sử dụng tiếng vang: $ (tên cơ sở $ 0) "bật | tắt | trạng thái"
fi

Lưu tập lệnh này trong một cái gì đó như /usr/bin, đặt tên (thích switch_dpms) và làm cho nó thực thi được chmod 664 /usr/bin/switch_dpm.

Bây giờ tất cả những gì bạn cần làm là thêm nó vào một công việc định kỳ. Vì vậy, mở tập tin crontab của bạn với:

crontab -e

và thêm phần này ở phía dưới:

@reboot /usr/bin/switch_dpms off

Mỗi lần khởi động lại nó sẽ chuyển dpmssang offvà bạn cũng có thể chuyển nó ontừ dòng lệnh bằng cách thực hiện /usr/bin/switch_dpms onhoặc kiểm tra trạng thái của nó /usr/bin/switch_dpms status.

Nguồn cho kịch bản


Vẫn không có chế độ kích hoạt 24/7 vĩnh viễn? Đó là KIOSK giống như bạn đi đến "BANK ATM machine để lấy tiền". Và nó luôn trở thành màn hình ĐEN. Vì vậy, mọi người muốn nhấn một nút, nhưng họ không thể. Không ai muốn đi tất cả các máy ATM để bật nó vào mỗi buổi sáng.

Nếu nó phải là crontab -e? Sau đó, tôi cũng có thể đơn giản thực hiện "xset dpms force" mỗi 0 0 0 0 0, nhưng tôi hoàn toàn điên rồ. Bởi vì nó nằm trong hệ điều hành ở đâu đó, ai sẽ hoàn toàn hủy kích hoạt nó.

Tôi thực sự không hiểu tại sao bạn làm cho nó khó khăn như vậy!? Trường hợp trong câu hỏi của bạn, bạn đã nói nó là một kiosk? Tôi sẽ đề nghị thêm vào thông tin này trong câu hỏi của bạn vì câu trả lời của tôi có thể thay đổi dựa trên điều đó. Kịch bản tôi đã đăng hoạt động và rất dễ sử dụng và hiểu. Và không, nó không phải là crontab. Đó chỉ là để thiết lập màn hình offkhi khởi động lại. Nhưng bạn có thể làm điều này ở bất cứ đâu trong chuỗi từ khởi động đến máy tính để bàn / dòng lệnh khi khởi động. Tại sao nó 'điên'? Tôi nghĩ rằng nó là bình thường để thêm một cái gì đó như thế này cron.
Rinzwind

Rất cám ơn cho đầu vào của bạn (vừa cập nhật KIOSK của tôi trong câu hỏi quá). Nhưng về crontab -ei nghĩ ngay từ đầu nhưng không áp dụng điều đó, bởi vì nó liên quan đến bộ hẹn giờ, sử dụng bộ hẹn giờ tôi không chắc chắn 100% KIOSK sẽ được bật hoặc tắt khi hệ thống khởi động lại một lần. Tôi muốn đẩy hoặc nói với hệ thống. Vui lòng tắt 100% này. Vì vậy, không ai phải chạy sau 100 máy ATM để kiểm tra xem nó có tắt hay không. Ngoài ra tôi có màn hình lớn trên cửa hàng để quảng cáo là các slide 24/7 vẫn hoạt động. Tôi không thể tin tưởng vào linux của mình nếu nó không tắt 100% tùy chọn đó. Xin tư vấn.

1
Tham gia với chúng tôi trong trò chuyện: chat.stackexchange.com/rooms/201/ask-ubfox-general-room Có thể điều này diễn ra nhanh hơn khi nói tiếng Hà Lan (Hy vọng bạn không nói tiếng Pháp;))
Rinzwind

9

Điều này sẽ làm việc. Mở terminal trong /etc/xdg/autostartthư mục. Ban hành lệnh này:

sudo -H gedit nodpms.desktop

Nhấn enter, bạn sẽ phải nhập mật khẩu của bạn. Gedit sẽ mở, sao chép và dán đoạn mã sau vào rồi lưu lại.

[Desktop Entry]
Type=Application
Exec=xset -dpms
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=nodpms
Name=nodpms
Comment[en_US]=
Comment=

Vấn đề này trong thiết bị đầu cuối vẫn mở:

sudo -H gedit noscreenblank.desktop

Nhấn enter, bạn sẽ phải nhập mật khẩu của bạn. Gedit sẽ mở, sao chép và dán đoạn mã sau vào rồi lưu lại.

Exec=xset s off
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=noscreenblank
Name=noscreenblank
Comment[en_US]=
Comment=

Đóng thiết bị đầu cuối. Mở trình duyệt tệp và điều hướng đến thư mục etc / xdg / autostart. Đảm bảo rằng các tệp, gật đầu.desktop và noscreenblank.desktop đều ở đó. Nếu vậy, đóng tất cả mọi thứ và sau đó khởi động lại.

Sau khi khởi động lại, bạn có thể chạy một xset qlệnh trong thiết bị đầu cuối và thấy rằng dpms và xóa màn hình bị tắt.


2

Giải pháp cho vấn đề xóa màn hình rất đơn giản khi tìm thấy tùy chọn đúng. Điều này có liên quan đến tiết kiệm năng lượng, nhưng nó không ở một nơi rõ ràng.

Trong 12.04 Gnome đi tới:

Ứng dụng > Công cụ hệ thống > Cài đặt hệ thống .

Chọn Độ sáng và Khóa .

Bỏ chọn hộp cho màn hình Dim để tiết kiệm điện .

Bên cạnh tùy chọn Tắt màn hình khi không hoạt động , hãy chọn lượng thời gian trước khi màn hình tắt. Tôi đã chọn 1 giờ. Không bao giờ là một lựa chọn có sẵn.


2
trong phiên bản Ubuntu 18.04, cài đặt này không ngừng mờ đi, tôi phải sử dụngxset -dpms
xealits

0

Câu trả lời trước sẽ không hoạt động. Nếu bạn mở một thiết bị đầu cuối và phát hành: xset q, bạn sẽ thấy dpms sẽ được bật. Cách dễ nhất tôi đã tìm thấy để giải quyết vấn đề này là vào các ứng dụng khởi động và tạo 2 ứng dụng. Tên bạn đặt cho chúng không quan trọng, 2 lệnh bạn cần là: xset s tắt (điều này vô hiệu hóa trình bảo vệ màn hình) và xset -dpms (vô hiệu hóa dpms). Tôi ước rằng tôi mới tập tin cấu hình nào để đặt các lệnh này, nhưng tôi thì không.


Bạn có thể tạo:$ echo -e '#!/bin/bash\nsleep 50\nexport DISPLAY=:0.0\nxset s off\nxset -dpms' > /var/tmp/pp.sh; cat /var/tmp/pp.sh; contab -e /var/tmp/pp.sh
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.