Was ist mein lokaler Dateipfad crontab -e? Ich möchte es über ein BASH-Skript einstellen

7

In meinem Ubuntu ist mein Benutzername "meuser". Wenn ich crontab -e mache, kann ich meine Regeln einrichten. Aber anstatt es mit crontab -e zu machen, wie kann ich es direkt mit einer Datei machen? Welche Datei kann ich nicht ändern?


quelle

Antworten:

7

Zitiert crontab der Manpage :

Es gibt eine Datei für die Crontab jedes Benutzers im Verzeichnis / var / spool / cron / crontabs. Benutzer dürfen die Dateien in diesem Verzeichnis nicht direkt bearbeiten, um sicherzustellen, dass nur Benutzer, die vom System zum Ausführen periodischer Aufgaben zugelassen sind, sie hinzufügen können. Dort werden nur syntaktisch korrekte Crontabs geschrieben. Dies wird erzwungen, indem das Verzeichnis nur von der crontab-Gruppe beschreibbar ist und der Befehl crontab mit dem für diese bestimmte Gruppe festgelegten setgid-Gebot konfiguriert wird.

Sie können diese Datei also nicht direkt in einem Skript bearbeiten (ohne die Einschränkungen zu umgehen). Sie können jedoch Folgendes tun: Erstellen Sie einfach eine Crontab-Datei irgendwo im Dateisystem und verwenden Sie sie dann

crontab <filename>

um es zu installieren.

Marcel Stimberg
quelle
0

Sie müssen sudo crontab -ein die Befehlszeile eingeben. Drücken Sie im geöffneten Editor die iTaste, um sie in den Cron einzufügen, den Sie hinzufügen möchten. Ich musste dies für meine feedafever.com-Installation auf jamescampbell.us/fever tun und es funktionierte hervorragend, wenn ich es von meiner Ubuntu-Serverinstanz auf amazon ec2 aus laufen ließ.

Jamescampbell
quelle