подайте заявку запуститься автоматически

Marius Cotofana предоставил большой ответ, но здесь является двумя дополнительными примечаниями:

  1. Когда kdesu не доступен в Вашей конфигурации KDE (если команда kdesu не работает в bash/konsole), используйте kdesudo для создания монтировать/размонтировать контекстных меню у дельфина.

  2. Создание/media/iso и монтирование изображения к этому заставят изображение обнаруживаться в местах под дельфином как только для чтения, который обеспечивает дополнительные удобства.

[Настольная Запись]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/octet-stream; Actions=mountISO; umountISO;

[Настольное Действие mountISO]
Name=Mount
Icon=utilities-terminal
Exec=kdesudo 'монтируют-o цикл, ro-t iso9660 "%f"/media/iso /'

[Настольное Действие umountISO]
Name=Unmount
Icon=utilities-terminal
Exec=kdesudo 'umount "%f"'

3
24.11.2018, 21:54
3 ответа

Большинство Linuxs запускают /etc/rc.local один раз при загрузке системы. Откройте этот файл с помощью редактора и добавьте команду запуска вашего приложения.

Нет необходимости префиксовать sudo к команде, так как скрипт выполняется от имени root.

Обязательно добавьте '&' (амперсанд) в конце команды для запуска в фоновом режиме, чтобы он не задерживал загрузку системы в случае, если ваше приложение не завершится за один заход.

Пример выполнения файла myscript, расположенного в /usr/local/bin/

# place near the end of /etc/rc.local
/usr/local/bin/myscript &
2
27.01.2020, 21:10

Я не могу порекомендовать добавить вещи в /etc/rc.local. Это реликт старых дней униксов. Есть Linux, которые больше не поддерживают rc.local.

Тем не менее, он может корректно запустить ваше приложение/сервис, но никогда не выключит ваш процесс изящно.

Лучше использовать системный механизм init скриптов (Systemd, Upstart, ...). Я бы написал скрипт rc, который выглядит так (в /etc/init.d/skeleton на Вашей системе может быть скелет/шаблон):

#!/bin/bash
. /etc/init.d/functions

start() {
        echo -n "Starting <servicename>: "
        #/path/to/the/executable/of/your/application
}

stop() {
        echo -n "Shutting down <servicename>: "
        #command_to_gracefully_end_the_application
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
    #command_to_report_the_status
    ;;
    restart)
        stop
        start
        ;;
    *)
        echo "Usage: <servicename> {start|stop|restart}"
        exit 1
        ;;
esac
exit $?

Поместите Ваш скрипт в /etc/init. d/, сделайте его исполняемым и добавьте его в систему runlevels 3, 4 и 5:

chkconfig --level 345 <servicename> on

Также вы можете вручную запустить и остановить его с:

service <servicename> start
service <servicename> stop
8
27.01.2020, 21:10

Using cron worked for me.

# 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, 21:10

Теги

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