
Quiero ejecutar algún código Beaglebone black
sin hacerlo ssh
cuando aplico energía.
Intenté poner algunos comandos para ejecutar el código en ~/.bashrc
el archivo, pero solo funciona cuando inicio sesión usando ssh
. Intenté lo mismo con /etc/rc.local
el archivo pero no funcionó incluso después de ssh.
@reboot my_command
También lo intenté, crontab -e
pero también requiere que inicie sesión usando ssh.
¿¿Alguna sugerencia??
EDITAR:
root@beaglebone:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 8.6 (jessie)
Release: 8.6
Codename: jessie
root@beaglebone:~# ps aux | grep cron | grep -v grep
root 295 0.0 0.3 4428 1988 ? Ss 15:03 0:00 /usr/sbin/cron -f
Salida de crontab -e
: últimas líneas
root@beaglebone:~# crontab -e
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
#@reboot /root/wiringBone-master/library/main not working
#*/5 * * * * /root/wiringBone-master/library/main works
main
es el script que quiero ejecutar
root@beaglebone:~# systemctl enable cronie.service
Failed to execute operation: No such file or directory
Permiso y propietario demain
root@beaglebone:~/wiringBone-master/library# ll main
-rwxr-xr-x 1 root root 66744 May 27 16:15 main
Respuesta1
Crontab es la solución. Invocar por:
crontab -e
Lo que abrirá el editor predeterminado. Agregar:
@reboot your command
Guardar y Salir. Si el comando requiere una contraseña de superusuario, primero debe hacerlo sudo su -
como crontab -e
root.
Para llegar al origen del problema (ya sea cron o el script), se puede crear un caso más simple con fines de depuración:
- Primero se agrega una línea como
@reboot date >> /root/a
o similar como trabajo cron despuéscrontab -e
Si funciona (~ agrega fecha/hora al archivo "/root/a"), esa línea se guarda en un script bash con la misma propiedad y permisos (
-rwxr-xr-x 1 root root
) y como:#!/usr/bin/sh date >> /root/a