Linux安装Samba共享配置

Linux安装Samba共享

服务器环境为Linux,本地环境为Windows时开发需要方便的将源码文件同步至测试服务器编译运行,一种解决方案是可以用ftp,sublime 等工具大都提供了对应的ftp插件来使用,自己本地搭建的测试服务器则完全可以利用Samba共享的方式,将Linux文件夹共享给window。

安装

安装系统为centos7:

yum isntall samba samba-client samba-common

在/home 目录建立共享文件夹

    cd /home
    mkdir shared
    chmod 777 shared/  

配置

    cp /etc/samba/smb.conf /etc/samba/smb.conf.bak  
    vim /etc/samba/smb.conf

首先解决编码问题,在 [gloabal]设置项中根据主机locale(终端执行locale查看)内容修改配置文件:
1. 如果locale是zh_CN.UTF8,做如下设置:

    unix charset = UTF-8
    dos charset = UTF-8
  1. 如果locale是zh.CN.GBKzh.CN.gb2312,做如下设置:

    unix charset = cp936
    dos charset = cp936

解决samba日志中总是输出cups相关错误的问题,在[global]中找到如下两行:

    load printers = yes
    cups options = raw

修改为:

    load printers = no
    printing = bsd
    printcap name = /dev/null
    disable spoolss = yes
    #cups options = raw

默认会共享登录用户的home目录,创建自定义的共享目录,在文件末尾添加:

[myshare] #共享项
     comment = my test share #登录时共享项的描述
     path = /home/shared #共享项对应的共享路径
     public = yes
     available = yes
     browseable = yes
     writable = yes
     security = user #设置安全级别 默认user

共享的文件夹不要设置printable = yes选项,否则会被当成打印机共享
运行testparm检查配置文件,默认检查路径为/etc/samba/smb.conf

系统中添加一个samba访问用户

useradd username

samba中添加一个访问用户

smbpasswd -a username

按提示输入两次密码创建新的Samba用户

说明: 上面两步中建立的用户名应该一样,前者是linux的用户,后者是Samba用户,区别是前者是创建在linux中的新用户,如果不再执行passwd username创建密码的话该用户无法本地登录linux,后者是在windows上访问samba共享时登录的用户,二者密码可以不同,但是登陆后会赋予该用户对应于linux中的用户的相同权限,相当于Samba在中间进行了一层中转。

window输入ip进行登录,输入用户名密码进入后就可以看到自己的home目录和新建的共享目录,取消home目录的共享直接在配置文件中注释掉[homes]一项

你可能感兴趣的:(Linux编程)