9.1 安装RPM包
RPM是Red Hat Package Manager的缩写,由Red Hat公司开发。它是以一种数据库记录的方式将我们所需要的套件安装到Linux主机的一套管理程序。也就是说,你的Linux系统中存在着一个关于RPM的数据库,它记录了安装的包以及包与包之间的依赖关系。RPM包是预先在Linux机器上编译并打包的文件,安装非常快捷。但它也有一些缺点,比如安装环境必须与编译时的环境一致或者相当,包与包之间存在着相互依赖的情况,卸载包时需要先把依赖的包卸载。如果依赖的包是系统所必需的,就不能卸载这个包,否则系统会崩溃。
以安装jdk为例,先下载rpm安装包,安装后仍然要进行环境变量的修改。
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
9.1.1 安装PRM包
安装RPM包的命令如下:
# rpm -ivh jdk-8u301-linux-x64.rpm
其中各个选项的含义如下。
**-i**
:表示安装。**-v**
:表示可视化。**-h**
:表示显示安装进度。9.1.2 查询一个包是否已安装
我们可以使用命令rpm -qa
查询当前系统所有已安装的RPM包,如下所示: ```rpm -qa | grep ‘jdk’
//显示结果 jdk1.8-1.8.0_301-fcs.x86_64
<a name="tO4WL"></a>
### 9.1.3 卸载RPM包
卸载RPM包的命令为`rpm -e filename`, 这里的`filename`是通过rpm的查询功能所查询到的。
rpm -e jdk1.8-1.8.0_301-fcs.x86_64
<a name="Qmdt1"></a>
## 9.2 yum工具
如果你使用的Linux系统支持yum工具,那么使用该工具比使用RPM工具更加方便。yum工具最大的优势在于可以联网去下载所需要的RPM包,然后自动安装。如果要安装的RPM包有依赖关系,yum工具会帮我们依次安装所有相关的RPM包。下面我们学习一下常用的`yum`命令。
<a name="t09yl"></a>
### 9.2.1 搜索RPM包
使用yum list查找要安装的PRM包,如下所示:
yum list |grep ‘httpd’
<a name="x0XoB"></a>
### 9.2.2 安装RPM包
安装RPM包的命令为`yum install [-y] [RPM包名]`,如果不加`-y`选项,则会以与用户交互的方式安装。示例命令如下:
yum install -y httpd
在这个过程中,它首先会把需要安装的RPM包列出来,如果有依赖关系,也会把所有依赖的包列出来。然后询问用户是否需要安装,输入y则安装,输入n则不安装。这里可以直接加上`-y`选项,这样就省略了询问用户是否安装的那一步。
<a name="ZF2aw"></a>
### 9.2.3 升级RPM包
升级RPM包的命令为`yum update [-y] [RPM包]`,示例命令如下:
yum update httpd
<a name="ikapR"></a>
### 9.2.4 卸载RPM包
卸载RPM包的命令为`yum remove [-y] [RPM包名]`,示例命令如下:
yum remove httpd
卸载和安装一样,也可以直接加上`-y`选项,从而省略与用户交互的那一步。这里需要注意,卸载某个RPM包时一定要看清楚,不要连其他重要的RPM包也一起卸载了,以免影响正常的业务,所以使用`yum remove`命令卸载包时,还是不要加`-y`选项了。
<a name="PNZxu"></a>
## 9.3 安装源码包
在Linux下安装源码包是最常用的。在日常的管理工作中,大部分软件都是通过源码安装的。安装源码包,需要我们把源代码编译成可执行的二进制文件。<br />常见的源码包一般都是用C语言开发的,因为C语言是Linux上最标准的程序语言。Linux上的C语言编译器称为gcc,利用它可以把C语言编译成可执行的二进制文件。所以,如果你的机器上没有安装gcc,就无法编译源码,你可以使用命令`yum install -y gcc`来完成安装。<br />安装源码包通常需要以下3个步骤。<br />(1) **./configure**。这是一个可执行文件。这一步可以定制功能,加上相应的选项即可,具体有什么选项可以通过命令`./configure --help`来查看。这一步会自动检测你的Linux系统与相关的套件是否有编译该源码包时所需要的库,因为一旦缺少某个库,就不能完成编译。只有检测通过后,才会生成Makefile文件。<br />(2) `**make**`。使用这个命令,会根据Makefile文件中预设的参数进行编译,这一步其实就是gcc在工作了。<br />(3) `**make install**`。这一步是安装步骤,用于创建相关软件的存放目录和配置文件。
下面我们通过编译安装一个Nginx源码包来帮助你更深刻地理解安装源码包的过程。
一. gcc安装<br />安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,则需要安装:<br />yum install -y gcc-c++
二. PCRE pcre-devel安装<br />PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括perl兼容的正则表达式库。nginx的 http 模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库,pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。命令:<br />yum install -y pcre-devel
三. zlib安装<br />zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对 http 包的内容进行gzip,所以需要在 Centos 上安装zlib库。<br />yum install -y zlib-devel
四. OpenSSL安装<br />OpenSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。<br />nginx不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装OpenSSL库。<br />yum install -y openssl-devel
五.下载nginx: nginx-1.14.0.tar.gz, 解压<br />tar -xzvf nginx-1.14.0.tar.gz
六.配置<br />其实在 nginx-1.12.1 版本中你就不需要去配置相关东西,默认就可以了。当然,如果你要自己配置目录也是可以的。<br />使用默认配置,在当前目录下进入到nginx解压后的文件夹中<br />cd nginx-1.14.0<br />就会发现此文件夹中有一个 configure 文件(绿色的),这是一个可执行文件。输入下面命令进行配置检查:<br />./configure<br />注意:必须要写 ./ 这样表示执行当前目录下的命令。否则会去path环境变量下寻找此命令。
七.编译安装<br />[root@localhost nginx-1.14.0]# make //这里使用gcc进行源码编译<br />[root@localhost nginx-1.14.0]# make install //安装
安装成功后会默认在/usr/local下生成一个nginx文件夹为核心文件所在,不再使用原解压安装目录
八.启动<br />进入: cd /usr/local/nginx/sbin/<br />这里有一个 nginx 可执行文件,输入命令:<br />./nginx<br />在浏览器地址栏中输入IP地址(默认端口80)即可访问nginx服务器。<br />注意:如果服务成功启动,但是在浏览器上还是无法访问,那么执行下面步骤:<br />1.查看Linux服务是否启动(ps命令将某个进程显示出来)<br />[root@localhost sbin]# ps -ef | grep nginx<br />2.设置80端口的防火墙访问权限:<br />[root@localhost sbin]# firewall-cmd --zone=public --add-port=80/tcp --permanent<br />[root@localhost sbin]# firewall-cmd --reload(或者:systemctl restart firewalld.service)
九.停止、重启<br />./nginx -s stop<br />./nginx -s quit<br />./nginx -s reload<br />./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。<br />./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。<br />重启nginx<br />1.先停止再启动(推荐):<br />对nginx进行重启相当于先停止再启动,即先执行停止命令再执行启动命令。如下:<br />./nginx -s quit<br />./nginx<br />2.重新加载配置文件:<br />当ngin x的配置文件nginx.conf修改后,要想让配置生效需要重启nginx,使用-s reload不用先停止ngin x再启动nginx即可将配置信息在nginx中生效,如下:<br />./nginx -s reload
<a name="dtuwV"></a>
## 9.4 JavaWeb常用软件安装
<a name="UHP8y"></a>
### 9.4.1 MySQL安装
1)、由于CentOS 的yum源中没有mysql,需要到mysql的官网下载yum repo配置文件。<br />下载命令:wget [http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm](http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm)<br />注意:如果没有安装wget命令,那么就先安装wget命令:yum -y install wget
2)、然后进行repo的安装:rpm -ivh mysql-community-release-el7-5.noarch.rpm<br />执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo
3)、安装MySQL<br />yum install -y mysql-community-server<br />**Centos8.0版本安装需使用**<br />**sudo yum install mysql-server**
4)、重启数据库进行访问<br />systemctl start mysqld.service<br />mysql -uroot<br />退出MySql:quit
5)、重置密码<br />默认Mysql安装完毕,没有密码,所以可以使用下面命令直接进入:<br />mysql -uroot
使用以下命令,设置密码:<br />set password for 'root'@'localhost' ='root';<br />重启:<br />systemctl restart mysqld.service<br />再次登录<br />mysql -uroot -proot
6)、设置远程访问<br />Mysql为了安全性,在默认情况下用户只允许在本地登录,可是在有些情况下,还是需要用户进行远程连接,因此为了使其可以远程需要进行如下操作:<br />设置远程访问权限(注意修改密码):<br />mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION; <br />mysql>FLUSH PRIVILEGES;<br />设置防火墙访问权限:<br />firewall-cmd --zone=public --add-port=3306/tcp --permanent<br />firewall-cmd --reload
7)、修改Mysql字符集<br />修改 /etc/my.cnf 在mysqld下加入<br />character-set-server=utf8<br />使用以下命令查看字符集<br />show variables like '%character%';
8)、linux下的mysql是区分大小写的,可以通过设置修改<br />修改 /etc/my.cnf 在mysqld下加入<br />lower_case_table_names=1
9)、停止mysql服务<br />systemctl stop mysqld.service
<a name="B9kOs"></a>
### 9.4.2 JDK安装
```javascript
//解压,解压后得到:jdk1.8.0_301
tar -xzvf jdk-8u301-linux-x64.tar.gz
//设置环境变量(更新 /etc/profile 配置文件):
export JAVA_HOME=/home/linux/jdk1.8.0_301
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
注意事项:
- 在window环境下,环境变量值之间的分割符是分号,在Linux下的分隔符是冒号。
- 在window环境下,引用一个环境变量使用 %xxx% 的形式,在Linux下使用 $xxx 的形式。
- PATH=$JAVA_HOME/bin:$PATH:表示在path环境变量的前面追加一个值。
//运行以下命令,使环境变量生效:
source /etc/profile
//测试Java环境:
java -version
9.4.3 Tomcat安装
解压
tar -xzvf apache-tomcat-8.0.52.tar.gz
启动tomcat
[root@localhost apache-tomcat-9.0.53]# ./bin/startup.sh
防火墙设置访问权限
firewall-cmd —zone=public —add-port=8080/tcp —permanent
firewall-cmd —reload
- 部署项目
将项目拷贝到webapps目录下即可
- 访问
在浏览器地址栏中输入:http://xxx.xxx.xxx.xxx:8080/
- 查看日志
查看logs下的日志即可