常用Linux软件安装

JDK

先从Oracle官网下载JDK Linux版本的安装包,上传到服务器,这里推荐在服务器中创建一个目录/software,可以将所有软件的安装包放在这个目录下(或者是/opt目录下),将软件包解压在/usr/local/...目录下进行安装

  1. 创建解压目录
mkdir /usr/local/java
  1. 解压
tar -zxvf 安装包名称  -C  /usr/local/java

可以修改解压后的目录名,因为默认解压后的目录名会带上版本号,例如'jdk1.8.231'不太好记,按需处理吧

  1. 配置环境变量,编辑/etc/profile文件
vim /etc/profile

# 在文件末尾输入以下内容
export JAVA_HOME=/usr/local/java/jdk
export CLASSPATH=.:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin
#(注意:JAVA_HOME的路径是你实际解压后的JDK的路径,记着修改)

# 保存退出文件,刷新配置文件,让配置生效
source /etc/profile

# 验证下
java -version

MySQL

MySQL下载 Linux版本

验证当前系统是否存有mysql相关的组件, 如果存在建议卸载

# 查看当前系统是否存在mysql
rpm -qa | grep mysql

# 卸载mysql
rpm -e mysql
# 如果该组件存在其他依赖,可以使用强制卸载(不推荐)
rpm -e --nodeps mysql
  1. 创建解压目录和data目录(存放数据库数据文件),以及日志文件夹
mkdir /usr/local/mysql
mkdir /usr/local/mysql/data
mkdir /usr/local/mysql/log
  1. 解压
tar -zcvf 安装包名称 -C /usr/local/mysql
  1. 创建mysql用户组和用户 MySQL需要特定的用户mysql以及特定的用户组mysql
# 创建用户组mysql
groupadd mysql
# 创建用户mysql 并并指定到mysql组下
useradd -g mysql mysql
  1. 给第一步创建的三个目录设置mysql权限 -R参数标识递归给该目录以及子目录设置权限
chmod -R mysql:mysql /usr/local/mysql
  1. 进入`/usr/local/mysql/mysql解压后目录文件夹并执行该命令
sudo bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql解压后目录 --datadir=/usr/local/mysql/data

命令的意思是初始化 并制定user、mysql目录和data目录

初始化之后会在/usr/local/mysql/data这个数据目录下生成文件,如果需要再次初始化记得把这些文件删除了(如果已经创建数据库和表,不要轻易修改这个目录)

同时初始化之后会给一个root默认的密码,需要暂时记住这个密码,之后登录的时候会使用

  1. 配置/etc/my.cnf(my.cnf是mysql的配置文件)
vim /etc/my.cnf

---------------------------------------
[mysqld]
# 设置mysql安装目录
basedir=/usr/local/mysql/mysql-5.7.28
# 设置mysql数据库的数据存放目录
datadir=/usr/local/mysql/data
# 服务端字符集默认为latin1
character-set-server=utf8
# 忘记密码时可取消以下注释,无密码登录
# skip-grant-tables
socket=/usr/local/mysql/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/usr/local/mysql/log/mysqld.log
pid-file=/usr/local/mysql/mysqld.pid

[client]
socket=/usr/local/mysql/mysql.sock

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
--------------------------------------------
这里贴一份my.cnf配置,basedir/datadir 需要配置到对应的位置,注意不一致需要修改
socket元素必须有,在mysqld,client下都需要一份
所有配置项使用的目录都需要有mysql权限,所以之前需要给目录赋权
  1. 将mysql加入/etc/init.d启动引导
sudo cp /usr/local/mysql/mysql-5.7.28/support-files/mysql.server /etc/init.d/mysql

并配置/etc/init.d/mysql 中的basedir和datadir,配置路径同my.cnf

vim /etc/init.d/mysql
  1. 配置profile环境变量, 方法同JDK
vim /etc/profile

export MYSQL_HOME=/usr/local/mysql/mysql-5.7.28
export PATH=$PATH:$MYSQL_HOME/bin

source /etc/profile
  1. 启动mysql服务
# 启动mysql
#service mysql start

# 查看mysql状态
#service mysql status

# 停止mysql
#service mysql stop

# 退出mysql命令窗口
#exit

# 查看3306端口是否已被系统监听
netstat -anlp | grep 3306
# 如果没有监听使用如下命令 CentOS 6.5
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
service firewalld restart # 重启防火墙
  1. 登录并修改初始密码
mysql -u root -p
输入之前截图的初始秘密

# 修改默认root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'zliuwrnfNIG'; -- 如果设置的密码过于简单, 如root 会被阻止修改
# 如果希望设置简单密码,执行如下命令后再alter user
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;

# 授权可视化工具的远程登录
mysql>grant all privileges on *.* to 'root'@'%' identified by 'root'; -- 设置root用户的远程登录密码为root 赋予所有权限 %代表所有ip可访问
mysql>flush privileges; -- 刷新配置 
  1. 远程连接 Linux同样存在防火墙,有些购买的云主机会关闭防火墙,一般自己安装的默认防火墙是开启的
# 查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
firewall-cmd --state

# 关闭firewall
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动

# 开启firewall
systemctl start firewalld.service
systemctl enable firewalld

# 重启防火墙
service firewalld restart

# 允许某个端口访问
# 公布端口号 CentOS 7
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 公布完端口后,需要重启防火墙
firewall-cmd --reload

# 开机自启动
chkconfig --add mysql # 加入到系统服务
chkconfig mysql on # 自动启动

接下来就可以通过本地navicat之类的工具进行远程连接了

参考文档

https://www.jb51.net/article/151403.htm
https://www.cnblogs.com/fanshudada/p/9781794.html
https://www.cnblogs.com/hf8051/p/4991699.html
https://www.cnblogs.com/zuokun/p/10577706.html

# 安装libaio
https://blog.csdn.net/m0_38113129/article/details/79056047

# 安装vim
https://blog.csdn.net/ariestina/article/details/84027468

Nginx

拷贝解压这里略过。因为Nginx使用C++语言开发,安装Nginx需要先将官网下载的源码进行编译,编译依赖gcc环境;所以需要安装gcc

# gcc环境
yum -y install gcc-c++

#安装Nginx依赖环境,-y表示所有提示默认选择y 
yum -y install pcre pcre-devel
yum -y install zlib zlib-devel
yum -y install openssl openssl-devel

#进入解压文件夹 编译并安装 
./configure 
make install

编译安装之后会自动在/usr/local路径下生成nginx目录, 进入/nginx/sbin 可以启动

# 在sbin目录下启动 
./nginx

# 指定配置文件启动
./nginx -c /etc/nginx/nginx.conf

# 停止 
nginx -s stop

# 重载 
nginx -s reload

## 注意修改nginx.cfg文件之后一定要用测试命令测一下再重载
nginx -t

# 查看nginx配置信息 包括安装目录,  conf-path配置文件路径
nginx -V

默认防火墙也没有开放80端口

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload

Redis

redis下载列表 下载需要的redis版本

拷贝解压这里略过。因为redis也使用C++语言开发,编译依赖gcc环境;所以需要安装gcc,已经安装过的可以忽略

yum -y install gcc-c++

进入redis解压目录(我这里是/usr/local/redis/redis-xxx)进行编译安装

# 编译
make

# 安装
make PREFIX=/usr/local/redis/redis-xxx install
# 安装之后会在这个目录下生成一个bin目录, 启动停止redis都需要进入这个目录

拷贝redis-xxx目录下的配置文件redis.conf 放在redis-xxx/bin,并修改如下配置

# reids后台运行
1. 将daemonize no 改成daemonize yes

# 以下两项是为了远程连接

2. bind 127.0.0.1注释掉,即变更为:#bind 127.0.0.1

3. protected-mode yes修改为protected-mode no

启动redis

# 进入/redis-xxx/bin目录 ./表示当前目录下
./redis-server redis.conf

# 停止redis服务
./redis-cli shutdown

开放6379端口

firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload

Tomcat

Tomcat官网这里下载对应的Linux版本,并上传到服务器

  1. 解压
tar -zxvf apache-tomcat-8.5.50.tar.gz
  1. 因为解压的时候没有带上-C参数指定解压目录,所以会默认解压在当前目录,还是cp到/usr/local方便管理, -r 参数表示递归复制
cp -r apache-tomcat-8.5.50 /usr/local
  1. 进入bin目录下执行startup.sh
./startup.sh
  1. 开放端口
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload

yum安装方式

CentOS使用yum命令安装更为简单,就相当于在应用商店直接下载安装包自动安装,我们不需要再去每个软件得官网下载对应的安装包,安装之后只需要配置下自启动,打开端口号之类操作即可。Ubuntu可以使用apt命令安装,apt安装方式使用时自行百度,这里主要记录yum方式

yum常见命令

# 参看已通过yum安装的软件
yum list installed xxx*

# 搜索当前yum源中的软件及版本
yum list | grep xxx*

# 卸载软件
yum remove xxx

# 安装软件
yum -y install xxx

# 升级
yum -y update:升级所有包同时也升级软件和系统内核(慎用)
yum -y upgrade:只升级所有包,不升级软件和系统内核 (如果需要升级软件, 优先使用)

# 更换yum源
https://www.cnblogs.com/pfdltutu/p/10524864.html

网易yum源和阿里yum源

yum安装软件,默认目录及配置文件位置(供参考)

# mysql配置文件及数据库目录
配置文件 /etc/my.cnf 数据库目录 /var/lib/mysql/

# Redis配置文件
/etc/redis.conf

# Nginx配置文件
/etc/nginx/nginx.conf

# JDK目录
/usr/lib/jvm

# RabbitMQ安装目录及一些命令
/usr/lib/rabbitmq
查看插件命令:rabbitmq-plugins list 查看用户命令:rabbitmqctl list_users

yum仓库里的软件版本不一定是最新的,也可能没有特定的版本(跟yum源有关),如果需要安装指定版本的软件,可能还需要使用上面的去官网下载包,手动安装配置

原文地址:https://www.cnblogs.com/lz2017/p/11749054.html