centos samba 看不到共享目录_利用shell脚本命令配置好完整的Samba共享服务器

【导读】

昨天晚上在CentOS学习Samba配置共享文件服务器,还算顺利:二三个小时左右完成了SAMBA服务的配置,昨天根据头条文章依次执行和配置,只有一点点小错!

今天事情并不多,在学习shell脚本,就想能不能用shell脚本,一次性就把CentOS Linux 的文件共享服务器完成呢?

shell脚本需要完成的实验需求:

38843bd39401ae7cacb77748b9d6f5eb.png

网络拓扑结构图

shell脚本运行目标:

  • 1、建立WORKGROUP工作组,建立Manage、Human、Salas帐号和访问密码;
  • 2、建立拓扑图对应的之public、doc、soft共享文件夹、权限、访问;
  • 3、自动完成smb.conf文件的修改,达到网络访问的目标;
  • 4、自动运行smb服务,并加载到对应的启动项;
c80a86a5b3d42343238fdadfa6d357f6.png

shell脚本在CentOS 7运行后的历史命令

9e28cb364799ed843c58e48a8fa2b278.png

Win7访问CentOS7 Samba文件服务器示意图

【Shell文件smbinstall.sh】

#!bai/bin/bashsourcepack='samba'smbpw="duoluo123"group="WORKGROUP"user1="Manage"user2="Human"user3="Salas"share01="public"share02="soft"share03="doc"#### 建立共享目录####if [ -f "/etc/samba/smb.conf" ];thenecho "Samba is install...."elseyum -y install samba*fi###建立共享目录######if [ -d "/home/Data" ];thenecho "/home/Data is exist...."elsemkdir /home/Datafiif [ -d "/home/Data/public" ];thenecho "/home/Data/public is exist...."elsemkdir /home/Data/publicfiif [ -d "/home/Data/doc" ];thenecho "/home/Data/doc is exist...."elsemkdir /home/Data/docfiif [ -d "/home/Data/soft" ];thenecho "/home/Data/soft is exist...."elsemkdir /home/Data/softfiif [ -f "/etc/samba/smb.conf_bak" ];thencp -f /etc/samba/smb.conf_bak /etc/samba/smb.confelsecp /etc/samba/smb.conf /etc/samba/smb.conf_bakfi########建立用户组和对应的用户#############egroup  "^$group" /etc/group >& /dev/nullif [ $? -ne 0 ]thengroupadd "$group"elseecho "hello"fi#####################################################create user if not exists#id $user >& /dev/null#if [ $? -ne 0 ]#then#   useradd -g $group $user#fi          #create user if not exists#egrep "^$user" /etc/passwd >& /dev/null#if [ $? -ne 0 ]#then#    useradd -g $group $user#fi#create user if not exists##################################################id $user1>& /dev/nullif [ $? -ne 0 ]then   useradd "$user1" -g "$group"else    echo "User is exist...."fiid $user2>& /dev/nullif [ $? -ne 0 ]then   useradd "$user2" -g "$group"else    echo "User is exist...."fiid $user3>& /dev/nullif [ $? -ne 0 ]then   useradd "$user3" -g "$group"else    echo "User is exist...."fi####################修改密码#################################(echo 123;echo 123) | smbpasswd -s -a  mysql#echo -e "123123" | smbpasswd -s -a  mysql(echo "$smbpw";echo "$smbpw") | smbpasswd -a -s "$user1"(echo "$smbpw";echo "$smbpw") | smbpasswd -a -s "$user2"(echo "$smbpw";echo "$smbpw") | smbpasswd -a -s "$user3"(echo "$user1" password is "$smbpw")(echo "$user2" password is "$smbpw")(echo "$user3" password is "$smbpw")chgrp "$group" /home/Datachgrp "$group" /home/Data/softchgrp "$group" /home/Data/docchgrp "$group" /home/Data/publicchmod 777 /home/Datachmod 770 /home/Data/softchmod 770 /home/Data/docchmod 770 /home/Data/public#########'workgroup = Samba'########sed -i 's/workgroup = SAMBA/workgroup = '"$group"'/g' /etc/samba/smb.conf####################################sed -i '$a ['"$share01"']' /etc/samba/smb.confsed -i '$a comment = '"$share01"' Home Directories' /etc/samba/smb.confsed -i '$a path = /home/Data/'"$share01"'' /etc/samba/smb.conf sed -i '$a valid users = '"$user1"','"$user2","$user3"',root' /etc/samba/smb.confsed -i '$a browseable = yes' /etc/samba/smb.confsed -i '$a read only = no' /etc/samba/smb.confsed -i '$a inherit acls = yes' /etc/samba/smb.conf  #########/etc/samba/smb.conf [soft]#######sed -i '$a ['"$share02"']' /etc/samba/smb.confsed -i '$a comment = '"$share02"' Home Directories' /etc/samba/smb.confsed -i '$a path = /home/Data/'"$share02"'' /etc/samba/smb.confsed -i '$a valid users = '"$user1"','"$user2","$user3"',root' /etc/samba/smb.confsed -i '$a browseable = yes' /etc/samba/smb.confsed -i '$a read only = no' /etc/samba/smb.confsed -i '$a inherit acls = yes' /etc/samba/smb.conf########/etc/samba/smb.conf [doc]#######sed -i '$a ['"$share03"']' /etc/samba/smb.confsed -i '$a comment = '"$share03"' Home Directories' /etc/samba/smb.confsed -i '$a path = /home/Data/'"$share03"'' /etc/samba/smb.confsed -i '$a valid users = '"$user1"','"$user2","$user3"',root' /etc/samba/smb.confsed -i '$a browseable = yes' /etc/samba/smb.confsed -i '$a read only = no' /etc/samba/smb.confsed -i '$a inherit acls = yes' /etc/samba/smb.conf####################################################################################systemctl restart smbsystemctl enable smb

作者:王维翰,资深IT运维工程师,具备20多年IT及相关技术支持,为上海近千家中小企业、家庭用户提供过专业的IT技术支持服务;曾多次获“中小企业十佳项目经理”、“中小企业IT专家”!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值