Beitrag
von kemir » 30.11.2023 19:48:48
Das geht ja hier drunter und drüber.
Um welchen Benutzer geht es überhaupt? Nennen wir ihn 'bob', dann kann bob in sein HOME-Verzeichnis /home/bob schreiben.
Nach /home selbst kann/darf nur der Account 'root' schreiben, und legt dort üblicherweise die Homeverzeichnisse der Systembenutzer an, also z.B. /home/bob.
Nach /home/scripts sollte nur der Benutzer 'scripts' schreiben dürfen, falls es den gibt.
'root' darf natürlich überall schreiben, aber das ist ja hier nicht gewollt.
Weiterhin, weil der Fragesteller da einiges durcheinander wirft: das HOME-Verzeichnis von Benutzer 'root' ist /root , und das ist nicht das "root-Verzeichnis" ("/") !
Das eine ist das root-Verzeichnis des Systems, das andere sind die Home-Verzeichnisse der diversen Accounts, das Home_Verzeichnis des speziellen Accounts 'root' ist /root.
Das hat damit zu tun, dass 'root' sich auch dann einloggen können soll, wenn/falls das Darteisystem /home bei Systemstart noch nicht gemountet ist.
Apropos: /home sollte immer ein eigenes/separates Dateisystem sein, sonst legen unachtsame Anwender das System gerne (unbeabsichtigt) lahm.
Durch einen Dummy-Eintrag im Minutenrhythmus erst mal feststellen, ob cron an sich funktioniert und wohin das Script schreibt. Es gibt Systeme, da müssen User-Crontabs explizit erlaubt werden ...
Anstatt /home/irgendwas wäre sinnvoller, gleich das universelle ${HOME} zu nehmen, dann kann das Script von jedem für seine Dateien eingesetzt weden; und man findet nebenbei heraus, als welcher Benutzer der cron-Job ausgeführt wird.
Noch ein Wort zu den cron-Dateien: eine abschließende Zeile nur mit einem "#" (und ggf. mit beliebig vielen Leerzeichen) ist nicht erforderlich, allerdings reagiert cron oft unwirsch auf Leerzeilen, egal wo (das war früher zumindest so).
##