В Linux есть простая возможность для запуска команды из-под другого пользователя. Например:
$alexander> su alexander0 -c 'yandex-disk status'
Команда su запустит команду yandex-disk status из-под (правильнее, «с правами») пользователя alexander0.
У меня (в Linux Mint) su также, как и sudo спрашивает пароль текущего пользователя.
Кстати, можно сделать так, чтобы su не спрашивало пароль для определенных групп пользователей. Подробно об этом: http://arsmx.ru/archives/706
Кратко: надо отредактировать /etc/pam.d/su - он вообще очень хорошо самодокументирован, надо только раскомментировать нужное, и чуть поправить. (Я не проверял: задачи не стояло).
Теоретически su без пароля может оказаться большой дырой в системе безопасности. Поэтому, если это действительно зачем-то надо,то лучше сделать отдельную группу, в нее пользователя, ему права только на то, что надо запускать без пароля, и уже из-под него запускать через su.
Чтобы в debian-based системах запустить команду из-под суперпользователя, есть специальная команда sudo:
$alexander> sudo cat /etc/hosts
При этом команда запросит пароль текущего пользователя (в данном примере - пользователя alexander).
См.также: Монтирование без пароля - там в том числе про настройку sudo для выполнение отдельных команд без пароля.