关于samba的配置整理

Samba配置问题总结与解决方案
本文详述了Samba的配置与管理,包括samba密码修改、添加回收站功能、解决中文乱码问题、权限设置、磁盘配额管理和samba配置文件介绍。文章提供了详细的步骤和配置示例,旨在帮助用户更好地管理和使用Samba服务。

关于samba的安装网上有很多的文章,但是我遇到很多问题,这里我没有一步步的说明samba的整个安装过程,而是总结了一些每个安装samba的人都可能遇到的一些问题放到一起共享。本文最后一部分转贴了一些相关的配置说明供大家参考。

 

1、 samba修改密码:
         samba是一个供内部共享文件的一个服务,一般情况下需要登录到linux主机上才能修改它的密码,但是主机一般情况下是不能让别人进入的,而在windows下又没有其它方法可以修改,因此在网上使劲找,最终找到了这个程序:changpasswd,http://changepassword.sourceforge.net内可以下载,目前最新版本为0.9。
下到之后,第一件事情就是看说明,其实这个文件很简单,它是一个cgi程序,按照你自己的机器配置,编译后安装,然后就可以用了。
         安装方法很简单:
         1、按自己的需求修改conf.h 文件,可以不改。
         2、./configure --enable-cgidir=/var/www/cgi-bin --enable-smbpasswd=/etc/samba/smbpasswd --disable-squid
                --enable-cgidir   指定存放cgi的目录
                --enable-smbpasswd  指定存放samba密码的路径
                --disable-squid   由于次软件支持修改squid密码,但是这我用不到所以关闭(如果没有squid这个选项一定要关闭不然编译完成后使用由问题,会提示squid密码修改由问题)
        3、make
        4、make install
安装完成后访问:http://ip/cgi-bin/changepassword.cgi    来修改密码

2、Samba-Recycle(给samba添加回收站)

From DebianWiki

在网络管理中,资料的备份是极重要的事,而最怕的就是听到使用者说:『我不小心在网上邻居中的文件删掉了。怎么辨?』

您也许知道,在网上邻居里所删掉的文件是不会出现在本机的资源回收筒站的;这个文件将就这样消失掉,再也找不回来了...

         那么,是否有什么解决方案呢?

在 Samba 3.0 里,已针对这个问题实作了资源回收站。启用的方法是只要在 /etc/samba/smb.conf 中设定:

# 共享名称
[Softwares]
# 共享路径
path = /Share/Softwares
# 共享说明
comment = 常用软件
# 要不要让该分享出现于网络的芳邻里
browseable = yes
# 拥有读取权限的帐号
valid users = tetralet,@users
# 拥有写入权限的帐号
write list = tetralet
# 所建立的文件的预设权限
create mask = 0664
# 所建立的目录的预设权限
directory mask = 0755
# 是否允许使用者覆盖别的使用者的档案
lock = true
# 是否可以匿名存取
public = no
# 加载资源回收站模块
vfs object = recycle
# 在将文件移入资源回收站时,要建立相对应的目录结构
recycle: keeptree = yes
# 资源回收站的相对路径。后面的 %u 则为使用者帐号。
recycle: repository = ../Recycle/%u
# 不进行资源回收的档案类型
recycle: exclude = .tmp|.temp|.o|.obj
# 若有相同文件名称时,则加以编号识别
recycle: versions = yes

 3、samba中文问题:
       从windows看samba服务器,中文为乱码,另外拷贝中文文件名的文件或者到samba服务器,文件名或者目录名为乱码。解决办法是修改/etc/samba/smb.conf文件,添加以下2行:
dos charset = cp936
unix charset = gb2312

4、命令行下输入和显示中文
      虽然这个问题好像和samba关系不是很大,但是没个安装的samba的人都有可能碰到。当然解决方法很多这里我安装的是chdrv1.0.13可以到这里下载http://packages.debian.org/unstable/utils/chdrv安装方法很简单看说明就可以了,这里就不再赘述。

5、关于权限的设置问题给大家一个提示:
一定要和本地权限结合多建立几个组基本可以完全满足大家的要求。

6、磁盘配额:
    (一)Linux配额基础
    Linux中的磁盘配额分为用户配额和组的配额,组的配额是对某组中全体用户的综合限制。
    Linux 中的磁盘配额按是否可有一定的超越又分为软限制(可以超越)和硬性限制(禁止超越),但阮限制超过期限后自动变为硬性限制
    Linux中的磁盘配额按限制的项目不同,可分为空间限制(blocks 大小)和文件数限制(inodes 个数)。
     (二)Red Hat linux as 3 磁盘配额的实现
     1)修改/etc/fstab中的某文件系统行,在挂载选项中添加usrquota,grpquota,如下一例:
        /dev/sda5     /mnt/sda5     ext3     defaults,usrquota,grpquota 0 0
    简单说明:usrquota表示支持用户级配额,grpquota表示支持组级的配额,可以根据需要选择部分或全部。
    2)重新挂载刚才修改的文件系统 ,使其支持配额,实际上是修改了 /etc/mtab
        #mount -o remount /dev/sda5
    3)运行quotacheck在支持配额文件系统根下生成配额管理文件(挂载点/aquota.user,aquota.group两个文件)
        #quotacheck -avug  /dev/sda5
    简单说明:a-自动开启挂载文件系统的配额,v-显示信息,u-启用用户配额,g-启用组配额
   4)用edquota完成用户或组配额设置/修改
        #edquota  user1  [-f /dev/sda5]                       ---修改的是aquota.user
        #edquota -g  group1    [-f  /dev/sda5]              ---修改的是aquota.group
     简单说明:
               第一行是设置用户user1的配额限制
               第二行是设置组group1的配额限制
     [-f /dev/sda5]表可选,不选表示在所有启用磁盘配额的文件系统上使用相同的配额设置,一般不选即可。
    配额格式说明:
     filesystem    blocks    soft  hard    inodes  soft   hard       -------自动添加的行,不能删除!
    
     filesystem-正在设置的文件系统,不要修改或删除!<

### Samba 配置文件示例及相关参数说明 Samba配置文件通常命名为 `smb.conf`,它用于定义共享资源和服务的行为。以下是基于提供的引用内容和专业知识整理的一个完整的 Samba 配置文件示例及其参数说明。 #### 基本结构 Samba 配置文件由多个部分组成,主要包括全局设置 (`[global]`) 和各个共享目录的定义(如 `[shared]`, `[printers]`)。下面是一个典型的配置文件示例: ```ini [global] workgroup = WORKGROUP # 定义工作组名称[^1] server string = Samba Server %v # 设置服务器描述字符串[^2] netbios name = SAMBA-SERVER # NetBIOS 名称[^3] security = user # 安全级别,这里设为用户级认证 [shared] path = /data/samba/shared # 共享路径所在位置 browsable = yes # 是否允许浏览该共享 writable = yes # 是否可写入数据 valid users = @samba_users # 只有属于 samba_users 组的用户可以访问 create mask = 0765 # 新创建文件的权限掩码 [printers] comment = All Printers # 打印机共享的备注信息 path = /var/spool/samba # 存储打印队列的位置 browseable = no # 默认不允许浏览打印机列表 guest ok = yes # 允许匿名访客访问打印机 printable = yes # 表明这是一个打印机共享 ``` #### 参数详解 - **workgroup**: 指定计算机所属的工作组或域的名字。 - **server string**: 提供关于服务器的一些额外信息,比如版本号等。 - **netbios name**: 设定这台机器在网络上的NetBIOS名字。 - **security**: 控制客户端如何验证身份;常见的值包括 `share`, `user`, 和 `domain`。 - **path**: 明确指定要被分享的实际磁盘路径。 - **browsable**: 如果设置成 `yes` 或者 `true` ,那么这个共享就会显示在网路邻居里。 - **writable**: 决定了是否能够向此共享上传或者修改资料。 - **valid users**: 列出了哪些用户拥有对该共享的访问权。 - **create mask**: 影响新建立档案时预设的存取控制位元遮罩 (file mode creation mask)。 - **comment**: 对于特定共享提供一段简短的文字叙述。 - **guest ok**: 当设定为 `yes` 时表示即使未登录也可以使用这项服务。 - **printable**: 若设为 `yes` 将会把此项当作是可供打印用途之用。 通过命令行工具如 `testparm -s smb.conf -v` 可以测试并查看详细的解析后的 Samba 配置选项和参数 [^1] 。另外,在实际部署前可以通过包管理器确认已安装必要的软件组件,例如执行 `yum list installed | grep samba` 来检查当前系统上是否有相关 RPM 软件包存在 。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值