目的:打通windows和Linux下的传输问题解决只能使用SSH协议下的22端口来传输文件
环境:
windows
IP192.168.1.120
Linux
IP192.168.101
方法:
安装opensshfor windows (次软件开源并增加ssh协议将windows模拟成Unix环境)
安装完软件导入本地用户或者域用户
进入到bin目录下面执行
cd "c:\Program Files(x86)\OpenSSH\bin"
mkgroup -l >>..\etc\group 生成一个group
mkpasswd -l [-u<username>] >> ..\etc\passwd
比如:
mkpasswd -l -uadministrator >>..\etc\passwd 这样就生成用户名
备注:
-l 是添加本地用户
-d 是建域账号
建立秘钥:
Ssh-keygen –t rsa
建秘钥传到远程机器
Scp id_rsa.pub [email protected]:/home/Hadoop/.ssh/
备注:要是出错现在home下新建用户
方案一:
建立秘钥(使其与Linux直接可以不用密码直接登陆)后使用ssh登陆到Linux机器运行脚本copy本地文件到Linux服务器
方案二:
建立秘钥(使其与Linux直接可以不用密码直接登陆)后使用sftp登陆到Linux机器直接上传本地文件到Linux服务器
方案三:
建立秘钥(使其与Linux直接可以不用密码直接登陆)后使用scp直接copy本地文件到Linux服务上
备注:
此操作使用的协议都是在SSH,其的端口默认为22,有需要可自行在Linux上增加和修改端口
类似这样的方法还有
1,Linux下建立samba共享,windows可直接访问共享路径。
xcopy localfile //IP/sharespace (Linux共享出来的文件)还可以将其映射到本地
2,windows下共享一个文件夹,然后mount到Linux下
3,TCP协议下常见的FTP(windows自带)直接登陆上传
4,UDP协议下常见的TFTP(windows自带)直接登陆上传