RunLast erstellt eine Umgebung, um Befehle oder Shell-Skripte auszuführen, nachdem die QPKG-Re-Integration während des QTS NAS-Startvorgangs erfolgt ist.
Dadurch können Sie Skripte ausführen, die von QPKGs während des QTS-Startvorgangs abhängig sind.
Funktionsweise
Dieses Paket erstellt ein Skriptverzeichnis im Installationspfad des Pakets:
init.d
scripts
Platzieren Sie Ihre SysV-Style-Skripte im init.d-Verzeichnis. Diese werden nach dem NAS-Start mit dem Parameter start ausgeführt und vor dem NAS-Herunterfahren mit dem Parameter stop. Skripte im scripts-Verzeichnis werden nur beim Start ausgeführt und immer nach der Ausführung des benutzerdefinierten init.d-Startskripts.
Installation
Verfügbar im MyQNAP-Repo und kann auch über den sherpa Paketmanager installiert werden.
Hinweise
Nach der Installation dieses Pakets gibt es nicht viel zu sehen. Suchen Sie das Paket-Symbol und klicken Sie auf die Schaltfläche ‘Öffnen’, um die aktuelle Logdatei anzuzeigen – jegliche stdout und stderr-Ausgaben Ihrer Skripte werden hier angezeigt.
Die Logdatei ist über Ihren Webbrowser einsehbar, ist jedoch kein echtes Webdokument, sodass sie sich ändern kann, ohne dass Ihr Browser dies bemerkt. Wenn Sie das Log anzeigen, stellen Sie sicher, dass Sie die Seite neu laden: STRG+F5.
Um zum scripts-Verzeichnis zu springen:
cd $(getcfg RunLast Scripts_Path -f /etc/config/qpkg.conf)
Oder um zum init.d-Verzeichnis zu springen:
cd $(getcfg RunLast SysV_Path -f /etc/config/qpkg.conf)
Den Quellcode dieses Projekts finden Sie auf GitHub.
Bitte hört nicht auf, „RunLast“ weiterzuentwickeln, bitte! Und macht es nicht schlechter als es ist! Es verfolgt bereits den richtigen Ansatz, insbesondere wegen der guten Struktur der SysV-Startskripte. Damit kann man fast alles zum Laufen bringen, wenn der Nutzer die Abhängigkeiten seiner Anwendung zu anderen QPKG’s berücksichtigt und sich ein wenig aus deren Startskripten bedient. Das solltet ihr erwähnen und darauf hinweisen!
Ich finde, „RunLast“ bietet genug Funktionen zur Implementierung einer eigenen Start- und Stop-Umgebung für QNAP-Geräte.
Vielleicht könnt ihr zukünftig etwas entwickeln, das es ermöglicht, beim Starten einen eigenen Abhängigkeitsschlüssel aus allen installierten, aktiven QPKGs zu generieren.
… und ein Holzlöffel als Icon, ernsthaft?
Beste Grüße,
Mandragor59
***** Es gibt keine Probleme, es gibt nur Herausforderungen *****
Ich habe darüber nachgedacht, Unterstützung für QTS 5.2.0 und neuer hinzuzufügen, indem RunLast darauf wartet, dass der QTS QPKG-Init-Prozess beendet wird. Wenn das passiert, kann man davon ausgehen, dass alle QPKGs gestartet sind und die Nutzer-Skripte ausgeführt werden.
Ich werde daran arbeiten und sehen, wie zuverlässig das ist. Vielleicht kann RunLast wieder aufgenommen werden?
Bitte tu es! Unbedingt! Auf jeden Fall! Sie werden dich dafür lieben!
… und vielleicht solltest du deine „Beschreibung“ nicht so negativ formulieren und nicht direkt zur Deinstallation auffordern! Vielleicht solltest du besser einen Hinweis hinzufügen, dass man ab QTS 5.2.0 die Abhängigkeiten zu den benötigten QPKG’s in den Startskripten berücksichtigen muss (zum jetzigen Zeitpunkt).
***** Es gibt keine Probleme, nur Herausforderungen *****
…
Nun, nicht wirklich. Die einzige Verbindung, die ich als Hobbykoch zu meinem Holzlöffel habe, ist, dass er nicht in meinen Mund passt. Vielleicht kannst du einen älteren deutschen Nutzer aufklären. Ich würde (wenn ich nochmal gefragt werde) eher eine Medaille oder einen Siegerpokal mit der Aufschrift „Letzter Platz“ wählen.
Ich setze die Erwartungen gerne von Anfang an niedrig.
Im ursprünglichen Beitrag gibt es dazu bereits einen Hinweis.
In verschiedenen Ländern (wie meinem mit ausgeprägter Sportkultur) wird der „wooden spoon award“ an das Sportteam vergeben, das jedes Jahr auf dem letzten Platz landet. Es ist kein echter Preis.
Entschuldigung, dass ich diesen (etwas) alten Thread wieder hochhole, aber ich wollte fragen, ob es mit deiner App möglich ist, das zu tun, was ich versuche zu machen, lol.
Also, ich habe mktorrent auf meinem QNAP von GitHub installiert.
Jetzt möchte ich, dass der make-Befehl jedes Mal beim Neustart ausgeführt wird, weil das Programm nicht persistent ist.
Ist das mit diesem Tool möglich? Denn jedes Mal, wenn ich es versuche, bekomme ich einen Fehler mit der Meldung „make - command not found“. Ich habe make über opkg installiert und es funktioniert.
Ich muss dazu sagen, dass ich ganz neu im Scripting bin und gerne bash dafür verwenden würde. Aber falls es eine bessere Alternative gibt, bin ich für alles offen.
Wenn dein Skript Pakete verwendet, die über Entware (und opkg) installiert wurden, empfehle ich, das Entware-Init-System zu nutzen, um dein Skript zu starten, anstatt RunLast zu verwenden. Was du möchtest, lässt sich zwar mit RunLast erreichen, könnte aber mit Entware besser umgesetzt werden.
Lege dein ausführbares Startskript in /opt/etc/init.d/ ab und stelle sicher, dass der Skriptname mit einem großen ‘S’ beginnt. Dein Skript wird nun automatisch ausgeführt, nachdem Entware gestartet wurde.