Как сделать автоматическое начало программы при каждом входе в систему?

Мне часто нужно запускать несколько программ, которые я использую каждый раз при запуске своего компьютера. Как я могу сделать так, чтобы всякий раз, когда я вхожу в систему, программа запускается автоматически?

1
задан 2 May 2014 в 08:04

7 ответов

Пользовательские сессии для приложений, которые должны запускаться после входа в систему

Альтернативный способ автоматического запуска приложений после входа в систему - определить пользовательский сеанс. Это имеет преимущество в использовании разных сеансов для разных задач, каждый из которых загружен разными приложениями.

Для этой цели мы создаем файл custom.desktop с правами root в /usr/share/xsessions со следующим содержимым (для GNOME / GDM ):

[Desktop Entry]
Name=Marco's Crowded Session
Comment=Custom ~/.xsession script
Exec=/home/username/.xsession
X-Ubuntu-Gettext-Domain=gdm

Используйте любое причудливое имя для своей сессии и замените username на свое имя.

Это запустит скрипт .xsession в каталоге HOME в войдите в систему, где мы можем добавлять любые приложения, которые нам нужно начинать после входа в систему.

Сценарий должен быть назван так, как определено в файле .desktop, то есть ~/.xsession в приведенном примере, с именем root и может иметь контент, подобный этому: [ ! d6]

#! /bin/bash

my-important-app [options] &
second-app [options] &
[...]                       # add other applications
gnome-session [options]

Опции для gnome-session могут быть опущены для загрузки сеанса по умолчанию. Дайте, например, --session=classic-gnome в качестве опции для запуска Classic GNOME Desktop в версии 11.04.

В следующий раз, когда мы войдем в систему, у нас будет выбор, чтобы начать «сложную сессию Марко» со всеми приложениями из сценария, работающего в дополнение к приложениям из gnome-session (или любой другой менеджер рабочего стола, который вы выбрали для запуска здесь).

Запуск других менеджеров рабочего стола

Для запуска другого «Замедленного сеанса Marco» desktop менеджер заменит последнюю строку из скрипта ~/.xsession следующим:

gnome-session --session=ubuntu для стандартного рабочего стола (с Unity в 11.04). gnome-session --session=classic-gnome для классического рабочего стола GNOME. startkde для менеджера рабочего стола KDE. startxfce4 для XFCE или при запуске Xubuntu.
28
ответ дан 25 May 2018 в 22:30

12.04 (Unity)

Мы можем добавить приложения в «Запуск приложений», открыв запись в правой части панели:

14.04 (Unity) и позже

Мы можем искать Dash для «приложений запуска»

enter image description here

или мы можем запустить запуск предпочтения от терминала с

gnome-session-properties

Это откроет окно, в котором мы увидим все установленные приложения, которые будут запускаться при запуске. Отметьте или отключите приложения там или выберите «Запуск приложений» , чтобы добавить новое приложение:

Если нам известна команда запуска приложения, просто введите это здесь, в строке «Command». Мы также можем добавить необязательный «комментарий» здесь.

Если мы не знаем команду, мы можем выбрать «Command» нашу файловую систему для установленных приложений. Многие приложения по умолчанию найдены, например. в /usr/share/application:

enter image description here

Выберите приложение для добавления в автозапуск.

Командная строка или программный подход

Как и в случае с графическим интерфейсом выше, мы можем вручную добавить файл .desktop к ~/.config/autostart. Содержимое этого файла может быть следующим:

[Desktop Entry]
Type=Application
Exec=</path/to/binary or command to execute>
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name=<Name_to_be_displayed>
Comment=<optional comment>

Обратите внимание, что в ванильной установке каталог ~/.config/autostart может еще не существовать. Нам нужно создать его, прежде чем мы сможем получить доступ к нему программно.

15
ответ дан 25 May 2018 в 22:30
  • 1
    Спасибо за программный подход, это именно то, что я искал. – Jacobo de Vera 27 August 2013 в 16:37
  • 2
    Это работает с рабочим столом Unity или мне нужен рабочий стол Gnome? Причина с Unity в 15.04 не работает. – YumYumYum 25 May 2015 в 00:41
  • 3
    @YumYumYum спасибо за уведомление - обновленный ответ :) – Takkat 25 May 2015 в 08:21
  • 4
    Является ли ~/.config/autostart переносной? Остальные два будут поддерживаться рабочей средой GNOME и Unity. – Ashhar Hasan 1 April 2016 в 17:30
  • 5
    Он доступен на всех X-системах, где мы указали другую спецификацию каталога. См. specification.freedesktop.org/autostart-spec/0.5/ar01s02.html – Takkat 1 April 2016 в 17:43

Если вы используете рабочую среду GNOME, то это довольно просто.

Перейдите к System>Preferences>Startup Applications,

Перейдите к System>Preferences>Startup Applications,

menu screenshot

И добавив приложение / сценарий, который вы хотите запустить при запуске, [d16 ]

И добавив приложение / скрипт, который вы хотите запустить при запуске,
14
ответ дан 25 May 2018 в 22:30
  • 1
    Для Gnome Shell вы должны открыть его, хотя Ctrl + F2 и набирать свойства gnome-session – Dielson Sales 29 October 2013 в 04:14
  • 2
    Можно ли это сделать на рабочем столе Unity? – YumYumYum 25 May 2015 в 00:23

Другим, возможно, более простым вариантом будет переход в меню «Системные / Предпочтения / Запуск приложения», затем выберите вкладку «Параметры» и отметьте «Автоматически помнить запущенные приложения при выходе из системы»

[!d1 ]

Это приведет к запуску любых приложений, которые вы запускаете при выходе из системы.

4
ответ дан 25 May 2018 в 22:30
  • 1
    +1, но с этим нужно обращаться осторожно. Если одно из запущенных приложений просто глючит или сбой X-сервера, у вас может получиться плохое обращение с системой без удовольствия (у меня это было однажды). – Takkat 19 March 2011 в 23:08
  • 2
    Да, я признаю, поэтому я тоже перестала его использовать. Всегда существует «гном-отказоустойчивый». сессии, я полагаю, но я не мог понять, как восстановить мою разбитую сессию. Это было много лет назад. Трудно поверить, что это произойдет в наши дни. – Scaine 19 March 2011 в 23:45
  • 3
    Как получить вкладку «Параметры» в Ubuntu 12.04? существует только один Startup Programs – yetanothercoder 10 August 2012 в 14:26
  • 4
    12.04 удалил "автоматически запоминать" вариант, который я показываю выше. Вам нужно искать Dash для «Startup Applications " затем вручную добавьте нужные записи. – Scaine 13 August 2012 в 03:45

Ни один из ответов (до сих пор) не дает независимого от пользователя решения.

Правильный способ (согласно этой теме) добавить некоторую программу автозавершения (названную Desktop Entry) пользовательским решением добавляет ее как файл .desktop здесь: [ ! d2]

/etc/xdg/autostart

Пример файла .desktop:

[Desktop Entry]
Name=MyScript
GenericName=A descriptive name
Comment=Some description about your script
Exec=/path/to/my/script.sh
Terminal=false
Type=Application
X-GNOME-Autostart-enabled=true

Кажется, нет необходимости chmod в его исполняемом разрешении. [F6] будет запускаться для любого пользователя регистрации, включая root, ubuntu или xubuntu (для пользовательских настольных компьютеров Live рассылки)

2
ответ дан 25 May 2018 в 22:30

В 11.04 вы нажимаете кнопку питания (справа на верхней панели) и выбираете Системные настройки. Вы найдете приложения для запуска в личных предпочтениях. Это тот же диалог, что и в предыдущих версиях Ubuntu.

1
ответ дан 25 May 2018 в 22:30

Я предполагаю, что вы можете добавить команду в System -> Preferences -> app Start

, затем нажмите «Добавить», введите имя somthing, например «Firefox start», имя части команды, нажмите [!d1 ]

«проверьте» и найдите исполняемый файл программы, который вам нужно запустить при входе в систему ... restart

надеюсь, что эта помощь вам понравится !!!

приветствует !!!

0
ответ дан 25 May 2018 в 22:30

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

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