起動時にコマンドを実行する

起動時にコマンドを実行する

私はフォローしていますこのチュートリアルでは、携帯電話の加速度計を使用する方法について説明します。

これが機能するには、起動するたびに3つのコマンドを実行する必要があります。

rfkill unblock bluetooth
killall bluetoothd
hciconfig hci0 up

毎回手動で実行するのではなく、起動時にスクリプトを使用してこれを行う方法はありますか?

答え1

ほとんどのシステムは/etc/rc.local起動時に自動的にそれをロードするので、そこにコマンドを入力するだけです。

ルートとして実行可能であることを確認する必要がありますが、すでに実行可能である可能性があります。

答え2

システムが systemd を使用している場合は、システムの起動時にコマンドを 1 回実行する 1 回限りのサービスを作成できます。

まずファイルを作成し、/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-reloadsystemdが新しいサービスを検出するように実行する必要があります。テストするにはを実行してくださいsystemctl start configure-bluetooth.service

動作すると確信したら、起動時に有効にできます。systemctl enable configure-bluetooth.service

関連情報