![]() |
2010-01-03
, 23:53
|
|
Posts: 664 |
Thanked: 160 times |
Joined on Jul 2008
@ Australia
|
#12
|
I think i have this problem, i have write the script as written above amd made the change zoi said, it works fine when i run it when i'm already root in xterm however it doesn't change the powerlevel if i run it as user, even though the sudo root command is in there, all it does is give me root access.
Any ideas what i need to change?
#!/bin/sh if [ `id -u` != 0 ]; then sudo gainroot <<EOF $0 $* EOF exit fi echo 118 > /sys/class/i2c-adapter/i2c-2/2-0063/power_level
![]() |
2010-01-03
, 23:56
|
|
Posts: 4,274 |
Thanked: 5,358 times |
Joined on Sep 2007
@ Looking at y'all and sighing
|
#13
|
i tried to do as you said qwerty but i can't get it working, i'm not sure what to try now, i think texas has summed it up nicely, i'll have to run it from root for now.
Is there a way to clear the contents of the powerlevel.sh file from x terminal? i accidentially but the command in the file once wrong.
#! /bin/sh VAL=118 FILE=/sys/class/i2c-adapter/i2c-2/2-0063/power_level if [ $(id -u) = 0 ]; then echo $VAL > $FILE else echo "echo $VAL > $FILE" | sudo gainroot fi cat $FILE
![]() |
2010-01-03
, 23:57
|
Posts: 152 |
Thanked: 41 times |
Joined on Dec 2009
@ Sydney
|
#14
|
You can't use sudo like that...the "sudo gainroot" launches a new shell process but the next command in your script executes in the exiting "user"-owned shell. It's not a hard problem to fix in a "normal" linux distro (I typically use "su" with flags to switch users inside a script) but I'm not sure how you would do it with the seemingly unique way that the root account and user account are related in maemo. On the surface it would seem as though you could simply issue a "sudo ./myscript" but I don't think that works out of the box in maemo. Hopefully some of the more seasoned maemo veterans will have an answer for the on-liner you are seeking to create.
One thing you *might* try is to setuid the script (chown file to root, and then chmod u+s the file) that does the things you want to do. You would then execute it as "user" but it would automagically run as root. Can provide a nice huge security hole in most unix systems, but with the "sudo gainroot" thing that doesn't even require a password, I'm not sure that's a concern in this particular case.
![]() |
2010-01-04
, 00:06
|
Posts: 247 |
Thanked: 37 times |
Joined on Aug 2009
@ Los Angeles
|
#15
|
![]() |
2010-01-04
, 00:07
|
Posts: 271 |
Thanked: 220 times |
Joined on Sep 2009
|
#16
|
![]() |
2010-01-04
, 00:13
|
Posts: 30 |
Thanked: 4 times |
Joined on Dec 2009
|
#17
|
Open up any terminal you are comfortable with and type the following:
It changes to root if you are just user and executes the command or else just executes the command.Code:#!/bin/sh if [ `id -u` != 0 ]; then sudo gainroot <<EOF $0 $* EOF exit fi echo 118 > /sys/class/i2c-adapter/i2c-2/2-0063/power_level
![]() |
2010-01-04
, 00:22
|
Posts: 156 |
Thanked: 90 times |
Joined on Jan 2010
|
#18
|
The Following User Says Thank You to rooted For This Useful Post: | ||
![]() |
2010-01-04
, 00:28
|
|
Posts: 664 |
Thanked: 160 times |
Joined on Jul 2008
@ Australia
|
#19
|
will this put the command into the powerlevel.sh file so in future i will just need to run ./powerlevel.sh or will i need to do more for that to happen? also do i type that in as one string or do i press enter after every line? sorry if this is all a bit dumb but i'm a complete novice with linux
The Following User Says Thank You to jaeezzy For This Useful Post: | ||
![]() |
2010-01-04
, 00:29
|
Posts: 152 |
Thanked: 41 times |
Joined on Dec 2009
@ Sydney
|
#20
|
Is there a webpage describing the "sudo system"? Years ago I got some AIX experience, but I've forgotten a lot over the years....
Is there a way to clear the contents of the powerlevel.sh file from x terminal? i accidentially but the command in the file once wrong.