启动时运行命令

启动时运行命令

我正在关注本教程介绍如何使用手机的加速度计

为了使其正常工作,您必须每次启动时运行三个命令......

rfkill unblock bluetooth
killall bluetoothd
hciconfig hci0 up

有没有办法在启动时使用脚本来执行此操作,而不是每次都手动执行?

答案1

大多数系统都会/etc/rc.local在启动时自动加载(如果存在),因此您只需将命令放在那里就可以了。

您应该确保它可以由 root 执行,但它可能已经是了。

答案2

如果您的系统使用 systemd,您可以编写一个一次性服务,在系统启动时执行一次命令。

首先,创建一个文件/opt/scripts/configure-bluetooth.sh并将命令放入:

#!/bin/bash
rfkill unblock bluetooth
killall bluetoothd
hciconfig hci0 up

并使文件可执行:chmod +x /opt/scripts/configure-bluetooth.sh

创建一个新的服务单元:/etc/systemd/system/configure-bluetooth.service其中包含:

[Unit]
Description=Configure bluetooth

[Service]
Type=oneshot
ExecStart=/opt/scripts/configure-bluetooth.sh

[Install]
WantedBy=multi-user.target

您现在应该运行systemctl daemon-reload,以便 systemd 检测到新服务。要测试它,请运行systemctl start configure-bluetooth.service.

一旦确定它可以工作,您可以在启动时启用它:systemctl enable configure-bluetooth.service

相关内容