1

Здравствуйте. Ситуация такая. Есть программа на с++ которая запускается по событию вставки носителя в usb порт(RUN udev). Смысл в том чтобы как то в этой программе определить имя пользователя который открыл графическую сессию( зарегистрирован в системе через графику)

2

Единственной, что пока видится.
Выполнить консольную утилиту "w" и любым доступным методом (файл, каналы и пр.) вернуть значение в программу.
Единственная проблема в том, что "w" вывподит все активные сессии (ssh, консоль, графика).