Seus comandos não estão funcionando porque /etc/init.d/smbd
e /etc/init.d/nmbd
têm o seguinte no início:
if init_is_upstart; then
exit 1
fi
Portanto, como o init
no Ubuntu agora é Upstart ( /etc/init.d/
é do SysV), você precisa executar os scripts start-stop a partir do diretório /etc/init/
. O /etc/init.d/
ainda existe para compatibilidade com versões anteriores porque muitos programas ainda usam esse diretório.
Para facilitar as coisas para você, o Ubuntu tem o comando service
:
sudo service smbd stop
sudo service nmbd stop
Durante a execução como root
:
service smbd stop
service nmbd stop
service
pesquisará primeiro no diretório /etc/init/
e, em seguida, /etc/init.d/
. service
é eficiente em outro sentido: se houver dois scripts com o mesmo nome nesses dois diretórios (como no caso de smbd
e nmbd
), o script Upstart (em /etc/init/
) terá precedência sobre o script SysV (em código%).
Além disso, sua entrada /etc/init.d/
pode ser simplificada:
0 22 * * 0-4 service samba stop && service smbd stop && service nmbd stop
cron
garante que o próximo comando seja executado somente se o anterior for bem-sucedido (por exemplo, código de saída &&
).