一つ書きたい悪魔バックグラウンド通信用に起動後にログイン前に開始USB-rawhidそしてArduinoマイクロコントローラ。
このデーモンをrootではなくユーザーとして実行したいと思います。
また、このデーモンに対してのみ新しいユーザーを作成することを避けたいと思います。
この目的のために(再)使用できるシステムユニバーサルユーザーはありますか?
リストにBut...という/etc/shadow
ユーザーがいます。daemon
# su daemon
This account is currently not available.
私の現在の目標は次のとおりです。
- Ubuntu21.04
systemd
- amd64用にコンパイルされたネイティブコードC
このユニバーサルユーザーがデフォルトのDebianとUbuntuのインストールで利用可能であれば良いでしょう。
答え1
@Bibが述べたように、daemon
そのユーザーに切り替えようとしたときに表示されるエラーメッセージは、そのユーザーのログインシェルがに設定されているためです/sbin/nologin
。これにより、誰もそのユーザーとしてコンソールで作業できなくなるため、サービスへの不要な干渉を避けることをお勧めします。そのユーザーとして実行しています。これはsystemd
、そのユーザーのUIDを使用してプログラムを実行できないという意味ではなく、daemon
そのユーザーを好きな方法で使用できます。
しかし、daemon
最初はユーザーとグループこの目的のために導入されました。現在実際に推奨されるアプローチは、コンピュータに設定したいカスタムサービスに対して専用の「低権限」ユーザーを作成することです。
実行中のサービスを使用することを明示的に指定したので、このディレクティブを使用してバイナリを実行するユーザーを指定systemd
できます。User=
ただ追加してください
User=daemon
[Service]
ファイルセクション.service
。バラよりsystemd
出荷書類ビーチより多くの情報を知りたいです。