Linux samba安装

Linux中Samba详细安装
为了实现Windows主机与Linux服务器之间的资源共享,Linux操作系统提供了Samba服务,
Samba服务为两种不同的操作系统架起了一座桥梁,使Linux系统和Windows系统之间能够实现互相通信

RPM 软件包的功能如下:
存储和数据压缩
文件安装
配置文件生成
系统服务注册
软件依赖检查和依赖输出

grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出

1、服务查询
默认情况下,Linux系统在默认安装中已经安装了Samba服务包的一部分 ,为了对整个过程有一个完整的了解,在此先将这部分卸载掉。使用命令
rpm -qa | grep samba ,默认情况下可以查询到两个已经存在的包:
samba-client-3.0.33-3.7.el5
samba-common-3.0.33-3.7.el5
2、卸载Samba
用rpm -e 将两个包卸载掉。对于samba-common-3.0.33-3.7.el5,因为与其它rpm包之间存在依赖关系,所以必须加参数-f和–nodeps,-f是指强制,–nodeps是指不检查依赖关系,具体完整命令为:
rpm -e samba-common-3.0.33-3.7.el5 -f –nodeps
rpm -e samba-client-3.0.33-3.7.el5 -f –nodeps
3、安装Samba
用以下命令安装:
rpm -ivh samba-3.0.33-3.7.el5.i386.rpm -f –nodeps

rpm -ivh samba-common-3.0.33-3.28.el5.rpm -f –nodeps
rpm -ivh samba-3.0.33-3.29.el5_6.2.i386.rpm -f –nodeps
rpm -ivh samba-client-3.0.33-3.29.el5_6.2.i386.rpm -f –nodeps
rpm -ivh samba-common-3.0.33-3.29.el5_6.2.i386.rpm -f –nodeps
安装完成后,使用命令rpm -qa | grep samba进行查询,发现搭建samba服务器所依赖的所有服务器都已经安装好了即可。
4、配置smb.conf文件
Samba的配置文件一般就放在/etc/samba目录中,主配置文件名为smb.conf,文件中记录着大量的规则和共享信息,所以是samba服务非常重要的核心配置文件,完成samba服务器搭建的大部分主要配置都在该文件中进行。
Samba服务器的工作原理是:客户端向Samba服务器发起请求,请求访问共享目录,Samba服务器接收请求,查询smb.conf文件,查看共享目录是否存在,以及来访者的访问权限,如果来访者具有相应的权限,则允许客户端访问,最后将访问过程中系统的信息以及采集的用户访问行为信息存放在日志文件中。
第一步:修改配置文件
首先备份一下samba的配置文件
cd /etc/samba
mv smb.conf smb.confbak
然后重新创建一个smb.conf文件
touch smb.conf
然后我们把这段写入smb.conf中
[global]
workgroup = LinuxSir
netbios name = LinuxSir05
server string = Linux Samba Server TestServer
security = share
[linuxsir]
path = /opt/linuxsir
writeable = yes
browseable = yes
guest ok = yes
注解:
[global]这段是全局配置,是必段写的。其中有如下的几行;
workgroup 就是Windows中显示的工作组;在这里我设置的是LINUXSIR (用大写);
netbios name 就是在Windows中显示出来的计算机名;
server string 就是Samba服务器说明,可以自己来定义;这个不是什么重要的;
security 这是验证和登录方式,这里我们用了share ;验证方式有好多种,这是其中一种;另外一种常用的是user的验证方式;如果用share呢,就是不用设置用户和密码了;
[linuxsir] 这个在Windows中显示出来是共享的目录;
path = 可以设置要共享的目录放在哪里;
writeable 是否可写,这里我设置为可写;
browseable 是否可以浏览,可以;可以浏览意味着,我们在工作组下能看到共享文件夹。如果您不想显示出来,那就设置为 browseable=no
guest ok 匿名用户以guest身份是登录;
第二步:建立相应目录并授权;
[root@localhost ~]# mkdir -p /opt/linuxsir
[root@localhost ~]# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
[root@localhost ~]# chown -R nobody:nobody /opt/linuxsir
注释:
关于授权nobody,我们先用id命令查看了nobody用户的信息,发现他的用户组也是nobody,我们要以这个为准。有些系统nobody用户组并非是nobody ;
第三步:启动smbd和nmbd服务器;
[root@localhost ~]# smbd
[root@localhost ~]# nmbd
chcon -t samba_share_t /oaapp
share级别的samba的配置
这个级别的samba很简单,首先它不需要以用户和密码来验证登陆,所以就不必去配置samba用户了
下面是实例:
#service smb start // 启动samba
#cp /etc/samba/smb.conf /etc/samba/smb.conf.bak // 备份samba的配置文件
#vi /etc/samba/smb.conf
// 找到 security = user 将它改成 security = share
#service smb restart // 重启samba服务器
打开“我的电脑”,输入 \192.168.1.88 sabma服务器的地址
此时samba服务器上任没有设置任何共享目录。
下面在服务器上设置一个名为test的共享目录
#mkdir /test
#chmod 777 /test //让所有用户具有完全权限
#vi /etc/samba/smb.conf
找到 security = user 将它改成 security = share
把光标移动配置文件的最后一行,在下面加入以下配置
[test] //共享名
comment = test resource //共享目录的注释
path = /test //共享目录的路径
writable = yes //是否允许写入
public = yes //是否允许guest访问
#service smb restart // 重启samba服务器
这时输入 \192.168.1.88
可以看到刚才增加的名为test的共享目录,此目录任何人有“完全权限”
如果需要共享其它目录,可照此设定。

samba 共享目录无法访问 解决方法总结
1)关闭防火墙: #sevice iptables stop
2)修改 /etc/samba/smb.conf,具体配置网上有,我的如下:
security = share —- 这个要用上,share表示安全最低级别,其次是user,最高是server
[共享目录名]
path = /home/用户名/共享目录名
;read only = no —–这个需要在前面用分号注释掉
writeable = yes
browseable = yes
public = yes
guest ok = yes
3)SELinux作怪
修改/etc/sysconfig/selinux 把enforcing改成disabled;然后命令行setenforce 0;
或者用Rainsome兄说的 使用selinux强制策略:chcon -R -t samba_share_t /home/suyang/”Fedora Samba”
4)修改目录权限 #chmod 777 /home/wind ; #chmod 777 /home/wind/smbShare; 特别是前面一个做为上层目录权限也需要修改!!!!
5)重启samba服务 #service smb restart 或者 /etc/rc.d/init.d/smb restart
结束。 当然你要在linux与windows之间互相能ping 通。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值