Как автоматически запускать приложения при входе в систему?
Как сделать так, чтобы приложение автоматически запускалось после входа в систему?
14 ответов
14.04 и позже
Откройте Dash и найдите "Startup Applications"
Теперь нажмите " Добавить" и введите команду для запуска приложения. Это можно найти в главном меню, если оно установлено (см. Ниже) или как показано в этом вопросе.
Использование главного меню ( alacarte )
Сначала откройте программу "Главное меню" (введите
Menu
в тире)Теперь выберите программу, которую вы хотите добавить в автозагрузку и нажмите на свойства.
Теперь обратите внимание на команду для этой программы.
Не GUI подход
Опытные пользователи могут захотеть поместить файл.desktop в ~/.config/autostart
запускать приложения после входа пользователя. Это может иметь следующее содержание:
[Desktop Entry]
Type=Application
Name=<Name of application as displayed>
Exec=<command to execute>
Icon=<full path to icon>
Comment=<optinal comments>
X-GNOME-Autostart-enabled=true
Для 11.04 и новее см. Здесь: Как автоматически запускать приложения при входе в систему?
Для более старых версий: если программа, которую вы хотите запустить при запуске, находится в меню " Приложения", вы можете перетащить ее в окно " Автозагрузка приложений", чтобы добавить ее в список.
Запустите приложения запуска из Dash
Нажмите на автозагрузку приложений
А затем нажмите на добавить
Введите имя программы, найдите команду и нажмите "Добавить".
Дополнение: Вот пример, который я использую для автозапуска Guake - версии Yakuake для Gnome:
Поместите это в поле "команда".
sh -c "sleep 120s; guake"
Это запускает guake автоматически, но ждет 2 минуты, прежде чем сделать это. Вы можете изменить 120 на то, что вы хотите.
Редактировать:
Для 14.04 и 16.04:
Введите Startup в Dash и запустите там форму Startup Application.
А затем просто выполните остальные шаги.
(обратите внимание, что если вы используете Ubuntu на другом языке, "автозагрузка" может не найти нужную программу. Попробуйте выполнить другой поиск на вашем языке)
И Unity, и Xfce4 имеют программы с графическим интерфейсом, которые позволяют вам контролировать запуск приложений.
Для единства:
Для Xfce4 Startup доступен инструмент "Настройки"> "Сеанс и запуск".
Изображение предоставлено Xubuntu Geek xubuntugeek
Если графический интерфейс не то, что вы хотите, и вы хотите более расширенный контроль, то вы можете поставить .desktop
файлы в ~/.config/autostart/
каталог для Xfce4, и .desktop
файл в ~/.config/autostart
Unity для запуска приложений после входа пользователя.
Проверьте этот вопрос, чтобы получить больше помощи при создании .desktop
файлы:
Также обратите внимание, что если вы хотите, чтобы запускаемое приложение запускалось только в XFCE, но не в Unity, вы должны поставить строку OnlyShowIn=XFCE
в .desktop
файл. это OnlyShowIn=Unity
для приложения только для Unity.
Возможно, вы захотите запустить его из CLI через:
$ gnome-session-properties
(на тот случай, если вы не используете GNOME;))
Взгляните на каталог $XDG_CONFIG_DIRS/autostart:
$ echo $XDG_CONFIG_DIRS/autostart
/etc/xdg/xdg-kde-plasma:/usr/share/upstart/xdg:/etc/xdg/autostart
который говорит, что в этом примере есть 3 каталога. Я хотел обрезать запись наутилус
sudo rm /etc/xdg/autostart/nautilus-autostart.desktop
в противном случае, если вы можете добавить его, создайте файл записи рабочего стола: sudo touch /etc/xdg/autostart/my-shell-autostart.desktop
добавить это содержимое:
[Desktop Entry]
Name=foo
Terminal=false
Exec=/path/shell.sh
Type=Application
Icon=/path/icon.png
Categories=Utility;
Ubuntu 13.10 с инструкциями UNITY
Чтобы сделать это с помощью команды, которая требует sudo
это немного сложно.
В моем случае я хотел отключить драйвер PSMOUSE с помощью команды sudo rmmod psmouse
чтобы предотвратить проблему щелчка мыши, которая проявляется случайным образом. См. Работа с мышью и тачпадом в Linux для получения дополнительной информации по этой проблеме. Я устал вводить его при каждой загрузке.
На моей установке, ~/.config
В папке не было подпапки автозапуска, поэтому я ее создал. Это позволило сохранить настройки моих приложений запуска.
Чтобы переключить видимость скрытых приложений запуска, вы можете использовать следующие команды.
Чтобы показать им:
sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop
Чтобы скрыть их:
sudo sed -i 's/NoDisplay=false/NoDisplay=true/g' /etc/xdg/autostart/*.desktop
Сконфигурируйте вашу команду согласно сообщениям выше в окне " Настройки запуска приложений".
Name: Fix Mouse
Command: sudo rmmod psmouse
Comment: Fix Mouse
Затем вы должны отредактировать файл / etc / sudoers, используя sudo visudo
, Добавьте строку, содержащую следующую информацию:
username ALL=(ALL) NOPASSWD: /sbin/rmmod
Вы должны ввести эту строку ниже строки, которая начинается с % admin. Я добавил свою строку в конец файла. ВАЖНО использовать sudo visudo
отредактируйте этот файл, так как если вы допустите ошибку, вы не сможете sudo
команды вообще. Если это произойдет, загрузитесь в режиме восстановления и отмените изменения, затем попробуйте использовать sudo visudo
,
Примечание:
Сначала я пытался использовать bash-скрипт для косвенного запуска команды, но это не сработало. Я должен был поставить sudo rmmod psmouse
прямо в окне редактирования программы запуска.
Вы можете использовать GNOME Startup Application.
Нажмите кнопку "Добавить", а затем добавьте полную команду, чтобы открыть нужное приложение. Если вы не знаете путь команды, вы можете сделать
какое имя_ком_команда
Для Ubuntu 12.04,
Запустите приложение запуска из верхнего правого меню
Не нажимая кнопку Добавить, откройте Dash и введите приложение, которое вы хотите запустить при запуске, например, Skype
Перетащите приложение в окно "Автозагрузка приложения". Если окна Dash слишком велики, и вы не можете перетащить свое приложение наружу, используйте кнопку окна восстановления (показанную на предыдущем изображении) в верхнем левом углу. Финальный список выглядит так:
Кроме того, чтобы поместить BATCH FILE в запускаемые приложения для запуска после входа пользователя в систему, введите в командной строке запускаемые приложения в поле Command:
gnome-terminal -e "/batch-path/batch-name.sh"
gnome-terminal
: открыть терминал после входа пользователя с правами текущего пользователя-e
: настроить терминал на выполнение командного файла/batch-path/batch-name.sh
: полный путь и полное имя пакета
Помните, чем пакетные разрешения для файла, чтобы установить флажок Разрешить выполнение файла в качестве программы на ВКЛ.
Для простого переносимого способа вы можете использовать Cron. Бежать crontab -e
редактировать crontab вашего пользователя; добавлять @reboot command
бежать command
на каждой загрузке.
Вы можете использовать функцию " Запоминать запущенные приложения" в окне " Настройки системы / Настройки / Запускаемые приложения". Который (когда включен) "запомнит" все программы, которые вы используете, и откроет их после перезагрузки или при первом запуске системы за день.
Это замечательно, когда у вас недостаточно времени, чтобы делать заметки о том, что вы делали в прошлый раз, и вы хотите, чтобы приложение открывалось, если оно выполнялось в последний раз.
Если вы хотите удалить приложение из этой функции, просто закройте его, перейдите к этой функции и нажмите "Запомнить запущенное приложение", чтобы обновить список программ, которые будут открыты в следующий раз.
Введите "автозапуск приложений" в Unity Dash, и он выведет список приложений, которые вы можете щелкнуть, чтобы открыть. Открыв его, вы можете добавить туда свою заявку.
Вот подводный камень с "Startup Applications". Мне нужно было выполнить следующее при запуске, чтобы активировать пользовательское переназначение ключа, которое я определил:
xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY
Я поместил его в "Startup Applications", как и в других ответах выше, и он не работал.
РЕШЕНИЕ: размещение его в "Startup Applications" следующим образом работает:
bash -c "xkbcomp -I$HOME/.xkb ~/.xkb/keymap/mykbd $DISPLAY"
(Я не знаю почему. Я решил это методом проб и ошибок.)
Alt+F2, затем gnome-help ghelp:user-guide?gosstartsession-2
,
Нажмите Run, подождите секунду, а затем следуйте инструкциям.