Execute commands with ssh [closed] - bash

Closed. This question is not reproducible or was caused by typos. It is not currently accepting answers.
This question was caused by a typo or a problem that can no longer be reproduced. While similar questions may be on-topic here, this one was resolved in a way less likely to help future readers.
Closed 8 years ago.
Improve this question
I tried to run commands with ssh login.
The ls command works fine,
ubuntu#arm64:~$ ssh -o "StrictHostKeyChecking no" -o "PasswordAuthentication no" -i /root/.juju/ssh/juju_id_rsa ubuntu#192.168.50.2 ls
giving list of files/dir
But when I run /bin/bash with ssh it hanged (no response output).
ubuntu#arm64:~$ ssh -o "StrictHostKeyChecking no" -o "PasswordAuthentication no" -i /root/.juju/ssh/juju_id_rsa ubuntu#192.168.50.2 /bin/bash
When I ran /bin/bash on 192.168.50.2 there is no output, but command returns. In case ssh command does not return from ssh, what is the reason?

When you run /bin/bash you are forking a new bash process, something like when you start up your terminal.
Just like with the terminal bash, bash over ssh is going to wait for you to give it further instructions before it returns any output to you.

Related

How can I automate password entry for a shell script? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 2 years ago.
Improve this question
I am using openvpn.
To execute the vpn I enter in my terminal the following command string: sudo openvpn /etc/openvpn/ca-mon.prod.surfshark.com_udp.ovpn
Then I am required to enter my password.
Openvpn requires sudo or it won't work.
I created a shell script hoping to eliminate the need to type my password.
after searching for solutions I read tha including "NOPASSWD" would solve my issue. However, NOPASSWD isn't recognized, the script stops with an error on NOPASSWD.
I thought maybe NOPASSWD might only work on BASH so I changed the script for BASH. No difference, still errors out on NOPASSWD.
I'm obviously doing something wrong as I keep reading that it should work.
Any suggestions are greatly appreciated.
My script that works but requires my password after execution:
#!/bin/bash
cd /etc/openvpn
sudo openvpn /etc/openvpn/us-dtw.prod.surfshark.com_udp.ovpn
In your /etc/sudoers file, add
yourusername ALL = (root) NOPASSWD: /"The REAL PATH of your openvpn file"
Then try to rerun the script.

linux sshpass not able to execute command remotely [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 2 years ago.
Improve this question
I have remote red-hat 5.4 machine where I am able to execute
sudo lvdisplay
command locally using xyz user but while executing the same command remotely using xyz user through sshpass, I am getting the result as
sudo: lvdisplay: command not found.
The command I am executing is like
sshpass -p 'password' ssh -p 22 -o StrictHostKeyChecking=no
xyz#hostname sudo lvdisplay
.
Please help me out to resolve the issue.
sshpass -p pass ssh -t user#192.168.XXX.XXX 'ls; bash -l'
Try the above command it worked for me. Remember to replace pass and user.

How to execute a shell script stored on remote machine from a local machine? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 8 years ago.
Improve this question
I have a script.sh stored on remote server at some directory, which I want to run from a local computer.
How can I do that in unix using ssh?
You can use ssh command from the local server to execute commands on the remote server. You just have to do something like this:
ssh [user]#[server] '[command]'
In your case, you are trying to execute a shell-script. You can use the same method in the following way:
ssh [user]#[server] /location/of/your/script.sh
You can also run multiple commands in this way:
ssh [user]#[server] '[command 1]; [command 2]; [command 3]'
Or you can also do something like this:
ssh [user]#[server] << EOF
command 1
command 2
command 3
EOF
I assume you have ssh access to your remote server. Type this in a terminal at the local server:
ssh user#remote-server /path/to/script.sh

Transfering postgreSQL DB from one server to another [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 8 years ago.
Improve this question
I am using this command to attempt to transfer a DB
pg_dump -C -h localhost -U OLD_SERVER_USER_NAME site_db | psql -h NEW_SERVER_IP -U postgres site_db
It asks me for a password, which I give and then nothing happens, it just hangs.
What am I doing wrong?
First, to avoid the password prompt, you can set the environment variable PGPASSWORD.
In terms of it hanging, it's quite possible that the piping is "eating" an error that you would otherwise see.
Try breaking it up into separate commands, something like:
pg_dump -C -h localhost -U OLD_SERVER_USER_NAME site_db > db.dmp.sql && psql -h NEW_SERVER_IP -U postgres -f db.dmp.sql site_db
And see if you get any errors from either command.

Here Document not working with sudo su [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I was trying to write a setup.sh script that searches and installs the required components while installing an application. If a required component is not found it will prompt to install it. I have used sudo apt-get install for that, and I want to pass the user supplied password to sudo, like this:
read passwd
sudo apt-get install clisp <<EOF
$passwd
$passwd
EOF
But this is not working. The input password is not being passed to sudo. Why is this not happening? Is there any mistake in my usage?
The password is not read from the standard input but from the "current terminal". This is not changeable via redirection. But sudo provides an optione -S which read the password from standard input and not from the terminal.
Edit: A better solution to the whole problem would be to avoid intercepting the password at all. sudo will ask for the password itself if it requires one. using the -A option you can also provide a graphical UI for this question. And since sudo keeps a timestamp for that input it will not ask for the password the next 15 minutes (by default, i.e. configurable). Therefore multiple sudo calls are also not a problem.

Resources