Depuis la mise à niveau, la crontab de mon utilisateur a été supprimée. Ce n’est pas la première fois que cela se produit cette année et c’est pénible de le restaurer à chaque fois.
J'aimerais pouvoir sauvegarder la crontab pour mon utilisateur, mais pour cela, j'ai besoin de savoir où elle est stockée.
cron
paquet mais je suis d'accord - ce n'est pas quelque chose qui devrait arriver.Réponses:
En fait, il n'est pas recommandé de manipuler ces fichiers à la main. Par
crontab
page:Les fichiers situés sous
/var/spool
sont considérés comme temporaires / fonctionnels, c'est pourquoi ils sont probablement supprimés lors d'une mise à niveau, bien qu'un regard plus attentif sur lescron
scripts de mise à niveau du paquet puisse faire la lumière sur ceci.Quoi qu'il en soit, il est toujours judicieux de sauvegarder vos entrées cron ou de les conserver dans un fichier de votre répertoire personnel.
Je suppose que vous utilisez
crontab -e
pour créer des fichiers crontab à la volée. Si c'est le cas, vous pouvez obtenir une "copie" de votre fichier crontabcrontab -l
. Transférez-le dans un fichier pour obtenir une "sauvegarde":Ensuite, vous pouvez éditer ce fichier my-crontab pour ajouter ou modifier des entrées, puis "l’installer" en le donnant à crontab:
Ceci effectue la même vérification de syntaxe que
crontab -e
.la source
crontab -l
est plus facile que de passer/var/spool/cron/crontabs/$USER
principalement à cause des autorisations bizarres sur ce fichier.iptables-save
de cron. Nice .../var/spool/cron/crontabs
est pratique de passer à travers lorsque vous voulez organiser ou examiner des crontabs de plusieurs utilisateurs.sudo grep -rHin "$string" /etc/cron*
(où la chaîne peut être une commande commedocker
,lftp
,iptables
, etc. Il est une bonne idée de vérifier crontab utilisateur aussi Voilà ce qui me conduit à ce Q & A..sudo grep -rHin "$string" /etc/cron* /var/spool/cron*
Son stocké dans le
/var/spool/cron/crontabs
dossier sous nom d'utilisateur.la source
J'ai enfin découvert pourquoi mon installation de crontabs et Postfix ne fonctionnait plus après le démarrage. C'est une raison vraiment stupide mais ...
J'avais
/var/spool
monté comme untmpfs
lecteur de RAM.Cela semble idiot et c'est le cas, mais j'avais suivi l'un des vieux réglages du SSD pour prolonger la vie de mon SSD. Ce faisant, je aveuglément montais
/tmp
,/var/tmp
et/var/spool
commetmpfs
sans penser aux répercussions. Je pensais que/var/spool
c'était comme/proc/
ou/run/
et que ce n'était utile que pour la durée de la session. J'avais clairement tort.la source
/tmp
tant que tmpfs, mais pas/var/tmp
ou/var/spool
./tmp
est utilisé pour le stockage temporaire qui peut être perdu au redémarrage./var/tmp
est utilisé pour le stockage temporaire qui restera après un redémarrage. Et comme vous l'avez découvert, les/var/spool
données doivent être traitées, elles resteront également après un redémarrage.Pour répertorier tous les travaux cron de tous les utilisateurs de votre système:
Une alternative à votre problème serait de les placer dans le dossier cron.d et de spécifier l'utilisateur approprié par cron, comme dans l'exemple:
la source
crontab -u
est exécuté à partir de votre système actuel.while read user
boucle pour gérer le cas où le nom d'utilisateur contient des espaces, mais apparemment, ce n'est pas un problème. Ensemble très limité de caractères de nom d'utilisateur.