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

При выполнении его в оболочке Вы на самом деле используете встроенную функцию удара, которая похожа на это:

anthony@Zia:~$ time perl -e 'sleep 1'

real    0m1.003s
user    0m0.000s
sys     0m0.004s

Крон не использует встроенный удар; это использует /usr/bin/time:

anthony@Zia:~$ /usr/bin/time perl -e 'sleep 1'
0.00user 0.00system 0:01.00elapsed 0%CPU (0avgtext+0avgdata 1800maxresident)k
0inputs+0outputs (0major+514minor)pagefaults 0swaps

Второй на самом деле имеет всю информацию от встроенного удара, плюс больше. Это маркирует "реальным", как "истекли". (Это также почему -o опция не работает; это - опция для /usr/bin/time, не встроенный удар).

Если необходимо использовать встроенный удар, существует две вещи попробовать:

  1. Поместить SHELL=/bin/bash наверху Вашего crontab.
  2. Измените свою команду для явного вызова bash -c "your command here".
4
06.08.2014, 17:14
5 ответов

На 7 используйте gnome-session-properties , чтобы отредактировать это в графическом интерфейсе:

example

Это добавит файл .desktop в ~ / .config / autostart / . Вы также можете скопировать файл .desktop самостоятельно.

9
27.01.2020, 20:47

Я рискну предположить, что он не запускается, потому что у него нет X-сессии. Хотя вы сказали ему использовать DISPLAY: 0 , этот дисплей в настоящее время используется вами, а не службой выскочки .

По сути, выскочка не предназначена для запуска приложений - она ​​предназначена для запуска системных служб.

Вместо этого вы можете создать записи *. Desktop в ~ / config / autostart , и я считаю, что gnome-tweak-tool также может управлять запускаемыми приложениями.

Запись *. Desktop будет похожа на:

[Desktop Entry]
Name=MyCoolScript
GenericName=A really cool script
Comment=Some description about your script
Exec=/.1/Projects/UpstartTest/start.sh
Terminal=false
Type=Application
X-GNOME-Autostart-enabled=true

Более подробная информация о спецификации доступна на веб-сайте разработчика Gnome .

1
27.01.2020, 20:47

Using cron worked for me on my Centos 7 server.

# enter crontab edit
crontab -e

# place this inside the cron file you opened with the previous command
@reboot /path/to/your/script.sh

Не забудьте сделать ваш скрипт исполняемым.

0
27.01.2020, 20:47

Автоматический -запуск приложений/сервисов, разбросанных там...

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

ls -1 "/etc/xdg/autostart" "/home/$USER/.config/autostart" \
"/usr/share/gdm/autostart"  "/usr/share/gnome/autostart"

Список всех авто -Пуск Службы:

systemctl list-unit-files --type=service
# OR search for:
ls -1 /lib/systemd/system/*.service /etc/systemd/system/*.service

Список всех Инициализация скриптов:

ls /etc/init.d/

Список всех CronTab планировщиков:

crontab -l 
# to edit run: crontab -e
2
27.01.2020, 20:47

The picture shows my CentOS7 machine runnning the MATE destkop.

Команда в терминале:

mate-session-properties

Работает для тех пользователей, которые используют рабочий стол MATE, он открывает вкладку «Настройки запуска приложения», нажмите кнопку «ДОБАВИТЬ» и введите имя/команду запуска/комментарий. Я использовал пример Google Chrome, и эта команда запускает его для меня.

Для пользователей gnome команда в терминале:

gnome-session-properties

Вызывает тот же диалог для гнома.

На рисунке показана моя машина с CentOS7, на которой запущен десткоп MATE.

0
27.05.2020, 08:32

Теги

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