linux系统服务器中常见故障及排查方法
目录
故障1:系统无响应
故障2:网络连接问题
故障3:文件系统错误
故障4:软件包依赖问题
故障5:用户权限问题
故障6:服务无法正常工作
故障7:磁盘空间不足
故障8:内存不足
故障9:服务端口被占用
故障10:防火墙和安全组问题
故障1:系统无响应
-
可能原因:资源耗尽、进程冲突、硬件故障等。
-
排查方法:
-
使用
top
、htop
或free -h
命令检查系统资源使用情况
root@fylog001:~# top
top - 11:23:31 up 46 days, 23:38, 1 user, load average: 0.00, 0.01, 0.00
Tasks: 156 total, 1 running, 155 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.1 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 16431740 total, 940580 free, 1922844 used, 13568316 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 14119512 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1528 root 10 -10 1153656 24084 2276 S 0.3 0.1 180:53.36 AliDetect 8292 root 10 -10 117128 15572 10396 S 0.3 0.1 150:16.64 AliYunDun 8303 root 10 -10 137980 2304 0 S 0.3 0.0 197:15.24 AliYunDunMonito 8805 root 20 0 5882368 403512 4624 S 0.3 2.5 46:00.51 java
25413 root 20 0 690340 12256 8180 S 0.3 0.1 53:15.80 aliyun-service
31180 root 20 0 2193756 13052 11080 S 0.3 0.1 275:12.95 argusagent 1 root 20 0 184908 4972 3308 S 0.0 0.0 0:27.71 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.31 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:10.57 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H 7 root 20 0 0 0 0 S 0.0 0.0 27:04.35 rcu_sched 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh 9 root rt 0 0 0 0 S 0.0 0.0 0:00.03 migration/0 10 root rt 0 0 0 0 S 0.0 0.0 0:06.02 watchdog/0 11 root rt 0 0 0 0 S 0.0 0.0 0:04.28 watchdog/1
root@fylog001:~# free -htotal used free shared buff/cache available
Mem: 15G 1.8G 913M 3.7M 12G 13G
Swap: 0B 0B 0B
- 使用
ps
命令检查是否有异常进程
root@fylog001:~# ps axu
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 184908 4972 ? Ss Mar25 0:27 /sbin/init
root 2 0.0 0.0 0 0 ? S Mar25 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S Mar25 0:10 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< Mar25 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S Mar25 27:04 [rcu_sched]
root 8 0.0 0.0 0 0 ? S Mar25 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S Mar25 0:00 [migration/0]
root 10 0.0 0.0 0 0 ? S Mar25 0:06 [watchdog/0]
root 11 0.0 0.0 0 0 ? S Mar25 0:04 [watchdog/1]
root 12 0.0 0.0 0 0 ? S Mar25 0:00 [migration/1]
root 13 0.0 0.0 0 0 ? S Mar25 0:04 [ksoftirqd/1]
- 检查硬件状态,如内存、硬盘等。
- 解决方法:
-
重启系统或关闭不必要的进程。
-
升级硬件或增加系统资源。
-
故障2:网络连接问题
-
可能原因:网络配置错误、防火墙设置、网络设备故障等。
-
排查方法:
-
使用
ping
、traceroute
命令检查网络连接。
root@fylog001:~# ping www.baidu.com
PING www.a.shifen.com (220.181.38.150) 56(84) bytes of data.
64 bytes from 220.181.38.150: icmp_seq=1 ttl=53 time=7.40 ms
64 bytes from 220.181.38.150: icmp_seq=2 ttl=53 time=7.40 ms
64 bytes from 220.181.38.150: icmp_seq=3 ttl=53 time=7.41 ms
64 bytes from 220.181.38.150: icmp_seq=4 ttl=53 time=7.37 ms
-
检查网络配置文件(如
/etc/network/interfaces
或/etc/sysconfig/network-scripts/
下的文件)。 -
检查防火墙设置(如
iptables
或firewalld
)。
root@fylog001:~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination Chain FORWARD (policy DROP)
target prot opt source destination
DOCKER-USER all -- anywhere anywhere
DOCKER-ISOLATION-STAGE-1 all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
DOCKER all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
DOCKER all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
root@fylog001:~# systemctl status firewalld.service
-
解决方法:
-
修复网络配置或重启网络服务。
-
调整防火墙规则或重启防火墙服务。
-
故障3:文件系统错误
-
可能原因:磁盘故障、文件系统损坏、不正常关机等。
-
排查方法:
-
使用
fsck
命令检查并修复文件系统
root@fylog001:~# fsck
fsck from util-linux 2.27.1
e2fsck 1.42.13 (17-May-2015)
/dev/vda1 is mounted.
-
检查磁盘状态(如使用
smartctl
)。 -
解决方法:
-
修复文件系统或恢复备份数据。
-
更换损坏的硬盘。
-
故障4:软件包依赖问题
-
可能原因:依赖关系不完整、版本不匹配等。
-
排查方法:
-
使用包管理器(如
apt
、yum
或dnf
)检查依赖关系。 -
解决方法:
-
更新软件包或安装缺失的依赖包。
-
手动调整软件包依赖关系。
-
故障5:用户权限问题
-
可能原因:权限不足。
-
排查方法:
-
使用
ls -l
命令检查文件或目录的权限。
root@fylog001:/etc# ls -l
total 844
-rw-r--r-- 1 root root 3028 Feb 27 2019 adduser.conf
-rw-r--r-- 1 root root 18 Oct 25 2021 adjtime
drwxr-xr-x 2 root root 4096 Oct 25 2021 alternatives
drwxr-xr-x 3 root root 4096 Oct 25 2021 apm
drwxr-xr-x 3 root root 4096 May 10 10:59 apparmor
drwxr-xr-x 8 root root 4096 May 10 10:59 apparmor.d
drwxr-xr-x 7 root root 4096 May 10 11:02 apt
-rw-r----- 1 root daemon 144 Jan 15 2016 at.deny
-rw-r--r-- 1 root root 2188 Sep 1 2015 bash.bashrc
-
解决方法:
-
修改文件或目录的权限(如使用
chmod
命令)。 -
使用具有足够权限的用户执行操作。
-
故障6:服务无法正常工作
-
可能原因:软件配置错误、版本不兼容、资源耗尽等。
-
排查方法:
-
检查服务的配置文件和日志文件。
-
使用
systemctl
命令检查服务状态。
root@fylog001:/etc# systemctl status ssh
● ssh.service - OpenBSD Secure Shell serverLoaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)Active: active (running) since Mon 2024-03-25 11:44:40 CST; 1 months 16 days agoMain PID: 955 (sshd)Tasks: 1Memory: 928.0KCPU: 112msCGroup: /system.slice/ssh.service└─955 /usr/sbin/sshd -D
-
解决方法:
-
修复配置文件或重启服务。
-
升级软件或调整配置以适应环境。
-
故障7:磁盘空间不足
-
排查方法:
-
使用
df -h
命令查看磁盘使用情况。
root@fylog001:/etc# df -h
Filesystem Size Used Avail Use% Mounted on
udev 7.9G 0 7.9G 0% /dev
tmpfs 1.6G 3.8M 1.6G 1% /run
/dev/vda1 394G 15G 363G 4% /
tmpfs 7.9G 0 7.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup
-
解决方法:
-
清理不必要的文件或目录。
-
增加磁盘空间或扩展分区。
-
故障8:内存不足
-
排查方法:
-
使用
free -m
命令查看内存使用情况。
root@fylog001:/etc# free -mtotal used free shared buff/cache available
Mem: 16046 1881 908 3 13256 13783
Swap: 0 0 0
-
解决方法:
-
关闭不必要的进程或服务。
-
升级硬件或增加虚拟内存。
-
故障9:服务端口被占用
-
排查方法:
-
使用
netstat -tuln
命令查看端口占用情况。
root@fylog001:~# netstat -tulnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 12199/docker-proxy
tcp 0 0 127.0.0.1:42859 0.0.0.0:* LISTEN 21096/hbrclient
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 8207/redis-server 0
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 955/sshd
-
解决方法:
-
停止占用端口的进程或服务。
-
配置服务使用其他端口。
-
故障10:防火墙和安全组问题
-
排查方法:
-
检查防火墙规则和安全组设置。
-
解决方法:
-
调整防火墙规则或安全组设置以允许必要的通信。
-
请注意,以上只是一些常见的故障和排查方法,实际情况可能因系统和环境的不同而有所差异。在排查和解决故障时,应根据具体的错误信息和日志进行分析和处理。
相关文章:
linux系统服务器中常见故障及排查方法
目录 故障1:系统无响应 故障2:网络连接问题 故障3:文件系统错误 故障4:软件包依赖问题 故障5:用户权限问题 故障6:服务无法正常工作 故障7:磁盘空间不足 故障8:内存不足 故障…...
产品人生(5):从“敏捷开发”到“四化时间管理法”
人生如产品,产品映人生,借鉴产品思维,快速提升软技能! 在互联网的敏捷开发实践中,经常会用到“流程化、模板化、清单化、不断优化”的思想来提升开发的效率和产品质量,并确保团队能够快速响应市场变化。大…...

超级好看的html网站维护源码
源码介绍 好看的html网站维护源码,源码由HTMLCSSJS组成,记事本打开源码文件可以进行内容文字之类的修改,双击html文件可以本地运行效果,也可以上传到服务器里面, 源码截图 源码下载 好看的html网站维护源码...

从零开始搭建Springboot项目脚手架2:配置文件、返回值、日志等
1、多个环境与配置文件 2、统一返回值 返回值包括两种场景:正常controller的返回、异常发生之后返回 正常controller的返回:通过在controller的默认返回Response实现 异常发生之后返回:通过全局异常处理统一捕获返回 首先创建类StatusCode…...

Java web第五次作业
1.在idea中配置好数据源 2、视频案例中只给出了查询所有结果的示例,请自己完成添加、删除、修改操作的代码。以下供参 考。 Delete("delete from emp where id#{id}") public void delete(Integer id); 测试代码 Test public void testDelete(){ empMa…...

Unity使用ToggleGroup对多个Toggle进行管理时,初始化默认选项失效的问题
问题描述: 在unity脚本的OnEnable中用代码设置Toggle集合中的其中一个对象的ison时,发现并没有根据设置发生变化。但是该Toggle的OnValueChange却发生过变化。 如果使用协程等待0.01s,那么对应组件的ison的修改才能生效,但是逐帧分析的话会发…...
Retrofit同步请求直接返回目标对象
Rxjava方式: // 创建 Retrofit 实例 Retrofit retrofit new Retrofit.Builder().baseUrl("https://api.example.com/").addConverterFactory(GsonConverterFactory.create()).addCallAdapterFactory(RxJava2CallAdapterFactory.create()).build();// 创…...
Android GPU渲染屏幕绘制显示基础概念(1)
Android GPU渲染屏幕绘制显示基础概念(1) Android中的图像生产者OpenGL,Skia,Vulkan将绘制的数据存放在图像缓冲区中,Android中的图像消费SurfaceFlinger从图像缓冲区将数据取出,进行加工及合成。 Surface…...
Mac电脑设置hosts的方法
hosts文件是什么 hosts文件是一个系统文件,通过绑定域名与ip的关系,当本机访问该域名时 从这个文件中如果找到了对应域名,则转发到对应ip;如果没有找到对应域名,则走默认的DNS公网解析。 好处: 加速访问…...
数据分析——大数据伦理风险分析
大数据伦理风险分析 前言一、大数据伦理二、大数据技术伦理风险算法安全性、可信赖性及稳定性风险及其应对算法风险的表现算法风险的危害算法风险的应对 算法的可解释性风险及其应对算法可解释性风险的内容算法可解释性风险的损害算法可解释性风险的应对 算法的决策不可预见性风…...

漫谈AI时代的手机
以chatGPT 为代表的大语言的横空出世使人们感受到AI 时代的到来,大语言模型技术的最大特点是机器开始”懂人话“,”说人话“了。如同任何一个革命性工具的出现一样,它必将改变人类生活和工作。 在这里。我谈谈AI时代的手机。 语音通信的历史…...
fatal error: ros/ros.h: 没有那个文件或目录
解决方法: 在出错的文件的包下的CMakeLists.txt文件里,加上 find_package(catkin REQUIRED COMPONENTSroscpp )include_directories(include ${catkin_INCLUDE_DIRS} )【ROS-解决问题】 fatal error: ros/ros.h: 没有那个文件或目录-CSDN博客...

苍穹外卖Day06笔记(复习了jwt的加密解密和传递)
疯玩了一个月,效率好低,今天开始捡起来苍穹外卖~ 1. 为什么不需要单独引入HttpClient的dependency? 因为我们在sky-common的pom.xml中已经引入了aliyun-sdk-oss的依赖,而这个依赖低层就引入了httpclinet的依赖,根据依…...
【ARM 嵌入式 C 字符串系列 23.9 -- strcmp 与 strncmp 在使用上的区别以及注意事项】
请阅读【嵌入式开发学习必备专栏】 文章目录 strcmp 与 strncmp 使用介绍strcmpstrncmp使用建议 strcmp 与 strncmp 使用介绍 strcmp 和 strncmp 都是 C 语言标准库中用于比较两个字符串的函数,它们定义在 <string.h> 头文件中。这两个函数在功能上相似&…...
行列视(RCV):企业数据处理的革新工具
在当前数据驱动的商业生态系统中,行列视(RCV)系统以其创新的企业数据处理功能,不断地为各行各业的企业带来变革。行列视系统能够处理大规模数据集,支持多达400种Excel函数,使得数据处理不仅限于基本的表格操…...
Oracle Patch清理
场景: 在对Oracle安装补丁后,会发现OS上被占用了大量的空间,本文档清理Opatch过程中的一些文件,释放空间 参考文档: Can You Delete $ORACLE_HOME/.patch_storage Directory ? (Doc ID 403218.1) How To Avoid Disk …...

Redis-三主三从高可用集群搭建
正式搭建之前,注意事项(坑)提前放到最开始,也可以出问题回来看, (1)第二步中最好将配置文件中的logfile自定义一个目录,以便于在第五步中启动出错的时候迅速定位错误。 ࿰…...
ImageMagick
Linux 安装 sudo apt install php8.2-imagick Windows 安装 下载 ImageMagick ImageMagick – Download 安装并将 D:\Program Files\ImageMagick-7.1.1-Q16-HDRI 加入到系统环境变量 path 中, 或者将 CORE_RL_*.dll 复制到 c:\windows\system32 下 下载 php 扩展…...

攻防世界-web-command_execution
题目: 原理: | 的作用为将前一个命令的结果传递给后一个命令作为输入 &&的作用是前一条命令执行成功时,才执行后一条命令 方法一: 第一步: 1.打开浏览器,在文本框内输入127.0.0.1 | find / -name…...
go语言自定义排序接口Interface实现示例 sort.Sort(data Interface) 快速排序 pdqsort
go语言sort.Sort(data Interface) 排序接口自定义排序实现,golang里面的sort包中的Sort方法底层使用的是 pdqsort的一个快速排序算法, 我们可以将要排序的对象实现Interface接口后直接丢个这个函数即可自动按照我们指定的方式进行数据快速排序。 sort函…...

RIP动态路由协议详解
目录 一:RIP协议的基本信息 二:RIP协议中的更新方式 三:RIP协议中的计时器 定时更新器(UPDATE timer) 无效定时器(invalid Timer) 垃圾收集定时器(garbage collection timer&a…...

ROS2 安装与测试
文章目录 ROS2 安装与测试ROS2 安装1. 设置编码2. 添加源3. 安装 ROS24. 设置环境变量 ROS2 示例测试实例一:命令行实例实例二:小海龟仿真实例 参考链接 ROS2 安装与测试 ROS2 安装 基于 Ubuntu 22.04 LTS 操作系统。 1. 设置编码 sudo apt update &…...
MySQL数据分组技术深度解析及实践
在处理大量数据库记录时,数据分组是一种强大的工具,它允许我们按照特定列的值将数据划分为逻辑上的集合,进而对每个集合执行聚合操作,如计数、求和或平均值等。MySQL中的GROUP BY子句正是实现这一功能的关键所在。本文将详细介绍GROUP BY的使用方法,结合…...

【敦煌网注册/登录安全分析报告】
敦煌网注册/登录安全分析报告 前言 由于网站注册入口容易被黑客攻击,存在如下安全问题: 暴力破解密码,造成用户信息泄露短信盗刷的安全问题,影响业务及导致用户投诉带来经济损失,尤其是后付费客户,风险巨大…...

Python读取ASC文件并转换成Excel文件(坐标)
import pandas as pd# 读取asc文件,指定空格为分隔符 df pd.read_csv(out_view2.asc, sep , headerNone)# 去掉空列 df df.dropna(howall, axis1)# 将数据保存到Excel文件 df.to_excel(out_view2.xlsx, indexFalse, headerFalse)效果图...
Rust 的 Warp 库编写的 restful api 参数传递与解析方法
Warp是一个用 Rust 编写的流行的异步 web 框架。在使用 warp 构建 RESTful API 时,可以通过多种方式传递参数到你的处理函数中。 以下是一些常见的方法,说明如何在 warp 中传递参数: 路径参数: 你可以使用 warp::path 和 warp::…...
关不掉的弹窗
这里分两种方式 第一种 #include<Windows.h> int main(){system("mode 15,14");while(1){MessageBox(NULL,TEXT("关不掉吧!"),TEXT("中病毒啦~~你这个SB!"),MB_OK);}} 实际上不是关不掉,而是关不完 解决方法:找…...

【JVM】类加载机制及双亲委派模型
目录 一、类加载过程 1. 加载 2. 连接 a. 验证 b. 准备 c. 解析 3. 初始化 二、双亲委派模型 类加载器 双亲委派模型的工作过程 双亲委派模型的优点 一、类加载过程 JVM的类加载机制是JVM在运行时,将 .class 文件加载到内存中并转换为Java类的过程。它…...

WordPress插件:链接自动识别转为超链接
WordPress插件:链接自动识别转为超链接 <?phpfunction open_links_in_new_tab() {add_filter(the_content, make_clickable);function autoblank($text) {$return str_replace(<a, <a target"_blank", $text);return $return;}add_filter(th…...

Java----数组的定义和使用
1.数组的定义 在Java中,数组是一种相同数据类型的集合。数组在内存中是一段连续的空间。 2.数组的创建和初始化 2.1数组的创建 在Java中,数组创建的形式与C语言又所不同。 Java中数组创建的形式 T[] 数组名 new T[N]; 1.T表示数组存放的数据类型…...