Error - sudo: no tty present and no askpass program specified
Hi
I am trying to automate the deployment of a tar ball onto a set of remote servers and am getting this error from the ssh -
Code:
sudo: no tty present and no askpass program specified
What I have done is add some code into the user's ssh key that does a few things like delete the existing directory structure and untar the new one and so on.
It works fine from the command line, but I get this error when trying to embed the code in a script.
From the error it seems to be expecting a terminal session or an askpass program.
I don't really understand why I see this as the code is deployed and untarred ok???
For the 'no tty present', open up your sudoers file and look for a line that says
Quote:
Defaults requiretty
Change it so the requiretty has the negate character in front. Make it look like
Quote:
Defaults !requiretty
Notice the exclamation (negate) character in front of the requiretty
I'm confused by the code you are using
ssh musedeploy@${SERVER} ${PSWD} || die "Deployment failed"That looks like you are just trying to login to $SERVER as the user musedeploy and the failure is on the passwd. Does this account execute something on login?
Your sudo entry, is that on the $SERVER or is that on the local system? If you are wanting to execute the command on $SERVER then put the entry into the sudoers on $SERVER. You may want to setup passwd-less login for ssh as well.
With the !requiretty and the sudoers entry on $SERVER you could try your command as such:
Code:
ssh musedeploy@${SERVER} 'sudo $MUSE_CMD'
As you have NOPASSWD in the sudoers there is no need to worry about that.
The MUSE_CMD sudoers entry, is that suppose to be a single command or are they a string of separate commands? It appears you have multiple individual commands, they are not executing in succession. Is that what you are trying for?
Actually I got it working and it turned out to be a bug in my code. Nothing to do with the tty at all.
Embedding code in the key is perfect for what I wanted to do but awful to parse for bugs etc as it all has to appear on one line. (Unless someone can show me otherwise).
This has been quite a learning curve. If you are ever looking for creative ways to screw up sudo and ssh, I'm your man!
And yes, I was trying to create a passwordless log in that was locked down to just running the code embedded in the key on the server.
In bash, you can do something like this:
#!/bin/bash
echo -n "What is your name? " > /dev/tty
read thename < /dev/tty
How can I do the same in python?
I have a python script that has the following content:
#!/usr/bin/python2.7
import getpass
import sys
import telnetlib
import... (2 Replies)
I am trying to rsync files from NodeA to NodeB.
Using the below command.
/usr/bin/rsync -v -a -e "ssh" --rsync-path="sudo -u msd rsync" /home/ansible/templates/app/Sprint6/webapps eric@NodeB:/opt/msdp/ca/iam_cac
I can only ssh into NodeB as eric user but I want files placed as msd user.... (4 Replies)
Hi Guys,
I use a script sdcmdeploy.ksh to deploy java application to respective dev/test environment. This script is being executed on SunOS. These apps are weblogic apps & the script internally calls weblogic deploy script to deploy application to weblogic cluster.
But at this point it... (2 Replies)
Hi, Have a need to run the below command as a "karuser" from a java class which will is running as "root" user. When we are trying to run the below command from java code getting the below error.
Command:
sudo -u karuser -s /bin/bash /bank/karunix/bin/build_cycles.sh
Error:
sudo: sorry,... (8 Replies)
Hi
I have an Oracle DBA that is trying to install an RPM from Stratavia which is a web based portal and it executes the following:
Instance Wrapper=sudo -u oracle /opt/datapalette/jython/jython
Server Wrapper=sudo -u root /opt/datapalette/jython/jython
I've compared the /etc/sudoers... (8 Replies)
i am trying overide the below error
sudo: sorry, you must have a tty to run sudoi am aware of ssh -t option. But just experimenting with OS :D
So, tried commenting out Defaults requiretty from my sudoers file after which i am getting the below error
sudo: no tty present and no askpass... (4 Replies)
Hi All,
I running a unix command using sudo option inside shell script. Its working well. But in crontab the same command is not working and its throwing
"sudo: sorry, you must have a tty to run sudo". I do not have root permission to add or change settings for my userid. I can not even ask... (9 Replies)
Hi Gurus:
Can you help me get out of this message ?
I already commented out the ff line in /etc/sudoers file but still prompts me for this message.
#Defaults requiretty
-sh-3.2$ ./check_diskErrors itag3.pm.staging.intra /dev/sda
sudo: no tty present and no askpass program specified... (3 Replies)