Onde armazenar o script cronjob?

18

Eu preferiria não mantê-lo no meu /home/myusernamediretório. Existe uma prática recomendada de onde armazenar seus scripts de shell para cronjobs? No nível raiz?

Estou executando o ubuntu server 12.04 agora.

tarabyte
fonte
1
Por que você não deseja armazená-lo em seu diretório pessoal? Se eles são para você pessoalmente, é exatamente onde deveriam estar - provavelmente em algum subdiretório bem conhecido. Se eles são para o sistema tem um todo, talvez eles devam estar em outro lugar. (A distinção pode ser vaga, se você é o único usuário.)
Keith Thompson
1
Realmente não há "resposta" para essas perguntas ... apenas muitas preferências.
Mdpc
você pode encontrar alguns por padrão em/usr/sbin
tony gil

Respostas:

19

Normalmente, eu coloco o meu em:

  • /usr/local/bin/ para que scripts sejam executados por mais de um usuário normal
  • /usr/local/sbin/ para scripts que devem ser executados como root

Dessa forma, você separa a tarefa que o script realiza, do cron, que apenas automatiza o lançamento.

Você precisará de raiz para armazenar arquivos lá.

Sirex
fonte
"Você precisará de raiz para armazenar arquivos lá." - Não, se você definir as permissões corretamente. Normalmente, eu faço com que /usr/localseus subdiretórios sejam graváveis ​​em grupo e me adiciono ao grupo (digamos install). (Claro que você vai precisar de raiz para definir as permissões em primeiro lugar.)
Keith Thompson
Eu sou o usuário principal e tenho privilégios de root. eu preferiria que ninguém mais editasse isso, então estou inclinado para / usr / local. não existe um diretório padrão / mycronjobs que as pessoas geralmente criam?
tarabyte
se você quiser que mais ninguém possa editá-lo. torne-o propriedade de root e defina 500 ou 700 permissões nele. - você pode até fazer root: <seu grupo> @ 550 ou 770. para obter um efeito semelhante, com a possibilidade de editar sem fazer root. imho, é mais limpo apenas o sudo antes de editar o script e ele é de propriedade do root.
Sirex
6
@terabyte, o diretório padrão geralmente ~/biné adicionado ao $ PATH. Você pediu a melhor prática, pois está salvando seus scripts pessoais em seu diretório pessoal. É mais organizado e facilita muito a atualização posterior.
terdon
se esse é um script pessoal (ninguém mais precisa executá-lo), o terdon está correto.
Sirex