shell脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
| 1#!/bin/bash
2echo "**************************************"
3echo "***** *****"
4echo "*** Mongodb 安装 ***"
5echo "***** *****"
6echo "**************************************"
7
8echo "=====>开始下载Mongodb:"
9wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.3.tgz
10if [ $? -eq 0 ]; then
11 echo "=====>下载成功!"
12 echo "=====>开始解压!"
13 tar -zxvf mongodb-linux-x86_64-3.6.3.tgz
14 echo "=====>解压成功!"
15 mkdir /usr/local/mongodb && mv mongodb-linux-x86_64-3.6.3/* /usr/local/mongodb/ && cd /usr/local/mongodb && mkdir data && touch logs && cd bin
16 echo "=====>开始安装!"
17 ./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --port=27017 --fork
18 if [ $? -eq 0 ]; then
19 echo "=====>安装成功";
20 touch mongodb.conf
21 echo "=====>配置mongodb"
22 echo "dbpath=/usr/local/mongodb/data" >> mongodb.conf
23 echo "logpath=/usr/local/mongodb/logs" >> mongodb.conf
24 echo "logappend=true" >> mongodb.conf
25 echo "port=27017" >> mongodb.conf
26 echo "fork=true" >> mongodb.conf
27 echo "bind_ip=0.0.0.0" >> mongodb.conf
28 echo "=====>设置Mongodb启动项"
29 touch /lib/systemd/system/mongodb.service
30 echo "[Unit]" >> /lib/systemd/system/mongodb.service
31 echo "Description=mongodb" >> /lib/systemd/system/mongodb.service
32 echo "After=network.target remote-fs.target nss-lookup.target" >> /lib/systemd/system/mongodb.service
33 echo "[Service]" >> /lib/systemd/system/mongodb.service
34 echo "Type=forking" >> /lib/systemd/system/mongodb.service
35 echo "ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf" >>/lib/systemd/system/mongodb.service
36 echo "ExecReload=/bin/kill -s HUP $MAINPID" >> /lib/systemd/system/mongodb.service
37 echo "ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/bin/mongodb.conf" >> /lib/systemd/system/mongodb.service
38 echo "PrivateTmp=true" >> /lib/systemd/system/mongodb.service
39 echo "[Install]" >> /lib/systemd/system/mongodb.service
40 echo "WantedBy=multi-user.target" >> /lib/systemd/system/mongodb.service
41 echo "=====> Mongodb配置完毕!";
42 systemctl daemon-reload
43 systemctl enable mongodb.service
44 sed -i '/^PATH/ i\MONGODB_HOME\=\/usr\/local\/mongodb' /etc/profile
45 sed -i '/^PATH/ s/$/\:\$MONGODB_HOME\/bin/' /etc/profile
46 sed -i '/export/ s/$/\ MONGODB_HOME/' /etc/profile
47 source /etc/profile
48 else
49 echo "=====>安装失败!";
50 exit;
51 fi
52else
53 echo "=====>下载失败,结束安装!"
54 exit
55fi
56
57echo "===>开启mongodb<===";
58mongo
59
60 |
执行脚本
1 2 3 4 5 6 7 8 9 10
| 1# root用户下执行
2
3vim mongodb.sh # 复制代码到文件中
4
5chmod +x mongodb.sh # 添加权限
6
7./mongodb.sh # 执行
8
9
10 |
在linux的/etc/profile中保存着的是Linux的环境变量,我的环境变量是这样的
1 2 3 4 5 6 7 8 9 10
| 1unset i
2unset -f pathmunge
3JAVA_HOME=/usr/lib/jvm/java
4# 这个是我通过shell脚本添加的
5MONGODB_HOME=/usr/local/mongodb
6CLASSPATH=.:/lib/dt.jar:/lib/tools.jar
7PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/bin:$MONGODB_HOME/bin
8export JAVA_HOME CLASSPATH PATH MONGODB_HOME
9
10 |
我们在安装软件需要配合环境变量的时候,整理好这个文件,通常只需要像Mongodb安装的类似设置
1 2 3 4 5
| 1MONGODB_HOME=/usr/local/mongodb # 添加到PATH行上面
2:$MONGODB_HOME/bin # 在PATH行尾添加
3MONGODB_HOME # 在export行尾添加
4
5 |
提示
Mongodb就可以直接安装配置并添加服务到开机自启,最后将客户端添加到Centos的环境变量中。
PS: shell脚本写的还是比较low的,轻喷,哈哈!