サーバーとワークステーションで実行されているコンピューターがあります。つまり、休止状態ではありませんが、グラフィックデスクトップも有効にする必要があります。
これを達成するために、以下の値を設定した。/etc/gdm3/greeter.dconf-defaults
sleep-inactive-ac-timeout=5
# - What to do after sleep-inactive-ac-timeout
# 'blank', 'suspend', 'shutdown', 'hibernate', 'interactive' or 'nothing'
sleep-inactive-ac-type='blank'
また、shutdown:sleep:idle:handle-power-key:handle-suspend-key:handle-hibernate-key:handle-lid-switch
systemdを使用して阻害剤を追加しました。
ほとんど動作しているようですが、問題はコンピュータの画面がオンになっていて、スリープモードに入らないことです。スリープ機能が有効になったらすぐに電源を入れます。以下のビデオをご覧ください:
https://i.imgur.com/LvuI26V.gifv
この状況をデバッグするには、waylandも無効にしてから/etc/gdm3/daemon.conf
実行しました。
sleep 3; xset dpms force off
同じ行動をします。
モニターの電源が切れない問題を解決するには?
ディスプレイドライバは
$ lspci -k | grep -EA3 'VGA|3D|Display'
00:02.0 VGA compatible controller: Intel Corporation AlderLake-S GT1 (rev 0c)
DeviceName: Onboard IGD
Subsystem: ASUSTeK Computer Inc. AlderLake-S GT1
Kernel driver in use: i915
i915
カーネルドライバの場合、次のものがあります。
$ sudo modinfo -p i915
modeset:Use kernel modesetting [KMS] (0=disable, 1=on, -1=force vga console preference [default]) (int)
enable_dc:Enable power-saving display C-states. (-1=auto [default]; 0=disable; 1=up to DC5; 2=up to DC6; 3=up to DC5 with DC3CO; 4=up to DC6 with DC3CO) (int)
enable_fbc:Enable frame buffer compression for power savings (default: -1 (use per-chip default)) (int)
lvds_channel_mode:Specify LVDS channel mode (0=probe BIOS [default], 1=single-channel, 2=dual-channel) (int)
panel_use_ssc:Use Spread Spectrum Clock with panels [LVDS/eDP] (default: auto from VBT) (int)
vbt_sdvo_panel_type:Override/Ignore selection of SDVO panel mode in the VBT (-2=ignore, -1=auto [default], index in VBT BIOS table) (int)
reset:Attempt GPU resets (0=disabled, 1=full gpu reset, 2=engine reset [default]) (uint)
vbt_firmware:Load VBT from specified file under /lib/firmware (charp)
error_capture:Record the GPU state following a hang. This information in /sys/class/drm/card<N>/error is vital for triaging and debugging hangs. (bool)
enable_hangcheck:Periodically check GPU activity for detecting hangs. WARNING: Disabling this can cause system wide hangs. (default: true) (bool)
enable_psr:Enable PSR (0=disabled, 1=enable up to PSR1, 2=enable up to PSR2) Default: -1 (use per-chip default) (int)
psr_safest_params:Replace PSR VBT parameters by the safest and not optimal ones. This is helpful to detect if PSR issues are related to bad values set in VBT. (0=use VBT parameters, 1=use safest parameters) (bool)
enable_psr2_sel_fetch:Enable PSR2 selective fetch (0=disabled, 1=enabled) Default: 0 (bool)
force_probe:Force probe options for specified supported devices. See CONFIG_DRM_I915_FORCE_PROBE for details. (charp)
disable_power_well:Disable display power wells when possible (-1=auto [default], 0=power wells always on, 1=power wells disabled when possible) (int)
enable_ips:Enable IPS (default: true) (int)
fastboot:Try to skip unnecessary mode sets at boot time (0=disabled, 1=enabled) Default: -1 (use per-chip default) (int)
load_detect_test:Force-enable the VGA load detect code for testing (default:false). For developers only. (bool)
force_reset_modeset_test:Force a modeset during gpu reset for testing (default:false). For developers only. (bool)
invert_brightness:Invert backlight brightness (-1 force normal, 0 machine defaults, 1 force inversion), please report PCI device ID, subsystem vendor and subsystem device ID to [email protected], if your machine needs it. It will then be included in an upcoming module version. (int)
disable_display:Disable display (default: false) (bool)
memtest:Perform a read/write test of all device memory on module load (default: off) (bool)
mmio_debug:Enable the MMIO debug code for the first N failures (default: off). This may negatively affect performance. (int)
verbose_state_checks:Enable verbose logs (ie. WARN_ON()) in case of unexpected hw state conditions. (bool)
nuclear_pageflip:Force enable atomic functionality on platforms that don't have full support yet. (bool)
edp_vswing:Ignore/Override vswing pre-emph table selection from VBT (0=use value from vbt [default], 1=low power swing(200mV),2=default swing(400mV)) (int)
enable_guc:Enable GuC load for GuC submission and/or HuC load. Required functionality can be selected using bitmask values. (-1=auto [default], 0=disable, 1=GuC submission, 2=HuC load) (int)
guc_log_level:GuC firmware logging level. Requires GuC to be loaded. (-1=auto [default], 0=disable, 1..4=enable with verbosity min..max) (int)
guc_firmware_path:GuC firmware path to use instead of the default one (charp)
huc_firmware_path:HuC firmware path to use instead of the default one (charp)
dmc_firmware_path:DMC firmware path to use instead of the default one (charp)
enable_dp_mst:Enable multi-stream transport (MST) for new DisplayPort sinks. (default: true) (bool)
enable_dpcd_backlight:Enable support for DPCD backlight control(-1=use per-VBT LFP backlight type setting [default], 0=disabled, 1=enable, 2=force VESA interface, 3=force Intel interface) (int)
enable_gvt:Enable support for Intel GVT-g graphics virtualization host support(default:false) (bool)
request_timeout_ms:Default request/fence/batch buffer expiration timeout. (uint)
lmem_size:Set the lmem size(in MiB) for each region. (default: 0, all memory) (uint)
lmem_bar_size:Set the lmem bar size(in MiB). (uint)
mitigations:Selectively enable security mitigations for all Intel® GPUs in the system.
auto -- enables all mitigations required for the platform [default]
off -- disables all mitigations
Individual mitigations can be enabled by passing a comma-separated string,
e.g. mitigations=residuals to enable only clearing residuals or
mitigations=auto,noresiduals to disable only the clear residual mitigation.
Either '!' or 'no' may be used to switch from enabling the mitigation to
disabling it.
Active mitigations for Ivybridge, Baytrail, Haswell:
residuals -- clear all thread-local registers between contexts
答え1
問題に対する解決策は、オペレーティングシステムやドライバではなくモニタ自体であることがわかりました。
モニターには2つのHDMI入力ポートがあるため、スリープモードに入ると検索が開始され、再びオンになります。
HDMI-1ポートのみを手動で選択して自動スキャンを無効にすると、モニターは通常スリープモードに入り始めます。
これが特定のモニターのバグなのかスタックの他の場所にあるバグなのかは不明ですが、現時点ではこのソリューションが動作しているようです。
答え2
「出力選択」に達するまでモニターのボタンを押して、「自動」から「HDMI 1」に変更、保存、終了するなど、モニター自体で設定を調整する必要がありました。モニターが自動スキャンモードに切り替わり、スリープモードが解除され、Waylandがモニターの電源を切らない問題を修正しました.