Answers:
使用Samba。
Samba提供与Windows兼容的文件共享服务。
您可以/srv/samba/sharename
在Linux计算机上共享目录(例如),并从Windows访问它,如下所示:\\linuxservername\sharename
。它在Windows端不需要任何额外的软件。
Samba包含在大多数Linux发行版中。使用包管理器安装它,例如:
Ubuntu的: sudo apt-get install samba smbclient
SUSE: zypper samba
CentOS的/ RedHat的: yum install samba
要配置Samba,请参阅:
SUSE:http://doc.opensuse.org/documentation/html/openSUSE/opensuse-reference/cha.samba.html
CentOS / RedHat:http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-samba-configuring.html
或搜索Google以查找您的发布指南。
请注意,您可能需要配置你的Linux防火墙,如果你使用一个,接受港口连接137 / TCP,138 / TCP,139 / TCP和445 / TCP(见本和本)。
在上面的描述中,Linux计算机是Samba服务器,Windows从中安装共享。
在下面的评论中,您提到您希望自动执行转移过程。这可以通过反转角色来实现,以便Windows充当服务器并使用Linux连接到它smbclient
。
随着smbclient
你并不需要在所有安装了Windows共享。例如,要在Linux计算机上检索C:\Directory\file.txt
并复制它,/tmp
请执行以下操作:
smbclient '//windowsserver/c$' -c 'lcd /tmp; cd Directory; get file.txt' -U administrator%password
-c
要执行的命令。详情man smbclient
请见。
-U
用于访问指定为的共享的用户名和密码 username%password
根据需要对其进行修改并将其添加到脚本中。
smbclient
连接到Windows共享,复制文件并断开连接。我编辑了我的答案,看看它。
-c
是在简单的情况下,该选项值得使用。在我的机器上,密码作为一个简单的参数(没有任何选项)。此外 - 我更喜欢通过调用保持凭证远离命令行读取器(使用ps
或[h]top
,例如)-U $(cat .username) $(cat .password)
。
我知道你说你不能指望安装特定的软件,但是Windows的SSH / SCP / SFTP客户端不需要任何特殊的安装; 只有可执行文件可用。我一直在谈论的是PuTTY及其伴侣pscp
和psftp
工具,但我确信存在替代方案。pscp
并且psftp
可以完全从命令行驱动,因此非常适合自动化任务。它们都有一个-batch
开关,被描述为“禁用所有交互式提示”,几乎可以肯定可以利用。
由于您可能已在服务器上安装并配置了SSH / SCP / SFTP服务器,因此无需在任何主机上安装任何软件,只是为了复制这些文件。
另一个好处可能是PuTTY在许可许可下是开源的,所以如果它不能直接开箱即用,那么按照你喜欢的方式行事应该相对容易。
我是CentOS 6
用户,所以我试过这个方法CentOS 6
使用安装samba
[root @ server~] #yum install samba
查询确认
[root @ server~] #rpm -qa samba 桑巴3.5.10-125.el6.i686
创建Samba用户。
[root @ server~] #useradd sambashare
现在使用smbpasswd命令为用户名sambashare创建samba密码。
[root @ server~] #smbpasswd -a sambashare 新的SMB密码: 重新输入新的SMB密码: 添加了用户sambashare。
创建一个samba共享目录
[root @ server~] #mkdir / share
更改共享文件夹的所有权
[root @ server~] #chown -R sambashare:sambashare / share /
打开文件/etc/samba/smb.conf
并添加以下行。
[分享] 评论=分享 path = / share 可写=是 有效用户= sambashare
启动samba服务
[root @ server~] #service smb restart 关闭SMB服务:[确定] 启动SMB服务:[确定]
使用testparm
命令检查配置
。 。 [分享] 评论=分享 path = / share 有效用户= sambashare 只读=否
在Windows系统中键入此内容 run
现在输入samba用户名和密码
你完成了