サービスを開始する前に/ dev / video0を待つ方法


11

マウントに依存するユニットファイルを記述できます。これは、それらを一覧表示してに追加できるためですRequires=xxx

# systemctl list-units | grep data
mount-data.service    loaded active exited    Manage the data partition

私がしようとしていることは、ウェブカメラがデバイスに接続されたときにサービスを開始させることです。systemctl list-units | grep video0何も返しません。誰かが簡単な言葉で私を説明できますか?それを確実にするために私は何をしますか?私がしたいのは、、、などが表示されたとき/dev/video0にサービスを開始/dev/video1することです。

この投稿から、udevルールを記述する必要があるという手がかりが得られましたが、ここで正確に何を行う必要があるのか​​わかりません。助けて?

回答:


11

私はこれを理解しました。まず、次の行をudevルールフォルダー内のファイルの1つに追加します。/lib/udev/rules.d/99-systemd.rules

KERNEL=="video0", SYMLINK="video0", TAG+="systemd"
KERNEL=="video1", SYMLINK="video1", TAG+="systemd"

次に、サービスユニットファイルでビデオデバイスにバインドできます。

[Unit]
BindsTo=dev-video0.device
After=dev-video0.device
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.