Avatar billede dk-andersson Nybegynder
15. juli 2011 - 13:05 Der er 11 kommentarer

crontab chmod howto??

Hej Eksperter

Jeg har en linux server hvor jeg oprettet nogle web users fra plesk. Her efter kan mine web users upload filer til deres mappe. Jeg har så et php script som henter deres oplysninger fra deres mapper og flytter dem. For at script kan få lov at flytte på deres filer skal mappen have 777 rettigheder og dette kan kun opnås ved at login med ssh og chmod mappen.

Min spørgsmål er om jeg ikke kan oprettet en crontab som hver time chmod alle mapper og filer i web_users.???

Min crontab:
0 * * * * /bin/chomd_script.sh

Min chmod_script.sh
#!/bin/sh
chmod -R 777 /var/www/vhosts/website.com/web_users

køre jeg mit script fra ssh virker det fint men i crontab ser der ikke noget?????
Avatar billede jakobdo Ekspert
15. juli 2011 - 13:22 #1
Har du oprettet crontab jobbet med root user?
Eller en almindelig bruger?

Root burde ihf. have adgang til alt.
Avatar billede dk-andersson Nybegynder
15. juli 2011 - 13:28 #2
jeg ssh til min server som root og køre følgende crontab -e så skulle mene at jeg gør det som root..
Avatar billede Wieseservices Nybegynder
15. juli 2011 - 13:43 #3
Vil mene du burde skrive den direkte sti til chmod.

For at finde stien til chmod skriv da: which chmod

#!/bin/sh
/bin/chmod -R 777 /var/www/vhosts/website.com/web_users

Udover dette burde du kunne se kørelsen i syslog.

Håber dette hjalp dig videre
Avatar billede lassebm Nybegynder
15. juli 2011 - 14:02 #4
er scriptet chomd_script.sh og ikke chmod_script.sh ?

Måske det er en tryk fejl her, men hvis du har copy/pastet kan det være derfor.

En anden ting, prøv evt. med et punktum (hvis at filen er executeable), ellers skal du bruge sh istedet for . (punktum).

chomd_script.sh
0 * * * * . /sti/til/script.sh

Eller.
0 * * * * sh /sti/til/script.sh

Når det så er sagt, så er jeg ikke sikker på at crontab, kan kører uendeligt, som der prøves her.

Måske det skal defineres til at kører hvert minut, eller hvert 2.

For hvert minut.
0-59/1 * * * * sh /sti/til/script.sh
Avatar billede dk-andersson Nybegynder
15. juli 2011 - 14:03 #5
det gjord ikke rigtig nogen forskel???? i min syslog kan jeg kun se at jeg har edit min crontab ikke at den har kørt... hvordan kan jeg få den til at lave en log på crontab så jeg kan se hvad der går galt?
Avatar billede dk-andersson Nybegynder
15. juli 2011 - 15:14 #6
Det er bare en slå fejl.... jeg har nu prøvet alle jeres forslag uden held

hvad skal jeg gør for at finde frem til hvorfor den ikke vil gøre dette script på server???
Avatar billede lassebm Nybegynder
15. juli 2011 - 15:25 #7
Prøv at indsætte nedestående i crontab filen, så burde du få fejl, når og hvis det fejler.

MAILTO="din@mail.adr"

Og med hvilke crontab parameter har du prøvet ?
Avatar billede dk-andersson Nybegynder
15. juli 2011 - 16:55 #8
Jeg fik løst det på denne måde

55 * * * * /bin/chmod -R 777 /var/www/vhosts/website.com/web_users

det virker helt fint.
Avatar billede ohhelpme Nybegynder
14. august 2011 - 22:50 #9
du skal blot skrive (HSUK at skrive SUDO først.. selvom du er logget ind som root)

>> sudo crontab -e

men hvorfor vil du chmod hver time?
Avatar billede ohhelpme Nybegynder
14. august 2011 - 22:52 #10
altså:

sudo crontab -e

55 * * * * chmod 777 /var/www/vhostd/website.com/web_users
Avatar billede fbh Nybegynder
06. september 2011 - 19:16 #11
ohhelpme: Der er da absolut ingen grund til at køre igennem sudo hvis man har spawned en root shell.


chmod 777 er i øvrigt en kæmpe stor sikkerhedsbrist der under ingen omstændigheder bør forekomme. Dernæst så er der noget helt andet der skal kigges på hvis det er nødvendigt at gøre det en gang i timen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester