Можно по Cron запускать обёртку, определяющую номер дисплея, из обёртки стартовать всё остальное для нужного дисплея. Этот код - идея ядра такой обёртки. В Cron есть редуцированная поддержка shell скриптования прямо в его файлах, но она небогата, и скорее всего нужна обёртка.
Есть засада. who для пользователей вошедших с локальной, аппаратной консоли (клавиатуры), не даёт "соседский" номер дисплея. Для SSH, VNC клиентов номер есть. С чего бы это пробовал поискать, сходу не находится. Может быть в природе этого есть ответ на главный вопрос. Может нет.
Но, опять же, можно фиксировать факты входа и выхода и вести учёт номерам дисплеев.