Я вставил следующий код мой .profile
ps cax | grep jackd > /dev/null
if [ $? -eq 0 ]; then
echo "Jack is aready running."
fi
if [ "$SESSION_TYPE" != "remote/ssh" ] && [ "$DISPLAY" ]; then
ps cax | grep jackd > /dev/null
if [ $? -eq 0 ]; then
echo "Jack is aready running."
else
jackd --sync -P80 -p128 -dalsa -dhw:UA25 -r48000 -p64 -n3 -Xraw &
jack_wait -w
alsaj &
~/deployed/syzmo/x86_64-GNU%2fLinux/syzmo_client_studio &
fi
fi
Когда я выхожу из системы от KDE и вхожу в систему на tty1, я вижу, что сообщение "Jack уже работает". При списке процессов я вижу, что запустил его, таким образом, я прихожу к заключению, что разъем никогда не останавливался. Как это могло быть?
Вот то, что я вижу от PS-u при входе в систему от tty1:
PID TTY TIME CMD
2053 ? 00:32:39 jackd
2079 ? 00:00:00 alsaj
2082 ? 00:11:00 alsa_in
10265 tty1 00:00:00 bash
10295 tty1 00:00:00 ps
Почему я все еще вижу jackd
и alsa_in
среди выполнения процессов?
Начиная с процессов не умирает, выходя из системы, должен быть соответствующий сценарий выхода из системы, который не работает как корень. Есть ли способ очистить любые побочные эффекты, вызванные .profile
?
Это все еще работает, потому что Вы не остановили его. Вы не должны запускать демонов как это в Вашем .profile. Обычно установленный jackd пакет соберется, чтобы быть автоматически запущенным и остановленным в подходящее время через выскочку.