Autorun
Möchte man ein Autorun-Script nach dem Reboot ausführen, muss man sich ein Init-Script erstellen und dieses dann starten lassen.
Init-Script
Hier ein Init-Script, welches ein Kernel-Modul (cp210x.ko
) lädt.
Die Pfade zur .qpkg/autorun/autorun.sh
und innerhalb des Scriptes müssen angepasst werden.
mkdir /share/CACHEDEV1_DATA/.qpkg/autorun/ vi /share/CACHEDEV1_DATA/.qpkg/autorun/autorun.sh
Inhalt:
#!/bin/sh QPKG_NAME="AutoRun" start(){ echo `date` Start autorun.sh >> /var/log/autorun.log # Kernelmodule für cp210x USB-TO-SERIAL Adapter Unterstützung /sbin/insmod /lib/modules/5.10.60-qnap/cp210x.ko /bin/chmod 666 /dev/ttyUSB0 } stop(){ echo `date` Stop autorun.sh >> /var/log/autorun.log } # you do not need to edit this lines case "$1" in start) start ;; stop) stop ;; restart) # Restarting the Daemon $0 stop $0 start ;; *) ## If no parameters are given, print which are avaiable. echo "Usage: $0 {start|stop|restart}" exit 1 ;; esac exit
Dateiberechtigungen setzen
chown -R admin. /share/CACHEDEV1_DATA/.qpkg/autorun/ chmod 755 /share/CACHEDEV1_DATA/.qpkg/autorun/autorun.sh
Init-Script aktivieren
In der Datei /etc/config/qpkg.conf
muss das Init-Script nun aktiviert werden.
Einfach folgenden Inhalt als erstes einfügen und die Pfade bei „Shell“ und „Install_Path“ wieder anpassen.
[autorun] Name = autorun Class = null Display_Name = autorun Version = 0.1 Author = stizi QPKG_File = autorun.qpkg Date = 2022-02-12 Shell = /share/CACHEDEV1_DATA/.qpkg/autorun/autorun.sh Install_Path = /share/CACHEDEV1_DATA/.qpkg/autorun Enable = TRUE Official = 0
Nach einem Reboot sollte das Script ausgeführt worden sein.
Das wird auch in der Datei /var/log/autorun.log
geloggt.
Autorun.sh
Quelle: https://www.qnap.com/en/how-to/faq/article/running-your-own-application-at-startup
Eine andere Alternative ist die autorun.sh
die sich im „Mount config ramblock“ befindet.
Die Funktion lässt sich in der GUI unter „Systemsteuerung“ → „Hardware“: „Benutzerdefinierte Prozesse beim Start ausführen“ einschalten.
Die autorun.sh
muss ggf. beim ersten mal erstellt und ausführbar (chmod +x …) gemacht werden.
mount $(/sbin/hal_app --get_boot_pd port_id=0)6 /tmp/config vi /tmp/config/autorun.sh