CentOS Linux 环境维护

查看Linux系统信息

使用命令查看linux信息,我的系统是 CentOS Linux 7 (Core)

1
cat /etc/os-release

yum 命令问题

使用阿里云或其他国内镜像源

如果使用 yum 安装出现类似问题,应该是 CentOS 停止维护了,所以他的网络库已经关掉了,我们把这里换成阿里云镜像库

  1. 备份YUM配置文件

    1
    sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.back
  2. 更新YUM仓库源为阿里云镜像源

    1
    2
    3
    4
    5
    # 如果没有 wget 命令就用 curl -O
    # 更换 epel 源
    wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
    # 更换 yum 源
    wget -O /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  3. 清理并重建缓存

    1
    2
    3
    sudo yum clean all
    sudo yum makecache
    sudo yum update
  4. 查看yum安装的应用

    1
    2
    3
    4
    5
    # 查看所有已安装的
    yum list installed

    # 查看gcc安装
    yum list installed |grep gcc

wget 命令问题

如果没有系统没有 wget 命令 可以使用 yum 安装 wget

1
yum -y install wget

lrzsz 命令问题

1
yum -y install lrzsz

检查是否已经安装过mysql :    rpm -qa | grep mysql
如果环境中有遗留mysql则执行删除命令:rpm -e –nodeps mysql-xxxxxxxxx
查询遗留的mysql设置或命令,执行两条命令:
whereis mysql
find / -name mysql


CentOS 7 防火墙 firewalld

Centos7默认安装了firewalld,如果没有安装的话,可以使用 进行安装。

1
yum install firewalld firewalld-config
  1. 启动防火墙

    1
    systemctl start firewalld
  2. 禁用防火墙

    1
    systemctl stop firewalld

3.设置开机启动

1
systemctl enable firewalld

4.停止并禁用开机启动

1
sytemctl disable firewalld

5.重载防火墙

1
firewall-cmd --reload

6.查看状态

1
2
3
systemctl status firewalld
# 或者
firewall-cmd --state

7.查看版本

1
2
3
4
5
6
firewall-cmd --version
```

8.查看帮助
```shell
firewall-cmd --help

9.查看区域信息

1
firewall-cmd --get-active-zones

10.查看指定接口所属区域信息

1
firewall-cmd --get-zone-of-interface=eth0

11.拒绝所有包

1
firewall-cmd --panic-on

12.取消拒绝状态

1
firewall-cmd --panic-off

13.查看是否拒绝

1
firewall-cmd --query-panic

14.将接口添加到区域(默认接口都在public) (永久生效再加上 –permanent 然后reload防火墙)

1
firewall-cmd --zone=public --add-interface=eth0

15.设置默认接口区域(立即生效,无需重启)

1
firewall-cmd --set-default-zone=public

16.更新防火墙规则(两者的区别就是第一个无需断开连接,就是firewalld特性之一动态添加规则,第二个需要断开连接,类似重启服务)

1
2
3
firewall-cmd --reload
#
firewall-cmd --complete-reload

17.查看指定区域所有打开的端口

1
firewall-cmd --zone=public --list-ports

18.在指定区域打开端口(记得重启防火墙)(永久生效再加上 –permanent)

1
firewall-cmd --zone=public --add-port=80/tcp

说明:
–zone 作用域
–add-port=8080/tcp 添加端口,格式为:端口/通讯协议
–permanent 永久生效,没有此参数重启后失效

制作Linux服务并设置开机自启动

使用systemd配置开机启动(推荐)

查看有哪些配置了开机启动服务

1
systemctl list-unit-files --type=service --state=enabled

在 /etc/systemd/system/ 路径下创建 mysql.service 文件

1
2
cd /etc/systemd/system/
vi mysql.service

写入如下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[Unit]
Description=MySQL Database Server

[Service]
Type=forking
PermissionsStartOnly=true
PIDFile=/data/mysql/mysql.pid
ExecStart=/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -TERM $MAINPID
TimeoutSec=300
PrivateTmp=true
User=mysql
Group=mysql
Restart=on-failure

[Install]
WantedBy=multi-user.target

设置开机自启动

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 查看是否配置开机启动
systemctl is-enabled mysql
# 设置开机启动
systemctl enable mysql
# 取消开机自启动
#systemctl disable mysql
# 查看服务当前状态
systemctl status mysql
# 启动nginx服务
systemctl start mysql
# 停止nginx服务
systemctl stop mysql
# 重启nginx服务
systemctl restart mysql

使用chkconfig配置开机启动(被淘汰的方式)
  1. 查看chkconfig配置了多少开机启动
    1
    chkconfig --list
1
service-name  0:off  1:off  2:on   3:on   4:on   5:on   6:off

其中每个数字代表一个运行级别:
0: 关机
1: 单用户模式
2: 多用户,无网络
3: 完全多用户模式(标准的运行级别)
4: 未使用的
5: 带图形界面的完全多用户模式
6: 重启
如果服务在某个运行级别上是 on,则表示它在这个运行级别上会被启动。
查看特定服务的状态: 如果你想查看某个特定服务的状态,可以使用 chkconfig –list <service-name> 命令

使用 /etc/rc.d/rc.local 配置开机启动

尽管这种方法不被推荐,但在某些情况下,你可能希望直接在 /etc/rc.d/rc.local 文件中添加命令来启动服务。


CentOS Linux 环境维护
https://zouxiangzhong1998.github.io/blog/2024/08/886fd5c6b766.html
作者
Carlos
发布于
2024年8月15日
许可协议