Veröffentlicht 22. August 200817 j Moin. Ich möchte auf einen File Server einen CronTab anlegen, der einmal in der Woche (Donnerstag um 05:00) den Inhalt eines Ordners löscht... Hatte schonmal mit google Hilfe einen Crontab gebaut, der Daten innerhalb eines Ordner nach 15 Tagen immer löscht... find /data/data -type f -mtime +15 -exec rm {} \; nur wie leg ich den CronJob Befehl so an das der wie gesagt donnerstags um 5 uhr im ordner die daten löscht... bin in dem shell scripting jetzt nicht ganz so das genie...
22. August 200817 j 'crontab -e' legt afaik nur für den benutzer den cronjob an, mit dem man den befehl ausführt. Wenn es immer gestartet werden soll (egal welcher benutzer sich anmeldet), muss es manuell in der '/etc/crontab' eingetragen werden.
22. August 200817 j das sit völlig unabhängig davon, ob der user angemeldet ist oder nicht. hier wird in einem bestimmten benutzerkontext ein crontab-eintrag erzeugt - dieser wird grundsätzlich zur angegebenen zeit ausgeführt, unabhängig davon, was der user treibt. wobei: wenn der user gelöscht wird - geht dann eigentlich auch seine crontab flöten? wahrscheinlich ja - aber ich hab's noch nie ausprobiert.
22. August 200817 j Das Script sollte natürlich auch die entsprechenden Rechte haben. Also der User, unter dem der Cronjob laufen soll, muss das Script auch ausführen können.
29. August 200817 j Das Script sollte natürlich auch die entsprechenden Rechte haben. Also der User, unter dem der Cronjob laufen soll, muss das Script auch ausführen können. Das Script sollte folgende Berechtigung haben. Dann sollte es jeder ausführen können. rw-rw-rwx 1024 24 Jul <Scriptname> Aber grundsätzlich ist es richtig, dass es in der crontab des Users stehen sollte, dem auch die zu verarbeitenden Daten gehören. Andernfalls wird zwar das Script ausgeführt aber die Ordner/Dateien können mangels der Berechtigung nicht gelöscht werden.
29. August 200817 j Das Script sollte folgende Berechtigung haben. Dann sollte es jeder ausführen können. rw-rw-rwx 1024 24 Jul <Scriptname> Gehts noch ? Ein Script, das per Cron aufgerufen wird (wohlmöglich noch von root) und WORLD-WRITEABLE ist ?! :upps
29. August 200817 j Gehts noch ? Ein Script, das per Cron aufgerufen wird (wohlmöglich noch von root) und WORLD-WRITEABLE ist ?! :upps klassischer Anfängerfehler
29. August 200817 j klassischer Anfängerfehler Gerade wenn es um Webserver und Skripte geht ist das kein Anfängerfehler, sondern das was du meistens als erstes in einer Antwort bei Problemen findest. "777 ist doch kein Fehler, weil dann kann ja auf jeden Fall der User zugreifen!?"
30. August 200817 j Gerade wenn es um Webserver und Skripte geht ist das kein Anfängerfehler, sondern das was du meistens als erstes in einer Antwort bei Problemen findest. "777 ist doch kein Fehler, weil dann kann ja auf jeden Fall der User zugreifen!?" Für einen Zugriff reichen aber Leserechte (und Ausführungsrechte) völlig aus. Wenn ein Cronscript mit root Rechten ausgeführt wird und auch noch für jeden schreibar ist kann praktisch jeder User beliebig viele Befehle mit Root rechten ausführen....
30. August 200817 j Für einen Zugriff reichen aber Leserechte (und Ausführungsrechte) völlig aus. Das ist das was man überall im Internet findet. Weil es halt einfacher ist chmod 777 einzugeben, als sich Gedanken über User und Zugriffsrechte etc. zu machen. Ich sage nicht dass das richtig ist, ist aber so (siehe z.B. oben).
8. September 200817 j Hätte da mal ne allgemeine Frage: Gehen wir mal von diesem hypothetischen Fall aus ein Skript wurde als root-User angelegt und es kommen in diesem Skript Befehle vor, die nur als root-User durchgeführt werden können. Jetzt kommt der User hans, der in einer non-root-Gruppe ist und führt das Skript mit mod a+x aus. Mit welchen Berechtigungen wird das Skript gestartet?
8. September 200817 j Das wird natürlich als der User hans laufen und demenstprechend jede Menge Fehlermeldungen über fehlende Berechtigungen produzieren.
12. September 200817 j Ivanhoe, es ist zwar recht einfach, alles in die '/etc/contab' einzutragen aber das sollte man vermeiden. Die '/etc/crontab' wird bei jedem Systemupdate überschrieben, was bei 'crontab -e' nicht der Fall ist. Grüße,
12. September 200817 j Hallo Cellolein, wer überschreibt die /etc/crontab ? Ist mir selber noch nicht vorgekommen... tsg
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.