Como posso descobrir a implementação do cron no Ubuntu?

0

Wikipedia diz

With the advent of the GNU Project and Linux, new crons appeared. The most prevalent of these is the Vixie cron, originally coded by Paul Vixie in 1987. Version 3 of Vixie cron was released in late 1993. Version 4.1 was renamed to ISC Cron and was released in January 2004. Version 3, with some minor bugfixes, is used in most distributions of Linux and BSDs.

In 2007, Red Hat forked vixie-cron 4.1 to the cronie project and included anacron 2.3 in 2009.

Other popular implementations include anacron and dcron. However, anacron is not an independent cron program. Another cron job must call it. dcron was made by DragonFly BSD founder Matt Dillon, and its maintainership was taken over by Jim Pryor in 2010.[9]

A webcron solution schedules ring tasks to run on a regular basis wherever cron implementations are not available in a web hosting environment.

No Lubuntu 18.04, eu tento descobrir qual é a minha implementação do cron, como para qualquer outro software instalado, mas falho:

$ cron --version
cron: invalid option -- '-'
usage: cron
$ crontab --version
crontab: invalid option -- '-'

Eu raramente tenho dificuldade em descobrir a versão de um programa instalado e me pergunto por que é difícil para mim? Como vou descobrir isso?

Obrigado.

    
por Tim 31.10.2018 / 00:09

4 respostas

4

Experimente man cron . Ele identifica o cron do meu sistema (Ubuntu 18.04) como Vixie Cron.

    
por 31.10.2018 / 00:21
3

No caso do Ubuntu, seria melhor procurar qual pacote fornece o comando crontab , e não o comando cron , que pode nem existir. O padrão é fornecido pelo pacote cron (Vixie cron), mas pelo menos duas outras alternativas também estão presentes:

~ aptitude search '~Pcron'
p   bcron-run     - Bruce's cron system
i   cron          - process scheduling daemon
p   cron:i386     - process scheduling daemon
p   systemd-cron  - systemd units to provide cron daemon & anacron functionality

Nether bcron nem systemd-cron forneça um binário /usr/sbin/cron (bcron começam com bcron ), mas ambos fornecem o comando crontab e um arquivo /etc/crontab .

    
por 31.10.2018 / 02:39
1

Você sempre pode usar a função de busca em packages.ubuntu.com , onde você pode encontrar a versão atual para o seu lançamento o sistema local pode ficar para trás se você não estiver aplicando atualizações). Isso geralmente inclui um link para o pacote upstream.

Para descobrir qual pacote, você pode usar dpkg --search /usr/sbin/cron (ou onde type cron te aponta para o binário).

No caso do cron , você é apontado para Site do ISC .

Se você quiser investigar a origem diretamente, também poderá apt-get source cron buscar o código-fonte usado para criar o cron para seu sistema.

    
por 31.10.2018 / 00:32
1

Não há uma solução única que funcione em todos os lugares para cada pacote.

Para o Ubuntu 18.04, você pode usar o site deles:

link

Isso tem um link para um arquivo de direitos autorais que mostra que é o Vixie cron.

Você também pode verificar o binário:

% strings /usr/sbin/cron | grep Vix 
@(#) Copyright 1988,1989,1990,1993,1994 by Paul Vixie

No RedHat 7 e derivados, um strings no binário mostra que era ISC

% strings /usr/sbin/crond | grep Cron | head -1
@(#) ISC Cron V4.1
    
por 31.10.2018 / 02:02