linux日常运维基础命令

简介:

查看系统负载情况

1、w    (使用w命令查看负载情况)

查看load average 行查看1分钟负载情况 5分钟负载情况 15分钟负载情况,如果数值超过CPU核数,则说明现在CPU使用过程中有排队现象,核数不够

2、uptime    (查看当前系统负载情况)

同w命令

vmstat    (查看)

使用方法:

vmstat 1 5    (每隔一秒显示linux的负载状态,一共显示5次)

spacer.gif

r:一秒内平均进程

b:有多少任务被磁盘IO,网络阻塞

swpd:有多少数据量被交换,如果swpd值很大,且不断变更,内存有可能不够或内存溢出

free:空闲的物理内存数(是真正的空闲,未被任何程序占用)

buff:磁盘缓存(Buffer Cache)的大小(可提高系统I/O调用的性能)

cache:磁盘缓存(Page Cache)的大小(可提高系统I/O调用的性能)

si:swpd in 进入到内存    (如果不变说明内存稳定,如果总是变化则说明内存不够)

so:swpd out 从内存出来的(如果不变说明内存稳定,如果总是变化则说明内存不够)

bi:写入磁盘内容    (普通服务器如果持续超过1000则有可能有压力,频繁读写)

bo:读取磁盘内容    (普通服务器如果持续超过1000则有可能有压力,频繁读写)

in:每秒CPU的中断次数,包括时间中断

cs:每秒上下文切换次数

us:用户CPU时间。

sy:系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。

id:空闲 CPU时间。

wt:等待IO CPU时间。

st:被偷走的cpu

top    (动态查看当前哪个进程占用CPU或内存最多)

使用方法:

top

    shift+m    (查看内存占用最多的进程)

PID    (进程ID)

USER    (那个用户运行的进程)

PR    (进程处理优先级,越小排的越靠前)

NI    (负值表示高优先级,正值表示低优先级)

VIRT    (进程使用的虚拟内存总量,单位kb)

RES    (进程使用的、未被换出的物理内存大小,单位kb)

S    (进程状态:D=不可中断的睡眠状态;R=运行;S=睡眠;T=跟踪/停止;Z=僵尸进程

%CPU    (上次更新到现在的CPU时间占用百分比)

%MEM    (进程使用的物理内存百分比)

TIME+    (进程使用的CPU时间总计,单位1/100秒)

COMMAND    (命令名)

top -bn1    (静态一次性显示当前服务器情况,可写入脚本中)

top -c -d 1    (-c是COMMAND显示更全,-d是1秒刷新1次)


sar    (查看磁盘,CPU,网卡等历史使用情况)

使用方法:

sar -n DEV    (查看今天的网卡流量使用情况,10分钟一次)

sar -n DEV 1 10    (查看现在网卡的使用情况,每一秒显示一次,一共显示10次)

    主要看rxbyt/s和txbyt/s这两列,分别是上行流量和下行流量

/var/log/sa/下有历史数据,历史数据以sa开头

sar -n DEV -f sa22    (查看历史记录)

sar -q    (查看历史负载)

sar -b    (查看磁盘历史使用)

sar    (与top等命令类似)


free    (查看当前系统还有多少剩余内存)

buffers    (缓冲区,CPU处理完的数据存到内存中,再由内存写入磁盘)

cached    (高速缓冲区,由磁盘读取到内存中供CPU处理)

ps    (查看系统当中的所有进程)

使用方法:

ps aux    (显示系统当前的所有进程)

USER    (该进程的用户)

PID    (进程ID)

%CPU    (占用CPU的百分比)

%MEM    (占用内存的百分比)

VSZ    (占用虚拟内存的大小)

RSS    (占用真正内存的大小)

TTY    (终端设备,?:在后台运行;pst/0:正在运行)

STAT    (表示进程状态:S:睡眠;s:主进程;<:优先级高;N:低优先级;+:前台运行的进程;R:正在运行的进程;L:内存分页;l:多线程进程;Z:僵尸进程;X:已经死掉的进程;T:暂停的进程;D:不能中断的进程)

START    (启动日期)

TIME    (一共占用CPU的时间)

COMMAND    (进程的命令)

ps -elf    (显示系统当前的所有进程)

ps aux |grep php    (过滤PHP进程)



crontab    (任务计划)

crontab -u root -l    (列出root用户的计划任务有哪些)

crontab -e    (添加任务计划)

任务计划时间为分,时,日,月,周

0 0 2 * *     (每月2号0点0分执行计划)

0 */8 * * *    (每隔八小时备份一次)

0 1,12,18 * * *    (每天1,12,18点执行一次)

30 9-18 * * *    (每天9:30-18:30,每小时执行一次)


linux系统服务

ntsysv    (查看并调整启动服务,调整完后需重启)

chkconfig    (查看在所有运行级别下有哪些服务开启)

chkconfig atd off    (将atd服务在2345级别下关闭)

chkconfig --list atd    (查看atd服务列表)

chkconfig --level 34 atd on    (将atd服务在运行3和4级别下打开)

系统启动服务列表位置:/etc/init.d/

chkconfig --add 123    (将123服务添加到启动服务中;123文件需要有执行权限)

chkconfig --del 123    (将123服务从启动服务中删除)


linux系统日志

/etc/logrotate.conf    (日志切割的配置文件)

/var/log/message    (jilu系统内核相关的日志)

/var/log/wtmp    (记录用户登陆历史)

    last    (查看用户登录历史命令)

/var/log/btmp    (记录无效用户登陆历史)

    lastb    (查看用户无效登陆历史)

/var/log/maillog    (记录邮件的发送情况)

/var/log/secure    (记录记录系统的登录信息,如ftp服务中的用户登陆情况)

var/log/dmesg    (记录启动过程中的硬件日志)

    dmesg    (查看当前的硬件情况)


kill    (杀死一个进程)

kill pid    (杀死某一个进程)

kill -9 pid    (强制杀死一个进程,杀不死的情况下)

kill -HUP ******    (重新加载某一个服务)

killall httpd    (杀死httpd服务)

killall -9 httpd    (强制杀死httpd服务)


文件改名、复制、备份操作

使用方法:

find /var/log/ -type f -mtime +10 -exec cp {} {}.bak \;    (将/var/log/下超过10天的文件找出,在该文件夹下将所有文件都进行备份,备份为.bak文件;{}表示之前的文件名,{}.bak表示被分为"文件名+.bak")

find /var/log/ -type f -mtime +10 |xargs -i cp {} {}.bak    (功能同上)

ls *.txt |xargs rm    (删除ls查找到的以txt为结尾的文件)

ls *.txt |xargs -i cp {} {}.bak    (备份所有txt文件)

nohup    (进程后台执行)

使用方法:

nohup sleep 100    (将sleep进程放到后台处理,并将进程输出的内容写入到nohup.out中)

screen

yum install -y screen

使用方法:

screen    (创建一个新的虚拟终端)

    ctrl + a + d    (暂时退出该终端)

    exit    或    crtl + d    (永久退出该终端)

screen -ls    (查看当前都有哪些虚拟终端)

screen -r 1529    (回到ID号为1529的screen虚拟终端下)

screen -S test    (创建一个名为test的虚拟终端)

screen -r test    (回到名字为test的虚拟终端下)

curl    (访问工具)

使用方法:

curl www.baidu.com    (访问百度网页,源代码)

curl -I www.baidu.com    (查看百度的当前状态)

200 访问正常;301,302 在服务端设定了跳转;

curl -x61.135.169.125:80 www.baidu.com -I    (访问指定IP的指定端口)

curl -u username: password: http://www.baidu.com    (访问需要输入用户名和密码的网址)

curl -o baidulogo.png www.baidu.com/img/bd_logo1.png    (下载百度的logo,并以baidulogo.png命名

curl -O www.baidu.com/img/bd_logo1.png    (下载百度的logo,以默认bd_logo1.png命名)





本文转自 粗粮面包 51CTO博客,原文链接:http://blog.51cto.com/culiangmianbao/1770449,如需转载请自行联系原作者
相关文章
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
184 8
|
2月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
736 6
|
2月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
122 3
|
2月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
99 2
|
6天前
|
运维
阿里云服务器批量执行命令(系统运维管理oos)
阿里云【系统运维管理oos】批量执行详情
28 4
|
1月前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
65 14
Linux 10 个“who”命令示例
|
27天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
124 20
|
18天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
46 8
|
21天前
|
Prometheus 运维 监控
Prometheus+Grafana+NodeExporter:构建出色的Linux监控解决方案,让你的运维更轻松
本文介绍如何使用 Prometheus + Grafana + Node Exporter 搭建 Linux 主机监控系统。Prometheus 负责收集和存储指标数据,Grafana 用于可视化展示,Node Exporter 则采集主机的性能数据。通过 Docker 容器化部署,简化安装配置过程。完成安装后,配置 Prometheus 抓取节点数据,并在 Grafana 中添加数据源及导入仪表盘模板,实现对 Linux 主机的全面监控。整个过程简单易行,帮助运维人员轻松掌握系统状态。
149 3
|
27天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
59 7