Hilfe bei Script

  • 9 Antworten
  • Letztes Antwortdatum
nOOby

nOOby

Erfahrenes Mitglied
29
Hallo,
ich habe eine gerootete Sat-TV-Box ( f16ref board ) die ich dringend automatisch ausschalten möchte (täglich gleich)
Die beiden Apps "Shutdown Timer" und "Power Off Shedule" (Go-Play) fuktioniren leider nicht,
weshalb ich das ganze gern mit einem Script automatisieren würde.
Von Programmiersprachen habe ich zwar keine Ahnung, hoffe aber das das keine allzu große Sache ist?

Bisher erhaltene/getestete Tips:
Befehl "shutdown -h 23:00" (mit Notepad++ erstellt, als unix scriptfile "timer.sh" gespeichert)
Im Ordner system\etc einen Ordner "init.d" erstellt (mit allen Schreib-und Leserechten),
darin das script gespeichert und die Endung (.sh) gelöscht (+ Neustart)
Passiert auch nix
Auch das direkte Aufrufen mit "script runner" und/oder "script manager" (den nutze ich auch als root-explorer) ist ohne Wirkung.
Ist an dem Befehl etwas falsch (Lücke zuviel, unvollständig), falscher Speicherort oder....?

1000Dank im Voraus

[edit: Android 4.0.4]
 
Zuletzt bearbeitet:
Danke für den Link, werde ich mir nachher mal in Ruhe durchlesen.
Von dir habe ich ja auch den shutdown-Befehl ;)
(Thread Allgemeines-Root, aber nachdem die Tools ja nicht gehen, ist das Thema hier wohl besser aufgehoben)
"init.d" ist jetzt aber auch nur für Autostart beim Booten?
Hätte (vorerst) auch kein Problem damit das Script immer manuell zu starten.
Wie teste ich denn mal, ob das Script (also diese eine Zeile) an sich funktioniert?
Scriptrunner kann scheinbar nur auf die SD-Karte zugreifen (dort liegt zb "timer.sh" in \downloads)
ScriptManager hingegen kann es auch direkt in system\etc\init.d\timer aufrufen (->run)
aber wie gesagt, die Box fährt nie runter.
Was wäre denn der Befehl für sofortiges Abschalten? Nur shutdown, ohne Uhrzeit?
Dann kann ich´s leichter testen (nicht immer Zeit ändern, speichern, warten)
Und die Endung ( .sh) immer löschen oder nur wenn im Ordner init.d?

thx
 
In deinem Fall ist die init.d nur dazu da, um beim booten zu starten. Richtig.
Das .sh kannst du dran lassen oder nicht. Ist egal.

Lad dir mal busybox runter
Lad dir ein Terminal runter

Das script ändesrst du in:
Code:
shutdown -h now
Die öffnest das Terminal und sagst
Code:
su
Es sollte ein Popup erscheinen mit bestätigung der Root rechten.

Dann sagst du
Code:
cd /pfad/zur/datei
wenn du da bist sagst du
Code:
./datei.sh

Viel Spaß...Lad dir mal busybox runter
Lad dir ein Terminal runter

Das script ändesrst du in:
Code:
shutdown -h now
Die öffnest das Terminal und sagst
Code:
su
Es sollte ein Popup erscheinen mit bestätigung der Root rechten.

Dann sagst du
Code:
cd /pfad/zur/datei
wenn du da bist sagst du
Code:
chmod a+x datei.sh [ENTER DRÜCKEN]
./datei.sh

Viel Spaß...
 
Zuletzt bearbeitet:
Ja super, vielen Dank, werde ich heut Abend probieren.:cool2:

ein Terminal ist bei ScriptManager ja schon dabei ... ebenso ein Timer - vllt. brauche ich init.d ja gar nicht.

Bin gespannt
:rolleyes2:
 
Leider noch immer kein Erfolg (siehe unten)
Was mich am meisten wundert (und wahrsch. auf die Ursache des Problems hinweist?):
Das Tool "shutdown timer" hat neben der Ausschalt-Funktion auch die Option Reboot,
und die funktioniert einwandfrei !?
Bei shut-down hingegen, wenn die Zeit erreicht ist, erscheint eine kurze Info "blabla wurden su Rechte gewährt" und weiter passiert -sichtbar- nichts.
Aber ich kann danach keine App mehr öffnen,
immer "...wurde leider beendet" plus irgendwelcher Systemapps (Keychain, g-apps, Playstore wurde leider beendet), erst nach Neustart ist das Gerät wieder benutzbar.

Zu dem Script;
das kann ich im Scriptmanager entweder "als script" ausführen, dann kommt:

exec sh -c `system/etc/init.d/timer` [bzw mnt/sdcard/downloads - Ort spiel keine Rolle]
root@android:/#exec sh -c `system/etc/init.d/timer`[2] shutdown: not found

oder als "executable" :

cannot execute permission denied

Der Fehler sollte demnach also nicht am Script oder den Tools liegen, oder?
Ich verstehe nur nicht, wieso ein reboot möglich ist, "nur" abschalten aber nicht...
:confused:
Als Laie könnte ich mir evtl. vorstellen, dass die Rominterne "Standby" app (mit der man die Box runter fährt) dazwischen grätscht,
aber das müsste sie dann ja auch beim Reboot?
Ausserdem gibt es (wegen TV-Tuner und irgendwelcher EU-Gesetze) einen Ausschalttimer, der das Gerät bei Nichtbenutzung nach 180Min ausschaltet.
Diese Funktion kann und habe ich aber deaktiviert.
 
Öhm.. du verwirrst micht.

shutdown -r now
Das ist der befehl zum zu rebooten. Der funktioniert?

shutdown -h now
Der Befehl soll eigentlich runter fahren. Da passirt was? Der Dialog mit "wurden su Rechte gewährt"?

Code:
exec sh -c `system/etc/init.d/timer` [bzw mnt/sdcard/downloads - Ort spiel keine Rolle]
root@android:/#exec sh -c `system/etc/init.d/timer`[2] shutdown: not found
Hier denke ich müsstes du dem timer-Script noch das "sh" hinten dran hängen.

Code:
cannot execute permission denied
Hier musst du, wie ich schon oben geschrioeben habe, wahrshceinlich nur ein
chmod a+x timer.sh
sagen. Oder halt die Rechte auf "lesen, Schreiben, ausfhren" für alle geben.

Was meinst du mit "Standby" app?

Gruß
 
Nee, der 1. Teil meines Postings bezieht sich nur auf die App shutdown timer
Diese ist mit Root-Rechten ausgestattet, kann aber seltsamerweise nur rebooten.
Im 2. Teil kommt kommt dann der Versuch mit dem Script.
An dem fehlenden .sh kann es nicht liegen, das fehlt nur bei dem Script im Systemordner.
Das andere (in Downloads) ist mit .sh und produziert identische Meldungen.
Ich werde mal den reboot Befehl per script testen, wenn das damit auch funktioniert (wie mit der App),
muss das Scheitern des Shutdown-Befehls doch eine andere Ursache haben?
Die "Stand-by-app" ist schon auf dem stock-rom, da geht nur ein Fenster auf "wollen Sie wirklich ausschalten?"

Stock-apps.JPG


Deshalb würde es wohl auch nicht klappen, diese app zu einem best. Zeitpunkt mit Tasker zu aktivieren, da man ja immer noch OK drücken muss?

Ich werde es erstmal mit reboot per script versuchen, wenn das funktioniert....
Braucht denn so ein reboot etwa weniger Rechte als ein shutdown?

Danke auf jeden Fall für die Mühe bisher ;)
 
HI,

am einfachsten probierst du die Befehle einfach mal ohne iwelche Scripts in einem Terminal.
Einfach
su
shutdown -r now
ODER
shitdown -h now
eingeben.

Wenn das funktioniert. Dann weißt du, dass diese Befehle schon einmal funktionieren.
Danach kannst du dich ran machen und diese in ein Script packen.

Gruß
 
Ich glaube ich muss kapitulieren, nichts funktioniert :(

Hier mal ein (ganz) kleiner Ausschnitt von getesteten Befehlen/Pfaden
terminal_1.jpg

Bei reboot -p zwar keine Fehlermeldung (Cursor 1 Zeile weiter), aber auch kein reboot.
Keine sichtbare Reaktion, aber sobald man danach etwas aufruft; xyz wurde leider beendet,
also manueller Neustart erforderlich (wie bei den diversen Timer-apps, wenn man shutdown wählt,
die können ja immer nur rebooten, aber nicht ausschalten)

terminal_2.jpg


Die Stock-App zum runterfahren StandBy.apk liegt in system/app
(shutdown -r now sowie etliche andere habe ich nat. auch probiert)
 

Ähnliche Themen

4
Antworten
10
Aufrufe
1.066
jogimuc
J
Zurück
Oben Unten