Sponsored Content
Top Forums UNIX for Beginners Questions & Answers How to switch user in shell script? Post 302985695 by rbatte1 on Monday 14th of November 2016 09:19:31 AM
Old 11-14-2016
Yes, there are a few ways, not least:-
  • Make the script owned by root and set the SETUID bit (look in the manual page for chmod to see how.
  • Install something like sudo and write a rule that allows you to run it. You can leave it to prompt for your personal password or write the rule with the NOPASSWD option specified.
I would be surprised if coding the root password in a script would work unless you use something like expect and I would agree that it is something to be avoided. There are other ways too, I'm sure.

Of the above, the use of sudo is most often used and it has the bonus that it writes a message to the syslog when you use it which auditors like too.



I hope that this helps,
Robin
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

switch user inside a script

Hi, I wrote a unix script that will perform differnt tasks on bahalf of number of users. I use "sudo" to run the script. The problem is when I execute the command: su - user -c "xxx " > output_file, I get the system output header frm the su command. Is there a way to get rid of it instdead of... (2 Replies)
Discussion started by: nimo
2 Replies

2. Shell Programming and Scripting

switch user inside a script

Hi Is there any way to switch user inside a shell script? (4 Replies)
Discussion started by: ./hari.sh
4 Replies

3. Shell Programming and Scripting

How to switch user in shell scripting (without sudo)?

Hi everyone: I have a big trouble, I need create a script that must switch user and then must execute certain commands, sadly neither my user nor the second user have no privileges for sudo, I've tried everything but seems su doesn't accept input redirection, please help me, it's very... (8 Replies)
Discussion started by: edgarvm
8 Replies

4. Shell Programming and Scripting

Switch User in within a Shell Script

Hi Experts, I'm trying to write a shell script to stop few things where i have to use another user to execute a command. Otherwise it will not work. Your help is really appreciated Thanks, (16 Replies)
Discussion started by: Afi_Linux
16 Replies

5. Shell Programming and Scripting

Switch user inside shell script

Hi, I am trying to create one script where I have to login as another user inside the script to exeute some commands How can i achieve this? Many thanks in advance. (4 Replies)
Discussion started by: prarat
4 Replies

6. Shell Programming and Scripting

How to switch user using shell script ?

Hi, script1.sh script2.sh script3.sh From above, script1.sh is the main script which is executed from root user, creates installation directory, changing ownership and execution rights etc..etc.. and finally calls scripot2.sh and script3.sh to create the database as well as for post... (1 Reply)
Discussion started by: milink
1 Replies

7. UNIX for Dummies Questions & Answers

How to switch the user before executing a shell script from web page??

hi, i want to execute a shell script as a different user. the flow is like this. there is a html web page from which i have to call a shell script. web server is apache. to call the shell script from html page, a perl script is required. so the html page calls the perl script and the perl... (2 Replies)
Discussion started by: Little
2 Replies

8. Shell Programming and Scripting

Switch user without password inside shell

I want to switch to another user without password inside shell. I used the below command and it is not working. sudo su - user1 user1 is not in the sudoers file. This incident will be reported. I'm getting the above message. If I want to add user1 into the sudoers file using... (5 Replies)
Discussion started by: Roozo
5 Replies

9. Shell Programming and Scripting

How to switch user in shell scripting (without root)?

Hi everyone: I need create a script that must switch user and then must execute certain commands, sadly neither my user nor the second user have no privileges for su - , I've tried everything but seems su doesn't accept input redirection, please help me, ... (4 Replies)
Discussion started by: ooilinlove
4 Replies

10. Shell Programming and Scripting

How to Switch from Local user to root user from a shell script?

Hi, I need to switch from local user to root user in a shell script. I need to make it automated so that it doesn't prompt for the root password. I heard the su command will do that work but it prompt for the password. and also can someone tell me whether su command spawns a new shell or... (1 Reply)
Discussion started by: Little
1 Replies
0STORE-SECURE-ADD(1)													      0STORE-SECURE-ADD(1)

NAME
0store-secure-add -- add an implementation to the system cache SYNOPSIS
0store-secure-add DIGEST DESCRIPTION
This command imports the current directory into the system-wide shared Zero Install cache, as /var/cache/0install.net/implementa- tions/DIGEST. This allows a program downloaded by one user to be shared with other users. The current directory must contain a file called '.manifest' listing all the files to be added (in the format required by DIGEST), and this file must have the given digest. If not, the import is refused. Therefore, it is only possible to add a directory to the cache if its name matches its contents. It is intended that it be safe to grant untrusted users permission to call this command with elevated privileges. To set this up, see below. SETTING UP SHARING
To enable sharing, the system administrator should follow these steps: Create a new system user to own the cache: adduser --system zeroinst Create the shared directory, owned by this new user: mkdir /var/cache/0install.net chown zeroinst /var/cache/0install.net Use visudo(8) to add these lines to /etc/sudoers: Defaults>zeroinst env_reset,always_set_home ALL ALL=(zeroinst) NOPASSWD: /usr/bin/0store-secure-add Create a script called 0store-secure-add-helper in PATH to call it. This script must be executable and contain these two lines: #!/bin/sh exec sudo -S -u zeroinst /usr/bin/0store-secure-add "$@" < /dev/null The other Zero Install programs will call this helper script automatically. FILES
/var/cache/0install.net/implementations System-wide Zero Install cache. LICENSE
Copyright (C) 2009 Thomas Leonard. You may redistribute copies of this program under the terms of the GNU Lesser General Public License. BUGS
This program is EXPERIMENTAL. It has not been audited. Do not use it yet in security-critial environments. The env_reset line in sudoers may not be required. sudo(1) seems to do it automatically. If sudo let us check whether we could call a command then we could switch to using it automatically, instead of needing to add the helper script. Currently, sudo delays for one second and writes to auth.log if we try to use this system when it hasn't been set up. Please report bugs to the developer mailing list: http://0install.net/support.html AUTHOR
Zero Install was created by Thomas Leonard. SEE ALSO
0store(1) The Zero Install web-site: http://0install.net Thomas Leonard 2010 0STORE-SECURE-ADD(1)
All times are GMT -4. The time now is 06:14 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy