Eu só precisava fornecer o caminho completo para os dois comandos adicionais.
Cmnd_Alias WWWCMDS = /home/xxx/shop/update.sh,/usr/local/bin/geoipupdate,/usr/sbin/service memcached
www-data ALL=(ALL) NOPASSWD: WWWCMDS
e funcionou bem.
Aqui está o meu arquivo /etc/sudoers.d/www original:
Cmnd_Alias WWWCMDS = /home/xxx/shop/update.sh
www-data ALL=(ALL) NOPASSWD: WWWCMDS
Eu simplesmente quero adicionar dois comandos adicionais, então eu RTFM e vi que você só tem que separá-los por vírgula.
Cmnd_Alias WWWCMDS = /home/xxx/shop/update.sh,geoipupdate,service memcached restart
www-data ALL=(ALL) NOPASSWD: WWWCMDS
Mas isso gerou um erro de sintaxe. O que estou fazendo errado?