linux常用命令 、查看日志、web排查
-
linux常用命令
- ps aux|grep xxx (比如 ps aux|grep tomcat ps aux|grep tomcat-portalvip ps aux|grep nginx 等)
- rpm -qa|grep xxx (查找系统有没有安装 比如 rpm -qa|grep mysql rpm -qa|grep MySQL rpm -qa|grep jdk 等)
- 强制卸载 rpm -e 上一步查找结果的内容 --nodeps
- 查看端口是否被占用 netstat -an|grep 端口
- 查看端口被哪个进程占用 losf -i:端口 (没有的话 就 yum -y install lsof)
- 任何提示没有的命令 大部分可以通过 yum 安装
- top 查看 cpu 内存等消耗情况 top -H -p 进程ID 可以查看进程下线程的 IO CPU 内存等消耗情况
- free 查看内存大小
- df -hl 查看磁盘信息
- du -sh 查看当前路径打下 du -sh 文件夹或文件 查看某个文件夹或文件大小
- uname -a 查看操作系统版本
- top 查看到某些进程不正常 的话 如果struts漏洞造成的病毒木马直接 kill -9 掉进程或 pkill -9 关键字杀掉
- 一般启动文件都在都在 /etc/init.d/ 目录下 中毒后 进去 ll -t 按时间倒序排 看下时间排名前吗的执行脚本是否正常的 否则就直接删掉
- rm 和 mv 命令 及其危险的命令 确定你再操作那个目录下的哪些文件
- cp -rf 深度copy
- tar -zxvf xxx.tar.gz文件
- 打开大文件不要用 vi 用 more或less 等 否则内存受不了 小文件用vi
- 防火墙在 /etc/sysconfig/iptables
- echo 3 > /proc/sys/vm/drop_caches 释放系统缓存
- ====================================================================
==========================查看日志========================================、
cat
tail -f
日 志 文 件 说 明
/var/log/message 系统启动后的信息和错误日志,是Red
Hat Linux中最常用的日志之一
/var/log/secure 与安全相关的日志信息
/var/log/maillog
与邮件相关的日志信息
/var/log/cron 与定时任务相关的日志信息
/var/log/spooler
与UUCP和news设备相关的日志信息
/var/log/boot.log 守护进程启动和停止相关的日志消息
系统:
#
uname -a # 查看内核/操作系统/CPU信息
# cat /etc/issue
# cat /etc/redhat-release
# 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
#
lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量
资源:
# free -m # 查看内存使用量和交换区使用量
# df -h #
查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal
/proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime
# 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载
磁盘和分区:
# mount |
column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE #
查看启动时IDE设备检测状况
网络:
# ifconfig # 查看所有网络接口的属性
# iptables -L #
查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat
-antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息
进程:
# ps -ef #
查看所有进程
# top # 实时显示进程状态(另一篇文章里面有详细的介绍)
用户:
# w # 查看活动用户
#
id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1
/etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l
# 查看当前用户的计划任务
服务:
# chkconfig –list # 列出所有系统服务
# chkconfig –list |
grep on # 列出所有启动的系统服务
程序:
# rpm -qa # 查看所有安装的软件包
======================记录一些常用的web服务排查命令,会持续更新。=============================
1、检查链接可用性及时间消耗
【命令】
curl -o /dev/null -s -w %{time_namelookup}::%{time_connect}::%{time_starttransfer}::%{time_total}::%{speed_download} "http://www.taobao.com"
【结果】
0.008::0.039::0.076::0.140::306729.000
2、统计服务器链接状态
【命令】
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
【结果】
TIME_WAIT 814
CLOSE_WAIT 1
FIN_WAIT1 1
ESTABLISHED 634
SYN_RECV 2
LAST_ACK 1
3、开启python http服务
【命令】
python -m SimpleHTTPServer
4、检查maven依赖冲突
【命令】
mvn -U dependency:tree -Dverbose
【结果】
[INFO] \- qunar.tc:qmq-client:jar:1.2.11:compile
[INFO] +- (qunar.common:common-rpc:jar:8.0.7:compile - omitted for conflict with 7.0.9)
[INFO] +- qunar.tc:qmq-common:jar:1.2.11:compile
[INFO] | +- (qunar.tc:qmq-api:jar:1.2.11:compile - omitted for duplicate)
[INFO] | +- (qunar.common:common-rpc:jar:8.0.7:compile - omitted for conflict with 7.0.9)