Использование системы в различных ситуациях, вопросы программирования сценариев.
Модератор: immortal
-
olehs
- Сообщения: 1115
- Зарегистрирован: Вс июн 14, 2015 11:08 am
-
Благодарил (а):
85 раз
-
Поблагодарили:
342 раза
Сообщение
olehs » Пт фев 23, 2018 12:35 pm
Omega писал(а):
выводит
/var/www
значит дело не в safe_mode.
покажите сам скрипт, и права проверьте (от кого у вас php запускается?)
-
Omega
- Сообщения: 14
- Зарегистрирован: Сб мар 25, 2017 7:29 pm
-
Благодарил (а):
3 раза
-
Поблагодарили:
0
Сообщение
Omega » Пт фев 23, 2018 12:38 pm
olehs писал(а):Omega писал(а):
выводит
/var/www
значит дело не в safe_mode.
покажите сам скрипт, и права проверьте (от кого у вас php запускается?)
#!usr/bin python
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(22, GPIO.OUT)
GPIO.output(22, True)
time.sleep(1)
GPIO.output(22, False)
GPIO.cleanup()
-
olehs
- Сообщения: 1115
- Зарегистрирован: Вс июн 14, 2015 11:08 am
-
Благодарил (а):
85 раз
-
Поблагодарили:
342 раза
Сообщение
olehs » Пт фев 23, 2018 12:46 pm
оберните все в try except и попробуйте вызвать через
типа так
Код: Выделить всё
try:
import RPi.GPIO as GPIO
except RuntimeError:
print("Error importing RPi.GPIO! This is probably because you need superuser privileges. You can achieve this by using 'sudo' to run your script")
- За это сообщение автора olehs поблагодарил:
- Omega (Сб фев 24, 2018 5:52 pm)
-
Omega
- Сообщения: 14
- Зарегистрирован: Сб мар 25, 2017 7:29 pm
-
Благодарил (а):
3 раза
-
Поблагодарили:
0
Сообщение
Omega » Пт фев 23, 2018 12:52 pm
права файла s1.py
rw- r-- r-x
пробовал поменять хозяина файла на root и группу на root
-
evilviva
- Сообщения: 39
- Зарегистрирован: Пт июл 28, 2017 9:54 pm
-
Благодарил (а):
2 раза
-
Поблагодарили:
4 раза
Сообщение
evilviva » Пт фев 23, 2018 1:09 pm
как вариант, можно еще вот такое попробовать:
Для упрощения работы с GPIO через интерфейс Sysfs мне встретились две утилиты. Одна из них WiringPi GPIO utility, другая quick2wire-gpio-admin.
Основная задача, решаемая этими утилитами — это предоставление возможности работы с GPIO от имени непривилегированного пользователя. При этом WiringPi GPIO utility более функциональна.
https://geektimes.ru/post/255050/
-
Omega
- Сообщения: 14
- Зарегистрирован: Сб мар 25, 2017 7:29 pm
-
Благодарил (а):
3 раза
-
Поблагодарили:
0
Сообщение
Omega » Пт фев 23, 2018 1:11 pm
Конструкцию try except надо писать в файле python, но похоже, что этот файл даже не читается (не выполняется)
-
olehs
- Сообщения: 1115
- Зарегистрирован: Вс июн 14, 2015 11:08 am
-
Благодарил (а):
85 раз
-
Поблагодарили:
342 раза
Сообщение
olehs » Пт фев 23, 2018 1:14 pm
Omega писал(а):
Конструкцию try except надо писать в файле python, но похоже, что этот файл даже не читается (не выполняется)
трудно сказать, т.к. backtick выводит только stdout, а смотреть нужно stderr.
Потому и нужно перехватить ошибку в except
-
olehs
- Сообщения: 1115
- Зарегистрирован: Вс июн 14, 2015 11:08 am
-
Благодарил (а):
85 раз
-
Поблагодарили:
342 раза
Сообщение
olehs » Пт фев 23, 2018 1:17 pm
evilviva писал(а):как вариант, можно еще вот такое попробовать:
Для упрощения работы с GPIO через интерфейс Sysfs мне встретились две утилиты. Одна из них WiringPi GPIO utility, другая quick2wire-gpio-admin.
Основная задача, решаемая этими утилитами — это предоставление возможности работы с GPIO от имени непривилегированного пользователя. При этом WiringPi GPIO utility более функциональна.
https://geektimes.ru/post/255050/
Не знаю, как на малинке, но на апельсинке тоже намучался с этим. Кроме того, что должна быть включена поддержка sysfs в ядре, права на нее тоже нужно было раздать.
-
Omega
- Сообщения: 14
- Зарегистрирован: Сб мар 25, 2017 7:29 pm
-
Благодарил (а):
3 раза
-
Поблагодарили:
0
Сообщение
Omega » Пт фев 23, 2018 1:20 pm
пока не получается. Буду искать несостыковку прав...