usbmuxdをデーモンとして実行するように設定しようとしていますが、次のエラーが発生し続けます。
Dec 3 10:29:19 asci-kubu-NUC7i3BNH systemd[1]: asci-usbmuxd.service: Main process exited, code=exited, status=1/FAILURE
Dec 3 10:29:19 asci-kubu-NUC7i3BNH systemd[1]: asci-usbmuxd.service: Failed with result 'exit-code'.
Dec 3 10:29:24 asci-kubu-NUC7i3BNH systemd[1]: asci-usbmuxd.service: Service hold-off time over, scheduling restart.
Dec 3 10:29:24 asci-kubu-NUC7i3BNH systemd[1]: asci-usbmuxd.service: Scheduled restart job, restart counter is at 46078.
Dec 3 10:29:24 asci-kubu-NUC7i3BNH systemd[1]: Stopped usbmuxd service.
Dec 3 10:29:24 asci-kubu-NUC7i3BNH systemd[1]: Started usbmuxd service.
Dec 3 10:29:24 asci-kubu-NUC7i3BNH usbmuxd[29950]: [0] Could not open lockfile
手動で実行すると、次のようになります。
sudo usbmuxd -v --user usbmux --foreground
すべてが大丈夫です。
これは私のシステムの.serviceファイルです。マニュアルを読んでみましたが、容量が正しく設定されていないようです。 usbmuxユーザーの権限/グループを確認しました。 usbmuxはPlugdevとsudoの一部です。
[Unit]
Description=usbmuxd service
Documentation=man:usbmuxd(8)
[Service]
Type=simple
ExecStart=/usr/local/sbin/usbmuxd --user usbmux --systemd
PIDFile=/var/run/usbmuxd.pid
Restart=always
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
LimitNPROC=1
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=asciusbmuxd
[Install]
WantedBy=multi-user.target
どんな助けでも大変感謝します。解決策を見つけるために最善を尽くしました。ありがとうございます!
修正する
usbmuxdに含まれる単位ファイルは使用できません。、ExecStartでコマンド引数を渡そうとすると、上記と同じエラーが発生します。
バンドルユニットファイル:
[Unit]
Description=Socket daemon for the usbmux protocol used by Apple devices
Documentation=man:usbmuxd(8)
[Service]
ExecStart=@sbindir@/usbmuxd --user usbmux --systemd
PIDFile=@localstatedir@/run/usbmuxd.pid
コンパイル時に、@sbindir@マッピング済み/usr/local/sbin/usbmuxdそして@localstatedir@から/usr/local/var/run/usbmuxd.pidこれは存在しません。私はそれを修正しました/var/run/usbmuxd.pid。
私のユニットファイルであれ削除されたバンドルファイルであれ、 --user usbmux --systemd を使用すると、正しく実行できます。
ExecStartを介さずにユニットファイルを介してusbmuxを設定しようとすると失敗します。
システムログには次の内容が記載されています。
Oct 4 10:52:19 potato asciusbmuxd[17327]: [10:52:19.635][0] Failed to drop privileges (cannot set supplementary groups)
ユーザー参照を削除すると、サービスは正しく開始されますが、ideviceinfo を実行できないか、lockd に関連したエントリーを使用できません。
usbmuxd[17462]: [2] chmod(/var/lib/lockdown, 02775) failed: Operation not permitted
OSの制限があり、16.04を使用する必要があるため、これを強制的にコンパイルする必要があり、リポジトリで使用できるよりも新しいusbmuxdバージョンが必要でした。
私のシステムバージョンは229です。