在维护Linux服务器的时候,我们有时需要拷贝Windows下的文件到服务器,这个时候我们需要如何通讯呢?在虚拟机中,我们有时候需要和本机进行数据的交互,可能会繁琐通过网络传送数据,或者直接通过U盘这样的方式在本机和虚拟机之间进行数据的交互。

一、过程和方法

Windows下拷贝文件(tuning-primer.sh)到Ubuntu服务器上:

方式一:使用Putty里面的PSCP.EXE进行拷贝

1.下载PSCP.EXE:putty.zip,拷贝PSCP.EXE到E盘目录下;

2.在运行里输入cmd,进入E盘,输入下面的命令:

E:\>pscp.exe tuning-primer.sh bfadmin@192.168.1.126:/tmp/


 

方式二:使用Ubuntu(DeskTop-10)的操作界面进行拷贝:

1.首先你需要为你的虚拟机里面的Ubuntu分配一个内网IP,可参考:VMware(Ubuntu)设置独立IP地址

2.在Ubuntu的【位置】-【连接到服务器】-【服务器类型】中选择【Windows共享】,在【服务器】中输入你Windows的IP地址,点击【连接】这样你就可以访问你Windows下的所有文件了。

3.如何使用命令进行上面的操作,待以后测试;

方式三:可参考:VMWARE WORKSTATION 虚拟机(客户机)创建和主机共享文件夹(为经过测试)

方式四:如果是使用VMware作为虚拟机的话,可以安装VMware Tools,直接拖文件到虚拟机就可以了。

方式五:以FTP的形式进行下载:Wget http://192.168.1.10:81/greenplum.bin /tmp/greenplum.bin

二、遇到的问题

我在本地Windows拷贝到本地虚拟机的Ubuntu(DeskTop-10)下,提示下面的错误:

E:\>pscp.exe e:\downloads\jdk-6u31-linux-i586-rpm.bin chen@192.168.1.147:/tmp/

测试拷贝到126(一个内网地址的机器,Server版本)就没问题


 

后来发现是我的Ubuntu是没装ssh,执行下面的命令查看并安装:

#ssh

#ufw status

#apt-get -y install openssh-client openssh-server

再次测试,成功了:


 

三、注意事项

1.PSCP是Putty安装包所带的远程文件传输工具,使用和Linux下scp命令相似。

2.建议将PSCP.EXE放到C:\WINDOWS\system32下面,这样就可以在任何地方调用了。

3.使用PSCP.EXE ?查看命令参数与选项。

4.PSCP.EXE的常用方法:

1)把本地文件file传输到Linxu服务器的/tmp/

E:\pscp.exe file root@192.168.1.147:/tmp/

或者E:\pscp.exe -l root file 192.168.1.147:/tmp/(这里-l root要在file之前)

2)把本地目录dir、文件file传输到Linux服务器的/tmp/,并指定服务器端口2009

E:\pscp.exe -P 2009 -r dir file root@192.168.1.147:/tmp/

3)把服务器上的/tmp/file文件取回本地当前目录

E:\pscp.exe root@192.168.1.147:/tmp/file

4)把服务器上的/tmp/dir目录取回本地"D:\data\"

E:\pscp.exe -r root@192.168.1.147:/tmp/dir "D:\data\"

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐