一、    安装samba
查看当前安装包状态 rpm –qa|grep samba
可以使用光盘自带文件,用 rpm –ivh <文件> 进行安装
也可以使用yum install samba  网络安装
安装完成后启动使用 service smb start
查看进程 ps –eaf|grep smbd 
         Ps –eaf|grep nmbd
查看端口监听状态
         Netstat –anp|grep smbd 
         Netstat –anp|grep nmbd
能看到 smbd监听tcp的139和445端口
       nmbd监听udp的137和138端口
若nmbd 未正常启动试用
#/etc/rc.d/init.d/nmbd      ///需进一步确认问题
二、    添加用户

 
   
  
#groupadd <组的名称>   //添加用户组
#useradd <用户名> -g <组的名称>  //添加用户
#smbpasswd –a <用户名>  //将用户添加到smb并设置smb密码

//因为这个添加用户是在系统内添加用户,不知道能不能在不增加本地用户的前提下增加samba用户,请各位大大指教!!
 三、    修改配置文件

 
   
  
修改/etc/samba/smb.conf
如下
[global]
Workgroup=<工作组名>
Sever string=<服务器名称>
Security=user   //用户验证机制
Encrypt passwords=yes  //加密密码机制,在win95和NT下使用明文
Smb passwd file=/etc/samba/smbpasswd  //????????????
 
[homes]  //定义用户目录
Comment=home directories
Browseable=no
Writable=yes
Valid users=%S
Create mode=0664
Directory mode=0775
[<自定义>]
Comment=<自定义显示名>
Path=< 共享文件路径>
Public=<公开选项(yes/no)>
Valid user=<权限用户(组前加@,中间用“,”分隔)>
Writelist=<写权限用户,不加使用文件夹默认权限>
Printable=<打印选项,文件夹会被认为是打印机(yes/no)>
修改完成后保存
修改/etc/samba/lmhosts
<samba服务器地址> localhost
修改完成后保存
四、修改文件权限
#chmod <权值> <路径>
非管理员
#sudo chmod <权值> <路径>
    五、重启smb服务
#service smb restart
或是
#/etc/rc.d/init.d/smb restart
注意:如果使用windows看不到共享机器,查看一下selinux是否设置
 编辑/etc/sysconfig/iptables
添加以下四条规则
-A RH-Firewall-1-INPUT -p udp -m udp --dport 137 -j ACCEPT
 -A RH-Firewall-1-INPUT -p udp -m udp --dport 138 -j ACCEPT
 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
然后,重启iptables服务
#service iptables restart
打印机共享

 
   
  
安装打印机,将打印机与服务器连接。

 
   
  
启动CUPS服务

 
   
  
#service cups start

 
   
  
在浏览器中输入 http://localhost:631/ 后出来配置界面,选择 “Add Printer”,在name中输入打印机的名字(本地显示的名字),Location输入打印机的IP地址,下一步是选择设备,在Device中选择打印机对应的设置
修改/etc/samba/smb.conf文件
在打印机选项下添加 
guest ok=yes
    use client driver=yes 
附录:
Linux下测试
# smbclient –L <服务器IP> -N  //guest账户检查服务器状态
#smbclient –L <服务器IP> -U <用户名>  //指定用户查看服务器状态
#smbclient //<服务器IP>/<目录> -U<用户名> //以指定用户身份登录某一目录
#smbmount //<服务器IP>/<目录> <本地目录> -o username=<用户名>


https://blog.51cto.com/hero2012/1164884