Desabilitar cron jobs para um usuário específico

Desabilitar cron jobs para um usuário específico

Eu tenho uma lista de trabalhos nos crontabs para user1, user2. Quero impedir que os trabalhos user2sejam executados.

Tentei listar user2no cron.deny, mas isso só impede que ele acesse o seu crontab. Os trabalhos listados em user2ainda crontabsão executados.

Como desabilito tarefas cron para um usuário específico?

Responder1

Força bruta!

crontab -u fred -e
%s/^/#/
:wq

Provavelmente existe uma maneira mais elegante de fazer isso, mas, a menos que você faça isso o tempo todo, use o martelo que tiver.

Responder2

A maneira mais fácil de desabilitar o crontab para um usuário específico é localizá-locrontabe renomeie-o. A página de manual do Debian paracrondiz:

cron searches its spool  area  (/var/spool/cron/crontabs)  for  crontab
files  (which  are named after accounts in /etc/passwd); crontabs found
are loaded into memory.

Portanto , basta renomear o arquivo para algo que não esteja na senha, geralmente fornecendo um sufixo como disabled, ou similar.offlinedead

mv -vi /var/spool/cron/crontabs/user2 /var/spool/cron/crontabs/user2.disabled

No Debian (e sistemas relacionados como Ubuntu) isso produz a seguinte entrada em /var/log/syslog:

(user2.disabled) ORPHAN (no passwd entry)

Certifique-se de adicionar também user2ao arquivo /etc/cron.deny, caso contrário o usuário poderá criar um novo crontab para si mesmo.

Reative o crontab do usuário excluindo a entrada /etc/cron.denye renomeando seu crontab:

mv -vi /var/spool/cron/crontabs/user2.disabled /var/spool/cron/crontabs/user2

Responder3

Excluir /var/spool/cron/user1ou user2? e você também deseja adicionar esses nomes de usuário, /etc/cron.denycaso contrário eles poderão adicionar esses cron jobs de volta

Responder4

Se você deseja bloquear o trabalho crontab para um usuário específico, certifique-se de que você esteja logado com o usuário root, o usuário root só tem acesso aos arquivos crontab. 1.Em seguida, vá para o diretório /etc/cron.d neste diretório, você pode ver o arquivo cron.deny, insira o nome de usuário específico que o usuário deseja bloquear usando o editor vi ou outro.

informação relacionada