Warum setzt Debian die Login-Shell der Benutzersynchronisation auf / bin / sync?

14

syncist eines der von Debian selbst erstellten Benutzerkonten. Ich frage mich, warum Debian seine Login-Shell auf /bin/syncanstatt setzt /bin/false. Wie verwendet Debian dieses Benutzerkonto?

Cyker
quelle

Antworten:

24

Dies ist dokumentiert in /usr/share/doc/base-passwd/users-and-groups.txt.gz:

synchronisieren

Die Shell des Benutzers syncist /bin/sync. Wenn das Kennwort auf einen leicht zu erratenden Wert festgelegt ist (z. B. ""), kann jeder das System an der Konsole synchronisieren, auch wenn er kein Konto auf dem System hat.

Dies ist wirklich ein historisches Artefakt, ich würde syncheutzutage nicht erwarten, dass ein Benutzer auf diese Weise eingerichtet wird. In der Vergangenheit war es hilfreich, einen solchen Benutzer zu haben, damit Personen mit physischem Zugriff auf eine Konsole ( z. B. in einem Serverraum oder einem Labor voller Workstations, wie Sie es an Universitäten finden würden) das Risiko eines Datenverlusts verringern können Herunterfahren eines Systems (um sich von einem unerwünschten Prozess zu erholen oder einfach die Arbeitsstation zu verwenden, wenn sie vom vorherigen Benutzer gesperrt wurde). Unix-Systeme vor Debian hatten in der Regel einen syncBenutzer und einen shutdownBenutzer, mit dem Sie ein System ordnungsgemäß herunterfahren konnten, ohne das rootKennwort zu kennen. (Auf unseren Sun SPARCstations haben wir nur STOPA boot...)

Wie Peter Cordes erwähnte, sind auf vielen Systemen andere Mechanismen verfügbar, um ein sicheres Herunterfahren oder Neustarten von einer Konsole aus zu gewährleisten, ohne sich authentifizieren zu können als root: ACPI-Ereignisse, die durch Drücken des Netzschalters ausgelöst werden (was zu einem sauberen Herunterfahren führt). oder CtrlAltDel(was zu einem sauberen Neustart führt). AltSysRqkann als letzter Ausweg zum Synchronisieren, Beenden, Trennen und Neustarten verwendet werden, ist jedoch kein sauberer Neustart. Wie von JdeBP erwähnt , syncist es eine sehr alte Idee, einen Benutzer zu haben, die zumindest bis in die frühen 1980er Jahre zurückreicht.

Stephen Kitt
quelle
4
Von den Benutzern wird nichts erwartet. Administratoren können das System auf diese Weise einrichten, wenn sie möchten. Der historische Kontext ist hier relevant: Damals, als der syncBenutzer hinzugefügt wurde, gab es keine Alt + SysRq-Combos, und ein Linux-System war eher ein Server oder ein gemeinsam genutztes System in einem Labor als ein Einzelbenutzer-Laptop oder Desktop. Es war hilfreich, Benutzern mit Zugriff auf die Konsole eine Möglichkeit zu bieten, ein System sicher auf ein unsauberes Herunterfahren vorzubereiten, damit sie Systeme ohne Root-Zugriff neu starten und gleichzeitig das Risiko eines Datenverlusts verringern können.
Stephen Kitt
2
Es sei darauf hingewiesen, dass anstelle eines shutdownKontos Standardinstallationen einiger (vieler?) Linux-Distributionen so eingerichtet sind, dass Strg + Alt + F1 (um zu einer Textkonsole zu gelangen, falls auf dem aktuellen VT ein grafischer Anmeldebildschirm ausgeführt wird) ausgeführt werden Mit Strg + Alt + Entf wird ein shutdown -r nowoder ein Äquivalent ausgelöst . Physischer Zugriff = Möglichkeit, einen sauberen Neustart auszulösen, auch ohne SysRQ.
Peter Cordes
1
@PeterCordes note "Unix-Systeme vor Debian" - das ist vor 1993 ;-). Aber ja, auf aktuellen Systemen gibt es oft andere Möglichkeiten, Dinge ohne Verwendung syncoder shutdownBenutzer zu tun . (Um ein bisschen wählerisch zu sein, haben heutzutage viele Linux-Distributionen den DM auf VT1. Einige haben nicht einmal mehr Text-VTs!)
Stephen Kitt
1
zurück, als der syncBenutzer hinzugefügt wurde ... Linux als Idee existierte nicht. Diese Konvention geht zumindest auf die frühen 1980er Jahre zurück.
JdeBP
1
Sie müssen sich daran erinnern, dass einige dieser Systeme aus einer Zeit stammen, bevor es "Personal Computer" gab. Als solche Synchronisation könnte es sich um ein Band oder ein anderes schrecklich langsam laufendes Medium wie Token Ring oder Disketten handeln. Gleichzeitig waren diese Systeme "zerbrechlich" genug, dass ein Aus- und Wiedereinschalten sie beschädigen könnte. Wenn Ihre USV 5 Minuten bis zum Ausfall anzeigt, fahren Sie herunter und überspringen die Synchronisierung, damit Sie nicht einen Multi-Millionen-Dollar-Automaten ruinieren. Diese Probleme existieren größtenteils nicht mehr.
Coteyr