Страница 1 из 1

Python скрипт в автозапуск

Добавлено: 06 дек 2017, 22:39
afgan
Здравствуйте! Ни по одной инструкции из интернета не получается установить Python скрипт в автозапуск Mint 18.3 Cinnamon. Нужно чтобы скрипт запускался от имени администратора.
Сам скрипт без проблем запускается по команде sudo python3 <путь к файлу>, но в автозапуск никак не получается привинтить и чтобы от sudo запускался. Подскажите пожалуйста, а то уже отчаялся :sad:

Python скрипт в автозапуск

Добавлено: 06 дек 2017, 23:30
di_mok
Пропиши его в /etc/rc.local

Python скрипт в автозапуск

Добавлено: 06 дек 2017, 23:47
Chocobo
Методов масса, на самом деле :magic:
Один из них di_mok уже предложил - вполне подойдет для любой операции, которая должна выполниться до старта иксов
Еще, самый верный и гибкий - это написать юнит для systemd, например вот тут делали обратное, т.е скрипт при выключении, поэтому чуть переиначить :)
Вот тут - вариант вызывать скомпиленную C-конструкцию, которая будет поднимать себе привилегии сама
Ну и еще вот так можно точечно (или глобально) разрешить выполнение команд от sudo без запроса пароля

Python скрипт в автозапуск

Добавлено: 03 янв 2018, 13:10
Kurum
А давайте разберём реальный пример. Linux Mint XFCE 18.3.
'~/Документы/Питон/Timer.py' - вот путь к файлу.
Открываю файл "/etc/rc.local" для редактирования командой sudo nano /etc/rc.local (других вариантов не знаю.
Перед строкой «exit 0» вставляю:
'~/Документы/Питон/Timer.py'
А вот как сохранить изменения я не понял. Внизу окна терминала есть запись: "^O Записать" - но как это выполнить?
И всё? При запуске системы файл запустится?
А не надо зайти в свойства самого файла "Timer.py" и поставить галочку "Разрешить запуск этого файла в качестве программы" (- это и есть сделать файл исполняемым?)?

Python скрипт в автозапуск

Добавлено: 03 янв 2018, 13:16
rogoznik
Kurum писал(а):
03 янв 2018, 13:10
"^O Записать" - но как это выполнить?
ctrl+o
И так все команды, которые написаны внизу.
ctrl+x - выход
Kurum писал(а):
03 янв 2018, 13:10
"Разрешить запуск этого файла в качестве программы" (- это и есть сделать файл исполняемым?)?
Да.

Python скрипт в автозапуск

Добавлено: 03 янв 2018, 13:21
di_mok
Kurum, коль не умеешь пользоваться nano, открывай sudo xed /etc/rc.local

Python скрипт в автозапуск

Добавлено: 03 янв 2018, 13:41
Kurum
Записать команду получилось. Но при запуске системы питоновский файл не стартует. Может надо ещё что-то сделать?

Python скрипт в автозапуск

Добавлено: 03 янв 2018, 14:23
PantiL
Kurum писал(а):
03 янв 2018, 13:10
Перед строкой «exit 0» вставляю:
'~/Документы/Питон/Timer.py'
Нужно указать не просто путь к файлу, а команду

Код: Выделить всё

python ~/Документы/Питон/Timer.py
или второй вариант - указать в начале файла скрипта, если такое не сделано

Код: Выделить всё

#!/usr/bin/python
и сделать файл исполняемым

Код: Выделить всё

chmod +x script.py

Python скрипт в автозапуск

Добавлено: 03 янв 2018, 15:06
Kurum
Обнаружил, что проще всего это делать через Автозапуск (Меню — Все настройки — Сеансы и запуск). Создать новый элемент, в команду прописать:
python3 ~/Документы/Питон/Timer.py
Ну и файл сделать исполняемым.
PantiL писал(а):
03 янв 2018, 14:23
Нужно указать не просто путь к файлу, а команду
Вообще да, я так и писал, на форуме пропустил.