題:
在Raspbian的X-Windows中禁用屏幕空白
Salim Fadhley
2012-10-01 17:55:12 UTC
view on stackexchange narkive permalink

我們打算在工作中使用RPi來驅動狀態顯示面板-它會顯示我們的項目的錯誤狀態以及其他一些至關重要的統計信息。

我一直在嘗試停止屏幕顯示-保護程序從沒有黑屏的情況下沒有運氣。我使用以下公式:

我可以在信息亭模式下自動啟動Chromium(我在 .config / autostart 中使用了一個項目),但是我無法停止屏幕空白。 X-Windows似乎沒有響應 .xinitrc 文件。我嘗試在默認用戶( pi )和 root 上編輯此文件。似乎對屏幕保護程序沒有任何影響。

有人能製止Raspbian的屏幕空白嗎?是否有UI選項甚至配置文件可讓我永久更改屏幕保護程序超時?

我希望其中一些指南可能已在其他RPi操作系統上進行了測試。難道是使用較新的Raspbian我需要採用另一種方​​法來防止屏幕空白嗎?從 xterm 直接(通過 sudo 輸入)時,停止屏幕空白。從 .xinitrc 文件運行時,它不起作用。假定機器以用戶“ pi ”自動登錄,那麼如何確保每次xwindows啟動時這些命令都以root用戶身份執行。

這台機器必須能夠在無人值守的情況下作為一種信息亭運行。一旦安裝到位(它將是壁掛式顯示器,沒有永久連接的鍵盤或鼠標),我們能夠配置它的唯一方法是通過 ssh

您應該嘗試從在X-Windows會話中啟動的終端運行給定的三個命令(xset s off; xset -dpms; xset s noblank)。如果屏幕仍然空白,則您的問題是命令不足以阻止屏幕空白。如果屏幕沒有變黑,那麼您的問題就是使這些命令在X窗口會話中正確執行。
我從實際終端以root用戶身份運行了這些命令-結果是禁用了屏幕消隱。這意味著.xinitrc在執行命令時未運行或權限不足。有什麼建議麼?
我在建議中添加了答案。
我已經通過在您提供的兩個鏈接中進行所有操作(添加.xinitrc文件除外)來使其工作,並且對我有用。
“我通過安裝xscreensaver解決了這個問題:$ sudo apt-get install xscreensaver並在屏幕保護程序設置中禁用它。這不是最優雅的解決方案,但對我有用。”這是我可以使用它的唯一方法。謝謝!
六 答案:
Steve Robillard
2012-10-04 08:59:41 UTC
view on stackexchange narkive permalink

您可以輸入以下三個xset命令

  xset s off#不激活screensaverxset -dpms#禁用DPMS(能源之星)功能。xset s noblank#請勿空白視頻設備 

放入

/ etc / X11 / xinit / xinitrc

文件在第一行之後)。

[學生成為老師嗎?](http://raspberrypi.stackexchange.com/q/752/40);)
默認情況下,未安裝xset,因此無法運行它。您需要安裝x11-xserver-utils,以便擁有一個可執行的xset應用程序。
不確定您使用的是哪個版本或操作系統,但xset已安裝在我的操作系統上。但是,這似乎對我沒有任何幫助。
@JasonGoemaat,嘗試其他答案之一,因為這在4年前就行了。
在無頭pi上,通過ssh(當您知道哪個顯示器正在運行時)顯式添加顯示器編號,例如`xset -dpms -display:0` ...節省時間...
DerDirektor
2012-10-05 21:25:03 UTC
view on stackexchange narkive permalink

我有同樣的問題。在raspberry pi論壇上,我發現了這一點:

您需要編輯以X開頭的腳本。在使用lightdm的默認版本中,要編輯的文件為

在SeatDefaults部分的

/etc/lightdm/lightdm.conf

中,它提供了啟動X服務器的命令,我對其進行了修改以使其關閉屏幕保護程序。以及dpms

[SeatDefaults]
xserver-command = X -s 0 -dpms

對我來說效果很好-不再有黑屏了!

這適用於Pi 3!多謝!
這始終在PI 2和PI 3上對我有用。其他人針對該問題提出的所有其他答案對我不起作用。
我使用了Debian Jessie Lite映像(2017-03-02),但是我沒有lightdm文件夾?!已安裝火柴盒窗口管理器(不是LXDE)
Miles Hayler
2013-04-04 19:15:10 UTC
view on stackexchange narkive permalink

我通過以下方式解決了此問題:通過

  $ sudo apt-get install xscreensaver  

安裝xscreensaver並在屏幕保護程序設置中將其禁用。不是最優雅的解決方案,但對我有用。

這個答案很棒。沒有文本文件解決方案對我有用。不優雅?我不同意。該軟件包將始終與apt-get升級保持最新,因此我無需維護它即可保持工作。而且,作為獎勵,我現在可以使用屏幕保護程序。謝謝,邁爾斯。
我不知道為什麼,但是我嘗試了這個答案,控制台告訴我它無法從存儲庫中檢索某些文件。因此,它退出了安裝。我什至嘗試使用添加/刪除程序來安裝xscreensaver。結果還是一樣。這可能在一開始就起作用。
這在Raspberry Pi 3上對我有用。它也將其放在“首選項”下的主菜單中。
這就是我所做的。我認為這是最優雅的。不用在目錄中處理文件,而是在GUI中即可。然後,如果我不想使用它,只需將其設置為“無屏幕保護程序”,如果我不想消隱,則將其設置為0或999。我有少數係統,當我添加新系統記住需要修改哪些文件的設置要容易得多。
2018年,這仍然是最乾淨的解決方案。已在Raspberry Pi 3B +上確認
我正在通過X直接從命令行啟動Chrome(沒有窗口管理器)。我很好奇這個解決方案是否可行,但是不確定在沒有桌面/窗口管理器配置的情況下如何禁用xscreensaver。也許我在搜索錯誤的術語,但找不到有關如何通過命令行/編輯配置文件禁用它的更多信息。
在Raspbian Buster上為我工作:`echo“ mode:off”> /home/pi/.xscreensaver && sudo apt-get install xscreensaver -y && sudo reboot`
這是[在Raspberry Pi官方站點上記錄的方法](https://www.raspberrypi.org/documentation/configuration/screensaver.md),並且是唯一適用於我的設置的方法。
Maine_guy
2013-02-27 08:04:14 UTC
view on stackexchange narkive permalink

編輯/ etc / xdg / lxsession / LXDE-pi / autostart並添加這三行

  @xset s off @ xset -dpms @ xset s noblank  
>

註銷,登錄並驗證其是否正常工作

  xset -q  
這對我不起作用。我還註釋掉了此文件中的\ @xscreensaver行。當我運行xset -q時(感謝您的建議!),我發現我的xset行無效。我嘗試取消註釋\ @xscreensaver行並重新啟動,並且可以看到xset行生效,但是儘管這確實阻止了DPMS的啟動,但屏幕保護程序現在會在10分鐘後啟動。
請注意,我批准了一項編輯(來自[Kaarel Kitsemets](http://raspberrypi.stackexchange.com/users/28504/kaarel-kitsemets)),將路徑從“ LXDE / autostart”更改為“ LXDE-pi / autostart” ,但是由於我不是LXDE用戶,所以不確定這是正確的。
Nakedible
2012-10-01 20:35:59 UTC
view on stackexchange narkive permalink

正如註釋中所闡明的那樣,命令是在終端上運行的,而不是從.xinitrc運行的,而Chromium是從 .config / autostart / 啟動的,我建議以下內容:

創建運行xset命令的shell腳本 disableblank.sh ,並在 .config / autostart / 中添加一個條目,以調用該腳本。這樣,一切都以相同的方法開始,並且都起作用或都不起作用。

此外,這些命令會影響當前正在運行的X窗口會話,並且可由用戶配置。它們不應該以root用戶身份運行,但用戶Chromium卻以root用戶身份運行。

不確切知道如何啟動X或其他詳細信息,這可能是最安全的方法-儘管可能更簡單方式。

lornix
2013-07-22 10:00:46 UTC
view on stackexchange narkive permalink

這是控制台的空白。

我嘗試了幾種建議的方法,但是對我有用的方法是編輯/etc/rc.local並添加setterm -blank 0命令:

  setterm -blank 0  

因此文件隨後如下所示:

 #!/ bin / sh- e ## rc.local ##此腳本在每個多用戶運行級別的末尾執行。#確保腳本在成功時將“退出0”,在錯誤時將其他任何值“退出”。##為了啟用或禁用此腳本只需更改執行#位。##默認情況下,此腳本不執行任何操作。#關閉控制台blankingsetterm -blank 0#打印IP地址_IP = $(主機名-I)|| trueif [“ $ _IP”];然後printf“我的IP地址是%s \ n”“ $ _IP” fiexit 0  

(這裡有一個完整的文件以顯示我的確切位置)

基本上, setterm -blank 0 命令將終端消隱期設置為0秒(關閉),從而禁用通常發生的消隱。 rc.local在引導過程結束時以root特權執行,因此會影響所有物理控制台(此處是TV & HDMI輸出)

您還可以更改命令以包括關閉光標(不是鼠標指針,而是控制台中的文本光標):

  setterm -blank 0 -cursor off  

問題,但這可以解決您的問題而無需採取嚴厲措施。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...