Как запустить скрипт для входа / выхода Unity?

Используйте этот учебник: HOWTO: PulseAudio Fixes & amp; Системная поддержка эквалайзера

Выполнять только часть A.

Это должно исправить проблему Connection failed: Connection refused.

Для выхода монофонического звука (если проблема все еще не исправлено) Мне нужно больше информации на звуковой карте, есть много креативных карт X-fi.

Но сначала вы можете попробовать открыть pavucontrol и перейти на вкладку Конфигурация и попробовать разные профили и посмотреть, работает ли одна из них лучше других.

Я также нашел ошибку, которая кажется связанной ( HOWTO: PulseAudio Fixes & System Equalizer Support ), но она должна быть исправлена ​​уже, поэтому попробуйте активировать репозиторий backports: откройте Synaptic, перейдите в Настройки-> Репозитории и на вкладку «Обновление», а затем установите флажок «Неподдерживаемые обновления», закройте окно, перезагрузите в Synaptic и затем обновите все свои пакеты.

1
задан 15 November 2016 в 20:15

2 ответа

Учитывая ваше требование запуска задания при входе в Unity, а не для других логинов, работа над стартовой сессией кажется идеальной.

Возможно, вы заметили это: процессы, которые вы запускаете после входа в GUI, находятся под вторым процессом init. Этот init является правильной инициализацией Upstart, и вы можете запускать и останавливать сеансовые задания на основе событий, испускаемых им. Никаких прав root не требуется. Еще лучше (или хуже в зависимости от перспективы), это еще не полностью поддерживается для систем без головы. Вход в систему SSH не запускал пользовательский init из быстрого теста, который я сделал сейчас.

Чтобы создать задание сеанса, создайте новый файл .conf в ~/.config/upstart. Это основной каталог по умолчанию для заданий сеанса Upstart ($XDG_CONFIG_HOME/upstart), создайте его, если его не существует. Вот пример задания:

tee ~/.config/upstart/myjob.conf <<EOF
description "My job"
start on desktop-start
stop on desktop-end

script 
       firefox 'http://upstart.ubuntu.com/cookbook/#session-job'
end script
EOF

Вы можете вручную управлять им:

start myjob 
# or
initctl start myjob

Команда service используется для управления заданиями системы (в /etc/init.d или [ f10]). Для контроля заданий сеанса необходимо использовать команду session job , которая используется для взаимодействия с Upstart.

См. [F12] для большего количества событий, которые вы можете использовать. [!d7 ]

9
ответ дан 24 May 2018 в 04:11
  • 1
    Я не заметил ... но ... я согласен - работа на стартовой сессии выглядит идеально. Я, вероятно, пропустил что-то очевидное ... но создав ~ / .config / upstart / myjob.conf (как описано выше), когда я запускаю «сервис myjob start " Я получаю "myjob: непризнанный сервис" Есть идеи? – aSteve 31 August 2014 в 23:17
  • 2
    Решил: мне нужно было использовать «начать myjob». вместо «сервис myjob start». Другой полезной командой был «список initctl». – aSteve 31 August 2014 в 23:59
  • 3
    @aSteve жаль об этом. Я исправил это, – muru 1 September 2014 в 11:22
  • 4
    Нет проблем. Подход с выскочкой / сессией определенно выглядит правильно. Тем не менее, я еще не определил лучший способ использовать его для выполнения отдельных (недолговечных) сценариев запуска и остановки. Могу ли я использовать только один файл .conf, или мне нужно 2? Если это «услуга», или «задача»? Должен ли я использовать pre / post start и pre / post stop? Мне не нужен / нужен процесс для запуска между запуском и остановкой ... если, я думаю, есть простой способ поместить значок на панель инструментов ... хотя это, возможно, слишком много - для моих целей. – aSteve 1 September 2014 в 15:31
  • 5
    В заключение. После многого взлома ... Я обнаружил, что мне нужно, чтобы myendtask был запущен " на конце сеанса & quot ;, а не "на рабочем столе". Это несколько противоречиво, но оно работает. (В конце концов!) – aSteve 2 September 2014 в 02:56

Вот несколько советов по запуску скрипта после входа в систему:

Сценарий StackOverflow Linux после загрузки: заметки Cliff должны помещать ваш * .sh-файл в файл /etc/profile.d.

Если вы хотите запускать скрипты при загрузке, вот несколько советов для этого:

Сценарий StackOverflow Linux после загрузки : заметки Cliff должны использовать /etc/rc.local или кронтаб.

-1
ответ дан 24 May 2018 в 04:11
  • 1
    Ни один из этих вариантов не выглядит «правильным». Я только хочу выполнить сценарий, когда я вхожу в систему / отключен в смысле начала / окончания сеанса единства. Я не хочу запускать свои скрипты каждый раз, когда появляется новый вход в систему. Новые входные данные могут быть удаленно инициированы через ssh и т. Д., Но я не хочу, чтобы они выполняли сценарий, поскольку они не инициируют новый сеанс Unity (на консоли). – aSteve 30 August 2014 в 03:30

Другие вопросы по тегам:

Похожие вопросы: