windows与linux怎么实现文件互拷
相关话题
因为有的时候,linux主机中的一些文件可能会在windows环境下用到。例如在linux主机中抓了一些图片,想把它们传到windows主机上以作为word文档的插图。又或者从Windows主机上网,下载了一些linux的软件包,想传到linux主机中安装。在这些情况下,都需要一种方法来进行两者之间的互通。那么windows与linux怎么实现文件互拷?下面跟着小编一起去了解下吧。
windows与linux怎么实现文件互拷
借助 PSCP 命令可以实现windows与linux文件的互拷:
1、下载pscp.exe 文件 (我的资源文件中有)
2、如果想在所有目录可以执行,请更改环境变量。
windows执行指令时直接到这些目录去寻找可执行文件。
设置环境变量的方法:
我的电脑->属性->高级->环境变量
里面有用户变量和系统变量两种。用户变量当然是只有当前用户才能使用的,系统变量是所有用户都能使用的。
我们就编辑用户变量中的变量名为PATH的变量。
点击“编辑”后发现变量值就是用分号“;”隔开的路径名,在这里加上我们的路径。
比如我加上后变量值变为 “C:Program FilesStormIICodec;C:Program FilesStormII;C:Program FilesPuTTY”。
3. 环境变量改好后,在命令行下输入 pscp就可以拷文件了:
命令格式:pscp localfile rootuser@remoteip:/fileDirectory
拷贝整个文件夹: pscp -r localDir rootuser@remoteip:/fileDirectory
如果是从linux拷贝文件,是同样的方法,只不过是把前后地址对换一下即可;
4. 比如我想把windows下e:htk 整个目录的所有文件复制到linux /root目录下,命令如下:
pscp -r -l root -pw 1234567890 e:htk 192.168.0.204:/root
说明:
-r 复制目录下所有文件;
-l 对方机器(linux)的用户名(root);
-pw 密码(1234567890 );
e:htk 源文件/文件夹的地址;
192.168.0.204:/root 目的文件/文件夹的地址。192.168.0.204为linux机器的ip地址。
5. 反过来,把linux soundRcg目录下的test.txt文件传输到windows e:下,同样在windows命令行中敲入命令:
pscp -l root -pw 1234567890 192.168.0.204:/soundRcg/test.txt E:
备注:pscp似乎传输速度不是很快。
实现windows和linux互传文件
尝试从windows xp向ubuntu11.10传文件
ubuntu使用的是ssh
windows使用的是putty和其附带的pscp
首先配置ubuntu:
1.先使用netstat -tl或service ssh status查看ssh服务是否开启,如果没有开启,用service ssh restart开启,如果没有安装,使用sudo apt-get install openssh-server安装ssh
2.检查防火墙
注:可以使用iptables,但我在ubuntu中没找到,会用的同学可以忽略下面的东西。
Ubuntu在它的发行版中,附带了一个相对iptables简单很多的防火墙配置工具:ufw
使用如下命令:
$sudo ufw default deny
$sudo ufw enable
通过第一命令,我们设置默认的规则为deny, 这样除非指明打开的端口, 否则所有端口默认都是关闭的。第二个命令则启动了ufw。如果下次重新启动机器, ufw也会自动启动。
然后开启22端口:
$sudo ufw allow 22
由于在/etc/services中, 22端口对应的服务名是ssh。所以下面的命令是一样的:
$sudo ufw allow ssh
现在可以通过下面命令来查看防火墙的状态了:
$sudo ufw status
Firewall loaded
To Action From
– —— —-
22:tcp ALLOW Anywhere
22:udp ALLOW Anywhere
可以看到,22端口的tcp和udp协议都打开了。
现在到windows中:
打开putty.exe,填入待连接主机IP,port选择22
连接成功:现在就可以像在ubuntu中使用命令行一样了
打开cmd窗口,输入命令:
pscp 源文件路径 root@hostIp:目的路径
如将aaa.jpg传到/home下,则: pscp aaa.jpg root@192.168.0.101:/home
传输成功:
ls一下:
成功了!
可以不用root身份而用普通用户身份登陆连接,此时只能将文件传至用户对应的主目录下
从linux向windows传文件:
在windows的cmd中输入 pscp root@hostIp: linux中源文件路径 windows中目的路径
如: pscp root@192.168.0.100:/home/aaa.jpg G:/putty/
注意:使用pscp只能传文件,无法传目录,要传目录的话可以用psftp
可能会遇到的问题:
防火墙把一些IP封了之类的,到/etc/hosts.allow中加上一句ALL : ALL(允许所有的IP连接,这个真的很不好,还是设置成只允许特定的IP连接比较好)