У меня есть сценарий оболочки bash, который необходимо запускать от имени пользователя root. Если пользователь запускает его, у него запрашивается пароль root, и сценарий повторно запускается в подоболочке. ./$0 &
Допустим, пользователь по имени «Джон» запускает скрипт. После того, как он введет пароль root, сценарий перезапустится как root, но как я могу узнать, кто первоначально запустил сценарий (Джон) из самого сценария? На данный момент я выкладываю файл с оригинальным лаунчером, на который я могу сослаться позже, но это уродливо.
Другие варианты, которые я рассматривал, используют список процессов, но опять же, должно быть более элегантное решение.
GNU bash, версия 4.2.45(2)-выпуск (x86_64-slackware-linux-gnu)