Linux SSH远程文件/文件夹传输命令scp
相信各位VPSer在使用VPS时会常常在不同VPS间互相备份数据或者转移数据,大部分情况下VPS上都已经安装了Nginx或者类似的web server,直接将要传输的文件放到web server的文件夹。然后在目标机器上运行:wget http://www.vpser.net/testfile.zip 即可了。当VPS上没有安装web server和ftp server的时候或感觉上面的方法比較麻烦,那么用scp命令就会排上用场。
一、scp是什么?
scp是secure copy的简写,用于在Linux下进行远程复制文件的命令,和它类似的命令有cp,只是cp仅仅是在本机进行拷贝不能跨server,并且scp传输是加密的。可能会略微影响一下速度。
二、scp有什么用?
1、我们须要获得远程server上的某个文件。远程server既没有配置ftpserver。没有开启webserver,也没有做共享。无法通过常规途径获得文件时,仅仅须要通过scp命令便可轻松的达到目的。
2、我们须要将本机上的文件上传到远程server上,远程server没有开启ftpserver或共享,无法通过常规途径上传是。仅仅须要通过scp命令便能够轻松的达到目的。
三、scp用法
1、获取远程server上的文件
scp -P 2222 root@www.vpser.net:/root/lnmp0.4.tar.gz /home/lnmp0.4.tar.gz
上port大写P 为參数,2222 表示更改SSHport后的port。假设没有更改SSHport能够不用加入该參数。 root@www.vpser.net 表示使用root用户登录远程serverwww.vpser.net。:/root/lnmp0.4.tar.gz 表示远程server上的文件,最后面的/home/lnmp0.4.tar.gz表示保存在本地上的路径和文件名称。
2、获取远程server上的文件夹
scp -P 2222 -r root@www.vpser.net:/root/lnmp0.4/ /home/lnmp0.4/
上port大写P 为參数。2222 表示更改SSHport后的port。假设没有更改SSHport能够不用加入该參数。-r 參数表示递归复制(即复制该文件夹以下的文件和文件夹);root@www.vpser.net 表示使用root用户登录远程serverwww.vpser.net,:/root/lnmp0.4/ 表示远程server上的文件夹。最后面的/home/lnmp0.4/表示保存在本地上的路径。
3、将本地文件上传到server上
scp -P 2222 /home/lnmp0.4.tar.gz root@www.vpser.net:/root/lnmp0.4.tar.gz
上port大写P 为參数。2222 表示更改SSHport后的port,假设没有更改SSHport能够不用加入该參数。
/home/lnmp0.4.tar.gz表示本地上准备上传文件的路径和文件名称。root@www.vpser.net 表示使用root用户登录远程serverwww.vpser.net。:/root/lnmp0.4.tar.gz 表示保存在远程server上文件夹和文件名称。
4、将本地文件夹上传到server上
scp -P 2222 -r /home/lnmp0.4/ root@www.vpser.net:/root/lnmp0.4/
上 port大写P 为參数,2222 表示更改SSHport后的port,假设没有更改SSHport能够不用加入该參数。-r 參数表示递归复制(即复制该文件夹以下的文件和文件夹);/home/lnmp0.4/表示准备要上传的文件夹。root@www.vpser.net 表示使用root用户登录远程serverwww.vpser.net。:/root/lnmp0.4/ 表示保存在远程server上的文件夹位置。
5、可能实用的几个參数 :
-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示运行进度 . 能够用来查看连接 , 认证 , 或是配置错误 .
-C 使能压缩选项 .
-4 强行使用 IPV4 地址 .
-6 强行使用 IPV6 地址 .
linux_文件夹实现挂载(必须在同一网段)
将外部想要挂载传输的目录开启共享文件夹
首先进行安装
yum install nfs-utils rpcbind
yum install nfs*
建立想要挂载的目录
查看可以执行挂载的目录有哪些
showmount -e 192.9.100.191(共享文件夹所在的ip)
mount -t nfs 192.9.100.191:可以挂载的目录路径 想要挂载的目录(为了实现nfs传输进行挂载)
例:mount -t nfs 192.9.100.191:/mnt/md0/public /mount
查看所有挂载的文件目录
df -h
一个系统下大文件传输想要查看路径需在前面加上ip
scp -r /data/tile/r_google_satellite/0-7-0-0-0.ptp root@192.9.100.102:/mount/satellite_data/