
Root köra script via cron i Ubuntu? [LÖST]
Root köra script via cron i Ubuntu? [LÖST]
Jag har problem att få cron att köra skript. Skriptet behöver ha behörigheter som root och jag provade därför att köra det som root i crontab, utan framgång - skriptet exekverar inte. I princip fungerar inget i crontab om man kör som root. Det slog mig då att rootanvändaren är inaktiverad i Ubuntu, vilket borde vara den uppenbara anledningen till att skriptet inte körs, eller hur? Finns det något sätt att köra skriptet som min vanliga användare och använda sudo? I så fall, hur? Och om jag ska köra med sudo måste jag väl skriva mitt lösenord med klartext i skriptet, vilket inte känns helt bekvämt? Eller tänker jag fel? 

Senast redigerad av 1 Majo, redigerad totalt 23 gånger.
- mcNisse
- Inlägg: 5211
- Blev medlem: 06 feb 2007, 20:51
- OS: Debian
- Utgåva: Vet inte/ingen utgåva passar
Re: Root köra script via cron i Ubuntu?
I principip gör du så här för att köra cronjob som root.
Lägg till de jobb du vill köra... klartt.
Kod: Markera allt
sudo crontab -e
Re: Root köra script via cron i Ubuntu?
Nu hänger jag inte riktigt med...var skriver jag det?mcNisse skrev:I principip gör du så här för att köra cronjob som root.
Lägg till de jobb du vill köra... klartt.Kod: Markera allt
sudo crontab -e

- mcNisse
- Inlägg: 5211
- Blev medlem: 06 feb 2007, 20:51
- OS: Debian
- Utgåva: Vet inte/ingen utgåva passar
Re: Root köra script via cron i Ubuntu?
I terminalen så klart
Har tråden flyttats från nybörjar forat?

Re: Root köra script via cron i Ubuntu?
Jag öppnar /etc/crontab med Nano och lägger till följande rad:mcNisse skrev:I terminalen så klartHar tråden flyttats från nybörjar forat?
05 01 * * * root /bin/mitt_script.sh
Sparar ändringarna och därefter körs mitt script klockan 01:05 varje natt. Fungerar klockrent om rootanvändaren är aktiverad, men inte om root är inaktiverad som i Ubuntu. Min fråga var hur man löser det? Det jag kommer på är att aktivera root eller försöka använda sudo i scriptet. Var kommer Terminalen in i det hela? Om jag kollar mansidan för Cron säger den följande om ditt förslag:
-e This option is used to edit the current crontab using the editor specified by the VISUAL or EDITOR environment variables. After you exit from the editor, the modified crontab will be installed automatically.
Hur får du ihop det?
- Konservburk
- Inlägg: 5919
- Blev medlem: 07 apr 2007, 22:28
Re: Root köra script via cron i Ubuntu?
Det manualbladet säger är att om du kör kommandot:
så kommer den att öppna roots crontab-fil med nano. Sedan är det bara för dig att lägga in cron-jobben som vanligt, t.ex: 05 01 * * * /usr/local/bin/mitt_script.sh
Kod: Markera allt
EDITOR=nano sudo crontab -e
Re: Root köra script via cron i Ubuntu?
Ok, det verkar fungera. Stort tack!Konservburk skrev:Det manualbladet säger är att om du kör kommandot:
så kommer den att öppna roots crontab-fil med nano. Sedan är det bara för dig att lägga in cron-jobben som vanligt, t.ex: 05 01 * * * /usr/local/bin/mitt_script.shKod: Markera allt
EDITOR=nano sudo crontab -e


- micke_nordin
- Inlägg: 1539
- Blev medlem: 21 aug 2008, 17:03
- OS: Ubuntu
- Utgåva: 22.10 Kinetic Kudu
- Kontakt:
Re: Root köra script via cron i Ubuntu?
Om någon av någon konstig anledning inte skulle tycka om att hacka i crontab i terminalen borde det väl också funka att köra:
Eller?
/Micke
Kod: Markera allt
gksudo gnome-schedule
/Micke

Re: Root köra script via cron i Ubuntu?
Hmm...det verkar inte fungera trots allt. Jag kollade i syslog för den tidpunkt som var satt i crontab och hittade detta meddelande:Konservburk skrev:Det manualbladet säger är att om du kör kommandot:
så kommer den att öppna roots crontab-fil med nano. Sedan är det bara för dig att lägga in cron-jobben som vanligt, t.ex: 05 01 * * * /usr/local/bin/mitt_script.shKod: Markera allt
EDITOR=nano sudo crontab -e
Cron (15552): User account has expired
Vad kan det betyda, månne? Syftas det på rootkontot eller vad?


- Konservburk
- Inlägg: 5919
- Blev medlem: 07 apr 2007, 22:28
Re: Root köra script via cron i Ubuntu?
Det är root-kontot som åsyftas här, ja. Gissningsvis så har det något att göra med expire-fältet för root-kontot i filen /etc/shadow. Ta bort allt som står i det fältet (allt mellan näst sista och sista kolonet) så borde det lösa sig.Majo skrev:Hmm...det verkar inte fungera trots allt. Jag kollade i syslog för den tidpunkt som var satt i crontab och hittade detta meddelande:
Cron (15552): User account has expired
Vad kan det betyda, månne? Syftas det på rootkontot eller vad?![]()
Re: Root köra script via cron i Ubuntu?
Tack igen! Nu verkar det fungera som det ska.Konservburk skrev:Det är root-kontot som åsyftas här, ja. Gissningsvis så har det något att göra med expire-fältet för root-kontot i filen /etc/shadow. Ta bort allt som står i det fältet (allt mellan näst sista och sista kolonet) så borde det lösa sig.Majo skrev:Hmm...det verkar inte fungera trots allt. Jag kollade i syslog för den tidpunkt som var satt i crontab och hittade detta meddelande:
Cron (15552): User account has expired
Vad kan det betyda, månne? Syftas det på rootkontot eller vad?![]()
