table of contents
other sections
REBOOT(2) | Linux-Programmierhandbuch | REBOOT(2) |
BEZEICHNUNG¶
reboot - Neustart oder Strg-Alt-Entf ein-/ausschaltenÜBERSICHT¶
/* Für Libc4 und Libc5 sind der Bibliotheks- und der Systemaufrufidentisch. Seit Kernel-Version 2.1.30 gibt es die symbolischen
Namen LINUX_REBOOT_* für die Konstanten und ein viertes
Argument für den Aufruf: */
RB_*-Namen bekommen und der Bibliotheksaufruf ist ein
Ein-Argument-Wrapper für die drei Argumente des Systemaufrufs: */
BESCHREIBUNG¶
Der reboot()-Aufruf startet das System neu oder schaltet den Tastendruck für den Neustart ein/aus (Strg-Alt-Entf, englisch CAD für Ctrl-Alt-Delete; er kann mittels loadkeys(1) geändert werden). Dieser Systemaufruf wird (mit EINVAL) fehlschlagen, außer wenn magic gleich LINUX_REBOOT_MAGIC1 (0xfee1dead) und magic2 gleich LINUX_REBOOT_MAGIC2 (672274793) ist. Seit 2.1.17 ist jedoch auch LINUX_REBOOT_MAGIC2A (85072278) und seit 2.1.97 außerdem LINUX_REBOOT_MAGIC2B (369367448) und seit 2.5.71 auch LINUX_REBOOT_MAGIC2C (537993216) als Wert für magic2 erlaubt. (Die hexadezimalen Werte dieser Konstanten haben eine Bedeutung.) Das Argument cmd kann die folgenden Werte haben:- LINUX_REBOOT_CMD_CAD_OFF
- (RB_DISABLE_CAD, 0). Strg-Alt-Delete wird ausgeschaltet. Die bedeutet, dass das Tastenkürzel Strg-Alt-Delete veranlasst, dass ein SIGINT-Signal an Init (Prozess 1) gesandt wird, woraufhin dieser Prozess über die richtige Aktion entscheidet (möglicherweise: alle Prozesse beenden, Platten synchronisieren, Neustart).
- LINUX_REBOOT_CMD_CAD_ON
- (RB_ENABLE_CAD, 0x89abcdef). Strg-Alt-Delete wird eingeschaltet. Die bedeutet, dass das Tastenkürzel Strg-Alt-Delete sofort die mit LINUX_REBOOT_CMD_RESTART verbundene Aktion veranlassen wird.
- LINUX_REBOOT_CMD_HALT
- (RB_HALT_SYSTEM, 0xcdef0123; seit 1.1.76). Die Nachricht »System halted.« wird ausgegeben und das System wird angehalten. Falls vorhanden, wird die Steuerung an den ROM-Monitor übergeben. Wenn kein sync(2) vorausgeht, werden Daten verlorengehen.
- LINUX_REBOOT_CMD_KEXEC (seit Linux 2.6.13)
- Einen Kernel ausführen, der vorher mit kexec_load(2) geladen wurde. Diese Option ist nur verfügbar, falls der Kernel mit CONFIG_KEXEC konfiguriert wurde.
- LINUX_REBOOT_CMD_POWER_OFF
- (0x4321fedc; seit 2.1.30). Die Nachricht »Power down.« wird ausgegeben, das System wird gestoppt und jegliche Stromzufuhr unterbrochen, wenn möglich. Falls kein sync(2) vorausgeht, werden Daten verlorengehen.
- LINUX_REBOOT_CMD_RESTART
- (RB_AUTOBOOT, 0x1234567). Die Nachricht »Restarting system.« wird ausgegeben und es wird sofort ein Standard-Neustart ausgeführt. Wenn kein sync(2) vorausgeht, werden Daten verlorengehen.
- LINUX_REBOOT_CMD_RESTART2
- (0xa1b2c3d4; seit 2.1.30). Die Nachricht »Restarting system with command '%s'« wird ausgegeben und sofort ein Neustart ausgeführt (unter Verwendung der in arg angegebenen Zeichenkette). Wenn kein sync(2) vorausgeht, werden Daten verlorengehen.
RÜCKGABEWERT¶
Für die Werte von cmd, die das System stoppen oder neu starten, gibt ein erfolgreicher Aufruf von reboot() nichts zurück. Für die anderen cmd-Werte wird bei Erfolg Null zurückgegeben. Bei einem Fehler wird immer -1 zurückgegeben und errno entsprechend gesetzt.FEHLER¶
- EFAULT
- Problem bei der Abfrage von Daten aus dem Adressraum des Benutzers unter LINUX_REBOOT_CMD_RESTART2.
- EINVAL
- falsche magische Zahlen oder cmd
- EPERM
- Der aufrufende Prozess verfügt nicht über ausreichende Privilegien, um reboot() aufzurufen. Die Fähigkeit CAP_SYS_BOOT wird benötigt.
KONFORM ZU¶
reboot() ist Linux-spezifisch und sollte nicht in portierbaren Programmen benutzt werden.SIEHE AUCH¶
sync(2), bootparam(7), capabilities(7), ctrlaltdel(8), halt(8), reboot(8)KOLOPHON¶
Diese Seite ist Teil der Veröffentlichung 3.42 des Projekts Linux- man-pages. Eine Beschreibung des Projekts und Informationen, wie Fehler gemeldet werden können, finden sich unter http://www.kernel.org/doc/man-pages/.ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Chris Leick <c.leick@vollbio.de> erstellt.31. Oktober 2010 | Linux |