基于samba源码的ubuntu18.4搭建共享目录
创始人
2025-05-31 12:12:29
0

本节在ubuntu18.4的系统上实现samba服务器的安装,并利用samba服务器搭建共享目录,给局域网内的windows系统提供共享文件夹服务。本节包括samba软件的安装、samba配置共享目录和samba服务器开机自启动三部分组成,具体操作如下所示:

(一)Samba软件安装

1.进入github下载samba最新软件压缩包,samba最新软件版本为V4.17.6.

https://github.com/samba-team/samba/tags

图1 下载samba源码压缩包

2.拷贝samba源码压缩包到ubuntu18.4的工作目录,并解压源码压缩包。

图2 解压samba源码压缩包

 

3.参考samba官网教程(https://wiki.samba.org/index.php/Package_Dependencies_Required_to_Build_Samba),在线安装samba必备库文件(注意:不同的ubuntu版本,在线安装的samba必备库存在差异,请具体参考samba官网说明)。

sudo apt-get install   acl apt-utils attr autoconf bind9utils binutils bison build-essential ccache chrpath curl debhelper dnsutils docbook-xml docbook-xsl flex gcc gdb git glusterfs-common gzip heimdal-multidev hostname htop jq krb5-config krb5-kdc krb5-user language-pack-en lcov libacl1-dev libarchive-dev libattr1-dev libavahi-common-dev libblkid-dev libbsd-dev libcap-dev libcephfs-dev libcups2-dev libdbus-1-dev libglib2.0-dev libgnutls28-dev libgpgme11-dev libicu-dev libjansson-dev libjs-jquery libjson-perl libkrb5-dev libldap2-dev liblmdb-dev libncurses5-dev libpam0g-dev libparse-yapp-perl libpcap-dev libpopt-dev libreadline-dev libsystemd-dev libtasn1-bin libtasn1-dev libtracker-sparql-2.0-dev libunwind-dev lmdb-utils locales lsb-release make mawk mingw-w64 patch perl perl-modules pkg-config procps psmisc python3 python3-cryptography python3-dbg python3-dev python3-dnspython python3-gpg python3-iso8601 python3-markdown python3-pexpect python3-pyasn1 python3-requests python3-setproctitle rng-tools rsync sed sudo tar tree uuid-dev wget xfslibs-dev xsltproc xz-utils zlib1g-dev

图3 安装samba必要库文件

4.进入samba源码目录,运行.configure进行samba软件的配置。

图4  ./configure配置samba

 

5.进行samba的源码编译。

图5 samba源码编译

 

6.进行samba软件的安装(注意:root权限)。

图6 samba软件安装

 

7.samba默认安装目录为/usr/local/samba目录,samba安装完成后该目录文件如下所示:

图7 samba默认安装目录文件列表

 

(二)Samba服务器配置

1.在ubuntu的/home/lsl目录下新建share_disk的目录,在该目录下新建a.c的文件,新建文件是为了共享目录搭建成功查找该文件使用。

图8 新建共享目录share_disk

 

2.拷贝samba解压目录下example/dce-dfs子目录下的smb.conf到samba安装目录/usr/local/samba/etc下,如下所示:

图9 拷贝smb.conf文件到安装目录etc子目录下

 

3.修改/usr/local/samba/etc目录下的smb.conf文件,如下所示:

图10 smb.conf配置文件内容

 

4.将lsl的账户名(该账户名必须为ubuntu用户列表里的账户)添加到samba服务器:lsl,密码:123456。

sudo /usr/local/samba/bin/smbpasswd -a lsl

图11 samba添加新的账户

5.运行如下命令,开启samba服务器。

sudo /usr/local/samba/sbin/smbd –D

图12 开启samba服务器

6.获得linux的ip地址(192.168.50.83),在windows操作系统通过(以win10系统为例)\\192.168.50.83查看结果如下所示:

图13 输入共享目录ip地址
图14 查找到共享目录qrs

 

图15 查找到共享目录文件a.c

7.至此,基于源码的samba服务器的搭建完成。

(三)Samba服务器开机自动设置

1.将 /lib/systemd/system/rc-local.service 链接到 /etc/systemd/system/ 目录下面来,然后对/etc/systemd/system/rc-local.service的文件末尾添加如下内容,如下图所示:

sudo ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service

sudo vim /etc/systemd/system/rc-local.service

[Install]

WantedBy=multi-user.target

Alias=rc-local.service

图16 rc-local.service配置

2.在/etc目录下,新建rc.loal脚本文件,修改rc.local 的脚本值,如下图所示:

sudo touch /etc/rc.local

sudo vi /etc/rc.local

图17 新建/etc/rc.local

3./etc/systemd/system 目录创建软链接。

sudo ln -s /lib/systemd/system/rc.local.service /etc/systemd/system/

图18 在系统目录建立软链接

4.给脚本添加执行权限,如下图所示:

sudo chmod +x /etc/rc.local

图19 启动脚本添加可执行权限

5.重启ubuntu系统,使用windows直接访问共享目录,同时ubuntu系统里/etc/local目录下的samba_start.log日志文件添加了一条执行成功的信息

图20 自动开启重启设置成功

图21 samba脚本执行成功

 

 

相关内容

热门资讯

“男子持刀入室盗窃”视频引发关... 近日,一段疑似“小偷”入室盗窃被业主家中监控拍下的视频在网上引发关注。11月21日晚,“翠屏公安”微...
绝不允许日本军国主义幽灵复活!... 2025年11月7日,日本首相高市早苗宣称,如果中国大陆对台湾出动军舰并使用武力,可能会构成“存亡危...
【解决】AI法律助手荣获202... 2025全球数字经济大会启幕,搭建国际数字合作高端平台 经国务院批准,由北京市人民政府、国家互联网信...
嘉兴男子与妻争吵,突然将行李箱... 近日,浙江嘉兴一对夫妻因琐事发生争吵,丈夫突然将装满衣物的行李箱从6楼扔到楼下,引发关注。11月22...
三地107家律所齐聚丰台,京津... 11月22日,京津冀律师驿站举办“党建业务深度融合 促进行业规范发展”主题活动,发布“百千万行动计划...
家装预付资金安全困局如何破解,... 家装预付资金安全困局如何破解 专家提出:建立“先验收后付款”装修资金存管制度 预交数万元甚至数十万元...
工行安康解放路支行积极开展《反... 为深入贯彻落实《国家金融监督管理总局安康监管分局办公室关于开展<反有组织犯罪法>宣传活动的通知》要求...
重庆公布育儿补贴制度实施方案 原标题:每孩每年3600元 重庆公布育儿补贴制度实施方案 11月21日,记者了解到,市卫生健康委、市...
十五运会组委会在深总结本届赛事... 深圳新闻网2025年11月22日讯(深圳报业集团记者 林炜航)11月21日,十五运会组委会在深圳市民...