Убей менеджер дисплеев и запусти другой со скриптом
У меня есть небольшой скрипт, в котором я убиваю gdm3 и запускаю сеанс X. Это работает, но я должен запустить его 3 раза.
export DISPLAY=:0
var = $(pidof gdm3)
kill $(var)
X :0 &
xterm &
export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so
Что я должен сделать, чтобы он заработал за один раз?
1 ответ
Решение
Я думаю, что ваша проблема связана с процессами отца и ребенка. Когда запускается gdm3 - учитывая, что ваши скрипты должны запускаться трижды - он предполагает наличие одного отца и двух дочерних процессов.
Попробуйте отредактировать ваш скрипт в цикле; что-то вроде этого:
экспорт DISPLAY=:0 var = $(pidof gdm3) пока [! -z "$ var"] действительно уничтожить $(var) var = $(pidof gdm3) сделано X:0 & xterm & export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so