Desde a atualização do crontab do meu usuário foi eliminado. Esta não é a primeira vez que isso acontece este ano e é uma dor restaurá-lo a cada vez.
Eu gostaria de poder fazer backup do crontab para meu usuário, mas para isso preciso saber onde ele está armazenado.
Na verdade, não é recomendado lidar com esses arquivos manualmente. Por
crontab
página de manual:Os arquivos abaixo
/var/spool
são considerados temporários/funcionais, é por isso que eles provavelmente são excluídos durante uma atualização, embora uma olhada mais de perto noscron
scripts de atualização do pacote possa esclarecer isso.De qualquer forma, é sempre uma boa prática fazer backup de suas entradas cron ou mantê-las em um arquivo em seu diretório pessoal.
Suponho que você esteja usando
crontab -e
para criar arquivos crontab em tempo real. Nesse caso, você pode obter uma "cópia" do seu arquivo crontab fazendocrontab -l
. Encaminhe isso para um arquivo para obter um "backup":Em seguida, você pode editar esse arquivo my-crontab para adicionar ou modificar entradas e, em seguida, "instalá-lo" fornecendo-o ao crontab:
Isso faz a mesma verificação de sintaxe que o
crontab -e
.Está armazenado dentro
/var/spool/cron/crontabs
da pasta sob o nome de usuário.Eu finalmente descobri porque meus crontabs e a instalação do Postfix continuavam quebrando após a inicialização. É uma razão muito estúpida, mas...
Eu tinha
/var/spool
montado como umatmpfs
unidade de RAM.Parece idiota e é, mas eu segui um dos antigos ajustes de SSD para prolongar a vida útil do meu SSD. Ao fazê-lo, montei cegamente
/tmp
,/var/tmp
e/var/spool
comotmpfs
sem pensar nas repercussões. Achei que/var/spool
era como/proc/
ou/run/
e que só era útil para a duração da sessão. Eu estava claramente errado.Para listar todos os cron jobs de todos os usuários em seu sistema:
Uma alternativa para o seu problema seria colocá-los na pasta cron.d e especificar o usuário apropriado por cron como no exemplo: