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 && ).