タグ付けされた質問 「systemd」

systemdは、従来のLinux initの最新の代替品です。その主な機能には、サービス間の依存関係を表現する機能と、サービス起動の積極的な並列化が含まれます。

5
systemdサービスで環境変数を設定する方法は?
systemdを備えたArch Linuxシステムがあり、独自のサービスを作成しました。構成サービスは/etc/systemd/system/myservice.service次のようになります。 [Unit] Description=My Daemon [Service] ExecStart=/bin/myforegroundcmd [Install] WantedBy=multi-user.target ここで、の環境変数を設定します/bin/myforegroundcmd。それ、どうやったら出来るの?



3
systemdの実行ツリーを表示する方法はありますか?
私が質問の下で意味することは、順序付きリストをダンプして(pstreeがプロセスに行うように)、systemdが指定されたユニットのセットを実行した方法、つまり依存関係が解決され、ジョブが実行のためにキューに入れられた後のツリーを見る方法です?systemd状態データを分析することでそれができることは知っていますが、そのようなツリーをすばやく見る方法はありますか?これは、障害の調査に大いに役立ちます(たとえば、ブートプロセスが一部のユニットでスタックしていることがわかった場合は、より詳細な調査のためのおおよその場所を特定できます。
63 linux  systemd 

1
systemdサービスの場所を見つける
systemdユニットファイルが配置される場所はさまざまです。サービス名だけを指定して、systemdがサービスの宣言を読み取る場所をsystemdにすばやく簡単に問い合わせる方法はありますか?
62 systemd 

3
systemdでは、After =とRequires =の違いは何ですか?
私はsystemdに.serviceファイルを作成していると私は違い理解の助けを必要Requires=としますAfter=。manページには、と言うRequires=「他のユニットで構成さの要件の依存関係。」そしてAfter=、「設定するには、ユニット間の依存関係を注文します。」違いは何ですか?
54 systemd 

6
古いinitスクリプトをsystemdで動作させる最も簡単な方法は何ですか?
新しいsystemdスクリプトを作成して正しいことをしたくありません。systemdを使用しているOSにシステムをアップグレードしたので、古いinitスクリプトを再び動作させたいだけです。 initスクリプトの変換方法とsystemdスクリプトの作成方法について簡単に調査しましたが、適切に学習し、正しく実行するには数時間かかると確信しています。 現在の状況は次のとおりです。 systemctl start solr Failed to start solr.service: Unit solr.service failed to load: No such file or directory. そして: sudo service solr start Failed to start solr.service: Unit solr.service failed to load: No such file or directory. 今、私は仕事に戻りたいだけです。これを再び機能させるための抵抗が最も少ない経路は何ですか? 更新情報 私はこれをすべて理解したくはありませんでした-私は本当にしませんでした-しかし、私はしなければならないし、私の最初の手がかりを見つけました: sudo systemctl enable solr Synchronizing state for solr.service …
48 init.d  systemd 

1
コマンドラインからsystemdジャーナルにメッセージを送信するにはどうすればよいですか?
古いLinuxシステムでは、このloggerコマンドを使用してログメッセージをsyslogに送信できます。 Arch Linuxでメッセージをどこにlogger記録するかを読んでいますか?、メッセージ転送用のソケットが設定されている場合にのみsyslog、メッセージとloggerコマンドラインアプリがsystemdジャーナルと通信するようです。 では、loggerコマンドの現代的な同等物は何ですか?コマンドラインからsystemdジャーナルにメッセージを直接送信するにはどうすればよいですか?
46 logging  systemd 

3
不足しているsystemdユニットを削除する方法は?
ファイルがなくなったsystemdユニットを削除する方法がわかりません。彼らはまだ何らかの形でシステムに残っているようです。 私が削除しようとしている古い壊れたユニット: core@ip-172-16-32-83 ~ $ systemctl list-units --all firehose-router* UNIT LOAD ACTIVE SUB DESCRIPTION <E2><97><8F> firehose-router@02.service not-found failed failed firehose-router@02.service <E2><97><8F> firehose-router@03.service not-found failed failed firehose-router@03.service LOAD = Reflects whether the unit definition was properly loaded. ACTIVE = The high-level unit activation state, i.e. generalization of SUB. SUB = The …
40 systemd  coreos 

2
遅いsshログイン-org.freedesktop.login1のアクティベーションがタイムアウトしました
私のサーバーの1つで、SSHログインが本当に遅れていることに気付きました。 遅延が発生するssh -vvvオプションを使用して接続する debug1: Entering interactive session. 接続の抽出: debug1: Authentication succeeded (publickey). Authenticated to IP_REDACTED ([IP_REDACTED]:22). debug1: channel 0: new [client-session] debug3: ssh_session2_open: channel_new: 0 debug2: channel 0: send open debug1: Requesting no-more-sessions@openssh.com debug1: Entering interactive session. debug2: callback start debug2: fd 3 setting TCP_NODELAY debug3: packet_set_tos: set IP_TOS 0x10 …
39 ssh  debian  pam  systemd 

2
起動時に/ var / runの下にディレクトリを作成します
/var/runデーモンのユーザーに書き込み権限が付与されたPIDファイル用の独自のディレクトリが必要なデーモンがありました。 これらのコマンドでこのディレクトリを作成できることがわかりました。 # mkdir /var/run/mydaemon その後、所有権をプロセスを実行したいユーザー/グループに変更できます。 # chown myuser:myuser /var/run/mydaemon しかし、このディレクトリは、リブートするたびに消えてしまいます!マシンが起動するたびにこのディレクトリを作成するにはどうすればよいですか?

3
1つのsystemdサービスファイルでNプロセスを開始します
sshトンネルを維持するためにautosshを起動する次のsystemdサービスファイルを見つけました:https ://gist.github.com/thomasfr/9707568 [Unit] Description=Keeps a tunnel to 'remote.example.com' open After=network.target [Service] User=autossh # -p [PORT] # -l [user] # -M 0 --> no monitoring # -N Just open the connection and do nothing (not interactive) # LOCALPORT:IP_ON_EXAMPLE_COM:PORT_ON_EXAMPLE_COM ExecStart=/usr/bin/autossh -M 0 -N -q -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -p 22 …
36 daemon  systemd 

5
StartLimitInterval後のsystemdサービスの自動再起動
systemdサービスが障害時に自動的に再起動されるようにします。さらに、再起動のレート制限を行います。90秒以内に最大3回の再起動を許可したい。したがって、次の構成を行いました。 [サービス] Restart = always StartLimitInterval = 90 StartLimitBurst = 3 これで、障害時にサービスが再開されます。3回のクイック障害/再起動後、期待どおりに再起動しなくなりました。今、私はsystemdがタイムアウト(StartLimitInterval)の後にサービスを開始することを期待しました。しかし、タイムアウトの後に手動でサービスを再起動すると、systemdはタイムアウト(90秒)後にサービスを自動的に開始しません。しかし、systemdがStartLimitIntervalの後にサービスを自動的に開始するようにしたいのです。この機能を実現する方法を教えてください。
33 systemd 

3
systemdで監視されたサービスが失敗状態になったときに通知を受け取ります
systemdサービスがクラッシュまたはハングした場合(つまり、障害状態になった場合、WatchdogSec =を使用してハングを監視します)、ネットワークメッセージを送信する必要があります。新しいsystemdにはFailureAction =があることに気付きましたが、これでは任意のコマンドが許可されず、再起動/シャットダウンのみが許可されることがわかりました。 具体的には、systemdがプログラムのクラッシュを検出したときに1つのネットワークメッセージを送信し、ハングしたことを検出したときに別のネットワークメッセージを送信する方法が必要です。 「ログを解析する」よりも良い答えを望んでいます。また、ほぼ瞬時に応答するものが必要なので、ポーリングのアプローチは良いとは思いません。発生するイベントによってトリガーされるものでなければなりません。
32 linux  bash  service  systemd 

2
sshを除くすべてのサービスを無効にします
最新の(systemdベースの)Linuxディストリビューションでsshを除くすべてのサービスを無効にするにはどうすればよいですか? メンテナンスモードを実装する必要があります。 これらのサービスはすべてダウンする必要があります。 ポストグレス 接尾辞 アパッチ カップ cron 鳩小屋 ただし、sshはメンテナンスモード中にタスクを実行するために使用されるため、シャットダウンしないでください。 もちろん、無効にするサービスのリストをループするシェルスクリプトを作成することもできます。しかし、これは、すでに存在するものの、今まで知らない何かを再発明したような気がします。

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