Ausführen von Code ohne SSH in Beaglebone Black

Ausführen von Code ohne SSH in Beaglebone Black

Ich möchte einen Code ausführen, Beaglebone blackohne dass sshdies beim Einschalten geschieht.

Ich habe versucht, einige Befehle einzugeben, um den Code in der Datei auszuführen, ~/.bashrcaber es funktioniert nur, wenn ich mich mit anmelde ssh. Ich habe dasselbe mit /etc/rc.localeiner Datei versucht, aber es hat auch nach SSH nicht funktioniert.

Ich habe @reboot my_command es auch versucht crontab -e, aber ich muss mich auch per SSH anmelden.

Irgendwelche Vorschläge??

BEARBEITEN:

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

Ausgabe von crontab -e: letzten paar Zeilen

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

mainist das Skript, das ich ausführen möchte

root@beaglebone:~# systemctl enable cronie.service
Failed to execute operation: No such file or directory

Erlaubnis und Eigentümer vonmain

root@beaglebone:~/wiringBone-master/library# ll main 
-rwxr-xr-x 1 root root 66744 May 27 16:15 main

Antwort1

Die Lösung ist Crontab. Aufruf durch:

crontab -e

Dadurch wird der Standardeditor geöffnet. Fügen Sie hinzu:

@reboot your command

Speichern und beenden. Wenn der Befehl ein Superuser-Passwort erfordert, sollten Sie dies zuerst tun sudo su -und crontab -eals Root anmelden.

Um zur eigentlichen Ursache des Problems zu gelangen (ob es nun Cron oder das Skript ist), kann zu Debugging-Zwecken ein einfacherer Fall erstellt werden:

  • Zuerst wird eine Zeile wie @reboot date >> /root/aoder ähnlich als Cron-Job nachcrontab -e
  • Wenn es funktioniert ( ~ hängt Datum/Uhrzeit an die Datei „/root/a“ an), wird diese Zeile in einem Bash-Skript mit denselben Eigentümern und Berechtigungen ( -rwxr-xr-x 1 root root) gespeichert, etwa so:

    #!/usr/bin/sh
    date >> /root/a
    

verwandte Informationen