Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (GNU/Linux, *NIX, *BSD und Co) » Shutdown aus C-programm löst Reboot aus?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
03.09.2003, 18:15 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hallo,
wenn ich versuche in einem C-Programm


C++:
system("/sbin/init 0");


oder

C++:
system("/etc/init.d/halt");



auszuführen fährt der rechner zwar runter, startet dann aber wieder. Woran liegt das? (Das Programm wird als root ausgeführt)
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
03.09.2003, 18:25 Uhr
Pablo
Supertux
(Operator)


Dann ruf /sbin/shutdown auf, wenn du sowieso als root das machst.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
03.09.2003, 18:47 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


lol?

habs nun rausgefunden:


C++:
int main(void)
{
  // ...
  return system("/etc/init.d/halt"); // reboot
}




C++:
int main(void)
{
  // ...
  system("/etc/init.d/halt"); // shutdown
  return 0;
}




--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
03.09.2003, 19:23 Uhr
Pablo
Supertux
(Operator)


Was??????

Zitat:

man system

RETURN VALUE
The value returned is -1 on error (e.g. fork failed), and the return status of the command otherwise.



Naja, ich finde ein bisschen logisch. system liefert den Wert den des aufrufenden Procs. zurück. Wenn du return system(); hast, dann wird system aufgerufen, das Programm in system ausgefühert und muss dann den Wert zurückgeben. Also fährt der Rechner hoch, um den Wert zurückzugeben.
Wenn die Funktion nicht system zurückgeben muss, dann gibt es keinen Grund warum der Rechenr hochfahren muss,

Mann, ich finde das so komisch..... das ist die einzige logische Erklärung, die mir einfällt.

--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
03.09.2003, 19:39 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


normal sollte doch das programm durch den halt aufruf terminieren?!?
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
03.09.2003, 19:49 Uhr
Pablo
Supertux
(Operator)


Ja, das weiß ich auch, aber wieso das so ist, hab ich keine Ahnung. Finde ich echt komisch. Vielleicht hat @beefy ne Ahung, wieso.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
03.09.2003, 20:00 Uhr
0xdeadbeef
Gott
(Operator)


Ich werd das morgen mal austesten. Wirklich Sinn macht es aber nicht, finde ich. /etc/init.d/halt ist ein skript, oder? Was steht da drin?
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
03.09.2003, 20:03 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


/sbin/halt -p



naja es funktioniert nun mit

/sbin/init 0

und theoretisch auch mit

/etc/init.d/halt
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
03.09.2003, 22:39 Uhr
0xdeadbeef
Gott
(Operator)


BTW: Ihr liebt den genauso wie ich, was? Vor allem Synchron-VögelnVogel-Zeigen

Synchron sieht aber der hier noch besser aus:

--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
04.09.2003, 08:08 Uhr
FloSoft
Medialer Over-Flow
(Administrator)



Zitat:
0xdeadbeef postete

Synchron sieht aber der hier noch besser aus:


Ist wohl das Abrisskommando?
--
class God : public ChuckNorris { };

Dieser Post wurde am 04.09.2003 um 08:18 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (GNU/Linux, *NIX, *BSD und Co) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: