Ubuntu 20.04下安装Samba(Cifs/Smb)

news/2024/10/14 12:25:59

  接上一篇,本篇记录一下Ubuntu下Samba的安装配置,windows下的共享目录的设置有很多文章,这里就不说了。

  Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,我们可以使用apt安装,也可以去官网下载软件或者源码:

  apt安装

  如果是使用apt,那么安装就方便很多了:  

    #安装sudo apt updatesudo apt install samba

  然后修改配置/etc/samba/smb.conf ,添加用户就行了,这个和下面的一样

  下载软件包

  注:为了方便使用,本文所编译的安装包也分享出来了,包括所需要的依赖,需要的可以去下载:

  链接:https://pan.baidu.com/s/1hIwwQKtIMZ5FAcdHOMmX2Q (提取码:7rt4

  有时候,我们是离线环境,可能需要独立的软件包,或者是嫌弃apt安装的Samba版本太低,我们可以通过去官网下载(下载速度可能很慢,可能需要提前准备)

  Samba官网地址:https://www.samba.org/samba/

  

  我们可以选择最新的包,下载好之后,我们可以解压部署就行了,这里我的系统是Ubuntu20.04

# 安装依赖包(期间会选择时区,亚洲输入6,上海输入70)sudo apt updatesudo apt install make gcc tar python3-dev pkg-config libgnutls28-dev liblmdb-dev libbison-dev flex libgpgme-dev \libparse-yapp-perl libjansson-dev libarchive-dev libacl1-dev libldap2-dev libpam0g-dev libdbus-1-dev libicu-dev \libtracker-sparql-2.0-dev python3-markdown python3-dnspython libtasn1-bin libpopt-dev# 解压tar -zxf samba-4.20.0.tar.gz# 切换目录cd samba-4.20.0

  这里环境的按照一定要按照./configure提示来安装,缺少哪个就安装哪个   

    # 配置:--prefix表示存放编译后的文件目录sudo ./configure --prefix=/opt/samba-4.20.0# 编译sudo make# 安装sudo make install

   编译可能需要几分钟,执行完成之后,可以看到/opt/samba-4.20.0目录下的文件内容:

  

  现在我们可以把这整个目录打包一下,以后就可以把它直接发到服务器上去部署了:tar -zcf samba-4.20.0-bin.tar.gz -C /opt .

   那么怎么安装部署呢?

  我这里还是在Ubuntu20.04上安装部署  

    # 解压到一个目录,比如我这里是/optsudo tar -zxf samba-4.20.0-bin.tar.gz -C /opt# 创建用户(输入密码后一路回车)adduser samba# 创建一个目录,后面用于共享sudo mkdir /smb# 授权,修改所有者sudo chown -R samba. /smb

  然后可以增加配置(smb.conf),注意是 /opt/samba-4.20.0/etc/smb.conf目录,不是 /etc/smb.conf: 

    [global]workgroup = WORKGROUPserver string = %h server (Samba, Ubuntu)log file = /opt/samba-4.20.0/var/log.%mmax log size = 10000logging = fileserver min protocol=lanman2server role = standalone[test]comment = Testpath = /smbavailable = yesbrowseable = yeswriteable = yesguest ok = novalid users = sambamax connections = 1000

  smb.conf的介绍可以参考官网说明:https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html

  接着为Samba添加用户认证:

    # 为samba用户添加smb的密码访问权限,回车后输入密码:123456sudo /opt/samba-4.20.0/bin/smbpasswd -a samba

  如果执行报错,可能缺少相关依赖包,一个简单的方法是去仓库找依赖包进行安装,我用的Ubuntu,所以我就去它的apt仓库找,地址:https://ubuntu.pkgs.org,找到之后把它下载下来,然后使用dpkg安装就好了,我这边显示缺少的依赖包有下面这些(为了方便,我就直接安装了,如果服务器不能联网,那么只能去仓库找下载下来再安装了):

    sudo apt updatesudo apt install libldap2-dev libicu-dev libjansson-dev libpopt-dev

  然后我们就可以启动了:

    # 前台启动,-F表示在前台启动,如果向指定配置文件,那么可以使用-s或者--configfile参数指定/opt/samba-4.20.0/sbin/smbd -F --no-process-group

  然后我们就可以访问了,但是为了方便,我们使用服务单元包装一下( smbd.service):  

    [Unit]Description=Samba[Service]Type=simpleWorkingDirectory=/opt/samba-4.20.0User=rootExecStart=/opt/samba-4.20.0/sbin/smbd -F --no-process-groupExecStop=/usr/bin/kill -9 $MAINPIDKillMode=processRestart=alwaysPrivateTmp=true[Install]WantedBy=multi-user.target

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/26741.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

《自动机理论、语言和计算导论》阅读笔记:p215-p351

《自动机理论、语言和计算导论》学习第 11 天,p215-p351总结,总计 37 页。 一、技术总结 1.constrained problem 2.Fermats lats theorem Fermats Last Theorem states that no three positive integers a, b and c satisfy the equation a^n + b^n = c^n for any integer v…

Akima算法

测量数据的内插已有各种方法,如线性内插、多项式内插、样条函数插值等,但这里的Akima插值法具有独特的优点。线性内插只顾及其附近两点的影响。多项式内插时,低阶多项式由于参数较少,内插精度很低,而使用高阶多项式又会使解不稳定,出现“龙格”现象,即内插函数在插值点与实际数…

CF1054F Electric Scheme

传送门和 Bricks 很像。 初始把每个点看作一条线段,然后我们可以通过行相邻的或者列相邻的两个点合并。如果横向和竖向相交了且不是相交在给定的点,不能同时选。 最大独立集即可。

在Windows防火墙设置中,允许单播响应(Unicast Response)是一个控制选项,用于允许或禁止系统对多播或广播网络流量的单播响应。让我详细解释一下允许和禁止单播响应的区别:

在Windows防火墙设置中,允许单播响应(Unicast Response)是一个控制选项,用于允许或禁止系统对多播或广播网络流量的单播响应。让我详细解释一下允许和禁止单播响应的区别:允许单播响应(是):当设置为“是”时(默认值),Windows系统会允许对多播或广播网络流量的单播响…

Radius 现在是云原生计算基金会(CNCF)的沙箱项目

在数字化时代,云原生计算技术逐渐成为企业转型的关键。2024-04-25,备受瞩目的开源项目 Radius 已正式加入云原生计算基金会(CNCF)的沙箱项目![Sandbox] Radius Issue #65 cncf/sandbox (github.com)这个消息让业界瞩目,加入CNCF的沙箱项目,不仅是对 Radius 技术实力的…

Windows上使用PowerShell来启用记录被丢弃的数据包(D)和成功的连接(U)的日志,你可以通过配置 Windows 高级防火墙规则来实现。具体步骤如下:

Windows上使用PowerShell来启用记录被丢弃的数据包(D)和成功的连接(U)的日志,你可以通过配置 Windows 高级防火墙规则来实现。具体步骤如下:创建防火墙规则: 首先,你需要创建适当的防火墙规则来捕获被丢弃的数据包(D)和成功的连接(U)。这可以通过 PowerShell 来完成…

Aveva marine c# 循环中显示进度条

主要的代码如下try {WindowManager.Instance.StatusBar.StartProgressDisplay();WindowManager.Instance.StatusBar.ProgressMinimum = 0;WindowManager.Instance.StatusBar.ProgressMaximum = 100;WindowManager.Instance.StatusBar.Progress = 0;WindowManager.Instance.Stat…

读天才与算法:人脑与AI的数学思维笔记15_声响的数学之旅

读天才与算法:人脑与AI的数学思维笔记15_声响的数学之旅1. 音乐 1.1. 巴赫的作品以严格的对位著称,他十分中意对称的结构 1.2. 巴托克的作品很多都以黄金比例为结构基础,他非常喜欢并善于使用斐波纳契数列 1.3. 有时,作曲家是本能地或者不自知地被数学的模式和结构所吸引,…