maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Development (https://talk.maemo.org/forumdisplay.php?f=13)
-   -   How to use root within script/program? (https://talk.maemo.org/showthread.php?t=70473)

ejasmudar 2011-03-05 05:20

Re: How to use root within script/program?
 
Quote:

Originally Posted by mece (Post 957873)
without any modifications to sudoers and whatnot you can use run-standalone.sh like this:

sudo /usr/bin/run-standalone.sh /path/to/runthisscriptasroot.sh

That will run "runthisscriptasroot.sh" as root.

EDIT:
tested it with this script:

#!/bin/sh
whoami > whoami.txt

works :)

Hmm, i am also having a similiar problem,
I tried
Code:

sudo /usr/bin/run-standalone.sh /opt/script.sh
but i am getting error:
Code:

standalone.sh: line 11: /opt/script.sh:permission denied.
Please help

Tiboric 2011-03-05 05:43

Re: How to use root within script/program?
 
Quote:

sudo run-standalone.sh /opt/shortcutmkr/main.py
is how i launch SCM with root privileges also have to
Quote:

sudo chmod +x main.py
to get it to run.

ejasmudar 2011-03-05 07:44

Re: How to use root within script/program?
 
Quote:

Originally Posted by Tiboric;961024[CODE
]sudo chmod +x main.py[/CODE]
to get it to run.

So do i make it so that sudo chmod +x script.sh is done automatically after install? I am trying to make a deb package

CharlesM 2011-03-05 08:52

Re: How to use root within script/program?
 
as root

chown root YOURFILE
chmod 4775 YOURFILE

voila!

ejasmudar 2011-03-05 09:29

Re: How to use root within script/program?
 
Quote:

Originally Posted by CharlesM (Post 961062)
as root

chown root YOURFILE
chmod 4775 YOURFILE

voila!

Yes, but these commands have to be performed by the users right?

What I want is, after instaling the deb file, the users should be able to start the app normally but it should have root priviledges. For refrerence, this are the scripts that I am planning to make into a package.
So, while creating the deb file, in the .desktop file, for exec=, what command should I give? Right now i tried with
Code:

sudo run-stanalone.sh /opt/script.sh
But no luck.

Am I doing something glaringly obvious and dumb here?

ejasmudar 2011-03-09 03:37

Re: How to use root within script/program?
 
OK, i have finally figured out how to run some of scripts as root, when started by user.
I have a bunch of 5 scripts, with a main script acting as the menu or gateway. The main script is launched normally via an icon as
Code:

sh parentscript.sh
in that script, it calls the other scripts as
Code:

sudo run-standalone.sh sh childscript1.sh
This methodology seems to be working for me. But one the users of this app is having a problem that xterm is asking for password on execution of sudo run-standalon.sh.

Can anybody help us?

kitwalker 2011-03-09 04:02

Re: How to use root within script/program?
 
There's another method that works great which I saw based on this:

http://talk.maemo.org/showpost.php?p...1&postcount=16

From the above link (disable_ts.zip)

If you put this in a script file:
Code:

sh -c 'echo "sleep 1; echo 1 > /sys/devices/platform/omap2_mcspi.1/spi1.0/disable_ts" | sudo gainroot'
echo 1 > /sys/devices/platform/omap2_mcspi.1/spi1.0/disable_ts should fail as permission denied if executed as normal user since it is modifying a sysfs file. But the above method of piping to sudo gainroot works!

ejasmudar 2011-03-09 04:50

Re: How to use root within script/program?
 
Hey thanks a lot! piping the command to sudo gainroot works like a charm!

Tiboric 2011-03-09 05:38

Re: How to use root within script/program?
 
Quote:

Originally Posted by ejasmudar (Post 961052)
So do i make it so that sudo chmod +x script.sh is done automatically after install? I am trying to make a deb package

yes in your postinstall script

ovekaaven 2011-03-16 23:02

Re: How to use root within script/program?
 
Setting permissions in the postinst is a band-aid. The correct permissions should already have been in the packed deb, i.e. the permissions should preferably be set in debian/rules or other makefile/buildscript, not in the package postinst.


All times are GMT. The time now is 14:07.

vBulletin® Version 3.8.8