Linux 日志、时间、网络全套实战教程
一、Linux 日志管理详解(rsyslog + journald)
1.1 rsyslog 系统日志服务
CentOS 7 默认使用 rsyslog 作为系统日志收集服务,绝大多数系统服务、认证、报错都会被统一记录。
核心知识点
sshd:交由 syslog 记录登录、报错日志
httpd/nginx:自带独立日志目录,不依赖 rsyslog
liuyifei@server ~ 22:00:10$ grep AUTHPRIV /etc/ssh/sshd_config
liuyifei@server ~ 22:00:15$ grep ^authpri /etc/rsyslog.conf
默认认证日志路径:`/var/log/secure`
### 1.2 经典故障实战(SSHD 服务排错)
#### 故障 1:sshd_config 配置文件丢失
##### 故障模拟
```bash
liuyifei@server ~ 22:05:20 $ mv /etc/ssh/sshd_config .
liuyifei@server ~ 22:05:28 $ systemctl restart sshd
日志排查(实时监控)
liuyifei@server ~ 22:06:10 $ tail -f /var/log/messages
# 报错关键信息
Jul 27 22:05:41 server sshd: /etc/ssh/sshd_config: No such file or directory
Jul 27 22:05:41 server systemd: Failed to start OpenSSH server daemon.
修复方案
liuyifei@server ~ 22:07:02$ mv sshd_config /etc/ssh/
liuyifei@server ~ 22:07:10$ systemctl restart sshd
故障 2:sshd_config 配置参数非法
故障模拟
liuyifei@server ~ 22:10:01$ echo hello world >> /etc/ssh/sshd_config
liuyifei@server ~ 22:10:10$ systemctl restart sshd
日志排查
liuyifei@server ~ 22:10:20 $ tail -f /var/log/messages
# 报错关键信息
Jul 27 22:10:21 server sshd: /etc/ssh/sshd_config: line 144: Bad configuration option: hello
Jul 27 22:10:21 server systemd: Failed to start OpenSSH server daemon.
修复方案
删除非法配置,重启服务。
liuyifei@server ~ 22:11:05$ sed -i '/hello/d' /etc/ssh/sshd_config
liuyifei@server ~ 22:11:12$ systemctl restart sshd
故障3:服务端口占用(sshd 22 端口被占)
故障现象
systemd 管理的 sshd 重启失败,但客户端依旧可以远程连接。##### 排查日志
liuyifei@server ~ 22:15:25 $ journalctl -u sshd
# 关键报错
Jul 27 22:15:58 server sshd[6809]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Jul 27 22:15:58 server sshd[6809]: fatal: Cannot bind any address.
根因
手动执行 /sbin/sshd 启动进程,脱离 systemd 管理,占用 22 端口。##### 修复方案
liuyifei@server ~ 22:16:30 $ pkill -9 sshd
liuyifei@server ~ 22:16:42 $ systemctl restart sshd
1.3 systemd-journald 二进制日志
journald 是 systemd 自带日志服务,二进制存储,安全性更高,支持按服务、时间、级别精准过滤。
配置文件
路径:/etc/systemd/journald.conf
核心参数 Storage
- persistent:持久化存储,重启不丢失,存放 /var/log/journal
- volatile:临时存储,仅内存,重启丢失
- auto:默认,有目录则持久化,否则临时存储
开启持久化日志
liuyifei@server ~ 22:18:10 $ vim /etc/systemd/journald.conf
# 修改
Storage=persistent
# 重启服务生效
liuyifei@server ~ 22:18:40 $ systemctl restart systemd-journald
1.4 journalctl 高频查询命令(生产常用)
# 实时监控日志
liuyifei@server ~ 22:20:00 $ journalctl -f
# 查看本次开机所有日志
liuyifei@server ~ 22:20:10 $ journalctl -b 0
# 查看最近5条日志
liuyifei@server ~ 22:20:20 $ journalctl -n 5
# 只查看错误级别日志
liuyifei@server ~ 22:20:30 $ journalctl -p err
# 查看今日所有日志
liuyifei@server ~ 22:20:40 $ journalctl –since today
# 查看指定服务日志(重点!排错神器)
liuyifei@server ~ 22:20:50$ journalctl -u sshd.service
liuyifei@server ~ 22:21:00$ journalctl -u httpd.service
1.5 httpd 服务配置错误排错实战
故障模拟(端口非法)
liuyifei@server ~ 22:25:10$ yum install -y httpd
liuyifei@server ~ 22:26:00$ sed -i 's/Listen 80/Listen 80000/g' /etc/httpd/conf/httpd.conf
liuyifei@server ~ 22:26:20$ systemctl restart httpd
日志排查
liuyifei@server ~ 22:26:30 $ journalctl -f
Jul 27 22:26:49 server httpd[2877]: AH00526: Syntax error on line 42 of /etc/httpd/conf/httpd.conf: Invalid address or port
修复
liuyifei@server ~ 22:27:10$ sed -i 's/Listen 80000/Listen 80/g' /etc/httpd/conf/httpd.conf
liuyifei@server ~ 22:27:20$ systemctl restart httpd
二、Linux 时间管理(时间校准 + 时区 + Chrony 时间服务器)
2.1 时间相关三大命令
date 系统时间
# 查看时间
liuyifei@server ~ 22:30:00$ date
# 设置英文格式时间(必须英文格式才能修改)
liuyifei@server ~ 22:30:10$ date -s 'Mon Jul 27 22:30:00 2026'
hwclock 硬件时钟
# 查看硬件时间
liuyifei@server ~ 22:31:00$ hwclock -r
# 系统时间写入硬件时间
liuyifei@server ~ 22:31:10$ hwclock -w
# 硬件时间同步到系统时间
liuyifei@server ~ 22:31:20$ hwclock -s
timedatectl 统一时间管理
# 查看完整时间信息
liuyifei@server ~ 22:32:00$ timedatectl
# 关闭自动对时,才能手动改时间
liuyifei@server ~ 22:32:10$ timedatectl set-ntp no
# 手动设置时间
liuyifei@server ~ 22:32:20$ timedatectl set-time '2026-07-27 22:30:00'
# 设置时区(标准北京时间)
liuyifei@server ~ 22:32:30$ timedatectl set-timezone Asia/Shanghai
2.2 tzselect 交互式时区选择
liuyifei@server ~ 22:35:00 $ tzselect
# 依次选择:5 Asia → 9 China → 1 Beijing Time → yes
# 最终时区:Asia/Shanghai
2.3 chrony 时间同步服务(生产标配)
CentOS 7 默认使用 chronyd 替代 ntpd,更快、更稳定。
客户端配置(同步公网时间)
# 安装
liuyifei@server ~ 22:40:00$ yum install -y chrony
# 修改时间服务器为阿里云
liuyifei@server ~ 22:40:10$ vim /etc/chrony.conf
server ntp.aliyun.com iburst
# 启动并设置开机自启
liuyifei@server ~ 22:40:20$ systemctl enable chronyd –now
# 验证对时状态
liuyifei@server ~ 22:40:30$ chronyc sources -v
自建内网时间服务器(服务端 + 客户端)
服务端配置(10.1.8.10)
liuyifei@server ~ 22:45:00 $ vim /etc/chrony.conf
# 允许内网网段同步
bindaddress 10.1.8.10
allow 10.1.8.0/24
liuyifei@server ~ 22:45:20 $ systemctl restart chronyd
liuyifei@server ~ 22:45:30 $ systemctl stop firewalld
客户端配置
liuyifei@client ~ 22:46:00 $ vim /etc/chrony.conf
# 同步内网时间服务器
server 10.1.8.10 iburst
liuyifei@client ~ 22:46:20 $ systemctl restart chronyd
liuyifei@client ~ 22:46:30 $ chronyc sources -v
三、Linux 网络管理全套(查看 + 配置 + 排错)
3.1 网络基础查看命令
1. 网卡信息查看
# 简洁查看网卡
liuyifei@server ~ 22:50:00 $ ip -br link
# 详细网卡信息
liuyifei@server ~ 22:50:10 $ ip link show ens32
2. IP 地址查看
liuyifei@server ~ 22:51:00$ ip -br a
liuyifei@server ~ 22:51:10$ ip addr show ens32
3. 路由网关查看
liuyifei@server ~ 22:52:00$ ip route
liuyifei@server ~ 22:52:10$ route -n
4. DNS 查看
liuyifei@server ~ 22:53:00$ cat /etc/resolv.conf
3.2 网络连通性测试
ping 连通性测试
liuyifei@server ~ 22:55:00$ ping baidu.com -c 4 -w 2
mtr 路由追踪(排错首选)
liuyifei@server ~ 22:56:00$ mtr -n 1.1.1.1
3.3 ss 网络端口查看(替代 netstat)
# 查看ssh监听端口
liuyifei@server ~ 23:00:00$ ss -l |grep :ssh
# 查看所有ipv4监听端口
liuyifei@server ~ 23:00:10$ ss -an4
# 查看端口对应进程
liuyifei@server ~ 23:00:20$ ss -lnp4|grep :22
liuyifei@server ~ 23:00:30$ ss -lnp4|grep :80
端口冲突排错案例(nginx 占用80导致httpd启动失败)
liuyifei@server ~ 23:05:00$ yum install -y nginx
liuyifei@server ~ 23:05:20$ systemctl start nginx.service
liuyifei@server ~ 23:05:40$ yum install -y httpd
liuyifei@server ~ 23:06:00$ systemctl start httpd
# 发现端口占用
liuyifei@server ~ 23:06:20$ ss -lnp4|grep :80
# 停止占用程序
liuyifei@server ~ 23:06:30$ systemctl stop nginx
liuyifei@server ~ 23:06:40$ systemctl start httpd
四、NetworkManager 网络配置(nmtui + nmcli)
4.1 nmtui 图形交互式配置(小白首选)
终端输入 nmtui,可视化配置网卡 DHCP自动获取 / 静态IP,无需记忆命令。
liuyifei@server ~ 23:10:00$ nmtui
4.2 nmcli 命令行网络配置(生产常用)
启停网络
liuyifei@server ~ 23:12:00$ nmcli networking off
liuyifei@server ~ 23:12:10$ nmcli networking on
网卡设备管理
# 查看设备
liuyifei@server ~ 23:13:00$ nmcli device
# 断开/激活网卡
liuyifei@server ~ 23:13:10$ nmcli device disconnect ens192
liuyifei@server ~ 23:13:20$ nmcli device connect ens192
动态IP配置(DHCP)
# 创建动态连接
liuyifei@server ~ 23:15:00$ nmcli connection add type ethernet ifname ens192 con-name ens192-dynamic ipv4.method auto
# 激活
liuyifei@server ~ 23:15:20$ nmcli connection up ens192-dynamic
静态IP配置
# 创建静态连接
liuyifei@server ~ 23:16:00$ nmcli connection add type ethernet ifname ens192 con-name ens192-static ipv4.method manual ipv4.addresses 10.1.8.10/24
# 追加网关、DNS
liuyifei@server ~ 23:16:20$ nmcli connection modify ens192-static ipv4.gateway 10.1.8.2 ipv4.dns 223.5.5.5
# 激活生效
liuyifei@server ~ 23:16:30$ nmcli connection up ens192-static
4.3 网络配置文件说明
网卡配置文件目录:/etc/sysconfig/network-scripts/
- BOOTPROTO=dhcp:自动获取
- BOOTPROTO=none:静态IP
- ONBOOT=yes:开机激活网卡
手动改配置文件后必须重载:
liuyifei@server ~ 23:20:00$ nmcli connection reload
liuyifei@server ~ 23:20:10$ nmcli connection up ens192-static
五、主机名与域名解析
5.1 主机名配置
# 查看
liuyifei@server ~ 23:22:00$ hostname
# 永久修改(写入配置文件)
liuyifei@server ~ 23:22:10$ hostnamectl set-hostname server.liuyifei.cloud
5.2 本地域名解析优先级
/etc/hosts 优先于 DNS
本地 hosts 解析配置
liuyifei@server ~ 23:23:00$ vim /etc/hosts
10.1.8.10 server.liuyifei.cloud server
5.3 DNS 故障排错
无 DNS 时无法解析公网域名,配置 DNS 即可恢复:
liuyifei@server ~ 23:25:00$ nmcli connection modify ens160 ipv4.dns 223.5.5.5
liuyifei@server ~ 23:25:10$ nmcli connection up ens160
网硕互联帮助中心


评论前必须登录!
注册