Ubuntu电源键软关机设置

本文介绍了一种在不连接显示器的情况下,为Ubuntu设备设置电源键软关机的方法,避免了直接拔电源可能对设备造成的损害。通过注释掉默认的acpi事件配置,并替换为/sbin/poweroff命令,实现短按电源键即可安全关机。

对于不连接显示器的Ubuntu设备,通过直接拔电源或者长按电源键是普遍的关机方法,但这种方法长期势必会对设备造成损坏。

下面设置电源键软关机(短摁电源按钮关机)的方法可以解决此问题。(默认摁电源键会弹出确认按钮)

1. gedit /etc/acpi/events/powerbtn
2. 注释掉最后一行action (前面加#)#action=/etc/acpi/powerbtn.sh
3. 添加一行:action=/sbin/poweroff
4. 重启acpi或者重启机器:acpid restart  

转载于:https://www.cnblogs.com/roostinghawk/p/9930676.html

### 在 Ubuntu 系统中设置短按开关机功能 在 Ubuntu 系统中,实现短按开关机功能需要结合硬件设计与操作系统配置完成。以下内容将详细介绍如何通过硬件信号和软件配置实现此功能。 #### 硬件层面:PMIC-PWRON 信号的作用 PMIC-PWRON 是从电源管理芯片(PMIC)引出的一路信号,用于控制系统的开机与关机操作。当按下连接到 PMIC-PWRON 的开关时,PMIC 能够识别按键的“长按”或“短按”,并执行相应的动作[^1]。例如,短按可以触发系统唤醒或休眠,而长按则可能触发系统强制关机。 #### 软件层面:Ubuntu 中的电源管理配置 在 Ubuntu 系统中,电源管理由 `systemd` 和 `acpid` 服务共同负责。以下是具体配置方法: #### 配置 `systemd-logind` `systemd-logind` 是一个用于管理系统会话和服务的守护进程,支持对电源按键事件的处理。可以通过修改其配置文件来调整短按开关机的行为。 1. **编辑配置文件** 打开 `/etc/systemd/logind.conf` 文件: ```bash sudo nano /etc/systemd/logind.conf ``` 2. **修改电源按键行为** 在文件中找到以下参数,并根据需求进行修改: - `HandlePowerKey=poweroff`:短按电源键时直接关机。 - `HandlePowerKey=suspend`:短按电源键时进入休眠模式。 - `HandlePowerKey=halt`:短按电源键时停止系统,但不切断电源。 修改完成后保存文件。 3. **重启服务** 应用更改后,重启 `systemd-logind` 服务: ```bash sudo systemctl restart systemd-logind ``` #### 配置 `acpid` `acpid` 是一个用于处理 ACPI 事件的守护进程,可以自定义电源按键的行为。 1. **安装 `acpid`** 如果尚未安装 `acpid`,可以通过以下命令安装: ```bash sudo apt-get install acpid ``` 2. **创建自定义脚本** 在 `/etc/acpi/events/` 目录下创建一个新的事件文件,例如 `powerbtn`: ```bash sudo nano /etc/acpi/events/powerbtn ``` 添加以下内容: ```plaintext event=button/power action=/etc/acpi/powerbtn.sh ``` 3. **编写脚本逻辑** 创建并编辑 `/etc/acpi/powerbtn.sh` 脚本: ```bash sudo nano /etc/acpi/powerbtn.sh ``` 添加以下内容: ```bash #!/bin/bash logger "Power button pressed" if [[ -f /tmp/short-press ]]; then rm /tmp/short-press systemctl suspend # 短按触发休眠 else touch /tmp/short-press sleep 2 # 等待 2 秒判断是否为长按 if [[ -f /tmp/short-press ]]; then rm /tmp/short-press systemctl poweroff # 短按触发关机 fi fi ``` 保存文件后,确保脚本具有可执行权限: ```bash sudo chmod +x /etc/acpi/powerbtn.sh ``` 4. **重启 `acpid` 服务** 应用更改后,重启 `acpid` 服务: ```bash sudo systemctl restart acpid ``` #### 注意事项 - 硬件设计中的 PMIC-PWRON 信号必须正确连接到主板上的电源按键接口[^1]。 - 如果系统未正确响应电源按键事件,可以检查 `/var/log/syslog` 文件以获取调试信息。 - 确保 BIOS 设置中启用了 ACPI 支持,否则电源按键事件可能无法被系统捕获。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值