企业运维 NFS、Samba服务在Docker容器环境中快速搭建部署实践_docker 部署samb带界面的

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以点击这里获取!

-v /app/storage/nfs:/nfsshare
-e NFS_EXPORT_0=‘/nfsshare *(rw,sync,no_root_squash,no_all_squash,no_subtree_check,nohide,crossmnt)’
-p 2049:2049 -p 2049:2049/udp
-p 111:111 -p 111:111/udp
-p 32765:32765 -p 32765:32765/udp
-p 32767:32767 -p 32767:32767/udp
erichough/nfs-server

在Ubuntu宿主机上安装nfs客户端工具

$ sudo apt install nfs-client
$ showmount -e 10.20.176.101
Export list for 10.20.176.101:
/nfsshare *


步骤 03.手动挂载nfs到指定磁盘目录中。



mount -v -t nfs -o ro,nfsvers=3,nolock,proto=udp,port=2049 10.20.176.101:/nfsshare /mnt/nfs


参考地址: https://github.com/ehough/docker-nfs-server




---


**偷偷的告诉你哟?**【**极客全栈修炼**】微信小程序已开放


可直接在微信里面直接浏览博主文章哟,后续将上线更多有趣的小工具。




---


### **0x01 Docker 快速部署 samba-server 服务**


描述: Samba 是适用于 Linux 和 Unix 的标准 Windows 互操作性程序套件。自 1992 年以来,Samba 为所有使用 SMB/CIFS 协议的客户端提供了安全、稳定和快速的文件和打印服务,例如所有版本的 DOS 和 Windows、OS/2、Linux 等等。


**步骤 01.部署 samba-server 服务**



$ sudo mkdir -vp /app/storage/nfs
$ sudo docker run -it --name samba -p 139:139 -p 445:445
-e TZ=Etc/UTC
-v /app/storage/nfs:/share
-d dperson/samba -p
-u “iuser;123456”
-s “myshare;/share;yes;no;yes”


**步骤 02.Windows 中挂载 samba-server**



方式1.

\10.20.176.101\myshare

方式2.

C:\Users\WeiyiGeek>net use J: \10.20.176.101\myshare “123456” /USER:iuser /PERSISTEN:yes

命令成功完成。

C:\Users\WeiyiGeek>net use | findstr iuser

OK J: \10.20.176.101\myshare Microsoft Windows Network


可用 ENVIRONMENT VARIABLES:



  • CHARMAP - As above, configure character mapping

  • GENERIC - As above, configure a generic section option (See NOTE3 below)

  • GLOBAL - As above, configure a global option (See NOTE3 below)

  • IMPORT - As above, import a smbpassword file

  • NMBD - As above, enable nmbd

  • PERMISSIONS - As above, set file permissions on all shares

  • RECYCLE - As above, disable recycle bin

  • SHARE - As above, setup a share (See NOTE3 below)

  • SMB - As above, disable SMB2 minimum version

  • TZ - Set a timezone, IE EST5EDT

  • USER - As above, setup a user (See NOTE3 below)

  • WIDELINKS - As above, allow access wide symbolic links

  • WORKGROUP - As above, set workgroup

  • USERID - Set the UID for the samba server’s default user (smbuser)

  • GROUPID - Set the GID for the samba server’s default user (smbuser)

  • INCLUDE - As above, add a smb.conf include


官方地址: https://www.samba.org/  
 参考地址: https://hub.docker.com/r/dperson/samba  
 Github地址: https://github.com/dperson/samba/issues


**步骤 03.Linux 中挂载 samba-server**  
 首先,我们需要安装相关 samba 挂载依赖 cifs-utils 服务与 smbclient 命令



apt install cifs-utils smbclient -y


其次,若有密码请创建一个配置文件,存储用户名和密码



username=iuser
password=123456


然后,创建挂载的目录并挂载samba



使用mount命令进行挂载

mount -t cifs -o vers=3.0,credentials=/etc/.smbcredentials //10.20.176.101/myshare /media/share

开机自动挂载(optional)

vim /etc/fstab
//10.20.176.101/myshare /myshare cifs rw,relatime,vers=3.0,sec=ntlmssp,cache=strict,username=root,domain=SMBALIBABACLOUD,uid=0,noforceuid,gid=0,noforcegid,addr=10.41.40.92,file_mode=0755,dir_mode=0755,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1 1 1


**亲,文章就要看完了,不关注一下【全栈工程师修炼指南】吗?**



最后,查看挂载信息, 至此完毕



$ smbclient -L 10.20.176.101 -U root
$ df -Th
$ mount -l
//10.20.176.101/myshare on /myshare type cifs (rw,relatime,vers=3.0,sec=ntlmssp,cache=strict,username=root,domain=SMBALIBABACLOUD,uid=0,noforceuid,gid=0,noforcegid,addr=10.41.40.92,file_mode=0755,dir_mode=0755,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)


温馨提示: 若出现挂载失败可以通过查看日志 `tail -f /var/log/kern.log`


温馨提示: 若samba客户端连接报`NT_STATUS_INVALID_NETWORK_RESPONSE`错误解决办法,在samba服务端添加支持最小协议`server min protocol = LANMAN1`, 然后重启smb服务,客户端便可重新连接成功。



问题原因:

The defaults of ‘client min protocol’ and ‘server min protocol’ have been changed to SMB2_02.
This means clients without support for SMB2 or SMB3 are no longer able to connect to smbd (by default).
It also means client tools like smbclient and other, as well as applications making use of libsmbclient are no longer able to connect to servers without SMB2 or SMB3 support (by default).
It’s still possible to allow SMB1 dialects, e.g. NT1, LANMAN2 and LANMAN1 for client and server, as well as CORE and COREPLUS on the client.


本文至此完毕,更多技术文章,尽情等待下篇好文!


原文地址: https://blog.weiyigeek.top/2020/2-25-665.html


**如果此篇文章对你有帮助,请你将它分享给更多的人!**


![cad55014b51e3872169e069b12b8da34.gif](https://img-blog.csdnimg.cn/img_convert/cad55014b51e3872169e069b12b8da34.gif)


![504ad2497913513b4d563045de1a6466.png](https://img-blog.csdnimg.cn/img_convert/504ad2497913513b4d563045de1a6466.png) **学习书籍推荐****往期发布文章**![a36ede66518e7c5eef75274bea446668.png](https://img-blog.csdnimg.cn/img_convert/a36ede66518e7c5eef75274bea446668.png)


公众号回复【0008】获取【Ubuntu22.04安装与加固脚本】


**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 8
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值