Pagina 1 di 2

Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 15:49
da isd88
Salve a tutti, è la prima volta che scrivo in questa sezione in tanti anni, e spero che sia all'altezza dell'argomento che propongo:

Mi sto occupando della gestione del clock e dei tensioni del motorola razr ed esiste uno script detto opptimizer che fa tutto e viene comandato via console con i comandi

Caricamento dei modulo

insmod /system/lib/modules/symsearch.ko
insmod /system/lib/modules/overclock.ko

Visualizzazione della tavola tensioni/frequenze

cat /proc/overclock/mpu_opps

E modifica dei singoli valori, ad esempio

echo 5 1255000000 62 > /proc/overclock/mpu_opps

il quale scrive nella riga 5 cioè quella della frequenza piu alta 1,255 GHz e il tensione 62 (corrispondente a qualcosa meno di 1,4 volt).

Ogni volta che riavvio perdo tutto quindi volevo fare uno script sh da lanciare per abilitare i moduli e imporre la mia tabella. In mezz ora di lavoro ho elaborato questo schifo:

Codice: Seleziona tutto
#!/bin/sh
insmod system/lib/modules/symsearch.ko
sleep 5
insmod system/lib/modules/overclock.ko
sleep 5
echo 1 300000000 16 > /proc/overclock/mpu_opps
sleep 5
echo 2 800000000 25 > /proc/overclock/mpu_opps
sleep 5
echo 3 1000000000 35 > /proc/overclock/mpu_opps
sleep 5
echo 4 1200000000 45 > /proc/overclock/mpu_opps
sleep 5
echo 5 1300000000 50 > /proc/overclock/mpu_opps
sleep 5
cat /proc/overclock/mpu_opps


La volete sapere la novita?? non funziona neanche per niente!! mi da errore fin dall inizio!! Cosa ho sbagliato secondo voi? (offendetemi pure son meccanico e l informatica mi provoca strane reazioni :D)

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 17:56
da caesar753
Io innanzitutto userei modprobe anziché insmod (che finora nemmeno conoscevo),anhe la pagina di manuale dice che modprobe è "More clever"
insmod is a trivial program to insert a module into the kernel: if the filename is a hyphen, the module is taken from standard input. Most users will want to use modprobe(8) instead, which is more clever.

Only the most general of error messages are reported: as the work of trying to link the module is now done inside the kernel, the dmesg usually gives more information about errors.

Poi che errore ti dà? E su cosa viene eseguito questo script?

P.S.: non è che nello script nelle righe degli insmod ti sei dimenticato lo slash / prima di system,che invece metti quando dai il comando a mano??

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 18:07
da angus
isd88 ha scritto:insmod /system/lib/modules/symsearch.ko
insmod /system/lib/modules/overclock.ko
Codice: Seleziona tutto
#!/bin/sh
insmod system/lib/modules/symsearch.ko
sleep 5
insmod system/lib/modules/overclock.ko


...mi da errore fin dall inizio!! Cosa ho sbagliato secondo voi?

Sembra manchino degli slash prima di "system"...
tutti quegli "sleep 5" li tirerei via...
lo esegui come root?

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 18:23
da caesar753
Forse gli sleep sono inutili, in effetti, priva ad eseguirlo senza, ma in alcuni casi servono proprio (ad esempio sul mio PC quando crasha ndiswrapper se allo script faccio togliere e mettere subito il modulo non funziona,serve un certo tempo tra un'operazione e l'altra...)

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 18:27
da angus
ndiswrapper e script... ma che sistema operativo usi? :shock:

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 18:55
da caesar753
angus ha scritto:ndiswrapper e script... ma che sistema operativo usi? :shock:

archlinux, piccola digressione a questo proposito, dato che vi interessa:
ho una scheda wireless per la quale non è mai stato scritto il driver linux, ma con ndiswrapper funziona abbastanza bene. tuttavia ndiswrapper è abbastanza buggato ed in particolare sembra non andare troppo d'accordo con il gestore dell'alimentazione: ogni volta che uso l'alimentazione da batteria (si, è un portatile) staccano la corrente ndiswrapper crasha, il PC resta connesso ma non riesce più a pingare e a fare niente sulla rete. Unica soluzione: togliere e mettere ndiswrapper.
A questo proposito, per non dare a mano i due comandi ho scritto queste 3 righe, tanto per comodità

Codice: Seleziona tutto
sudo modprobe -r ndiswrapper
sleep 2
sudo modprobe ndiswrapper

e così torna a funzionare tutto ...

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 19:26
da angus
caesar753 ha scritto:archlinux

ah ecco ;-)

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 19:43
da caesar753
Ma non è un problema di arch: in passato ho avuto ubuntu (fino a quella meravigliosa 10.04 Lts in cui non funzionava niente, nemmeno i driver della scheda video), Fedora, e ho ancora su un'altra partizione debian squezze, ma con tutte ndiswrapper ha sempre dato questo problema.. :-)

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 19:48
da angus
ovviamente.. se non c'è il modulo del kernel... e devi usare ndiswrapper, la cosa è indipendente dalla distribuzione.

Re: Gestazione di un semplice script sh

MessaggioInviato: 13 feb 2012, 20:17
da isd88
grazie mille per le risposte.... vi assicuro che i comandi funzionano benissimo se lanciati da console , per niente se lanciati da script manager (necessario per abbreviare la fase di test poiche lancia automaticamente lo script ad avvio terminato).

gli "/" prima di system non le mettevo quando lanciavo a mano, e se li metto non cambia nulla. Eseguo come root da impostazioni di script manager , cosi per prova ho messo un bel "su" all'inizio dello script con comeconseguenza la totale impossibilita di andare avanti nell'esecuzione...

ah non so se si era capito ma il sistema operativo è android e la piattaforma il motorola razr :D