Tak jsem to pochopil správně.
Uživatel "bla" chce spustit příkaz jako uživatel "blub" ?
Pak by mohlo fungovat něco takového:
sudo -u blub /path/to/command
Pokud to potřebujete udělat, aniž byste byli požádáni o heslo, přidejte následující řádek do /etc/sudoers (pomocí příkazu visudo):
bla ALL=(blub) NOPASSWD: /path/to/command
můžete pracovat s bitovými oprávněními SUID a SGID (všimněte si, že to může být opravdu nebezpečné)
udělte oprávnění ke spuštění tohoto souboru skupině, do které patří uživatel, do kterého skript spouštíte, a nastavte prostřednictvím SUID komukoli, kdo tento skript spustí, aby jej spouštěl jako uživatel, který skript vlastní
sudo chmod 4751 /path/to/my/file
sudo chgrp somegroup /path/to/my/file
Poté stačí skript spustit jako userB kdo je členem nějaké skupiny a bude spuštěn jako userA a některá skupina
ls -l /path/to/my/file
-rwsr-xr-- userA somegroup /path/to/my/file