10-06-2010
sudo su - user in a shell script
Normally i would google, but I did not know how to google the problem I am facing now also being a newbie in shell scripting.
Okay, the requirement is
user1 has sudo rule to su - user2(NO PASSWORD) and user2 has will be able to sudo certain commands
so following works fine from command prompt
user1@host] sudo su - user2
the above command opens up a new shell, logging me in as user2
user2@host] sudo cmd1
user2@host] sudo cmd2
user2@host] sudo cmd3
user2@host] exit
user1@host]
How would I achieve the above using a shell script?
I have tried putting following commands in a shell script
sudo su - user2 -c "sudo cmd1" (this prompts me for a password though I have a sudo rule to not prompt for one.)
sudo su - user2 (this gets me out of the shell and takes me to "user2@host]")
none works for me.
Any help on this would be greatly appreciated.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I've written a shell script to alter a particular preference file on OS X (10.3.9), which works fine (tested by running the script from the terminal sat in front of the box).
Problem is, I now have to run this script remotely across a number of machines via remote desktop, so where I've used the... (1 Reply)
Discussion started by: Brad_GNET
1 Replies
2. Shell Programming and Scripting
Hi all,
I am trying to eject the cdrom from a livecd after certain stage...
Now assuming that it is possible to eject,please consider my issue!!!
The OS boots into a regular user by default...so i am unable to use the eject command to push out the drive...
However if i try pfexec eject it... (3 Replies)
Discussion started by: wrapster
3 Replies
3. Shell Programming and Scripting
cat test.sh
sudo mount -t vfat /dev/sda7 /media/Ddrive
If i double click the test.sh file and select run in terminal then the terminal prompts for password.
How can i avoid typing password?
Or if i double click test.sh file and select run then nothing happens.
What i'm trying "Double... (3 Replies)
Discussion started by: cola
3 Replies
4. Shell Programming and Scripting
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
5. Shell Programming and Scripting
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
6. Shell Programming and Scripting
I want to execute a script(generateReport.sh) which resides on root home directory from shell script(localtrigger.sh) as root by using sudo.
The thing is
i cant edit /etc/sudoers (i can but m not allowed to do it , ethically)
i cant change ownership of generateReport.sh script
When i try... (7 Replies)
Discussion started by: saket
7 Replies
7. Shell Programming and Scripting
Hi Every body,
I would need a shell script program to login as different user and perform some copy commands in the script.
example: Supppose ora_toms is the active user
ora_toms should be able to run a script where user: ftptomsp pass: XXX should login through and run the commands
... (9 Replies)
Discussion started by: ujjwal27
9 Replies
8. Shell Programming and Scripting
Can some one please let me know a script which gives the user sudo permissions?
Thanks in advance.... (6 Replies)
Discussion started by: Revanth547
6 Replies
9. Shell Programming and Scripting
I have a script in which I used "sudo -s" I notice some extremely strange behavior when executing this script. To investigate this I decided to recreate the problem in the following script. I notice that "sudo -s" is only being executed one time. Soon after completely falls apart. Is there... (4 Replies)
Discussion started by: busi386
4 Replies
10. UNIX for Beginners Questions & Answers
Hello Friends,
I have a scenario to create a script, I know many of you feel this as simple script.
I am not much familiar with unix scripting, please help me out.
Situation:-
1. I have a list of config files like 40+ would be getting deployed in the /app/abcd/src/Config/ (This will... (2 Replies)
Discussion started by: ganjvin
2 Replies
talk(1) General Commands Manual talk(1)
Name
talk, otalk - talk to another user
Syntax
talk person [ttyname]
otalk person [ttyname]
Description
The command is a visual communication program which copies lines from your terminal to that of another user.
If you wish to talk to someone on your own machine, then person is just the person's login name. If you wish to talk to a user on another
host, then person is of the form :
host!user
or
host.user
or
host:user
or
user@host
The form user@host is perhaps preferred.
If you want to talk to a user who is logged in more than once, the ttyname argument may be used to indicate the appropriate terminal name.
When first called, it sends the message
Message from TalkDaemon@his_machine...
talk: connection requested by your_name@your_machine.
talk: respond with: talk your_name@your_machine
to the user you wish to talk to. At this point, the recipient of the message should reply by typing
talk your_name@your_machine
It doesn't matter from which machine the recipient replies, as long as his login-name is the same. Once communication is established, the
two parties may type simultaneously, with their output appearing in separate windows. Typing Ctrl-L will cause the screen to be reprinted,
while your erase, kill, and word kill characters will work in talk as normal. To exit, just type your interrupt character; then moves the
cursor to the bottom of the screen and restores the terminal.
Permission to talk may be denied or granted by use of the mesg command. At the outset talking is allowed. Certain commands, in particular
and disallow messages in order to prevent messy output.
In order to use the program with machines on your network that may be running earlier versions of ULTRIX, you must initiate a session with
the command (/usr/ucb/otalk) instead of the command You must also respond to a request from a machine running an older version of the pro-
gram with the command. See the Restrictions section.
Examples
The following example demonstrates how to use the command. In this case, user1, whose system (system1) is running ULTRIX V2.2 initiates a
session with user2, whose system (system2) is running ULTRIX V3.0. User1 types the following:
system1> talk user2@system2
The following message appears on the screen of user2:
Message from Talk_Daemon@system2 at 12:37 ...
talk: connection requested by user1@system1.
talk: respond with: otalk user1@system1
To establish the connection user2 follows the instructions from the Talk_Daemon and types the following at the system prompt:
system2> otalk user1@system1
Restrictions
The version of released with ULTRIX V3.0 uses a protocol that is incompatible with the protocol used in earlier versions. Starting with
ULTRIX V3.0, the program communicates with other machines running ULTRIX, V3.0 (and later), and machines running 4.3 BSD or versions of
UNIX based on 4.3 BSD.
The command is not 8-bit clean. Typing in DEC Multinational Characters (DECMCS) causes the characters to echo as a sequence of a carets (^)
followed by the character represented with its high bit cleared. This limitation makes unusable if you want to communicate using a language
which has DECMCS characters in its alphabet.
Files
to find the recipient's machine
to find the recipient's tty
See Also
mail(1), mesg(1), who(1), write(1), talkd(8c)
talk(1)