标签:
本次环境:
服务端-centos6.8-192.168.2.200
客户端1-centos6.8-192.168.2.201
客户端2-Windows7-192.168.2.104
假设条件如下:
所需要的软件与配置文件如下:
这三个软件你都得要安装才行喔!如果尚未安装的话,使用 yum 去装好它吧!安装完毕之后,你可以依序察看一下 Samba 的软件结构喔!与它相关的配置文件基本上有这些:
至于常用的脚本文件案方面,若分为服务器与客户端功能,则主要有底下这几个数据:
大致的软件结构就是这样,底下就准备来讲一个简单的案例吧!这样比较好介绍配置文件项目啦!
一、服务端的搭建配置:
1.安装所需软件
1 [root@lys1 ~]# yum -y install samba samba-client samba-common 2 已加载插件:fastestmirror 3 设置安装进程 4 Determining fastest mirrors 5 * base: mirrors.nwsuaf.edu.cn 6 * extras: mirrors.aliyun.com 7 * updates: mirrors.aliyun.com 8 base | 3.7 kB 00:00 9 extras | 3.4 kB 00:00 10 updates | 3.4 kB 00:00 11 updates/primary_db | 1.4 MB 00:01 12 解决依赖关系 13 --> 执行事务检查 14 ---> Package samba.x86_64 0:3.6.23-35.el6_8 will be 安装 15 ....................
2、设定 smb.conf 配置文件与目录权限相关之设定
1 [root@lys1 ~]# vim /etc/samba/smb.conf
1 [global] 2 workgroup = vbirdhouse 3 netbios name = vbirdserver 4 server string = This is vbird‘s samba server 5 unix charset = utf8 6 display charset = utf8 7 dos charset = cp950 8 log file = /var/log/samba/log.%m 9 max log size = 50 10 load printers = no 11 12 # 与密码有关的设定项目,包括密码档案所在格式喔! 13 security = user <==这行就是重点啦!改成 user 层级 14 passdb backend = tdbsam <==使用的是 TDB 数据库格式! 15 16 # 2. 分享的资源设定方面:删除 temp 加入 homes 与 project 17 [homes] <==分享的资源名称 18 comment = Home Directories 19 browseable = no <==除了使用者自己外,不可被其他人浏览 20 writable = yes <==挂载后可擦写此分享 21 create mode = 0664 <==建立档案的权限为 664 22 directory mode = 0775 <==建立目录的权限为 775 23 24 [project] <==就是那三位使用者的共享资源 25 comment = smbuser‘s project 26 path = /home/project <==实际的 Linux 上面的目录位置 27 browseable = yes <==可被其他人所浏览到资源名称(非内容) 28 writable = yes <==可以被写入 29 write list = @users <==写入者有哪些人的意思
3 、每次改完 smb.conf 你都需要重新检查一下语法正确否!
1 [root@lys1 samba]# testparm 2 Load smb config files from /etc/samba/smb.conf 3 rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) 4 Processing section "[homes]" 5 Processing section "[project]" 6 Loaded services file OK. 7 Server role: ROLE_STANDALONE 8 Press enter to see a dump of your service definitions 9 10 [global] 11 dos charset = cp950 12 unix charset = utf8 13 display charset = utf8 14 workgroup = VBIRDHOUSE 15 netbios name = VBIRDSERVER 16 server string = This is vbird‘s samba server 17 log file = /var/log/samba/log.%m 18 max log size = 50 19 client signing = required 20 load printers = No 21 idmap config * : backend = tdb 22 23 [homes] 24 comment = Home Directories 25 read only = No 26 create mask = 0664 27 directory mask = 0775 28 browseable = No 29 30 [project] 31 comment = smbuser‘s project 32 path = /home/project 33 write list = @users 34 read only = No 35 [root@lys1 samba]#
4、建立共享目录并设置权限
1 [root@lys1 samba]# mkdir /home/project 2 [root@lys1 samba]# chgrp users /home/project 3 [root@lys1 samba]# chmod 2770 /home/project 4 [root@lys1 samba]# ll -d /home/project 5 drwxrws---. 2 root users 4096 8月 13 02:06 /home/project 6 [root@lys1 samba]#
5、设定可使用 Samba 的用户账号与密码
1 [root@lys1 samba]# useradd -G users smb1 2 [root@lys1 samba]# useradd -G users smb2 3 [root@lys1 samba]# useradd -G users smb3 4 [root@lys1 samba]# echo 1234 | passwd --stdin smb1 5 更改用户 smb1 的密码 。 6 passwd: 所有的身份验证令牌已经成功更新。 7 [root@lys1 samba]# echo 1234 | passwd --stdin smb2 8 更改用户 smb2 的密码 。 9 passwd: 所有的身份验证令牌已经成功更新。 10 [root@lys1 samba]# echo 1234 | passwd --stdin smb3 11 更改用户 smb3 的密码 。 12 passwd: 所有的身份验证令牌已经成功更新。 13 [root@lys1 samba]#
6、通过pdbedit命令把刚创建的3个账号添加成Samba使用者
pdbedit:
选项与参数:
-L :列出目前在数据库当中的账号与 UID 等相关信息;
-v :需要搭配 -L 来执行,可列出更多的讯息,包括家目录等数据;
-w :需要搭配 -L 来执行,使用旧版的 smbpasswd 格式来显示数据;
-a :新增一个可使用 Samba 的账号,后面的账号需要在 /etc/passwd 内存在者;
-r :修改一个账号的相关信息,需搭配很多特殊参数,请 man pdbedit;
-x :删除一个可使用 Samba 的账号,可先用 -L 找到账号后再删除;
-m :后面接的是机器的代码 (machine account),与 domain model 有关!
1 [root@lys1 samba]# pdbedit -a -u smb1 2 new password: 3 retype new password: 4 Unix username: smb1 5 NT username: 6 Account Flags: [U ] 7 User SID: S-1-5-21-3802184857-4025074321-3003230506-1000 8 Primary Group SID: S-1-5-21-3802184857-4025074321-3003230506-513 9 Full Name: 10 Home Directory: \\vbirdserver\smb1 11 HomeDir Drive: 12 Logon Script: 13 Profile Path: \\vbirdserver\smb1\profile 14 Domain: VBIRDSERVER 15 Account desc: 16 Workstations: 17 Munged dial: 18 Logon time: 0 19 Logoff time: 三, 06 2月 2036 23:06:39 CST 20 Kickoff time: 三, 06 2月 2036 23:06:39 CST 21 Password last set: 六, 13 8月 2016 02:16:15 CST 22 Password can change: 六, 13 8月 2016 02:16:15 CST 23 Password must change: never 24 Last bad password : 0 25 Bad password count : 0 26 Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 27 [root@lys1 samba]# pdbedit -a -u smb2 28 [root@lys1 samba]# pdbedit -a -u smb3
查询下目前已存在的samba账号
1 [root@lys1 samba]# pdbedit -L 2 smb1:500: 3 smb3:502: 4 smb2:501: 5 [root@lys1 samba]#
7、开启Samba并进行自我测试
1 smb2:501: 2 [root@lys1 samba]# /etc/init.d/smb start 3 启动 SMB 服务: [确定] 4 [root@lys1 samba]# /etc/init.d/nmb start 5 启动 NMB 服务: [确定]
1 [root@lys1 samba]# smbclient -L //127.0.0.1 -U smb1 2 Enter smb1‘s password: <==输入 smb1 在 pdbedit 所建立的密码 3 Domain=[VBIRDHOUSE] OS=[Unix] Server=[Samba 3.6.23-35.el6_8] 4 5 Sharename Type Comment 6 --------- ---- ------- 7 project Disk smbuser‘s project 8 IPC$ IPC IPC Service (This is vbird‘s samba server) 9 smb1 Disk Home Directories 10 Domain=[VBIRDHOUSE] OS=[Unix] Server=[Samba 3.6.23-35.el6_8] 11 12 Server Comment 13 --------- ------- 14 VBIRDSERVER This is vbird‘s samba server 15 16 Workgroup Master 17 --------- ------- 18 VBIRDHOUSE VBIRDSERVER 19 [root@lys1 samba]#
自我挂载测试
1 [root@lys1 /]# mount -t cifs //127.0.0.1/smb1 /mnt -o username=smb1,password=4321 2 [root@lys1 /]# ll -a /mnt/ 3 ls: 正在读取目录/mnt/: 权限不够 4 总用量 0 5 [root@lys1 /]#
分析:应该是 SELinux 的问题吧!根据 /var/log/messages 的讯息,进行如下的动作就能够处理好这个程序!
1 setsebool setsid setsysfont 2 [root@lys1 /]# setsebool -P samba_enable_home_dirs=1 3 [root@lys1 /]# ls -a /mnt 4 . .. .bash_logout .bash_profile .bashrc 5 [root@lys1 /]#
1 [root@lys1 /]# df -h 2 Filesystem Size Used Avail Use% Mounted on 3 /dev/mapper/vg_lys1-lv_root 4 18G 900M 16G 6% / 5 tmpfs 491M 0 491M 0% /dev/shm 6 /dev/sda1 477M 28M 425M 7% /boot 7 //127.0.0.1/smb1 18G 900M 16G 6% /mnt 8 [root@lys1 /]# umount /mnt 9 [root@lys1 /]#
二、客户端搭建使用
1、Windows7的使用:
双击网络,启动网络发现,会发现Samba服务器:VBIRDSERVER如下图:
双击VBIRDSERVER服务器会出现等了界面,输出在Samba上创建的其中一个账户如下图:
2、linux客户端的使用
先安装客户端软件
1 [root@lys2 ~]# yum -y install samba-client samba-common
挂载使用
1 [root@lys2 ~]# mount -t cifs //192.168.2.200/smb2 /mnt -o username=smb2,password=4321,codepage=cp950 2 [root@lys2 ~]# df -h 3 Filesystem Size Used Avail Use% Mounted on 4 /dev/mapper/vg_lys2-lv_root 5 18G 862M 16G 6% / 6 tmpfs 491M 0 491M 0% /dev/shm 7 /dev/sda1 477M 28M 425M 7% /boot 8 //192.168.2.200/smb2 18G 900M 16G 6% /mnt
客户端使用正常。
去服务器看下使用log是否生成:
1 [root@lys1 home]# ll /var/log/samba/ 2 总用量 16 3 drwx------. 4 root root 4096 8月 13 02:19 cores 4 -rw-r--r--. 1 root root 0 8月 13 02:20 log.127.0.0.1 5 -rw-r--r--. 1 root root 0 8月 13 02:43 log.192.168.2.104 6 -rw-r--r--. 1 root root 0 8月 13 03:00 log.192.168.2.201 7 -rw-r--r--. 1 root root 0 8月 13 02:43 log.liuyisai-pc 8 -rw-r--r--. 1 root root 359 8月 13 02:20 log.nmbd 9 -rw-r--r--. 1 root root 1523 8月 13 02:59 log.smbd 10 -rw-r--r--. 1 root root 0 8月 13 02:20 log.vbirdserver 11 drwx------. 2 root root 4096 5月 12 13:23 old
OK,实验成功!!!
标签:
原文地址:http://www.cnblogs.com/liuyisai/p/5785853.html