Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

322
Views
Ejecutar un script de python que incluye comandos GPIO por cron en Raspberry Pi 2

Medioambiente

  • frambuesa pi 2
  • raspbian-jessie-lite
  • Windows 8.1
  • Masilla 0.66 (SSH)

Tema

No puedo hacer que cron ejecute un script de python con sudo. El script se ocupa de la entrada GPIO, por lo que debe llamarse con sudo. Se supone que el programa guarda la temperatura y la humedad en los archivos, pero cat temp.txt y cat humid.txt me dieron cadenas vacías.

crontab

sudo crontab -e

 * * * * * python /home/dixhom/Adafruit_Python_DHT/examples/temphumid.py 1>>/tmp/cronoutput.log 2>>/tmp/cronerror.log

secuencia de comandos de pitón

 #!/usr/bin/python import sys import Adafruit_DHT import datetime # Adafruit_DHT.DHT22 : device name # 4 : pin number humidity, temperature = Adafruit_DHT.read_retry(Adafruit_DHT.DHT22, 4) if humidity is not None: f = open("humid.txt","w") str = '{0}, {1}'.format(datetime.datetime.now().strftime("%Y/%m/%d %H:%M:%S"), humidity) f.write(str) else: print 'Failed to get reading. Try again!' sys.exit(1) if temperature is not None: f = open("temp.txt","w") str = '{0}, {1}'.format(datetime.datetime.now().strftime("%Y/%m/%d %H:%M:%S"), temperature) f.write(str) else: print 'Failed to get reading. Try again!' sys.exit(1)

cronerror.log y cronoutput.log

(vacío)

lo que probé

  • sudo crontab -e
  • /usr/bin/python en cron
  • chkconfig cron (cron encendido)
  • sudo apt-get update sudo apt-get upgrade
  • sudo reboot

Cualquier ayuda sería apreciada. Gracias.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Opción 1: puede editar /etc/crontab . Allí puede especificar qué usuario ejecutará el trabajo respectivo en una columna justo después de la programación.

Opción 2: edite el crontab de root usando

 sudo su crontab -e

Iría por la segunda opción porque esto es lo que sugieren los documentos ...

(Descargo de responsabilidad: no se aceptan garantías con respecto a las cosas de GPIO. Solo asumo que tiene razón con "necesita sudo", porque nunca hago GPIO en el raspi. Así que me referí a ejecutar un script solo como root).

over 4 years ago · Santiago Trujillo Report

0

El problema eran las rutas relativas. Los datos se guardaron en un lugar diferente de lo que estaba viendo.

Cambiando

 f = open("humid.txt","w")

para

 f = open("/home/dixhom/Adafruit_Python_DHT/examples/humid.txt","w")

resolver el problema

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!