Sponsored Content
Top Forums UNIX for Beginners Questions & Answers Running a command as another non-root user Post 303001918 by bakunin on Monday 14th of August 2017 06:10:18 PM
Old 08-14-2017
Quote:
Originally Posted by MIA651
Code:
 echo "<password>" | sudo -S -u <username> -k command

This would only work if sudo would accept passwords from stdin, which is not the case (for security reasons).

But even if this wold work you shouldn't do it that way, because you write the password for everybody to read who can read the scripts text. Furthermore, if the password would change you'd have to change the script as well.

Better set up a sudo-rule which allows userA to become userB without any password or to run a certain command (your script) as user B (also without any password). Such a rule would look like:

Code:
# cat /etc/sudoers
[....]
userA   ALL=(userB) NOPASSWD: /path/to/command *
[...]

Notice that the asterisk is probably necessary, otherwise one could not use any commandline arguments.

I hope this helps.

bakunin
This User Gave Thanks to bakunin For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Running a command or script as root

I'm writing an application (Progress language) that needs to: 1) load the contents of a cron table into the Progress application; 2) display this information in a human manner and allow a select group of people to update it (these people are logged in as themselves, not as root); 3) save... (3 Replies)
Discussion started by: rm-r
3 Replies

2. Shell Programming and Scripting

As root , running script as different user with su - problem

Dear All I am running into a situation where I am running a script as another user lets say oracle using su command as below, and the script fails because the .profile of oracle is not executed so the environment variables are not set. cat /etc/passwd | grep oracle... (4 Replies)
Discussion started by: dbsupp
4 Replies

3. Shell Programming and Scripting

root user command in shell script execute as normal user

Hi All I have written one shell script for GPRS route add is given below named GPRSRouteSet.sh URL="www.google.com" VBURL="10.5.2.211" echo "Setting route for $URL for GPRS" URL_Address=`nslookup $URL|grep Address:|grep -v "#"|awk -F " " '{print $2}'|head -1` echo "Executing ... (3 Replies)
Discussion started by: mnmonu
3 Replies

4. UNIX for Dummies Questions & Answers

Allow a user use a specific root command!

Hi, I like to allow an user to permit an root command " /usr/ucb/ps -auxwww", do you know how? Kind regards Mehrdad (6 Replies)
Discussion started by: mehrdad68
6 Replies

5. Shell Programming and Scripting

How to restrict root user from running some commands

is it possible that we can restrict the root user if he runs some commands?? e.g i want if root runs command 'rm etc/passwd', he shoudn't be able to run command and throws error :confused: (3 Replies)
Discussion started by: sheelsadan
3 Replies

6. UNIX for Dummies Questions & Answers

Execute a command as root from normal user

Hi , I am trying to stop and start a process using the below code. I have sudo access on my machine ## PID = process id echo "$PASSWD" | sudo -S kill -9 <PID> echo "$PASSWD" | sudo -S /opt/abc/startserver /opt/abc/startserver: error while loading shared libraries: librts.so: cannot open... (6 Replies)
Discussion started by: rakeshkumar
6 Replies

7. Shell Programming and Scripting

Running commands in remote node as root user

Platform :Oracle Linux 6.4 We are trying to automate the SAN level cloning from production RAC DB cluster to test. From a shell script, I would like to run the below command Step1,2 and 3 from Node1 in a sequential order as root user . How can I do this ? passwordless for root user is not... (2 Replies)
Discussion started by: kraljic
2 Replies

8. Shell Programming and Scripting

Root running a script calling to scp using user "xyz" is not authenticating!

Close duplicate thread. (0 Replies)
Discussion started by: denissi
0 Replies

9. Shell Programming and Scripting

CRON JOB not running - for tape backup from root user

I am trying a cron on root user to backup to tape using TAR command here is the cron entry 11 08 * * 6 /erdhot1cron 2>&1 >> /test3/scripts/dba/erdhot1cron.log here is script inside - edhot1cron #!/bin/bash vsysdt=`date +%d%m%y` date tar -cvf /dev/st0... (4 Replies)
Discussion started by: vijaymec50
4 Replies

10. Shell Programming and Scripting

Execute a command with root user

i m logged in with user1 id. i wish to execute the below as root user for which i tried several commands but all of them fail. sudo 'cat /tmp/tmp.file >>/etc/logger' Password: sudo: cat /tmp/tmp.file >>/etc/logger: command not found sudo cat /tmp/tmp.file >>/etc/logger bash:... (5 Replies)
Discussion started by: mohtashims
5 Replies
dxchpwd(1X)															       dxchpwd(1X)

NAME
dxchpwd - Create or change password program SYNOPSIS
dxchpwd dxchpwd -r | -l dxchpwd [-r | -l] -q dxchpwd [-r | -l] -u username OPTIONS
If dxchpwd is invoked without any options, it is assumed that the current user's password is to be changed. The following options are also accepted: Tells dxchpwd that the password change is to be done for a Local user. This can be combined with the -u and -q options. Tells dxchpwd that the password change is to be done for a NIS user. This can only be done from a NIS master and can be combined with the -u and -q options. Tells dxchpwd to query the user for the user name of the account whose password is to be changed. Tells dxchpwd to change this user's password. DESCRIPTION
The dxchpwd command lets you change your password. When you invoke the dxchpwd command, the program prompts you for the old password and then for the new password. Next, the program asks you for the new password again, to verify that you have typed it correctly. Note that the passwords are not displayed on the screen. Your new password must meet the length requirements specified by the authorization database for the user whose password is being changed. If your system is running with enhanced security, you may have to choose a password from a list of randomly generated passwords or you may be prohibited from changing your password until its minimum lifetime has expired, as specified in the authorization database. EXAMPLES
The following example requests that the password be changed for user smith: dxchpwd -u smith FILES
Password file Protected Password Database dxchpwd executable SEE ALSO
X(1X), xdm(1X), passwd(1) dxchpwd(1X)
All times are GMT -4. The time now is 05:11 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy