ユーザーのセッションc2に対して停止ジョブが実行されています


56

コンピューターをシャットダウンするたびに、次のメッセージが表示されます。

A stop job is running for Session c2 of user ... (1min 30s)

1分30秒待機してから、シャットダウンプロセスを続行します。このsystemdシャットダウン診断ガイドに従って、shutdown-log.txtを取得します(ログが非常に長いため、ここに直接貼り付けることはできません)。残念ながら、私は自分でログを理解していません。誰かが私のシステムが正常にシャットダウンしない原因を見つけるのを手伝ってくれますか?

カーネル4.4.5-1-ARCHでArch Linuxを実行しています。私のsystemdバージョンは229-3です。

追加1:ログアウトするたびに確認し、ログイン画面からコンピューターをシャットダウンしても、メッセージが表示されないA stop job is running...。シャットダウンする前に何度もログアウトしようとしたので、偶然ではないと思います。情報が役立つことを願っています。

追加2:シャットダウンのハングを引き起こすのは常にセッションc2です。@ n.stが示唆しているように、シャットダウンの問題を再度診断し、のloginctl session-status c2代わりに保存しましたdmesgが、には何もありませんshutdown-log.txt。に置き換えloginctl session-status c2systemd-cgls、次のログを取得しました。

Control group /:
-.slice
└─init.scope
  ├─   1 /usr/lib/systemd/systemd-shutdown reboot --log-level 6 --log-target ...
  ├─1069 /usr/lib/systemd/systemd-shutdown reboot --log-level 6 --log-target ...
  ├─1071 /bin/sh /usr/lib/systemd/system-shutdown/debug.sh reboot
  └─1074 systemd-cgls

何か案は?

注:カーネル4.6.4-1-ARCHとに更新した後systemd 230-7、エラーは発生しなくなりました。


残念ながら、dmesg貼り付けた出力はあまり有益ではありません。シャットダウンボタンを押すと(システムの起動後3048秒)WiFiが切断され、1m30sタイマーが切れてシステムがシャットダウンし続ける(3139秒)まで何も表示されません。
-n.st

1
それ自体で終了しない不吉なセッションc2で何が実行されているかを確認するには、を使用しますloginctl session-status c2。シャットダウン中にまだgettyに切り替えることができるかどうかはわかりませんが、「ジョブを停止しています...」が表示されたらCtrl + Alt + F2を押してみてください。それが機能する場合は、ログインプロンプトが表示され、loginctlコマンドを使用できます。ログインプロンプトが表示されない場合は、と同じ手順を実行しますdmesgが、loginctl session-status c2代わりにの出力を保存します。(それはすべて、毎回別のセッションではなく、常に「c2」がハングしていることを前提としています。)
n.st

1
作成:あなたは(一時的な)このハックで修正得るかもしれない/etc/sysctl.d/50-coredump.conf内容で:kernel.core_pattern=core:、REF github.com/systemd/systemd/issues/1615#issuecomment-203507283
Runium

1
github.com/systemd/systemd/issues/2691これは関連があるかもしれません
-Natecat

2
@aurelienシャットダウン時にタイマーを引き起こしているのは常にc2ですか?その場合は、シャットダウンの問題を再度診断して、のloginctl session-status c2代わりに保存できますdmesg
n.st

回答:


45

この問題の回避策は、このタイムアウトを/etc/systemd/system.conf90秒からたとえば10秒に減らすことです。

DefaultTimeoutStopSec=10s

変更を加えた後、ターミナルで次のコマンドを実行します

$ systemctl daemon-reload

9
これは問題を説明したり解決したりせず、10
秒間

停止するのに10秒以上かかる仕事はありますか?
ジャレッドチュウ

10

この問題には多くの原因が考えられるため、特定の回答がうまく機能しません。トラブルシューティングのためにこれを試してください:

  1. シャットダウン時に「セッションc2でジョブを停止しています...」というメッセージが表示されるのを待ち、シャットダウンが完了した後に再起動します
  2. journalctl -p5ターミナルで実行し、を押しENDてsystemdジャーナルの最後に到達します(-p5大量のゴミを除去します)
  3. を押して検索を開始し/、検索語を入力しますtimed out. Killing.
  4. SHIFT+N繰り返し押すことで後方検索
  5. 各一致のの行は、どのアプリケーションが不正な動作をしていたかを示しています。Killing process 1234 (jack_thru) with signal SIGKILL.

常に同じアプリケーションである場合、それが何をするのか、そしてシャットダウン時になぜ停止しないのかを知りたいです。そうしないと、問題を解決するのがより複雑になる可能性がありますが、まだヒントが得られる場合があります。

幸運を!:)


1
この正しい答えをありがとう。私の場合、Fedora 30の「lpf」通知が原因であり、lpf-guiで選択解除された通知| 通知を有効にします。
vk5tu

5

Arch Linuxのredditフォーラムで同じ問題を検索しました。

ここに私のために働く解決策があり ますhttps://www.reddit.com/r/archlinux/comments/4bawf7/a_stop_job_is_running_for_session_c2_of_user/d17th3u

ウォッチドッグをインストールする

# pacman -S watchdog

そして、起動時にサービスを開始します。

# systemctl enable watchdog.service

サービスを開始して、メッセージが表示されないようにします

# systemctl start watchdog.service

私はこのhttps://gist.github.com/dianjuar/98d02af4050dc2df8ae6f18695d44ca3の要点を作成します


ガイドに従いましたが、問題は解決しません。ともあれ、ありがとう。
macnguyen

2
この修正に他の影響はありますか?どうやら watchdogそれが遅れたり、他のテストに失敗した場合、ハードウェアは、システムをリセットします。そのため、質問のタイムアウトが発生すると、ウォッチドッグはコンピューターをリセットします。他の回答のようにタイムアウトを短縮しただけで、システムがよりきれいにシャットダウンするのではないかと思います。またwatchdog、他の望ましくない状況で強制的にリセットするのだろうかと思います。
スパルホーク16

あなたのマニュアルページを読みました。ウォッチドッグは、すべてが問題ないことをLinuxカーネルに伝えるリセットを防ぐと思います。
Diego Juliao

> / dev / watchdogを開き、少なくとも1分に1回はカーネルがリセットしないように十分な頻度で書き込みを続けます。
ディエゴジュリアオ

OpenSuSEにはwatchdogという名前のパッケージがないため、これは実際には役に立ちません:(
David Faure

4

ここで、vboxでDebian 9を使用して機能するソリューションを見つけました。シャットダウンまたは再起動時に通常の120秒の遅延が発生していました。

https://forums.kali.org/showthread.php?32498-Delay-90-seconds-on-shutdown

Ironmanが言うように:

解決策は、シェルを開いて「今すぐシャットダウン」してから、マシンが再びオンになったら「リブート」を実行し、メッセージが消えて、今後のリブートがハングしなくなることです。

「sudo shutdown now」を使用しましたが、再起動の遅延はなくなりました。簡単すぎるように思えますが、私(および他の人)にとってはうまくいきました。

HTH


8
なぜこの答えに非常に多くの賛成票があるのですか?それは私にはうまくいきませんでしたし、なぜそれがうまくいくべきかについての手がかりを与えません。
ロドリゴ

私のために働いたが、なぜそうなったのかはまだ不明である。
pstryk

3

Kali [2017.01]で同様の問題が発生し、ログアウト遅延が交互に表示されます:

「ユーザーDebian-gdmのセッションc1で停止ジョブが実行されています」

「UID 132のユーザーマネージャーで停止ジョブが実行されています」

私は、NetworkManagerシャットダウンする前に最初に停止するか、それを無効にして、1つのエラーを取り除くことができました:

# To get rid of: "A stop job is running for User manager for UID 132"
systemctl disable NetworkManager 
systemctl stop NetworkManager 

これはおそらく、再起動時に修正されるか、別の方法で配置する必要があります。

その他の遅延については、成功していません。GDM(Gnome Display Managerpulseaudioまたはに関連しているようですdbus。そのため、問題を特定することができなかったため、他の投稿で既に述べたようにDefaultTimeout*Sec=5sエントリを設定するしかありませんでしたsystem.conf

調査される可能性のあるその他の問題は次のとおりです。

# systemctl --state=masked --state=not-found --state=failed

  UNIT                           LOAD      ACTIVE   SUB  DESCRIPTION                   
 tmp.mount                      not-found inactive dead tmp.mount                     
 auditd.service                 not-found inactive dead auditd.service                
 console-screen.service         not-found inactive dead console-screen.service        
 festival.service               not-found inactive dead festival.service              
 kbd.service                    not-found inactive dead kbd.service                   
 live-tools.service             masked    inactive dead live-tools.service            
 plymouth-quit-wait.service     not-found inactive dead plymouth-quit-wait.service    
 plymouth-quit.service          not-found inactive dead plymouth-quit.service         
 plymouth-start.service         not-found inactive dead plymouth-start.service        
 systemd-sysusers.service       not-found inactive dead systemd-sysusers.service      
 systemd-update-done.service    not-found inactive dead systemd-update-done.service   
 systemd-vconsole-setup.service not-found inactive dead systemd-vconsole-setup.service
 syslog.target                  not-found inactive dead syslog.target                 

LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.

そして:

# systemd-cgls -u user-132.slice

Unit user-132.slice (/user.slice/user-132.slice):
├─user@132.service
 ├─pulseaudio.service
  └─739 /usr/bin/pulseaudio --daemonize=no
 ├─at-spi-dbus-bus.service
  ├─704 /usr/lib/at-spi2-core/at-spi-bus-launcher
  ├─709 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
  └─712 /usr/lib/at-spi2-core/at-spi2-registryd --use-gnome-session
 ├─dbus.service
  └─694 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
 └─init.scope
   ├─597 /lib/systemd/systemd --user
   └─600 (sd-pam)
└─session-c1.scope
  ├─577 gdm-session-worker [pam/gdm-launch-environment]
  ├─613 /usr/lib/gdm3/gdm-x-session gnome-session --autostart /usr/share/gdm/greeter/autostart
  ├─618 /usr/lib/xorg/Xorg vt1 -displayfd 3 -auth /run/user/132/gdm/Xauthority -background none -noreset -keeptty -verbose 3
  ├─697 /usr/lib/gnome-session/gnome-session-binary --autostart /usr/share/gdm/greeter/autostart
  ├─721 /usr/bin/gnome-shell
  └─752 /usr/lib/gnome-settings-daemon/gnome-settings-daemon

2
この回答は、少なくとも(多くの可能性のうち)個々のマシンで問題を引き起こしている可能性があるものを見つける方法に関する情報を提供します。さらに別の問題が後ということですpoweroffshutdown、我々はカント、実際の犯人を見るにはログイン。この問題が発生した場合、systemdはcglsからの出力をログに記録する必要があります。現時点でできる最善の方法は、出力が保存されsystemd-cgls、ハングが再び発生した場合に後で確認することです。
デュアネフ

2

これは史上最も友好的な検索エンジンの最初の結果の1つであるため、ここにソリューションを追加します。GnomeデスクトップでArch Linuxを使用しています。現在のカーネル:4.16。

でアクティブになるA stop job is running for Session c2 of user ... (1min 30s)たびRemote Loginにメッセージが表示されSettings > Sharing、アクティブになりましSharingた。

私はそれを無効にするたびに、Gnomeのシャットダウンボタンを使用してコンピューターを正常にシャットダウンしました。

「リモートログイン」はSSH以外の何物でもないので、NetworkManagerを無効にするとおそらくSSHも無効になるため、not2qubitの答えも機能すると想定しています。


1

1つのアプリが原因である場合もあります。これが発生する直前に行われた変更を記憶しておくと、原因を特定するのに役立ちます。skypeforlinux-stable-binArch Linux にインストールした後、同じ問題が発生しました。シャットダウンする前にそのアプリを閉じることで問題は解決しました(シャットダウンする前にこれを自動的に行うスクリプトを書きました)。


0

私はこの問題を長い間抱えていたので、自分の解決策を共有すると思った。

問題は、Google Chromeがバックグラウンドで実行されており、コンピューターの電源をオフにしても閉じないことでした。したがって、最善の解決策は、その機能をオフにすることです。

  1. Google Chromeの設定に移動します。
  2. 「詳細」をクリックします。
  3. 「システム」に移動します。
  4. 「Google Chromeを閉じたときにバックグラウンドアプリの実行を継続する」を無効にします。

ここに画像の説明を入力してください

これで解決しました。それが役に立てば幸い。

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