使用不同的用户 ID 将文件复制到远程服务器的命令?

使用不同的用户 ID 将文件复制到远程服务器的命令?

我想将文件从服务器 A 传输到服务器 B。我可以访问这两个服务器,因此我登录到服务器 A 并输入以下命令来传输文件

scp filename.txt mqm@serverB:/home/akotha/testdir

akotha是我的 ID,并且我确实具有 sudo 访问权限mqm,执行命令后,它应该使用mqm用户来传输文件;但如果密码是必需的/强制的,那么它应该采用我的akotha用户密码。

有任何命令可以实现它,如果您不清楚我的问题,请告诉我。

#!/bin/ksh   
echo "please below details to copy to server"
echo "remote server name:" read rserver
echo "user name:" read user
echo "remote location:" read rloc
echo "please enter the complete path to check files:" read dir
echo "enter single or batch file name to copy:" read file
scp  $dir/$file $user@$rserver:$rloc

答案1

如果您有 serverB 的用户名/密码,则应在执行scp命令时使用它。

akotha如果您有上的用户的密码serverB,则应按照以下格式使用它:

scp filename.txt akotha@serverB:/home/akotha/testdir

以下解决方案将允许serverB:/home/akotha/testdir用户对文件夹具有写访问权限akotha

  • root创建一个可容纳两个用户的新组(这应该由用户或使用来完成sudo

    例如,使用 mqmakotha 作为组名,并且该组应包含两个用户。

    此链接显示如何将用户添加到组

  • 将文件夹的组更改/home/akotha/testdir为此组

    chgrp mqmakotha /home/akotha/testdir

  • 修改权限为/home/akotha/testdir组可读/可写

    chmod g+rw /home/akotha/testdir

相关内容