拷貝文件常用的命令為 scp
和 rsync
。
- 使用
scp
拷貝文件的時(shí)候,如果不是 root 用戶無法直接拷貝到?jīng)]有權(quán)限寫入的文件夾。一般常用的做法是先將文件拷貝到 home 文件夾下,然后再遠(yuǎn)程使用sudo
命令進(jìn)行復(fù)制。 - 使用
rsync
拷貝文件時(shí),如果遠(yuǎn)程用戶配置了 sudo 免密,則可以遠(yuǎn)程復(fù)制文件到?jīng)]有權(quán)限的文件夾。
配置 sudo 免密執(zhí)行
shell復(fù)制代碼sudo tee -a /etc/sudoers << EOF
yabin ALL=NOPASSWD:ALL
EOF
將其中的 yabin
替換成自己的用戶名即可。
使用 scp 命令拷貝
shell復(fù)制代碼# 將文件夾拷貝到 home 的臨時(shí)文件夾中
scp -r /data/work/etcd-${RELEASE}-linux-amd64/etcd* m-yabin-master1:~/etcd-temp/
# 拷貝一個(gè)文件到多個(gè)主機(jī)中
for i in m-yabin-node m-yabin-node1; do scp /data/work/etcd-${RELEASE}-linux-amd64/etcd* $i:~/etcd-temp/;done
示例中:
-
m-yabin-master1,m-yabin-node,m-yabin-node1
為遠(yuǎn)程主機(jī)名,可以替換成遠(yuǎn)程主機(jī) ip。 - 對(duì)于單個(gè)文件的拷貝,去掉
-r
參數(shù)即可。
使用 rsync 命令拷貝
rsync 在配置 sudo
免密執(zhí)行以后,可以直接拷貝文件到需要 sudo
的文件夾下,不過需要添加 --rsync-path="sudo rsync"
參數(shù),如下所示:
shell復(fù)制代碼for i in m-yabin-master1 m-yabin-master2;do rsync -vaz etcd.conf --rsync-path="sudo rsync" $i:/etc/etcd/;done
for i in m-yabin-master1 m-yabin-master2;do rsync -vaz etcd*.pem ca*.pem --rsync-path="sudo rsync" $i:/etc/etcd/ssl/;done
上面命令分別演示了拷貝 etcd.conf
單個(gè)文件,以及包含 etcd
和 ca
的多個(gè) pem
文件的命令。
使用 root 用戶拷貝
當(dāng)需要拷貝文件到需要 root 權(quán)限的位置時(shí),可以考慮使用 root 用戶進(jìn)行拷貝,ubuntu 配置 root 用戶允許遠(yuǎn)程登錄的方式:文章來源:http://www.zghlxwxcb.cn/news/detail-593399.html
shell復(fù)制代碼# 給 root 用戶設(shè)置密碼,這樣就可以以 root 身份登錄了
sudo passwd root
# 修改 /etc/ssh/sshd_config 文件加上下面這一句以允許 root ssh 遠(yuǎn)程登錄
PermitRootLogin yes
# 重啟 ssh 服務(wù)
sudo systemctl restart sshd
# 如果想刪除 root 用戶登錄,只需要清除密碼即可
sudo passwd -l root
設(shè)置完畢之后,直接用 root 用戶+ scp 命令拷貝即可。文章來源地址http://www.zghlxwxcb.cn/news/detail-593399.html
到了這里,關(guān)于linux 拷貝文件到遠(yuǎn)程服務(wù)器的方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!