sync
は、Debian自体によって作成されたユーザーアカウントの1つです。 Debianがログインシェルを/bin/sync
ではなく/bin/false
に設定する理由を知りたいと思います。 Debianはこのユーザーアカウントをどのように使用しますか?
これは /usr/share/doc/base-passwd/users-and-groups.txt.gz
:
sync
ユーザー
sync
のシェルは/bin/sync
。したがって、パスワードが推測しやすいもの( ""など)に設定されている場合、システムにアカウントがない場合でも、コンソールでシステムを同期できます。
これは本当に歴史的なアーティファクトであり、私はsync
ユーザーがこのようにこのように設定されることを今日は期待しません。これまでは、コンソールに物理的にアクセスできる人(egをサーバールームやワークステーションでいっぱいのラボに配置できるように、このようなユーザーがいると便利でした。大学で見つける)は、システムをシャットダウンするときのデータ損失のリスクを減らすことができます(不正なプロセスから回復するため、または以前のユーザーによってロックされたままのワークステーションを使用するため)。 Debianより前のUnixシステムには、sync
ユーザーとshutdown
ユーザーがいて、実際にroot
パスワードを知らなくてもシステムを適切にシャットダウンできる傾向がありました。 (Sun SPARCstationでは、 STOPAboot
...)
Peter Cordes が言及しているように、root
として認証されずにコンソールから安全にシャットダウンまたは再起動できる他のメカニズムが多くのシステムで利用可能であることに注意する価値があります:によってトリガーされるACPIイベント電源スイッチを押す(これにより、正常にシャットダウンします)、または CtrlAltDel (クリーンな再起動につながります)。 AltSysRq 同期、強制終了、マウント解除、再起動の最後の手段として使用できますが、完全な再起動ではありません。 JdeBP で述べたように、sync
ユーザーを持つことは非常に古いアイデアであり、少なくとも1980年代初頭までさかのぼります。