Linux系统软件安装

1、安装jdk

-- 1、将jdk文件解压到指定目录
# tar zxvf ./jdk-8u162-linux-x64.tar.gz -C /home/software/java
-- 2、配置环境变量
JAVA_HOME=/home/software/java/jdk1.8.0_162
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
-- 3、让环境变量生效
# source /etc/profile
-- 4、验证
# java --verison
-- 5、遇到的问题
	-- 1、vim:未找到命令
	[root@ser874514596417 ~]# rpm -qa|grep vim
	vim-minimal-7.4.160-5.el7.x86_64
	[root@ser874514596417 ~]# yum -y install vim-enhanced
    -- 2、wget:未找到命令
	[root@ser874514596417 ~]# yum -y install wget

2、安装node.js

-- 1、下载node.js
[root@ser874514596417 package]# wget https://nodejs.org/dist/v12.18.1/node-v12.18.1-linux-x64.tar.xz
-- 2、安装node.js
[root@ser874514596417 nodejs]# tar xf /home/package/node-v12.18.1-linux-x64.tar.xz -C /home/software/nodejs/
-- 3、配置环境变量
# 配置node.js的环境变量
export PATH=$PATH:/home/software/nodejs/node-v12.18.1-linux-x64/bin
-- 4、让环境变量生效
[root@ser874514596417 bin]# source /etc/profile
-- 5、验证安装是否成功
[root@ser874514596417 bin]# node -v


3、安装git

-- 1、安装git
[root@ser874514596417 bin]# yum install git
-- 2、验证安装是否成功
[root@ser874514596417 bin]# git --version
-- 3、查看安装信息
[root@ser874514596417 bin]# cd /usr/libexec/git-core

4、安装hexo脚手架

-- 1、安装hexo
[root@ser874514596417 ~]# npm install hexo-cli -g

5、安装nginx

-- 1、安装依赖软件包
[root@ser874514596417 ~]# yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
-- 2、下载
[root@ser874514596417 package]# wget https://nginx.org/download/nginx-1.9.2.tar.gz
-- 3、解压安装
[root@ser874514596417 package]# tar -zxvf ./nginx-1.9.2.tar.gz -C /usr/local/
-- 4、配置nginx
[root@ser874514596417 nginx-1.9.2]# ./configure --with-http_ssl_module
至于 --with-http_ssl_module 的意思,顾名思义可知是添加https支持。添加https支持也很简单,添加SSL证书并修改 nginx.conf 配置文件即可
-- 5、编译安装nginx
[root@ser874514596417 nginx-1.9.2]# make
[root@ser874514596417 nginx-1.9.2]# make install
会在 nginx-1.9.2目录的上层目录,出现一个nginx目录。
-- 6、配置环境变量
在/etc/profile配置文件中添加
	export PATH=$PATH:/usr/local/nginx/sbin
然后保存,使配置文件重新生效 source /etc/profile


----------------------------------nginx#常用的命令#------------------------------------------
--1、验证配置是否正确
[root@ser874514596417 sbin]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
--2、查看nginx版本
[root@ser874514596417 sbin]# nginx -v
nginx version: nginx/1.9.2
--3、启动nginx
[root@ser874514596417 sbin]# ./nginx
或者
[root@ser874514596417 sbin]# nginx
--4、停止nginx
[root@ser874514596417 sbin]# nginx -s stop
--5、重新加载nginx
[root@ser874514596417 sbin]# nginx -s reload
--6、查看nginx进程号
[root@ser874514596417 sbin]#  ps aux|grep nginx
root     15069  0.0  0.0  45792  1844 ?        Ss   13:10   0:00 nginx: master process nginx
nobody   16678  0.0  0.1  46232  1960 ?        S    13:11   0:00 nginx: worker process
root     16736  0.0  0.0 112824   984 pts/4    R+   13:11   0:00 grep --color=auto nginx

--5. 7、配置nginx全局变量 1、创建文件: vim /etc/init.d/nginx 2、将下列代码复制到刚刚创建的文件中

#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# it is v.0.0.2 version.
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
#              It has a lot of features, but it's not for everyone.
# processname: nginx
# pidfile: /var/run/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/var/run/nginx.pid
RETVAL=0
prog="nginx"
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
[ -x $nginxd ] || exit 0
# Start nginx daemons functions.
start() {
if [ -e $nginx_pid ];then
   echo "nginx already running...."
   exit 1
fi
   echo -n $"Starting $prog: "
   daemon $nginxd -c ${nginx_config}
   RETVAL=$?
   echo
   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
   return $RETVAL
}
# Stop nginx daemons functions.
stop() {
        echo -n $"Stopping $prog: "
        killproc $nginxd
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}
# reload nginx service functions.
reload() {
    echo -n $"Reloading $prog: "
    #kill -HUP `cat ${nginx_pid}`
    killproc $nginxd -HUP
    RETVAL=$?
    echo
}
# See how we were called.
case "$1" in
start)
        start
        ;;
stop)
        stop
        ;;
reload)
        reload
        ;;
restart)
        stop
        start
        ;;
status)
        status $prog
        RETVAL=$?
        ;;
*)
        echo $"Usage: $prog {start|stop|restart|reload|status|help}"
        exit 1
esac
exit $RETVAL

3、设置文件的访问权限

chmod a+x /etc/init.d/nginx

5.8 配置nginx开机启动

方式一:在/etc/rc.local中配置

可以将此命令加入到rc.local文件中,这样开机的时候nginx就默认启动了

vi /etc/rc.local

加入一行  /etc/init.d/nginx start    保存并退出,下次重启会生效。

方式二:将nginx配置成自启动的服务

1.添加至服务管理列表,并让其开机自动启动

[root@nginx ~]# chkconfig --add nginx
[root@nginx ~]# chkconfig nginx on 
[root@nginx ~]# chkconfig nginx --list 

3.查看一下端口
[root@nginx ~]# netstat -ntlp | grep :80
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      3889/nginx

6、安装maven

--1、下载maven
[root@ser874514596417 package]# wget https://dlcdn.apache.org/maven/maven-3/3.8.2/binaries/apache-maven-3.8.2-bin.tar.gz
--2、解压安装
[root@ser874514596417 package]# tar -zxvf apache-maven-3.8.2-bin.tar.gz -C  /home/software
--3、配置环境变量
# 配置maven的环境变量
export MAVEN_HOME=/home/software/apache-maven-3.8.2
export PATH=$MAVEN_HOME/bin:$PATH
--4、刷新环境变量
[root@ser874514596417 software]# source /etc/profile
--5、验证
[root@ser874514596417 software]# mvn -v
Apache Maven 3.8.2 (ea98e05a04480131370aa0c110b8c54cf726c06f)
Maven home: /home/software/apache-maven-3.8.2
Java version: 1.8.0_162, vendor: Oracle Corporation, runtime: /home/software/java/jdk1.8.0_162/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-957.el7.x86_64", arch: "amd64", family: "unix"

7、安装jenkins

-- 确保已经安装jdk和maven
--1、下载
自己下载传到linux系统中,我是下载的这个版本 jenkins-2.174-1.1.noarch.rpm
--2、解压安装
[root@ser874514596417 jenkins]# rpm -ivh jenkins-2.174-1.1.noarch.rpm 
--3、查看jenkins安装目录
[root@ser874514596417 local]# whereis jenkins
jenkins: /usr/lib/jenkins
[root@ser874514596417 local]# cd /usr/lib/jenkins/
[root@ser874514596417 jenkins]# ls
jenkins.war
--4、修改jenkins文件,文件位置/etc/init.d/jenkins,配置jdk安装路径
文件中添加: /home/software/java/jdk1.8.0_162/bin/java
--5、启动jenkins
[root@ser874514596417 init.d]# sudo service jenkins start
Starting jenkins (via systemctl):  Warning: jenkins.service changed on disk. Run 'systemctl daemon-reload' to reload units. [  OK  ]
--7、访问jenkins
我的服务器的ip是43.243.74.122,你要访问就访问自己的ip,端口号是8080
http://43.243.74.122:8080/
--8、登录
密码的路径在 /var/lib/jenkins/secrets/initialAdminPassword
查看密码
[root@ser874514596417 init.d]# cat /var/lib/jenkins/secrets/initialAdminPassword
登录进入后,可以安装一些插件,创建用户,修改密码
--9、停止jenkins
[root@ser874514596417 init.d]# service jenkins stop
--10、重启jenkins
[root@ser874514596417 init.d]# service jenkins restart

8、安装Mysql

--1、检查只有有没有安装mysql
[root@ser874514596417 ~]# find / -name mysql
/run/lock/subsys/mysql
/etc/rc.d/init.d/mysql
/etc/selinux/targeted/active/modules/100/mysql
出现的都删掉吧,没得事
--2、下载和添加仓库
[root@ser874514596417 package]# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
[root@ser874514596417 package]# sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
[root@ser874514596417 package]# yum update
--3、安装Mysql
[root@ser874514596417 package]# yum install mysql-server
[root@ser874514596417 package]# systemctl start mysqld
--4、运行脚本文件
[root@ser874514596417 package]# mysql_secure_installation 
提示输入root密码,初始未null,会让你设置密码
--5、登录mysql
[root@ser874514596417 package]# mysql -uroot -p
--6、查看mysql的编码
mysql> show variables like '%character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
--7、修改character_set_server和character_set_database的编码为utf8
	--1、将my-default.cnf 拷贝到 /etc/my.cnf
    [root@ser874514596417 mysql-community-server-5.6.51]# cp  /usr/share/doc/mysql-community-server-	5.6.51/my-default.cnf  /etc/my.cnf
    cp:是否覆盖"/etc/my.cnf"? y
    --2、编辑etc/my.cnf文件,添加
	[client]下增加: default-character-set = utf8
	[mysqld]下增加: character_set_server =  utf8
	--3、重启mysql 服务
	[root@ser874514596417 mysql-community-server-5.6.51]# systemctl restart mysql.service
	--4、登录mysql
	[root@ser874514596417 mysql-community-server-5.6.51]# mysql -uroot -p
	--5、查看编码
	mysql> show variables like '%character%';
    +--------------------------+----------------------------+
    | Variable_name            | Value                      |
    +--------------------------+----------------------------+
    | character_set_client     | utf8                       |
    | character_set_connection | utf8                       |
    | character_set_database   | utf8                       |
    | character_set_filesystem | binary                     |
    | character_set_results    | utf8                       |
    | character_set_server     | utf8                       |
    | character_set_system     | utf8                       |
    | character_sets_dir       | /usr/share/mysql/charsets/ |
    +--------------------------+----------------------------+
	8 rows in set (0.00 sec)
--8、新建数据库,并指定编码格式和校验集
mysql>create database if not exists yangxuWebsite default character set utf8 collate utf8_general_ci;
--9、允许远程登录
授权格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码";
mysql>grant all privileges on *.* to 'root'@'%' identified by '密码';
mysql>flush privileges;
--10、开放3306端口号
 [root@ser874514596417 /]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
 [root@ser874514596417 /]# firewall-cmd --reload 
--11、查看系统当前默认的启动项
[root@ser874514596417 /]# systemctl list-unit-files
--12、设置mysql开机自启
[root@ser874514596417 /]# systemctl enable mysqld
--13.快速删除mysql
yum  remove  mysql mysql-server mysql-libs mysql-server
--14.查找残留文件
rpm -qa | grep -i mysq
--15.查询mysql所用的版本:
yum repolist all | grep mysql
--16.检测系统是否存在mysql
yum list installed|grep mysql

9、安装Tomcat

--1、下载tomcat
[root@ser874514596417 tomcat]# wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.0/bin/apache-tomcat-8.5.0.tar.gz
--2、解压安装
[root@ser874514596417 tomcat]# tar -zxvf apache-tomcat-8.5.0.tar.gz
--3、重命名tomcat
[root@ser874514596417 tomcat]# mv apache-tomcat-8.5.0 /usr/local/tomcat
--4、配置环境变量
vim /etc/profile 打开配置文件,按 i 进入编辑模式,在profile文件尾部 unset -f pathmunge 后面添加如下内容:
	unset i
    unset -f pathmunge
    export JAVA_HOME=/usr/local/java/jdk1.8.0_221
    export JRE_HOME=${JAVA_HOME}/jre
    export CATALINA_HOME=/usr/local/tomcat8
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
    export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:${CATALINA_HOME}/bin
    export PATH=$PATH:${JAVA_PATH}:$PATH
--5、启动
运行  /usr/local/tomcat8/bin/startup.sh  就会启动tomcat,在浏览器中访问http://localhost:8080了
--6、正常关闭
   运行 /usr/local/tomcat8/bin/shutdown.sh  就会关闭tomcat
--7、查看防火墙的状态
 systemctl status firewalld
--8、开启防火墙
systemctl start firewalld
--9、关闭防火墙
systemctl stop firewalld
--10、先查看防火墙开放端口列表对于--Centos7系统
[root@ser874514596417 tomcat]# firewall-cmd --zone=public --list-ports
8080/tcp 3306/tcp 80/tcp 8081/tcp
--11、添加开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent   并且重新加载防火墙 firewall-cmd --reload
--12、设置tomcat开机启动
1. 在 tomcat/bin 目录下面,增加 setenv.sh 配置,服务启动的时候会调用,同时配置java内存参数。
 输入命令编辑:vim /usr/local/tomcat/bin/setenv.sh
    #add tomcat pid  
    CATALINA_PID="$CATALINA_BASE/tomcat.pid"  
    #add java opts  
    JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m" 
2. 增加tomcat.service,在/usr/lib/systemd/system目录下增加tomcat.service
输入命令编辑:vi /usr/lib/systemd/system/tomcat.service
----------------------------------------------------------------------------------
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
Environment='JAVA_HOME=/usr/local/java/jdk1.8.0_221/'
Environment='CATALINA_PID=/usr/local/tomcat/tomcat.pid'
Environment='CATALINA_HOME=/usr/local/tomcat/'
Environment='CATALINA_BASE=/usr/local/tomcat/'
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'

PIDFile=/usr/local/tomcat/tomcat.pid
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
-------------------------------------------------------------------------------
其中:
	[unit]配置了服务的描述,规定了在network启动之后执行。
	[service]配置了环境变量,JAVA_HOME,服务的pid,服务的启动,停止,重启,内存参数。
	[install]配置了使用用户。
当需要启动多个tomcat时,复制多个tomcat安装文件在/usr/local/下,如/usr/local/tomcat2,并配置多个tomcat.service 如tomcat2.service,tomcat3.service 在配置中修改对应的路径即可。
因为配置pid,在启动的时候会在tomcat根目录生成tomcat.pid文件,停止之后删除。
同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。
多个tomcat可以配置在多个目录下,使用不同的端口,互不影响。
3. 设置开机自启
systemctl enable tomcat.service
4. 启动tomcat
systemctl start tomcat.service
--13、systemctl常用命令
其中.service 可以省略
查看全部服务命令:
systemctl list-unit-files --type service
查看服务
systemctl status name.service
增加开机启动
systemctl enable name.service
启动服务
systemctl start name.service
停止服务
systemctl stop name.service
重启服务
systemctl restart name.service
删除开机启动
systemctl disable name.service

10、安装RabbitMQ

--1、安装依赖
[root@ser874514596417 rabbitmq]# yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel
--2、下载erlang安装包
[root@ser874514596417 rabbitmq]# wget http://erlang.org/download/otp_src_22.0.tar.gz
--3、解压缩
[root@ser874514596417 rabbitmq]# tar -zxvf otp_src_22.0.tar.gz
--4、移到/usr/local目录下并切换目录
[root@ser874514596417 rabbitmq]# mv otp_src_22.0 /usr/local/
[root@ser874514596417 rabbitmq]# cd /usr/local/otp_src_22.0/
--5、创建即将安装的目录
[root@ser874514596417 otp_src_22.0]# mkdir ../erlang
--6、配置安装路径
[root@ser874514596417 otp_src_22.0]# ./configure --prefix=/usr/local/erlang
--7、安装
[root@ser874514596417 otp_src_22.0]# make install
--8、查看是否安装成功
[root@ser874514596417 otp_src_22.0]# cd /usr/local/erlang/bin
--9、添加环境变量
[root@ser874514596417 otp_src_22.0]# echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile
[root@ser874514596417 otp_src_22.0]# source /etc/profile
安装rabbitmq:
--10、下载
[root@ser874514596417 rabbitmq]# wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.15/rabbitmq-server-generic-unix-3.7.15.tar.xz
--11、安装xz(由于是tar.xz格式,所以需要用到xz)
[root@ser874514596417 rabbitmq]# yum install -y xz
--12、二次解压
[root@ser874514596417 rabbitmq]# /bin/xz -d rabbitmq-server-generic-unix-3.7.15.tar.xz
[root@ser874514596417 rabbitmq]# tar -xvf rabbitmq-server-generic-unix-3.7.15.tar
--13、移到/usr/local 目录下并且修改名称
[root@ser874514596417 rabbitmq]# mv rabbitmq_server-3.7.15/ /usr/local/
[root@ser874514596417 rabbitmq]# mv /usr/local/rabbitmq_server-3.7.15  rabbitmq
--14、配置环境变量
[root@ser874514596417 rabbitmq]# echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile
[root@ser874514596417 rabbitmq]# source /etc/profile
--15、开启web插件
[root@ser874514596417 rabbitmq]# rabbitmq-plugins enable rabbitmq_management
--16、启动命令
[root@ser874514596417 rabbitmq]# rabbitmq-server -detached
--16、停止命令
[root@ser874514596417 rabbitmq]# rabbitmqctl stop
--16、查看状态命令
[root@ser874514596417 rabbitmq]# rabbitmqctl status
--17、查看所有用户
[root@ser874514596417 rabbitmq]# rabbitmqctl list_users
--18、添加用户
[root@ser874514596417 rabbitmq]# rabbitmqctl add_user zhaobl 123456
--19、配置用户权限
[root@ser874514596417 rabbitmq]# rabbitmqctl set_permissions -p "/" zhaobl ".*" ".*" ".*"
--20、查看用户权限
[root@ser874514596417 rabbitmq]# rabbitmqctl list_user_permissions zhaobl
--21、设置tag
[root@ser874514596417 rabbitmq]# rabbitmqctl set_user_tags zhaobl administrator
--22、删除用户(安全起见,删除默认用户)
[root@ser874514596417 rabbitmq]# rabbitmqctl delete_user guest
--23、安装延时插件
    1、去github上下载插件:https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases/download/3.9.0/rabbitmq_delayed_message_exchange-3.9.0.ez/
    2、将下载的插件放到rabbitmq的安装目录的plugins目录下
    3、执行命令:
[root@ser874514596417 plugins]# rabbitmq-plugins enable rabbitmq_delayed_message_exchange-3.9.0.ez

11、安装Redis

--1、下载redis的安装包
[root@ser874514596417 redis]# wget http://download.redis.io/releases/redis-4.0.6.tar.gz
--2、解压安装
[root@ser874514596417 redis]# tar -zxvf redis-4.0.6.tar.gz
--3、移动redis到local目录
[root@ser874514596417 redis]# mv  redis-4.0.6.tar.gz /usr/local/redis
--4、安装gcc依赖
[root@ser874514596417 redis]# yum install gcc
--5、进入redis目录,编译安装
[root@ser874514596417 redis]# make MALLOC=libc
[root@ser874514596417 redis]# cd src && make install
    CC Makefile.dep

Hint: It's a good idea to run 'make test' ;)

    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
出现以上结果,说明安装成功了。
--6、修改redis.conf配置文件以后台进程方式启动redis
将 daemonize no 修改为 daemonize yes
--7、启动redis也可以指定配置文件启动
./redis-server /usr/local/redis/redis.conf
--8、设置redis开机自动启动
	--在/etc目录下新建redis目录
	[root@ser874514596417 etc]# mkdir redis
	--将/usr/local/redis/redis.conf 文件复制一份到/etc/redis目录下,并命名为6379.conf
	[root@ser874514596417 redis]# cp /usr/local/redis/redis.conf /etc/redis/6379.conf
	--将redis的启动脚本复制一份放到/etc/init.d目录下
	[root@ser874514596417 init.d]# cp /usr/local/redis/utils/redis_init_script /etc/init.d/redisd
	--先切换到/etc/init.d目录下,然后执行自启命令
	[root@ser874514596417 init.d]# chkconfig redisd on
		service redisd does not support chkconfig 
	--使用vim编辑redisd文件,在第一行加入如下两行注释,保存退出
	[root@ser874514596417 init.d]# vim redisd
        # chkconfig:   2345 90 10
        # description:  Redis is a persistent key-value database
    注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
    再次执行开机自启命令,成功
	[root@ser874514596417 init.d]# chkconfig redisd on
	后续可以使用 service redisd start 开启redis  使用 service redisd stop 关闭redis 
end

评论