我设法设置了一个 samba 文件服务器,但必须使用 gksudo 来添加或删除文件!

我设法设置了一个 samba 文件服务器,但必须使用 gksudo 来添加或删除文件!

我设法设置了 samba 文件服务器,但必须使用 gksudo 来添加或删除文件!此外,Windows PC 无法复制或使用共享中包含的文件。我该如何纠正这个问题?我的 .config 文件中的“read only = no”行设置正确。

这是我的 smb.conf:

#
# Debian GNU/Linux 的 Samba 套件的示例配置文件。
#
#
# 这是主要的 Samba 配置文件。您应该阅读
# smb.conf(5) 手册页,以了解列出的选项
# 这里。Samba 有大量可配置选项,其中大部分
# 在此示例中未显示
#
# 一些值得调整的选项已被纳入
# 此文件中已注释掉的示例。
# - 当这些选项用“;”注释时,建议的设置
# 与默认的 Samba 行为不同
# - 当用“#”注释时,建议的设置是默认设置
# Samba 的行为,但该选项被认为很重要
# 这里足以提及
#
# 注意:每当你修改此文件时,你都应该运行命令
#“testparm”检查你是否没有做任何基本的语法
# 错误。
# 一个公认的做法是将原始文件命名为
# “smb.conf.master”并创建“真实”配置文件
# testparm -s smb.conf.master >smb.conf
# 这最小化了真正使用的 smb.conf 文件的大小
# 据 Samba 团队称,这会影响性能
# 但是,如果你的 smb.conf 文件包含嵌套的
# “include” 语句。请参阅 Debian 错误 #483187 以了解案例
# 使用主文件并不是一个好主意。
#

#========================= 全局设置 ===========================

[全球的]

## 浏览/识别 ###

# 将其更改为您的 Samba 服务器所属的工作组/NT 域名
    工作组 = 马特

# 服务器字符串相当于 NT 描述字段
    服务器字符串 = %h 服务器(Samba,Ubuntu)

# Windows Internet 名称服务支持部分:
# WINS 支持 - 告诉 Samba 的 NMBD 组件启用其 WINS 服务器
# 赢得支持 = 是

# WINS 服务器 - 告知 Samba 的 NMBD 组件成为 WINS 客户端
# 注意:Samba 可以是 WINS 服务器,也可以是 WINS 客户端,但不能同时是两者。
; 赢得服务器 = wxyz

# 这将阻止 nmbd 通过 DNS 搜索 NetBIOS 名称。
    dns 代理 = 无

# 我们应该使用什么命名服务以及按照什么顺序来解析主机名
# 到 IP 地址
; 名称解析顺序 = wins lmhosts hosts bcast

#### 联网 ####

# 要绑定到的特定接口/网络集
# 这可以是接口名称或 IP 地址/网络掩码;
# 通常是首选接口名称
; 接口 = 1o eth1

# 仅绑定到命名的接口和/或网络;您必须使用
# 上面的‘interfaces’选项来使用这个。
# 如果您的 Samba 机器是
# 不受防火墙保护,或者本身就是防火墙。但是,这
# 选项无法正确处理动态或非广播接口。
;仅绑定接口 = 是



#### 调试/记帐 ####

# 这告诉 Samba 为每台机器使用单独的日志文件
# 连接
    日志文件 = /var/log/samba/log.%m

# 限制单个日志文件的大小(以 KiB 为单位)。
    最大日志大小 = 1000

# 如果您希望 Samba 仅通过 syslog 进行记录,请设置以下内容
# 参数为‘是’。
# 仅限系统日志 = 否

# 我们希望 Samba 将最少量的信息记录到系统日志中。所有内容
# 应该改为转到 /var/log/samba/log.{smbd,nmbd}。如果您想要记录
# 通过 syslog 您应该将以下参数设置为更高的值。
    系统日志 = 0

# 当 Samba 崩溃时采取一些明智的措施:向管理员发送回溯邮件
    恐慌行动 = /usr/share/samba/panic-action %d


####### 验证 #######

# “security = user” 总是一个好主意。这将需要一个 Unix 帐户
# 在该服务器中,每个访问该服务器的用户都可以访问该服务器。请参见
#/usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
# 请参阅 samba-doc 包中的详情。
# 安全 = 用户

# 您可能希望使用密码加密。请参阅
# 启用之前,在 smb.conf(5) 手册页中查看“加密密码”。
; 加密密码 = 是

# 如果你使用加密密码,Samba 将需要知道
#您正在使用的密码数据库类型。  
; passdb 后端 = tdbsam

    遵守 pam 限制 = 是

# 此布尔参数控制 Samba 是否尝试同步 Unix
# 当加密的 SMB 密码在
#passdb已改变。
    unix 密码同步 = 是

# 为了使 Unix 密码同步在 Debian GNU/Linux 系统上运行,需要执行以下操作
# 必须设置参数(感谢 Ian Kahan
# 为 Debian Sarge 中的 passwd 程序发送正确的聊天脚本)。
    passwd 程序 = /usr/bin/passwd %u
    passwd chat = *输入新的*密码:*%n\n *重新输入新的*密码:*%n\n *密码已成功更新* .

# 此布尔值控制是否使用 PAM 进行密码更改
# 当 SMB 客户端请求时,而不是在列出的程序中
#‘passwd 程序’。默认为‘否’。
    pam 密码更改 = 是

# 此选项控制如何映射不成功的身份验证尝试
# 匿名连接
    映射到访客 = 坏用户

########## 域名 ###########

# 这台机器是否能够验证用户。PDC 和 BDC 都
# 必须启用此设置。如果您是 BDC,则必须
# 将“域主”设置更改为否
#
;域登录 = 是
#
# 以下设置仅在设置了“域登录”时才生效
# 它指定用户配置文件目录的位置
# 从客户端角度来看)
# 下面需要在 [profiles] 共享上设置
# samba 服务器(见下文)
;登录路径 = \\%N\profiles\%U
# 另一个常见的选择是将配置文件存储在用户的主目录中
#(这是 Samba 的默认设置)
# 登录路径 = \\%N\%U\profile

# 以下设置仅在设置了“域登录”时才生效
# 它指定用户主目录的位置(从客户端
# 观点看法)
;登录驱动器 = H:
# 登录主页 = \\%N\%U

# 以下设置仅在设置了“域登录”时才生效
# 它指定登录时运行的脚本。脚本必须存储在
# 在 [netlogon] 共享中
# 注意:必须以“DOS”文件格式保存
;登录脚本 = logon.cmd

# 这允许通过 SAMR 在域控制器上创建 Unix 用户
# RPC 管道。示例命令创建一个禁用 Unix 的用户帐户
#密码;请适应您的需求
; 添加用户脚本 = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u

# 这允许通过以下方式在域控制器上创建机器帐户:
#SAMR RPC 管道。  
# 以下假设系统上存在一个“机器”组
; 添加机器脚本 = /usr/sbin/useradd -g machines -c "%u 机器账户" -d /var/lib/samba -s /bin/false %u

# 这允许通过 SAMR 在域控制器上创建 Unix 组
#RPC 管道。  
; 添加组脚本 = /usr/sbin/addgroup --force-badname %g

########## 印刷 ##########

# 如果你想自动加载打印机列表,而不是
# 比单独设置它们你需要这个
# 加载打印机 = 是

# lpr(ng) 打印。您可能希望覆盖
# printcap 文件
;打印 = bsd
; printcap 名称 = /etc/printcap

# CUPS 打印。另请参阅 cupsaddsmb(8) 手册页
#cupsys-client 包。
;印刷 = 杯子
; printcap 名称 = cups

############ 杂项 ############

# 使用以下行可以让你自定义配置
# 基于每台机器。%m 被替换为 netbios 名称
连接的机器数
;包括 = /home/samba/etc/smb.conf.%m

# 大多数人会发现此选项可提供更好的性能。
# 参见 smb.conf(5) 和 /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
# 详细信息
# 您可能需要在 Linux 系统上添加以下内容:
# SO_RCVBUF=8192 SO_SNDBUF=8192
# 套接字选项 = TCP_NODELAY

# 仅当您拥有 linpopup 包时,以下参数才有用
# 已安装。samba 维护者和 linpopup 维护者是
# 致力于简化 linpopup 和 samba 的安装和配置。
;消息命令 = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &

# 域主指定 Samba 为域主浏览器。如果此
# 计算机将配置为 BDC(辅助登录服务器),您
# 必须将其设置为“否”;否则,建议采用默认行为。
# 域主 = 自动

# winbind 的一些默认值(确保您没有使用范围
# 表示别的东西。)
;idmap uid = 10000-20000
; idmap gid = 10000-20000
;模板 shell = /bin/bash

# 以下是 sarge 中的默认行为,
# 但 samba 上游恢复了默认设置,因为这可能会导致
# 大型组织中的绩效问题。
# 请参阅 Debian 错误 #368251,了解 *不* 的一些后果
# 具有此设置和 smb.conf(5) 以了解详细信息。
; winbind 枚举组 = 是
; winbind 枚举用户 = 是

# 设置 usershare 选项以允许非 root 用户共享文件夹
# 使用 net usershare 命令。

# 用户共享的最大数量。0(默认值)表示禁用用户共享。
; usershare 最大分享数 = 100

# 允许被授予 usershare 权限的用户创建
# 公开分享,而不仅仅是经过验证的分享
    用户共享允许客人=是
    安全 = 用户
    客人同意 = 可以
    来宾帐户 = pcguest
    用户名映射 = /etc/samba/smbusers

#========================= 共享定义 ==========================

# 取消注释以下内容(并调整下面的其他设置以适应)
# 启用默认主目录共享。这将共享每个
# 用户的主目录为 \\server\username
;[家]
;注释 = 主目录
;可浏览 = 否

# 默认情况下,主目录以只读形式导出。更改
# 如果您希望能够写入它们,则下一个参数为“no”。
;只读 = 是

# 出于安全原因,文件创建掩码设置为 0700。如果您想要
# 创建具有 group=rw 权限的文件,将下一个参数设置为 0775。
; 创建掩码 = 0700

# 出于安全原因,目录创建掩码设置为 0700。如果您想要
# 创建目录。具有 group=rw 权限,将下一个参数设置为 0775。
;目录掩码 = 0700

# 默认情况下,任何人都可以连接到 \\server\username 共享
# 可以访问 samba 服务器。取消注释以下参数
# 确保只有“用户名”可以连接到\\server\username
# 以下参数确保只有“用户名”可以连接
#
# 使用外部身份验证方案时可能需要进行调整
;有效用户 = %S

# 取消注释以下内容并为域登录创建 netlogon 目录
#(您还需要配置 Samba 以充当域控制器。)
;[网络登录]
;注释 = 网络登录服务
;路径 = /home/samba/netlogon
; 客人同意 = 是
;只读 = 是

# 取消注释以下内容并创建配置文件目录来存储
# 用户配置文件(参见上面的“登录路径”选项)
#(您还需要配置 Samba 以充当域控制器。)
# 下面的路径应该对所有用户都是可写的,以便他们的
# 首次登录时可能会创建配置文件目录
;[概况]
;评论 = 用户资料
;路径 = /home/samba/profiles
; 客人同意 = 不同意
;可浏览 = 否
; 创建掩码 = 0600
;目录掩码 = 0700

[打印机]
    评论 = 所有打印机
    可浏览 = 否
    路径 = /var/spool/samba
    可打印 = 是
; 客人同意 = 不同意
;只读 = 是
    创建掩码 = 0700

# Windows 客户端将此共享名称视为可下载的源
# 打印机驱动程序
[打印$]
    评论 = 打印机驱动程序
    路径 = /var/lib/samba/printers
;可浏览 = 是
;只读 = 是
; 客人同意 = 不同意
# 取消注释以允许远程管理 Windows 打印驱动程序。
# 您可能需要将“lpadmin”替换为您的组的名称
# 管理员用户是的成员。
# 请注意,您还需要设置适当的 Unix 权限
# 到驱动程序目录,以便这些用户有写入权限
;写入列表 = root,@lpadmin

# 与他人共享您的 CD-ROM 的示例共享。
;[光盘]
;注释 = Samba 服务器的 CD-ROM
;只读 = 是
;锁定 = 否
;路径 = /cdrom
; 客人同意 = 是

# 接下来的两个参数显示当
# 已访问 cdrom 共享。要使此功能正常工作,/etc/fstab 必须包含
# 像这样的条目:
#
# /dev/scd0 /cdrom iso9660 默认值,noauto,ro,user 0 0
#
# 连接到
#
# 如果你不想使用自动挂载/卸载,请确保 CD
# 安装在 /cdrom 上
#
; preexec = /bin/mount /cdrom
;postexec = /bin/umount /cdrom

[分享]
    评论 = Ubuntu 文件服务器共享
    路径 = /srv/samba/share
    可浏览 = 是
    客人同意 = 可以
    只读 = 否
    创建掩码 = 0755

答案1

确保 /srv/samba/share 的权限被修改为 755;这样任何人都可以浏览它。为此,只需运行chmod -R 755 /srv/samba/share。(您可能需要使用 sudo)

相关内容