Now, I believe with setuid any user could execute the script.
Não é bem assim. Para tornar o script executável por todos os usuários, você só precisa definir as permissões de + rx:
chmod a+rx script
setuid significa que o script é sempre executado com as permissões do proprietário , isto é, se você possui o seguinte binário:
martin@dogmeat ~ % touch dangerous
martin@dogmeat ~ % sudo chown root:root dangerous
martin@dogmeat ~ % sudo chmod a+rx,u+s dangerous
martin@dogmeat ~ % ll dangerous
-rwsrwxr-x 1 root root 0 Sep 30 17:23 dangerous*
Este binário será sempre executado como root, independentemente do usuário que está executando. Obviamente, isso é perigoso e você precisa ser extremamente cuidadoso com o setuid, especialmente quando estiver escrevendo aplicativos setuid. Além disso, você não deveria estar usando setuid em scripts, pois é inerentemente inseguro no Linux.
Now, I understand the S denotes setuid with no executable bit. That is, no one can execute this file.
So my question is, what practical purposes do the setting of S bit have? I am trying to understand from an example perspective for setting this bit.
Eu não acho que haja um propósito prático, IMO é apenas uma combinação possível dos bits de permissão.