[内容] Linux RPM 软件包的解压 (判断安装一个 RPM 文件之后哪些目录和文件会被创建)

内容一:RPM 简介

1) RPM 的全名是 RPM Package Manager
1) RPM 是 CentOS、RHEL、openSUSE、SUSE 的软件安装包
2) RPM 是使用 cpio 格式压缩成的包

内容二:解压 RPM 文件的方法

#  rpm2cpio <文件名> | cpio -div

(补充:解压之后就可以看到如果安装这个 RPM 文件的话,有哪些目录和文件会被创建)

[内容] Linux 网络代理的设置 (全局模式)

内容一:Linux 代理环境变量的种类

1) http_proxy
2) https_proxy
3) ftp_proxy
4) socket_proxy
5) all_proxy
6) no_proxy


补充:
1) 变量可以使用通配符
2) 添加多个变量时可以使用 “,” 号分割
3) 不填种类默认以 http 协议传输

内容二:环境变量的格式

2.1 没有用户和密码的格式

export <environment variable>=http://<IP address>:<port>

2.2 有用户和密码的格式

export <environment variable>=https://<user>:<password>@<IP address>:<port>

(注意:如果密码中也有一个 “@” 符号,则需要把 “@” 符号转义一下,转义成 %40)

内容三;可以设置代理变量的文件

1) /etc/profile
2) ~/.bashrc
3) /etc/profile.d/<文件名前缀>.sh

内容四:控制设置的代理

4.1 开启设置的代理

4.1.1 方法一
# reboot
4.1.2 方法二
# source /etc/profile

4.2 显示目前生效的代理

4.2.1 显示 http_proxy 代理
# echo $http_proxy

或者:

# env | grep http_proxy
4.2.2 显示 https_proxy 代理
# echo $https_proxy

或者:

# env | grep https_proxy
4.2.3 显示 ftp_proxy 代理
# echo $ftp_proxy

或者:

# env | grep ftp_proxy
4.2.4 显示 socket_proxy 代理
# echo $socket_proxy

或者:

# env | grep socket_proxy
4.2.5 显示 no_proxy 代理
# echo $no_proxy

或者:

# env | grep no_proxy
4.2.6 显示 all_proxy 代理
# echo $all_proxy

或者:

# env | grep proxy

4.3 取消目前生效的代理

4.3.1 取消 http_proxy 代理
# unset http_proxy
4.3.2 取消 https_proxy 代理
# unset https_proxy
4.3.3 取消 ftp_proxy 代理
# unset ftp_proxy
4.3.4 取消 socket_proxy 代理
# unset socket_proxy
4.3.5 取消 no_proxy 代理
# unset no_proxy
4.3.6 取消 all_proxy 代理
# unset all_proxy

内容五:设置网络代理的案例

5.1 案例一:临时设置网络代理

# export http_proxy=http://8.8.8.8:80

(补充:这里以设置 http 的网络代理,代理不使用无密码,且 IP 和端口为 8.8.8.8:8080 为例)

或者:

# setenv http_proxy=http://8.8.8.8:80

(补充:这里以设置 http 的网络代理,代理不使用无密码,且 IP 和端口为 8.8.8.8:8080 为例)

5.2 案例二:永久设置网络代理

5.2.1 如果是 Rocky Linux & RHEL & openSUSE & SLES
5.2.1.1 修改 /etc/profile 配置文件
# vim /etc/profile

添加以下内容:

……
export http_proxy=http://8.8.8.8:80
export https_proxy=http://admin:123@8.8.8.8:8080
export no_proxy=”localhost, 127.0.0.1, ::1″


补充:这里以设置
1) 这里以设置 http 的网络代理,代理不使用无密码,且 IP 和端口为 8.8.8.8:8080
2) 这里以设置 https 的网络代理,代理使用密码,用户是 admin 密码是 123 ,且 IP 和端口为 8.8.8.8:8080 为例
3) 网络代理不影响 localhost、127.0.0.1 和 ::1
为例

(注意:如果密码中也有一个 “@” 符号,则需要把 “@” 符号转义一下,转义成 %40)

5.2.1.2 让修改的配置文件生效
# source /etc/profile

或者退出后重新登录:

(步骤略)

5.2.1.3 显示目前生效的代理
# echo $http_proxy ; echo $https_proxy
5.2.2 如果是 openSUSE & SLES
5.2.2.1 修改 /etc/sysconfig/proxy 配置文件
# vim /etc/sysconfig/proxy

将部分内容修改如下:

......
PROXY_ENABLED="yes"
......
HTTP_PROXY="http://8.8.8.8:80"
......
HTTPS_PROXY="http://admin:123@8.8.8.8:8080"
......
NO_PROXY="localhost, 127.0.0.1, ::1"
......


补充:这里以设置
1) 开启网络代理
2) 这里以设置 http 的网络代理,网络代理不使用密码,且 IP 和端口为 8.8.8.8:8080
3) 这里以设置 https 的网络代理,网络代理使用密码,用户是 admin 密码是 123 ,且 IP 和端口为 8.8.8.8:8080 为例
4) 网络代理不影响 localhost、127.0.0.1 和 ::1
为例

5.2.2.2 让修改的配置文件生效

退出登录后重新登录:

(步骤略)

5.2.2.3 显示目前生效的代理
# echo $http_proxy ; echo $https_proxy

参考文献:

https://access.redhat.com/solutions/1351253

[步骤] MariaDB & MySQL root 密码的重置

注意:

在重置 MariaDB & MySQL 的 root 密码之前要先安装 MariaDB & MySQL

正文:

步骤一:免密进入数据库

1.1 在 MariaDB&MySQL 文件中添加免密登录参数

# vim /etc/my.cnf

将部分内容修改如下:

......
[mysqld]
skip-grant-tables
......

1.2 使修改的配置生效

1.2.1 MariaDB 使修改的配置生效
# systemctl restart mariadb

(注意:只有当重置 MariaDB 的时候才执行这一步)

1.2.2 MySQL 使修改的配置生效
# systemctl restart mysqld

(注意:只有当重置 MariaDB 的时候才执行这一步)

步骤二:将 root 密码设置为空

2.1 不使用密码进入数据库

# mysql -u root -p

(补充:当提示输入密码时直接敲回车)

2.2 清空 root 用户密码

2.2.1 MariaDB 和 MySQL 5.7 及以下的版本将 root 密码设置为空
> update mysql.user set password='' where user='root';

(注意:只有当是重置 MariaDB 和 MySQL 5.7 及以下版本密码的时候才需要执行这一步)

2.2.2 MySQL 8.0 及以上的版本将 root 密码设置为空
> update mysql.user set authentication_string='' where user='root';

(注意:只有当是重置 MySQL 8.0 及以上版本密码的时候才需要执行这一步)

2.3 退出数据库

> quit;

步骤三:给 root 设置新密码

3.1 在 MariaDB&MySQL 文件中将免密登录参数注释掉

# vim /etc/my.cnf

将部分内容修改如下:

......
[mysqld]
# skip-grant-tables
......

3.2 使修改的配置生效

3.2.1 MariaDB 使修改的配置生效
# systemctl restart mariadb

(注意:只有当重置 MariaDB 的时候才执行这一步)

3.2.2 MySQL 使修改的配置生效
# systemctl restart mysqld

(注意:只有当重置 MySQL 的时候才执行这一步)

3.3 进入数据库

> mysql -u root -p

(补充:当提示输入密码时直接敲回车)

3.4 给 root 设置新密码

> alter user 'root'@'localhost' identified by '<password>';

3.5 退出数据库

> quit;

[实验] MySQL 的安装 (通过 RPM 软件包实现)

纪念:站主于 2019 年 11 月完成了此开源实验,并将过程中的所有命令经过整理和注释以后,形成以下教程

软件准备:

在 MySQL 的官网上下载安装数据库所需要的软件包 MySQL:

https://dev.mysql.com/downloads/mysql/

正文:

步骤一:系统环境要求

1) 服务器的系统需要是 CentOS Linux 7 版本
2) 服务器系统需要有软件源

步骤二:部署安装 MySQL 的环境

2.1 删除系统上的 MariaDB

# systemctl stop mariadb
# rm -rf /var/lib/mysql/*
# rpm -e --nodeps mariadb-server mariadb 

2.2 确保当前目录下拥有如下安装包

# ls
mysql-community-client-8.0.18-1.el7.x86_64.rpm
mysql-community-common-8.0.18-1.el7.x86_64.rpm
mysql-community-devel-8.0.18-1.el7.x86_64.rpm
mysql-community-libs-8.0.18-1.el7.x86_64.rpm
mysql-community-server-8.0.18-1.el7.x86_64.rpm

(补充:这里要安装的是 MySQL 是 8.0.18 社区版)

步骤三:安装 MySQL 数据库

# yum -y localinstall mysql-community-*

步骤四:启动 MySQL 数据库

# systemctl start mysqld

步骤五:修改 MySQL 数据库的 root 密码

5.1 显示初始的 root 密码

# grep 'temporary password' /var/log/mysqld.log 
2019-11-09T09:37:31.347523Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: wAA!w,?e#M2J

(补充:这里查出来的密码是 wAA!w,?e#M2J)

5.2 进入数据库

# mysql -u root -p'wAA!w,?e#M2J'

(补充:这里使用的密码是 wAA!w,?e#M2J)

5.3 修改 root 密码

> alter user user() identified by '<password>';

5.4 退出数据库

> quit;

[实验] MySQL 的安装 (通过 YUM 实现)

纪念:站主于 2019 年 11 月完成了此开源实验,并将过程中的所有命令经过整理和注释以后,形成以下教程

软件准备:

在 MySQL 的官网上下载安装数据库所需要的软件包 MySQL 的 yum 源安装包:

https://dev.mysql.com/downloads/repo/yum/

正文:

步骤一:系统环境要求

1) 服务器的系统需要是 CentOS Linux 7 版本
2) 服务器系统配置好可用的软件源

步骤二:部署安装 MySQL 的环境

2.1 删除系统上的 MariaDB

# systemctl stop mariadb
# rm -rf /var/lib/mysql/*
# rpm -e --nodeps mariadb-server mariadb

2.2 安装 MySQL 的官方软件源

# yum -y localinstall mysql80-community-release-el7-3.noarch.rpm

(补充:这里安装的是 MySQL 是 8.0.18 社区版)

步骤三:安装 MySQL 数据库

# yum -y install mysql-community-server

步骤四:启动 MySQL 数据库

# systemctl start mysqld

步骤五:修改 MySQL 数据库的 root 密码

5.1 显示初始的 root 密码

# grep 'temporary password' /var/log/mysqld.log
2019-11-09T10:04:20.237976Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: 2gSiAAV!+c-1

(补充:这里查出来的密码是 wAA!w,?e#M2J)

5.2 进入数据库

# mysql -u root -p'2gSiAAV!+c-1'

(补充:这里使用的密码是 wAA!w,?e#M2J)

5.3 修改 root 密码

> alter user user() identified by '<password>';

5.4 退出数据库

> quit;