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
yppasswd(1)						      General Commands Manual						       yppasswd(1)

NAME
yppasswd - change password in Network Information Service (NIS) SYNOPSIS
yppasswd [name] DESCRIPTION
Note If Enhanced Security is enabled on your system, use the passwd command to change your password, even if NIS is in use. The yppasswd command lets you change your password in the Network Information Service (NIS) map, a network data base service. Only you or the superuser can change your NIS password. When you enter the yppasswd command, the program prompts you for the old password and then for the new password. Note that the passwords are not displayed on the screen. Next, the program asks you for the new password again, to verify that you have typed it correctly. If you do not type the passwords cor- rectly, you will receive an error message after you enter the new password. Your new NIS password must meet one of the following requirements: It must be a combination of at least six alphanumeric characters, or It must be a minimum of four characters, with at least one being non-alphanumeric, such as a control sequence. Note The passwd command does not change the NIS password. This command only changes the local password file (/etc/passwd), and not the NIS mas- ter password file. ERRORS
Your new password does not meet the minimum length requirement. You misspelled your new password or its verification. Your new password can not be activated. It must be different from your old password and your login name. FILES
Password file NIS directory SEE ALSO
passwd(1), passwd(4), ypfiles(4), yppasswdd(8) Network Administration yppasswd(1)
All times are GMT -4. The time now is 12:53 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy