Ubuntu和CentOS下安装配置samba服务详细过程(超级简单的smb.conf)

时间:2021-12-26 17:49:53

一.为什么要用Samba?

    Samba的主要任务就是实现Linux系统和Windows系统之间的资源共享。我们现在是要在Linux下配置Samba,让Windows的用户可以访问你 配置好之后的PC。

二.需要的软件?    

如果在ubuntu上安装,所以我只需在配置好ubuntu的更新源之后,在终端中使用一下两句命令,就可以安装Samba的软件包

     $sudo apt-get install smaba
    $sudo apt-get install smbfs

如果在centos或redhat上安装,执行指令:

    $yum install samba samba-client samba-swat


三.Samba服务的组成

    在ubuntu中,Samba的核心是两个守护进程smbdnmbd

    在CentOS中,Samba的核心是两个守护进程smbnmb

    当然,它们的配置信息都保存在/etc/samba/smb.conf里面。

    其中 smbd处理Samba软件与Linux协商,nmbd使其他主机能浏览Linux服务器


以下部分对于centos和ubuntu都是一样的:

四.Samba的配置文件的语法

    配置文件就放在/etc/samba/下,名字叫作smb.conf。如果怕改了之后有问题,可以备份一份。

    执行如下命令进行备份(事实上就是复制一份,并且改名)
     $sudo cp /etc/samba/smb.conf /etc/samba/smb_conf_backup
    一个完整的smb.conf配置文件有两部分组成 Global Settings(全局参数设置) Share Definitions(共享定义) 组成。
    每个部分有消息头和参数构成,如[global]就是一个消息头,用[]标志。
    而参数的结构形式是parameter = value。
    注释用#表示,这个和shell脚本有点像。
而你会发现有一些前面有;号,这个表示这一行的配置可以更改,修改就要去掉;,让配置起作用。

五.Samba组成

 (1)Samba Global Settings 全局参数设置

          该部分由[global]段来完成配置,主要是设置整体的规则。

 (2)Share Definitions 共享定义

          有很多段,都用[]标志开始的,这里要自己根据情况修改。

六.设置共享目录。

    反正随便设置一个目录给别人访问就行了,第一次配置,也就不考虑太多。
     $sudo mkdir -p /home/share/samba
    $sudo chmod 777 /home/share/samba


七.修改配置文件

smb.conf配置文件修改为如下(这是最简单的配置文件):

#============== Global Settings ==============
[global]
## Browsing/Identification ###
workgroup = mshome
server string = samba
;security = user
security = share
wins support = no
guest account = wslu

#============== Share Definitions ==============
[mywork]
comment = mywork
path = /mywork
;valid user = wslu
create mask = 0664
directory mask = 0775
browseable = yes
guest ok = yes
available = yes
public = yes
writable = yes

说明:

(1)guest account = wslu,其中wslu是我的samba账户名,也是我系统账户名。

注意:

(1)这里是以guest权限访问/mywork目录的,所以不能指定/home/wslu目录,因为该目录默认权限是700。

(2)用root用户创建/mywork目录,修改其owner和group为wslu,并将其权限设为777。

(3)配置文件未说明新建目录和文件的权限,所以会遵循操作系统的设定。


八.定制Samba的用户

    在终端中输入一下命令
       $sudo useradd wslu        #增加了一个叫做user的用户
       $sudo smbpasswd wslu    #修改user的对samba服务的密码,系统会提示输入密码 

其实上面的smb.conf中配置的是无密码访问的方式,应该用不到这一步了。

九.重新启动服务

    CentOS或RedHat执行如下指令:

    $sudo service smb restart

    $sudo service nmb restart


    Ubuntu执行如下指令:

    $sudo service smbd restart

    $sudo service nmbd restart


十.使用服务示例(按本文中配置无需密码)

    (1)在windows系统下使用

       方法一:在IE地址栏中输入: \\你的IP 然后回车,可能要求你输入用户名和密码,就是第八步所设定的。
       方法二:在网上邻居中新建邻居,在路径中输入: \\你的IP\mywork 然后点击下一步完成,当然,还是可能会要求输入用户名和密码。

    (2)在Linux下访问

       在终端中挂载文件系统,指令示例:
       $sudo mount -t smbfs -o username=wslu,password=123456 //IP地址/mywork /mnt

其中,-t参数指示了文件系统的类型,username是用户名,password是密码,/mnt是你要挂载所到的文件夹,当然你可以自己修改。

        我们这里配置的是无密码访问,所以应该无需指定用户名密码。