2017-12-17 17 views
0

は、私は手動で開始することができますプログラム(ラズベリーパイのノードJSを)書いてありませんが、systemdにサービスとしてではない:にsystemdサービス開始は失敗:なしservice.mountユニット

[email protected] ~ $ systemd --version 
systemd 215 
+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR 
[email protected] ~ $ sudo systemctl daemon-reload 
[email protected] ~ $ sudo systemctl start /etc/systemd/system/rfxtrx.service 
Failed to start etc-systemd-system-rfxtrx.service.mount: Unit etc-systemd-system-rfxtrx.service.mount failed to load: No such file or directory. 
[email protected] ~ $ 

エラーメッセージがあることを訴えますrfxtrx.service.mountユニットはありません。正しい。そのようなユニットがあるべきか?最も一般的な提案はdaemon-reloadです。このdoidは役に立たない。あるいは、https://github.com/systemd/systemd/issues/5375として、これは修正されたsystemdのバグかもしれませんが、raspbian(raspbianはバージョン215を持つ)よりも後のsystemdバージョンでのみ発生します。

raspbianのメンテナーがサポートしていないバージョンにアップデートしようとする以外の解決策はありますか?

答えて

0

ここでの最初の問題は、サービス名rfxtrx.serviceを起動しようとしていますが、systemdはetc-systemd-system-rfxtrx.service.mountが必要です。

あなたはsystemdには、コンフィギュレーションをマウント持ってしようとしている場合は、あなたのファイル名は以下のルールに従うべきである:

マウントユニットは、彼ら コントロールマウント・ポイント・ディレクトリにちなんで命名されなければなりません。例:マウントポイント/ home/lennartは、 のユニットファイルhome-lennart.mountに設定する必要があります。

あなたが言う/dir/to/rfxtrxでマウントポイントを作成したいたのであれば、その後にsystemdは、ファイルをマウントdir-to-rfxtrx.mount命名する必要があり、優先して、後者のディレクトリで/usr/lib/systemd/system/または/etc/systemd/system/のいずれかに座ることをお勧めします。

サービスファイルが必要な場合は、ユニットsystemctl enable rfxtrx.serviceを有効にします。 systemctl daemon-reloadは、ユニットがすでにsystemdに登録されており、リロードが必要な場合に使用されます。

systemctl list-unitsまたはsystemctl status rfxtrx.serviceというコマンドを使用して、サービスがsystemdに存在するかどうかを確認できます。

エラーは、sudo systemctl start rfxtrx.serviceの代わりにsudo systemctl start /etc/systemd/system/rfxtrx.serviceを実行していることです。

+0

ありがとうございます。あなたの最後の段落が問題を解決しました。 –

関連する問題