Sie sind nicht angemeldet.

1

04.09.2009, 13:39

[gelöst] Zeitschaltuhr

Hallo Leute,

ich suche ein kleines Tool, mit dem ich dem Rechner (Debian, Gnome) sagen kann: "Schalte Dich täglich um 23.30 Uhr aus!"

Weiße jemand Rat?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BorneBjoern« (08.09.2009, 11:02)


2

04.09.2009, 13:49

RE: Zeitschaltuhr

moin moin.

du suchst cron
for Windows problems: reboot
for Linux problems: be root

3

04.09.2009, 13:51

das geht wohl mit nem cron-job.
googe mal nach "cron" in verbindung mit "shutdown" oder sowas ... wird sich sicher was finden.

// edit: zu spaet ...

mfg,
julian

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »-=Freaky=-« (04.09.2009, 13:51)


4

04.09.2009, 13:58

RE: Zeitschaltuhr

Jeder User kann seine eigenen CronJobs einrichten.
Mit crontab -l kannst du dir die Jobs fuer den derzeit angemeldeten user anzeigen lassen.
Ein crontab -e hingegen editiert die Cronjobs.

mehr Infos zum format und Syntax findest du hier

noch ein kleiner Hinweis von mir:
da du den PC runterfahren moechtest, solltest du den cronjob als root einrichten.
for Windows problems: reboot
for Linux problems: be root

5

04.09.2009, 14:05

RE: Zeitschaltuhr

Geht das nicht irgendwie eleganter?
Unter KDE gibt es das Tool kshutdown. Funktioniert aber nicht unter Gnome.
Beim Thema "Arbeiten mit der Konsole" bin ich nicht sonderlich firm.

6

04.09.2009, 14:07

RE: Zeitschaltuhr

das ist doch elegant, schnell, effizient und vor allem, ressourcen sparend.

[edit]

ich wuerde mal ganz frech behaupten, dass jedes GUI - Tool crontab benutzt oder zumindest at.

Und meines Erachtens nach, ist es kein Problem, mal crontab in einem Terminal auszufuehren.

[/edit]
for Windows problems: reboot
for Linux problems: be root

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »BorneBjoern« (04.09.2009, 14:10)


7

04.09.2009, 14:43

RE: Zeitschaltuhr

Ich habs versucht. Bin mal gespannt, was passiert.
Statt Tag und Monat einen * eingegeben, Minute und Stunde gesetzt, als command shutdown now gesetzt und gespeichert.
Melde mich also morgen, wenn[ geklappt hat. Wenn nicht, auch.

Danke erstmal.

8

05.09.2009, 14:24

RE: Zeitschaltuhr

Hat nicht funktioniert.
Folgende Zeile unter crontab geschrieben:
# m h dom mon dow command
0 23 * * * shutdown now

Ergebnis sollte sein: Schalte den Rechner um 23 Uhr aus. Wo ist der Fehler????

9

05.09.2009, 14:37

man shutdown sagt :
ausschalten geht mit shutdown -h now

10

05.09.2009, 15:13

Zeitschaltuhr

ok, dann werd ich mal 23 Uhr abwarten.
Muss ich andere Programme vorher beenden?
Eingentlich doch nicht.

linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

11

05.09.2009, 18:38

RE: Zeitschaltuhr

mit welchen userrechten hast du denn den cronjob eingerichtet? als root? normale user dürfen unter normalen umständen keinen shutdown auslösen.
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

12

06.09.2009, 12:48

RE: Zeitschaltuhr

Tja, das war wohl nichts. Heute Morgen lief die Kiste noch. Wo ist mein Fehler?
Hier nochmal die Einstellungen in crontab
# m h dom mon dow command
0 23 * * * shutdown -h now

Eingerichtet über root terminal. muss da irgendwo ein sodu hin?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »wolfwis« (06.09.2009, 12:50)


13

06.09.2009, 15:10

du kannst es ja mal mit folgendem Eintrag in /etc/sudoers (kann je nach Distri auch anderswo sein) versuchen (user +rechner natürlich richtig setzen) :

<user> <Rechnername>=NOPASSWD:/sbin/shutdown -h now

der Befehl in der crontab lautet dann
sudo /sbin/shutdown -h now

ob das was hilft weiß ich auch nicht da ich den Fehler nicht sehen kann

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »delix« (06.09.2009, 15:20)


linuxerr

Prof. Dr. Schlaumeier

  • »linuxerr« ist männlich

Beiträge: 8 557

Wohnort: Mecklenburg, zur Entwicklungshilfe in Chemnitz/Sachsen ;-)

  • Nachricht senden

14

06.09.2009, 15:16

wenn das ein root-cronjob war, dann muss da nirgends ein sudo hinein. schau in die logdatei, was um 23.00 uhr gelogt wurde und schau in die root-mails, was crond mitgeteilt hat. in 95% der fälle ist es der fehlende pfad zum aufgerufenen kommando ...
Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt.
Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

15

07.09.2009, 15:04

Blackout auf ganzer Länge:

keine root-mails vorhanden
in die logdatei (tail -f) lässt er mich nicht reinsehen
Folgende Fehlermeldung: tail: Warnung: die Standardausgabe stetig zu verfolgen ist nicht wirksam

16

07.09.2009, 15:19

in welche log datei hast du denn nachgeschaut?

offensichtlich hast du beim Aufruf einen Fehler gemacht.

Der Standardpfad waere /var/log/messages und in diesem log steht jedesmal, wenn ein Cronjob gelaufen ist:
(Bei dem folgenden LOG-Ausszug handelt es sich um ein Beispiel aus dem LogFile einer meiner Server)

Quellcode

1
Sep  7 12:31:01 dns1 /usr/sbin/cron[3123]: (root) CMD (/root/bin/dhcp-file_check.sh 2>/dev/null)
Erklaerung:
=======

Spalte 1-3: . . . Datum
Spalte 4: . . . . .Hostname
Spalte 5: . . . . ./Pfad/zu/cron[ProzessID]
Spalte 6: . . . . .username fuer den CronJob
Spalte 7: . . . . .auszufuehrender Befehl (das steht in der crontab datei drinne, die du mit crontab -e bearbeitet hast

Probiere doch mal ein tail -f /var/log/messages
for Windows problems: reboot
for Linux problems: be root

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »BorneBjoern« (07.09.2009, 15:25)


17

07.09.2009, 15:27

Das war schon mal ne gute Idee Ich hab sudo -e probiert, pfadeigabe
Um 23.00 Uhr gibt es keinen job, der dort gelistet ist
Also keine cronjob

???????????

unter crontab -e ist das Ganze aber richtig gelistet

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »wolfwis« (07.09.2009, 15:27)


18

07.09.2009, 15:48

was soll das

Zitat

sudo -e
?!?

Okay, noch mal ganz von vorne.

Folgende Schritte sind notwendig, um diesen CronJob zu erstellen:

1. root werden (su -)
2. Cronjob definieren (crontab -e)

Quellcode

1
* 23 * * * /sbin/shutdown -h now 2>/dev/null

3. Cronjob anzeigen (crontab -l)
4. Zurueckkehren zu deinem normalen user (exit oder <CTRL>+<d>)
5. warten bis 23:00

du kannst natuerlich auch eine eigene Batch-Datei schreiben, in der du einfach nur ein "hallo" in das STDOUT pustet. Dieses Script kannst du ja gerne minuetlich und mit deinen Benutzerrechten ausfuehren.

Dafuer machst du am besten folgendes:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$> vi /home/{username}/bin/test.sh
#!/bin/bash

echo "Hallo du!"

-> Speichern

$> chmod 0700 /home/{username}/bin/test.sh
$> /home/{username}/bin/test.sh
Hallo du!
$> crontab -e

1 * * * * /home/{username}/bin/test.sh
-> Speichern
$> su -
#> tail -f /var/log/messages
for Windows problems: reboot
for Linux problems: be root

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »BorneBjoern« (07.09.2009, 15:54)


19

07.09.2009, 16:06

Hochspannend. Ich habe jetzt den cronjob genau so eingegeben, wie Du das geschrieben hast.
Wenn ich mir den job dann anzeigen lasse, dann fehlen die Pfadangaben.
Mein job sieht wie folgt aus:
* 23 * * * shutdown -h now

es fehlen also trotz speichern einige Element.
VERWIRRUNG
Gestern konnte ich den job (so wie er oben aussieht) doch auch eingeben.

Jetzt hats funktioniert!!

Abwarten bis 23 Uhr

Erst mal DANKE

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »wolfwis« (07.09.2009, 16:16)


20

07.09.2009, 16:21

Kann es sein, dass du vergessen hast deine aenderungen zu speichern und das noch der Eintrag ist, der nicht funktioniert?

[edit]
Damit du nicht wieder bis 23:00 warten muszt, ob das funktioniert, empfehle ich dir mal mit diesem "hallo-test-Script" deinen Cron zu testen
[/edit]
for Windows problems: reboot
for Linux problems: be root

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BorneBjoern« (07.09.2009, 16:23)


Thema bewerten