Ubuntu 22.04 Samba 安装和配置
安装
安装
sudo apt install samba
检查服务状态
systemctl status smbd --no-pager -l
检查是否启用(开机自启动)
systemctl is-enabled smbd
# enable it if inactive
systemctl enable smbd
配置
(可选)添加用户
sudo usermod -aG sambashare [username]
设置密码
sudo smbpasswd -a [username]
创建公开共享(可匿名访问)
sudo vi /etc/samba/smb.conf
按以下格式创建内容
[public]
  comment = public anonymous access
  path = /data/
  browsable =yes
  create mask = 0660
  directory mask = 0771
  writable = yes
  guest ok = yes
说明:
[public]方括号内为share后显示的目录名path = /data/为用于share的本地路径browsable =yes是否可以浏览create mask = 0660directory mask = 0771writable = yes是否可写guest ok = yes是否允许匿名访问
开启 SMB1
对于很多电视盒子, 运行安卓或CoreElEC, 只支持 SMB1, 连接默认配置的 Samba 服务会直接报 Timeout, 需要开启 smbd 服务对 SMB1 的支持
编辑 /etc/samba/smb.conf, 在[global]下添加
## Enable SMB1 ##
   server min protocol = NT1
重启 smbd 后, 电视盒就可以连接了.
配置项
Samba可以配置的属性可以参考 https://www.samba.org/samba/docs/using_samba/ch08.html
create mask
八进制数, 每个数 3-bit 代表一组权限[rwx], 整个mask 代表 smb 客户端在创建文件时可以设置哪些bit.
默认是 0744, 对应[--- rwx r-- r--] 这代表着 unix 下的文件所有者可以 rwx [读,写,执行], 同组用户和其它可以 r [读]
对于下面的例子, create mask 限制从 smb 创建文件/目录时, 不管来自于什么客户端, 文件和目录的最大权限为 744
[data]
    path = /home/samba/data
    browseable = yes
    guest ok = yes
    writeable = yes
    create mask = 744
If you need to change it for nonexecutable files, we recommend 0644, or rw-r--r--.
Keep in mind that the execute bits can be used by the server to map certain DOS file attributes, as described earlier. If you're altering the create mask, those bits have to be part of the create mask as well.
directory mask
与create mask 相同, 八进制数, 每个数 3-bit 代表一组权限[rwx], 整个mask 代表 smb 客户端在创建目录时可以设置哪些bit.
默认是0744, 对应 [--- rwx r-- r--], 允许所有用户读, 但是只允许所有者自己浏览和修改. 建议改为 0750, [--- rwx r-x ---], 避免所有人可以访问
下面的例子中, 从客户端创建的目录, 最大权限为 755
[data]
    path = /home/samba/data
    browseable = yes
    guest ok = yes
    writeable = yes
    directory mask = 755
force create mode
这个配置项用于 当文件权限发生变化时强制设置的权限位. 常用于设置文件默认的组权限. 这个配置也可以用于设置 DOS 属性: archive (0100), system (0010), or hidden (0001).
TIP
有些windows应用保存文件时, 会创建一个带.bak后缀的文件, 当这些文件在samba共享目录下时, 所有者不一定是当前用户, 为了让当前用户还可以编辑修改, 可以设置 force create mode = 0660 , 这样可以保证新文件也可以被同组用户编辑.
force directory mode
这个配置项用于 当目录权限发生变化时强制设置的权限位. 常用于设置组权限, 默认为 0000.
force group
这个配置用于给所有连接上的客户端, 只要客户端成功通过验证, 都会被指定一个固定的分组. 这个分组会体现在新创建的文件和目录上.
force user
同样的, 这个配置会给连接上的验证通过的客户端, 指定一个用户, 体现在新创建的文件和目录上.
关于 CIFS 和 SMB 的选择
In this day and age, you should always use the acronym SMB. I know what you’re thinking – “but if they’re essentially the same thing, why should I always use SMB?”
Two reasons:
- The CIFS implementation of SMB is rarely used these days. Under the covers, most modern storage systems no longer use CIFS, they use SMB 2 or SMB 3. In the Windows world, SMB 2 has been the standard as of Windows Vista (2006) and SMB 3 is part of Windows 8 and Windows Server 2012.
 - CIFS has a negative connotation amongst pedants. SMB 2 and SMB 3 are massive upgrades over the CIFS dialect, and storage architects who are near and dear to file sharing protocols don’t appreciate the misnomer. It’s kind of like calling an executive assistant a secretary.
 
参考
- https://www.varonis.com/blog/cifs-vs-smb
 - https://linuxconfig.org/how-to-configure-samba-server-share-on-ubuntu-22-04-jammy-jellyfish-linux
 - https://linux.how2shout.com/how-to-install-samba-on-ubuntu-22-04-lts-jammy-linux/
 - Samba配置 https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Standalone_Server#Creating_a_Basic_guest_only_smb.conf_File
 
Ubuntu 22.04 Samba 安装和配置的更多相关文章
- 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)
		
如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...
 - Ubuntu 14.04 LTS 安装和配置Bochs
		
Ubuntu 14.04 LTS 安装和配置Bochs 系统是:Ubuntu 14.04 LTS 64位 安装的是:bochs-2.6.8 Bochs 需要在 X11 环境下运行,因此你的 ...
 - Ubuntu 22.04 LTS 安装 0.A.D 实时策略游戏 并汉化
		
众所周知,Linux生态中,能玩的正儿八经的大型游戏其实没几个,而 0.A.D 这个游戏就是这其中之一.这是一个类似于帝国时代的实时策略游戏,开源跨平台,这是其官方网站:https://play0ad ...
 - Ubuntu 16.04上安装并配置Postfix作为只发送SMTP服务器
		
如果大家已经在使用第三方邮件服务方案发送并收取邮件,则无需运行自己的邮件服务器.然而,如果大家管理一套云服务器,且其中安装的应用需要发送邮件通知,那么运行一套本地只发送SMTP服务器则更为理想. 如何 ...
 - Ubuntu 18.04 MATLAB 安装及配置
		
转载请注明出处,谢谢 原创作者:Mingrui 原创链接:https://www.cnblogs.com/MingruiYu/p/12367846.html 本文要点: Ubuntu 18.04 安装 ...
 - Ubuntu 20.04 Docker 安装并配置
		
前言 Docker 的使用能极大地方便我们的开发,减少环境搭建,依赖安装等繁琐且容易出错的问题. 安装 Docker Ubuntu 20.04 官方 apt 源中就有 Docker,我们可以直接通过 ...
 - Ubuntu 16.04 Django安装和配置
		
之前有安装和配置过,换了台电脑,再安装和配置,忽然发现差不多都忘记了,这里记录下已备之后查阅. sudo apt-get install python-pip sudo apt-get install ...
 - Ubuntu 16.04 Vim安装及配置【转】
		
转自:http://www.cnblogs.com/ace-wu/p/6273031.html 安装VIM 默认已经安装了VIM-tiny acewu@acewu-computer:~$ locate ...
 - Ubuntu 16.04 Vim安装及配置
		
安装VIM 默认已经安装了VIM-tiny acewu@acewu-computer:~$ locate vi | grep 'vi$' |xargs ls -al lrwxrwxrwx 1 root ...
 - ubuntu 14.04 lamp  安装与配置
		
一.安装apache 1.打开终端:Ctrl+Alt+T sudo apt-get update 2.通过apt-get方式安装Apache: sudo apt-get install apache2 ...
 
随机推荐
- 为R Markdown配置TinyTex编译环境
			
技术背景 在前面一篇博客中,我们介绍了一些关于在Windows系统上安装R Studio来编写R Markdown,最后编译成Beamer的演示文档的过程.而在Windows系统的使用过程中发现,编译 ...
 - Cortex M3 - NVIC(中断向量控制器)
			
NVIC-概述 nested vector interrupt control - 内嵌向量中断控制器 传统ARM中断控制在Core的外部,软件接收到中断之后,需要查中断的编号,然后启动相应的中断处理 ...
 - SD-Host控制器设计架构
			
SD Host功能列表 SD Host挂接在SoC中,与外部的SD card进行交互 有控制寄存器和状态寄存器,SoC往往有CPU,通过CPU进行配置寄存器,有些SoC没有CPU,需要使用I2C或者S ...
 - 【Git】Git与Repo入门
			
[来源]https://www.cnblogs.com/angeldevil/archive/2013/11/26/3238470.html
 - [转帖]总成本降低80%,支付宝使用OceanBase的历史库实践
			
https://open.oceanbase.com/blog/5377309696 为解决因业务增长引发的数据库存储空间问题,支付宝基于 OceanBase 数据库启动历史库项目,通过历史数据归档. ...
 - Raid卡型号的简单辨认与问题发现过程
			
Raid卡型号的简单辨认与问题发现过程 背景 同事给了一个awr报告. !-_-! 其实我看不懂. 但是他告诉我 有大量的log file sync 的等待事件. 然后又给了一套其他的文件, 发现lo ...
 - [转帖]【Kafka】Kafka配置参数详解
			
Kafka配置参数详解 Kafka得安装与基本命令 Kafka配置参数 kafka生产者配置参数 kafka消费者配置参数 本篇文章只是做一个转载的作用以方便自己的阅读,文章主要转载于: Kafka核 ...
 - [转帖]TiDB 环境与系统配置检查
			
https://docs-archive.pingcap.com/zh/tidb/v6.0/check-before-deployment 本文介绍部署 TiDB 前的环境检查操作,以下各项操作按优先 ...
 - Navicat For Redis 的学习与使用
			
Navicat For Redis 的学习与使用 背景 周末在家看了几个公众号: 说到Navicat 16.2已经有了 Redis的客户端. 想着前段时间一直在学习Redis, 但是没有GUI的工具, ...
 - ubuntu18.04 安装wine以及添加mono和gecko打开简单.net应用的方法
			
1. 今天突然想试试能不能用ubuntu跑一下公司的.net的智能客户端(SmartClient). 想到的办法就是 安装wine 但是过程略坑..这里简单说一下总结之后的过程. 2. 第一步安装wi ...