实现LinuxWindowslinux怎么读取windows文件文件共享,有几种简单方法,这里分析原因原理及个方法的优劣和具体实现。
要实现LinuxWindows文件共享,Linux 上要安装Samba ServerRed Hat Enterprise Linux AS 4.0 已经内置了Samba Server
samba 是一组通信协议,运行于多种系统之间,可实现文件共享和打印机服务共享。
使Samba服务自动启动:
系统设置>服务器设置>服务 中把 smb 打勾。
shell下:启动,停止,重启samba server 命令
/etc/rc.d/init.d/smb startstop restart
配置Samba服务器:
1. 通过 系统设置>服务器设置>Samba 打开Samba服务器配置界面。
2. Samba服务器配置界面上,选择首选项>服务器设置,输入工作组名称和描述。
3. Samba服务器配置界面上,选择首选项>Samba用户,创建Samba用户。
4. Samba服务器配置界面上,单击添加按钮,创建Samba共享:
      设置共享目录、共享名、读写权限、指定访问用户。
5. 通过 系统设置>安全级别 打开安全级别配置在相关的信任的设备上打勾。
      否则Windows用户不能访问Linux资源。
二。WindowsLinux文件共享总结
WindowsLinux间有很多文件共享的方式,这里我总结了一下。假设你的Host计算机是Windows,GuestLinux哈。
1.利用Samba
这是我用得最多的方式
2.Linux下配置Apahce
Linux下配置Apahce
然后在Windows下通过www方式把Linux下的文件下载下来。这种方式只能把Linux的文件传到WindowsL8J9gpw+;Se%\Nfk不能把Windows的文件传到Linux.
3.Linux下配置Ftp
vsftp或者wu-ftp都可以,$:q&&N6v*,垠供6配置成上传权限的,然后WindowsLinux就可
以相互共享文件了。
4.Windows下配置WWW服务
IISApache或者其它的都可以。如果你的Linux只有命令行的话,就用wget命令吧,可以很方便地下载文件。
5.Windows下配置Ftp
serv-u比较简单
6.利用Windows的文件共享功能
比如说你的WindowsIP192.168.0.1,共享了一个叫share的目录,那么就可以用下列命令
mount -t smbfs //192.168.0.1/share /mnt -o username=user%passwd
或者smbmount //192.168.0.1/share /mnt -o username=user%passwd(用这个命令要安samba)
7.vmware tools工具
三。简单实现WindowsLinux文件共享
只是做一个笔记,以后查阅起来的时候比较方便.samba3.0使用两个不同的操作系统共享硬盘。
安装samba,这个很简单了,如果你是fedorarh9,就可以从光盘直接安装sambarpm包。
rpm -ivh samba-3.0.0-15.i386.rpm
大家也可以直接到samba的()去下载最新的软件包最新的版本为Samba 3.0.4,FTP里可以下载得到.
那就最好按下面的方法编译
tar zvxf samba-3.0.
cd samba-3.0.4/source
./configure \
--prefix=/usr \
--bindir=/usr/bin \
-
-sbindir=/usr/sbin \
--libexecdir=/usr/libexec \
--datadir=/usr/share/samba \
--sysconfdir=/etc/samba \
--localstatedir=/usr/local/samba/var \
--libdir=/usr/lib \
--with-lockdir=/var/locks/samba \
--with-swatdir=/usr/share/samba/swat \
--with-codepagedir=/etc/samba/codepages \
--with-configdir=/etc/samba \
--with-smbwrapper \
--with-automount \
--with-smbmount \
--with-pam \
--with-pam_smbpass \
--with-winbind
make
make install
ok!安装完以后,下面才是我们的重点,修改/etc/f,大家最好在原来的基础上修改。
[global]
workgroup = MYGROUP 工作组名,相当于域.
server string = lzsj 主机的名字,随便写
log file = /var/log/samba/%m.log 日志存放的目录
security = user 使用user,便要求每个用户在Samba服务器上拥有一个账号,如果打算让所有人使用同样的共享资源,可以设置为security = share
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd 使用Samba的认证密码,增加一个用户命令如下:
smbpasswd -a :新增一个用户,并且设置密码.
smbpasswd -d :禁用一个samba用户.
smbpasswd -e :启用一个samba用户.
[sjweb] 共享目录的名字
comment = sjhome web 共享目录说明
path = /opt/www/blog 共享有Linux下的目录
valid users = sjweb 使用的用户名
public = no 是否让所有可以登入的用户看到此目录
writable = no 是否可以写入
printable = no
create mask = 0765 设置共享目录的权限
然后下面就要在系统下新增sjweb这个用户名.
groupadd sjweb 增加sjweb
useradd -g shweb 增加sjweb用户名
增加完以后使用可查看/etc/passwd/etc/group这两个文件中,是否有sjweb此用户名和组.
使用命令:chown -R sjweb:sjweb /opt/www/blog
-R表示将sjweb用户名和组给予/opt/www/blog目录.
然后在用命令:chmod 755 /opt/www/blog给予共享目录可读和可执行的权限.
重新启动Samba:/etc/rc.d/init.d/smb restart
如果还是不行,有一种方法可以实现.
先用smbpasswd -a test建立test用户.
就会生成smbusers文件,vi打开后,按所示加入:
test = test
保存后在用:smbpasswd -a test命令建立test用户.这次一定会成功.
OK,然后设置自己的Samba是否正常,用命令:
smbclient -L 本机IP地址
Password:
Anonymous login successful
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.0.4]
Sharename Type Comment
--------- ---- -------
share Disk pvpgn's share
ipb Disk pvpgn's share
sjweb Disk sjhome web
IPC$ IPC IPC Service (Lztv)
ADMIN$ IPC IPC Service (Lztv)
Anonymous login successful
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.0.4]
Server Comment
--------- -------
lzsj lzsj
Workgroup Master
--------- -------
MYGROUP lzsj
出现密码后直接回车,便可得到以上的信息.
如果没用出现以上的消息,看看是否是防火墙没有允许137139端口访问,加入
以下规则便可:
iptables -A INPUT -p udp -s 本机IP地址 --dport 137 -j ACCEPT
iptables -A INPUT -p udp -s 本机IP地址 --dport 139 -j ACCEPT.
然后还是使用:smbclient -L 对方Windows系统的IP地址.我是以Windows2000为例.
[root@stlnx4 samba]# smbclient -L 对方IP地址
Password:
Anonymous login successful
Domain=[WORKGROUP] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager]
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
OK,已经可以识别得出对方的系统为Windows2000,然后在对方系统下,查这台LinuxIP地址,便可以相互访问了.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。