私はparamiko put
メソッドを使用して、ローカルサーバからリモートサーバにファイルを送信しています。 ただし、リモートからファイルを表示するには、sudo su - user
コマンドを実行する際に問題が発生しています。私はまた、ローカルからのアクセス許可を変更しようとしましたが、転送されるとファイルのパーミッションはそのまま残ります。Python paramiko sudoを実行中
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(<Host>, username=<User Name>, password=<Password)
sftp = ssh.open_sftp()
sftp.put(<Source>, <Destination>)
sftp.close()
転送されたファイルをリモートから読み取ることができるようparamkioを使用してsudo su - user
コマンドを実行する方法はありますか?
ありがとうございました!
ない
'ssh.exec_command(コマンド)へ伝播しないので、は、単に、
open_ssh
への呼び出しの前exec_command
でsudo su - username
を使用する方法です'しかし、コマンド –@ RajarshiDas ...を実行するのは正しいですが、それはそれ自身のシェルで実行されるので、 'open_ssh'の呼び出しによって変更が使われないようになります。 –