#!/bin/sh
#Auto Make install MFS Files
#
cat <<EOF
++++++++++++++++Welcome To Use Auto Install MFS Scripts ++++++++++++++++++
+++++++++++++++++++++This MFS Install Version 1.6.27++++++++++++++++++++++
+++++++++++++++++++++++++2013-12-04 Author wugk ++++++++++++++++++++++++++
EOF #Defined Variables
SRC_DIR=/usr/src/
MFS_COUNT=(
http://www.moosefs.org/tl_files/mfscode
mfs-1.6.27-1.tar.gz
mfs-1.6.27
'''./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfschunkserver --disable-mfsmount'''
'''./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster'''
'''./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster --disable-mfschunkserver'''
) ##Defined Function Command Master MFS Install
master_mfs ()
{ if [ -e /usr/sbin/mfsmaster ];then
echo "This Mfsmaster already exists,Please exit "
exit 0
fi #Download MFS SOft Version 1.6.27
cd $SRC_DIR ; wget -c ${MFS_COUNT[0]}/${MFS_COUNT[1]} &&echo "Download ${MFS_COUNT[1]} Successfully !" #Configure MFS and make install and configuration MFS
groupadd mfs ;useradd -g mfs mfs
tar -xzf ${MFS_COUNT[1]} ;cd ${MFS_COUNT[2]} &&${MFS_COUNT[3]} &&make &&make install
[ $? == 0 ]&&echo "This MFS ${MFS_COUNT[2]} Install Successfully,Please Wait Config Master_MFS ......"
cd /etc/mfs/ &&
cp mfsmaster.cfg.dist mfsmaster.cfg
cp mfsmetalogger.cfg.dist mfsmetalogger.cfg
cp mfsexports.cfg.dist mfsexports.cfg
cd /var/lib/mfs ;mv metadata.mfs.empty metadata.mfs
} ##Defined Function Command Chunks MFS Install
chunks_mfs () {
if [ -e /usr/sbin/mfschunkserver ];then
echo "This Mfschunkserver already exists,Please exit "
exit 0
fi
#Download MFS SOft Version 1.6.27
cd $SRC_DIR ; wget -c ${MFS_COUNT[0]}/${MFS_COUNT[1]} &&echo "Download ${MFS_COUNT[1]} Successfully !" #Configure MFS and make install and configuration MFS
groupadd mfs ;useradd -g mfs mfs
tar -xzf ${MFS_COUNT[1]} ;cd ${MFS_COUNT[2]} &&${MFS_COUNT[4]} &&make &&make install
[ $? == 0 ]&&echo "This MFS ${MFS_COUNT[2]} Install Successfully,Please Wait Config Chunk_MFS ......"
cd /etc/mfs/ &&
cp mfschunkserver.cfg.dist mfschunkserver.cfg
cp mfshdd.cfg.dist mfshdd.cfg
mkdir -p /data/{mfs1,mfs2}
echo -e "/data/mfs1\n/data/mfs2" >>mfshdd.cfg
chown -R mfs:mfs /data/mfs1
chown -R mfs:mfs /data/mfs2
} client_mfs () {
if [ -e /usr/bin/mfsmount ];then
echo "This Mfschunkserver already exists,Please exit "
exit 0
fi
#Download MFS SOft Version 1.6.27
cd $SRC_DIR ; wget -c ${MFS_COUNT[0]}/${MFS_COUNT[1]} &&echo "Download ${MFS_COUNT[1]} Successfully !" #Configure MFS and make install and configuration MFS
groupadd mfs ;useradd -g mfs mfs
yum install fuse-devel -y
tar -xzf ${MFS_COUNT[1]} ;cd ${MFS_COUNT[2]} &&${MFS_COUNT[5]} &&make &&make install
[ $? == 0 ]&&echo -e "This MFS ${MFS_COUNT[2]} Client Install Successfully\nYou Can Use :{/usr/bin/mfsmount /mnt/ -H mfs_master_ip} to Mount !"
} case $1 in master_mfs )
master_mfs
;;
chunks_mfs )
chunks_mfs
;;
client_mfs )
client_mfs
;;
* )
echo
echo "$0 {master_mfs | chunks_mfs | client_mfs}"
;;
esac

  

shell脚本自动化部署XX的案例(附数组使用)的更多相关文章

  1. shell脚本自动化部署服务

    shell脚本自动化部署 !/bin/bash #export PATH=$PATH:/export/maven/bin run_flag_dir="/data0/shell/deploy_ ...

  2. shell脚本自动化部署

    由于公司技术部团队较小,没有专门的运维团队,所以运维工作技术部承包了. 一.纯人工部署是这样的: 1. 本地打包:一般 maven clean package 2. 借助xftp上传到服务器对应目录 ...

  3. linux下使用shell脚本自动化部署项目

    在Java开发项目时经常要把正在开发的项目发布到测试服务器中去测试,一般的话是要把项目先打成war包,然后把war包发布到服务器中,关闭服务器, 最后重新启动服务器,虽然这过程不是很繁琐,但如果是多个 ...

  4. Shell脚本-自动化部署WEB

    #! /bin/ ] then echo "#### 参数有误,\$1:构建号必填" exit fi cd /root/workspace/xinya_erp/xinya_web ...

  5. Shell脚本-自动化部署反向代理、WEB、nfs

    部署nginx反向代理三个web服务,调度算法使用加权轮询(由于物理原因只开启两台服务器) AutoNginxNfsService.sh #/bin/bash systemctl status ngi ...

  6. shell脚本自动化部署Zabbix4.2(修改脚本替换版本)

    #!/bin/bash # 检查操作系统版本,该脚本只能运行在 Centos 7.x 系统上 cat /etc/redhat-release |grep -i centos |grep '7.[[:d ...

  7. fdisk分区硬盘并shell脚本自动化

    最近工作需要用到对硬盘进行shell脚本自动化分区和mount的操作,google了一些资料,下面做个总结. 如果硬盘没有进行分区(逻辑分区或者扩展分区,关于两者概念,自行google),我们将无法将 ...

  8. Shell脚本一键部署——源码编译安装MySQL及自动补全工具

    Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者 ...

  9. 使用 Shell 脚本自动化 Linux 系统维护任务

    如果一个系统管理员花费大量的时间解决问题以及做重复的工作,你就应该怀疑他这么做是否正确.一个高效的系统管理员应该制定一个计划使得其尽量花费少的时间去做重复的工作.因此尽管看起来他没有做很多的工作,但那 ...

随机推荐

  1. 编写bat(批处理文件)的优势

    以前编写java小程序打成jar包运行的时候非常麻烦,在dos环境先cd进入那个文件夹,再运行java -jar *.jar,自从看了bat以后,发现.bat真的是dos下面运行的好帮手. @echo ...

  2. 检索 COM 类工厂中 CLSID 解决办法

    我的服务器:windows server 2008(64位)+microsoft office 2007 企业版+windows服务应用程序 业务:调用msdn提供的SaveAsPDFandXPS.e ...

  3. iOS 面试题(五):weak 的内部实现原理 --转自唐巧

    问题 weak 变量在引用计数为0时,会被自动设置成 nil,这个特性是如何实现的? 答案 在 Friday QA 上,有一期专门介绍 weak 的实现原理.https://mikeash.com/p ...

  4. iOS:使用模板引擎渲染HTML界面

    在实际开发中,UIWebView控件接受一个HTML内容,用于相应的界面,下面是该API的接口: - (void)loadHTMLString:(NSString *)string baseURL:( ...

  5. 使用git版本控制器C#工程,git托管到GitHub和visual studio on line

    类比TFS, 托管到了VS online,为私有.GitHub上托管的代码为开源. 新建工程选择版本控制器"Git" VS online: 本地: GitHub,下载github ...

  6. spark shell

    启动spark-shell客户端 启动集群模式 本机为master节点 export MASTER=spark://`hostname`:7077bin/spark-shell 或者 bin/spar ...

  7. String转json

    一.下载json 具体到http://www.json.org/上找Java-json下载,并把其放到项目源代码中,这样就可以引用其类对象了 转载地址:http://blog.csdn.net/tax ...

  8. postgresql修炼之道学习笔记(1)

    好好学习吧. 本笔记 仅作为摘要记录 前两章,主要是数据库对比和安装等. 对比,就比多说了,总是和别人比较,会显得自己身价低,呵呵. 安装也有很多文章,不多说. 第二章提到了一些简单的配置, 其在 d ...

  9. Url通配符映射

    原文:http://www.cnblogs.com/liukemng/p/3726897.ht 1.URL路径映射 1.1.对一个action配置多个URL映射: 我们把上一篇中的HelloWorld ...

  10. Javascript模块化编程(一):模块的写法(转)

    随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂. 网页越来越像桌面程序,需要一个团队分工协作.进度管理.单元测试等等......开发者 ...