Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Andere gebruiker dan root laten rebooten in Ubuntu [opgelost]  (gelezen 5683 keer)

digital123

  • Gast
Beste Ubuntu specialisten:

Ik heb een ubuntu 8.04 workstation.
Autologon voor jeroen.
Elke dag om 04.00 uur wil ik de workstation opnieuw booten.
Dit heb ik gedaan middels

$ sudo crontab –e
00 04 * * * shutdown -r now
dit werkt niet na een test (dit, omdat jeroen deze privilege niet heeft).
jeroen is al toegevoegd als sudo user.
Als ik vanuit de terminal een shutdown -r now uitvoer, dan krijg ik de volgende melding:

jeroen@123r5:~$ sudo adduser $user jeroen
[sudo] password for jeroen:
adduser: The user `jeroen' already exists.
jeroen@123r5:~$ shutdown -r now
shutdown: Need to be root
jeroen@123r5:~$

Weet iemand hoe ik het voor elkaar kan krijgen om toch een reboot uit te voeren met user: jeroen.
BVD.
« Laatst bewerkt op: 2009/07/15, 15:19:47 door digital123 »

Offline vanadium

  • Lid
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #1 Gepost op: 2009/07/12, 14:59:52 »
Dat je commandolijnvoorbeeld niet werkt, is logisch: het commando moet voorafgegaan worden door "sudo". Dan nog moet jeroen natuurlijk beheerdersbevoegdheden hebben (die hij heeft naar ik begrijp.

Van crontab weet ik niet veel, maar ik weet dat iedere gebruiker zijn crontab kan hebben. Om een shutdown te programmeren, moet je wellicht de crontab van de root (of een "systeembrede" crontab als zoiets bestaat) programmeren, niet die van jeroen. Ik vermoed dat zelfs een "sudo crontab -e"  enkel de crontab van jeroen bewerkt, want "sudo" is jeroen met administratorbevoegdheden, niet root. De crontab van jeroen wordt wellicht enkel met gewone user bevoegdheden uitgevoerd, waardoor het herstarten zo niet lukt.

Probeer eens "sudo crontab -eu root".

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #2 Gepost op: 2009/07/12, 15:11:43 »
je moet in crontab -e invullen:
00 04 * * * sudo shutdown -r now

Dan werkt de reboot.

Blijft wel de vraag waarom je een Linux systeem dagelijks wil herstarten. Een Ubuntu computer kan met gemak dagen lang zonder herstart werken. Zonder gevolg voor de prestatie.
Klik links bovenin op Documentatie

digital123

  • Gast
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #3 Gepost op: 2009/07/12, 16:07:31 »
testcees,

Bedankt voor de oplossing.
Heb crontab dusdanig ingesteld dat deze elke zondag reboot om 03.00 uur.
Thx voor de correcte oplossing!

Offline peter10

  • Lid
    • Mijn Hyve
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #4 Gepost op: 2009/07/12, 17:01:33 »
Verander je de naam van dit onderwerp even en zet je er [opgelost] in?

Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #5 Gepost op: 2009/07/12, 21:07:21 »
Rijst bij mij ook de vraag waarom je in godsnaam die pc aldoor wilt rebooten ??

Ik heb er hier een paar staan die nooit rebooten...
I don't suffer from insanity, I enjoy every minute of it.
Microsoft geeft je een raam, Linux geeft je een heel huis :D

digital123

  • Gast
Werkt toch niet
« Reactie #6 Gepost op: 2009/07/13, 19:08:47 »
Als je sudo shutdown -r now geeft, dan dien je eerst het wachtwoord voor sudo jeroen aan te geven. Dwz dat je altijd een wachtwoord in moet geven, voordat een shutdown -r uitgevoerd wordt. Dwz dat jeroen het systeem niet via crontab -e iedere zondag kan booten. Weet iemand hoe dit wel kan????.... dwz dat het systeem 1 x per week een reboot krijgt, zonder tussenkomst van een root / sudo???.

Ook al geef ik shutdown in /sbin/shutdown alle rechten voor jeroen, toch kan jeroen de workstation niet booten.
message: shutdown: Need to be root

Weet iemand hoe ik een workstation iedere week (zonder tussenkomst van een root or whatelse) kan rebooten op de één of andere manier?????, of, weet iemand hoe ik automatisch als root in kan loggen binnen ubuntu 8.04. Thx!

Offline tim_vb

  • Lid
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #7 Gepost op: 2009/07/13, 19:34:47 »
Doe eens sudo bash en  typ hierdan in crontab -e
Dan doe je een crontab als root deze moet wel de pc kunnen afsluiten

In uw crontab zet je dan gewoon 00 04 * * * shutdown - r now

Mvg. Tim

Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #8 Gepost op: 2009/07/13, 20:22:05 »
Je zou de volgende lijn kunnen toevoegen aan /etc/sudoers en dan testen of er dan geen password ingevuld hoeft te worden:

jeroen localhost = NOPASSWD: /sbin/shutdown
Maar zeker weten of dat werkt, en veilig is weet ik niet, ben geen specialist..

digital123

  • Gast
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #9 Gepost op: 2009/07/13, 20:26:36 »
Tim,

Dit is niet de oplossing.
je dient nog steeds in te loggen met sudo / root om de shutdown uit te voeren.
Ik heb een autologon ingesteld voor "jeroen" omdat je in eerste instantie niet automatisch in kan loggen als root.
het account "jeroen" met sudo priveleges kan de computer niet rebooten, zonder dat er een password ingvuld wordt.
Dwz dat ik geen automatische reboot kan bewerkstelligen met dit account.
Mijn vraag is dan ook: kan een account met sudo privileges automatisch iedere zondag een reboot uitvoeren .... of
kan root automatisch inloggen in ubuntu 8.04 (want "root" kan een reboot uitvoeren in crontab -e).
of ... kan een autologon account een reboot iedere zondag uitvoeren zonder tussenkomst van een administrator.
Conclussie: wat ik zou willen is een reboot iedere zondag, zonder dat ik zelf een aktie bewerkstellig.
is dit mogelijk?

Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #10 Gepost op: 2009/07/13, 20:32:18 »
of ... kan een autologon account een reboot iedere zondag uitvoeren zonder tussenkomst van een administrator.
Kan volgens mij met behulp van aanpassing sudoers bestand zodat er voor het sudo shutdown commando geen wachtwoord voor de gebruiker jeroen meer nodig is. Zie mijn post hierboven. (combineren met crontab natuurlijk zodat het automatisch gaat)

Is het proberen waard denk ik.

edit: een alternatief zou kunnen zijn om SUID van shutdown te setten, dan kan volgens mij iedere gebruiker herstarten als ware deze root.
sudo chmod +s /sbin/shutdownIn dit geval hoef je volgens mij geen sudo meer voor het commando shutdown te plaatsen.
maar ook hiervan weet ik niet of dit veilig is, en werkt! Het lijkt me in ieder geval een slechtere oplossing dan bovenstaande..
« Laatst bewerkt op: 2009/07/13, 20:43:30 door Thomas de Graaff »

Offline tim_vb

  • Lid
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #11 Gepost op: 2009/07/14, 08:17:21 »
Sorry voor het foute antwoord ben maar aan het meedenken  ;)
Heb je al eens geprobeerd om uw schutdown eerst in een scriptje te zetten dit dan uit te voeren met crontab volgens mij kun je dan meer dan gewoon in crontab

Anders heb je mischien hoe wel iets aan

http://Http://www.cyberciti.biz/tips/howto-schutdown-Linux-box-automatically.html

Maar volgens mij doen ze daar het zelfde zolals ik bedoelde cron uitvoeren als root
Groetjes,
Tim

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #12 Gepost op: 2009/07/14, 09:18:21 »
De manier die in je eerste post staat, is bijna correct. De reden dat het niet werkte komt niet omdat je niet genoeg rechten hebt, maar omdat cron het commando niet kan vinden.
Je moet in alle cron-scriptjes het volledige pad naar het commando opgeven.

Dit zou wel gewerkt hebben:
00 04 * * * /sbin/shutdown -r now
Omdat je sudo gebruikt hebt, bewerk je de crontab van root. Die heeft natuurlijk wel genoeg rechten om het uit te voeren.

In principe kan je ook /etc/crontab aanpassen. Dat is de crontab van het systeem zelf.

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #13 Gepost op: 2009/07/14, 11:07:13 »
Toch vreemd dat ik mijn oplossing (3e post) eerst had getest en het systeem op de geplande tijd een herstart deed. :|
Klik links bovenin op Documentatie

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #14 Gepost op: 2009/07/14, 11:11:46 »
Die sudo is wel heel raar:
* Is het de crontab van root, dan is sudo niet nodig. De rechten zijn er immers al.
* Is het de crontab van een willekeurige gebruiker, hoe wil je dan het wachtwoord voor sudo invoeren?

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #15 Gepost op: 2009/07/14, 12:12:26 »
Ik heb de test gedaan op mijn 9.04 werkstation met sudo crontab -e:
04 * * * * sudo shutdown -r now

En om vier minuten over heel ging het beeld echt plots "op zwart". Zonder wachtwoordvraag!

Mogelijk was het sudo wachtwoord "onthouden" van mijn terminalscherm en was ik te snel met een oplossing.

Wel heb ik gezien dat met 'sudo crontab -e' NIET de crontab van de gebruiker word aangepast.
Klik links bovenin op Documentatie

Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #16 Gepost op: 2009/07/14, 12:51:46 »
was al genoemd, post overbodig.

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #17 Gepost op: 2009/07/14, 12:59:15 »
Ik heb de test gedaan op mijn 9.04 werkstation met sudo crontab -e:
04 * * * * sudo shutdown -r now

En om vier minuten over heel ging het beeld echt plots "op zwart". Zonder wachtwoordvraag!
In welk scherm of op welke terminal had die vraag dan moeten komen? En hoe zou cron die vraag moeten stellen als er helemaal geen X server draait en er niemand is ingelogd op een TTY?

Citaat
Mogelijk was het sudo wachtwoord "onthouden" van mijn terminalscherm en was ik te snel met een oplossing.
Open maar eens een terminal en voer een commando met sudo uit. Open direct daarna een nieuw terminalvenster en voer weer een commando uit met sudo. Je zal dan opnieuw je wachtwoord in moeten voeren :)

digital123

  • Gast
Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #18 Gepost op: 2009/07/14, 19:18:22 »
Ondertussen van alles getest
maar het antwoord van Johan van Dijk is juist:

Je dient middels sudo crontab -e de volgende regel toe te voegen dat werkt:
00 04 * * * /sbin/shutdown -r now


op de site: https://help.ubuntu.com/community/Sudoers
is veel informatie over het bestand: /etc/sudoers (met dank aan Thomas de Graaff) maar ik heb dit niet voor elkaar gekregen om "jeroen" middels crontab -e de computer te booten. Vanuit de shell lukt dit ook niet: melding:
shutdown: Need to be root
jeroen@123r5:~$

op de site: http://crunchbang.org/archives/2007/10/26/howto-setup-a-crontab-file/
kun je informatie en uitleg krijgen over de crontab file wat handig is als je een taskmanager van MS$ gewend bent.

Allen bedankt voor de steun en het meedenken om het boot probleem op te lossen. Thx!

Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #19 Gepost op: 2009/07/14, 19:47:22 »
Mooi dat het werkt!

voor de volledigheid:
ik heb dit niet voor elkaar gekregen om "jeroen" middels crontab -e de computer te booten. Vanuit de shell lukt dit ook niet: melding:
shutdown: Need to be root
jeroen@123r5:~$
Jammer dat dit niet werkt. Ik heb het ooit gebruikt voor een Mythdora machine om die met een normaal account te kunnen laten afsluiten als de opnames klaar zijn (mbv. mythwelcome). Het kan zijn dat localhost vervangen door de naam van je machien helpt. Maar goed, niet meer nodig.

http://www.gratisoft.us/sudo/man/sudoers.html#nopasswd_and_passwd

edit: nog even topictitel aanpassen [opgelost]
« Laatst bewerkt op: 2009/07/14, 19:49:53 door Thomas de Graaff »

digital123

  • Gast
[opgelost]
« Reactie #20 Gepost op: 2009/07/14, 21:10:18 »
Thx Thomas de Graaff!

Re: Andere gebruiker dan root laten rebooten in Ubuntu
« Reactie #21 Gepost op: 2009/07/14, 22:07:51 »
Om de titel van het topic aan te passen moet je volgens mij de eerste post van het topic wijzigen. Je voegt dan [opgelost] toe aan de bestaande titel. Ik vergeet dit zelf regelmatig, maar het is wel heel handig voor mensen die problemen zoeken die opgelost dienen te worden als ze kunnen zien wat al is opgelost. De bestaande titel wel laten staan, anders kunnen anderen die een zelfde probleem tegenkomen het topic later niet meer vinden.

vriendelijke groet,
Thomas.