今日のセッションの筆記録:
x@yz:~$ shutdown now
User nobody is logged in on ???.
Please retry operation after closing inhibitors and logging out other users.
Alternatively, ignore inhibitors and users with 'systemctl poweroff -i'.
shutdown now
いつも、このようなものを見たことがない。これは何ですか? nobody
のビジネスは???
?私は自分のシステムの唯一のユーザーであり、nobody
を台無しにしたことがありません
編集(コメントごと):
x@yz:~$ ps -aux | grep nobody
nobody 2666 0.0 0.0 45408 132 ? Ss May 09 0:00 /lib/systemd/systemd --user
nobody 2667 0.0 0.0 163956 8 ? S May 09 0:00 (sd-pam)
x 11189 0.0 0.0 24480 1004 pts/0 S+ 02:50 0:00 grep --color=auto nobody
x@yz:~$ ps -U 65534
PID TTY TIME CMD
2666 ? 00:00:00 systemd
2667 ? 00:00:00 (sd-pam)
それをすべて明確にするために:-
1。どのようにして誰もあなたのシステムにやって来ませんでしたか?
多くのLinuxおよびUnixディストリビューションのフレッシュインストールでデフォルトで作成される疑似ユーザーは誰もいません
2。誰もユーザーではないのですか?
" Nobody "ユーザーは、システムに対する最小の権限を持っています。ファイルを所有しておらず、特権グループに属しておらず、他のすべてのユーザーが持っているもの以外の機能はありません。どのユーザーにもシェルが割り当てられていません。
~$ Sudo grep nobody /etc/passwd
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
3。 nobodyユーザーの目的は何ですか?
初期のUnixおよびLinuxディストリビューションでは、誰もいないユーザーのもとでデーモン(たとえば、Webサーバー)を実行して、システムの残りの部分へのダメージを制限することが一般的でした。任意のファイルまたは特権付き権限へのアクセス。
しかし問題は、nobodyユーザーで実行されている複数のデーモンがある場合、これはもう意味がありません。そのため、今日のようなデーモンには独自のユーザーがいます。
4。どのように誰もシステムにログインしていませんか?
誰も実行していないサービス/デーモンが実行されている可能性があります。サービスの例としては、httpd、nfs、postfixなどがあります。
5。 nobodyユーザーの下でシステムで実行されている2つのプロセスは何ですか?
6。 nobodyユーザーの下で実行されていたサービスがもう実行されていないのに、なぜプロセス(systemdおよびsd-pam)がまだ残っているのですか?
まあこれはバグとして報告されています
SystemdユーザーがPAMセッションを適切に閉じません。
Sd-pamサブプロセスがpam_open_session()の後に特権をドロップするため、Systemdはpamセッションを適切に閉じることができません。そのため、pam_close_session()はrootではなくユーザーとして実行され、セッションをクリーンアップするために特権タスクを実行する必要があるPAMモジュールを破壊します。
これについての詳細:
https://github.com/systemd/systemd/issues/8598
https://github.com/systemd/systemd/issues/135
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=803907;msg=5