linux的uptime
① linux下如何查看系统启动时间和运行时间以及
uptime
w
都可以
② linux uptime 多少秒
uptime是linux命令里获取有关系统时间的。他就是到/proc/uptime找出一些信息计算的。你也可以/proc/uptime 提供了系统最近一次启动以来运行的时间,读取这个文件然后自己计算,uptime里的第一个时间是up后的seconds,自己折算为天数等。
③ Linux里面uptime命令作用是什么
查看运行时长,和负载信息
希望可以帮助你,请采纳,谢谢
④ Linux命令里面w和uptime命令区别是什么
Linux w命令用于显示目前登入系统的用户信息。
执行这项指令可得知目前登入系统的用户有哪些人,以及他们正在执行的程序。
单独执行 w 指令会显示所有的用户,您也可指定用户名称,仅显示某位用户的相关信息。
⑤ linux的uptime命令windows有起同样作用的命令么
linux
uptime命令主要用于获取主机运行时间和查询linux系统负载等信息。uptime命令过去只显示系统运行多久。现在,可以显示系统已经运行了多长时间,信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。
51cto编辑推荐:linux监控工具大全
uptime命令用法十分简单:直接输入
#
uptime
即可。
输入样例:
18:02:41
up
41
days,
23:42,
1
user,
load
average:
0.00,
0.00,
0.00
1可以被认为是最优的负载值。负载是会随着系统不同改变得。单cpu系统1-3和smp系统6-10都是可能接受的。
另外还有一个参数
-v
,是用来查询版本的。
(注意是大写的字母v)
[linux
@
localhost]$
uptime
-v
procps
version
3.2.7
[linux
@
localhost]$
uptime
显示结果为:
10:19:04
up
257
days,
18:56,
12
users,
load
average:
2.10,
2.10,2.09
显示内容说明:
10:19:04
//系统当前时间
up
257
days,
18:56
//主机已运行时间,时间越大,说明你的机器越稳定。
12
user
//用户连接数,是总连接数而不是用户数
load
average
//
系统平均负载,统计最近1,5,15分钟的系统平均负载
那么什么是系统平均负载呢?
系统平均负载是指在特定时间间隔内运行队列中的平均进程数。
如果每个cpu内核的当前活动进程数不大于3的话,那么系统的性能是良好的。如果每个cpu内核的任务数大于5,那么这台机器的性能有严重问题。
如果你的linux主机是1个双核cpu的话,当load
average
为6的时候说明机器已经被充分使用了。
作者开源运维研究室
⑥ Linux哪个命令可以查看当前系统时间
题主你好,
最常用的命令是: date
=====
希望可以帮到题主, 欢迎追问.
⑦ linux查看开机时间
用date就可以了
⑧ Linux Uptime 命令,让你知道你的系统运行了多久
linux
uptime命令主要用于获取主机运行时间和查询linux系统负载等信息。uptime命令过去只显示系统运行多久。现在,可以显示系统已经运行了多长时间,信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。
51CTO编辑推荐:linux监控工具大全
uptime命令用法十分简单:直接输入
#
uptime
即可。
输入样例:
18:02:41
up
41
days,
23:42,
1
user,
load
average:
0.00,
0.00,
0.00
1可以被认为是最优的负载值。负载是会随着系统不同改变得。单CPU系统1-3和SMP系统6-10都是可能接受的。
另外还有一个参数
-V
,是用来查询版本的。
(注意是大写的字母v)
[linux
@
localhost]$
uptime
-V
procps
version
3.2.7
[linux
@
localhost]$
uptime
显示结果为:
10:19:04
up
257
days,
18:56,
12
users,
load
average:
2.10,
2.10,2.09
显示内容说明:
10:19:04
//系统当前时间
up
257
days,
18:56
//主机已运行时间,时间越大,说明你的机器越稳定。
12
user
//用户连接数,是总连接数而不是用户数
load
average
//
系统平均负载,统计最近1,5,15分钟的系统平均负载
那么什么是系统平均负载呢?
系统平均负载是指在特定时间间隔内运行队列中的平均进程数。
如果每个CPU内核的当前活动进程数不大于3的话,那么系统的性能是良好的。如果每个CPU内核的任务数大于5,那么这台机器的性能有严重问题。
如果你的linux主机是1个双核CPU的话,当Load
Average
为6的时候说明机器已经被充分使用了。
作者开源运维研究室
⑨ Linux里面uptime命令作用是什么
[root@oldboy ~]# uptime
11:45:25 up 5 days, 13:20, 3 users, load average: 0.00, 0.01, 0.05
uptime内容显示的内容一次是系统时间,开机到现在的天数,用户登录数,以及平均负载。
核心是平均负载,其实就是【单位时间内的活跃进程数】。
2颗,单颗4核CPU为例:
1分钟:10.00 #CPU处理进程1分钟的繁忙程度,忙碌1分钟。
5分钟:8.01 #CPU处理进程5分钟的繁忙程度,忙碌了5分钟
15分钟:5.05 #CPU处理进程15分钟的繁忙程度,忙碌持续15分钟,15分钟内平均值5.
uptime:故障恢复了。
1分钟:1.00 #CPU处理进程1分钟的繁忙程度,忙碌1分钟。
5分钟:8.01 #CPU处理进程5分钟的繁忙程度,忙碌了5分钟
15分钟:5.05 #CPU处理进程15分钟的繁忙程度,忙碌持续15分钟,15分钟内平均值5.
==============================================
总结:15分钟负载值12,是高是低呢
负载数值/总的核心数=1 #开始慢的临界点,实际上1*70%==关注的临界点。
12/8=1.2 大于1就说明有问题。
负载不要超过5,是临界点。
2颗单颗4核CPU,共8核,负载就是8*70%=5左右。
需要关注负载的值:总的核心数*70%=关注的点
==================要掌握的============================
1.平均负载是运行队列中活跃的进程数。
2.平均负载,1,5,15分钟内的负载。
3.需要关注负载的值:总的核心数*70%=关注的点
4.辅助top,ps,uptime,sar,mpstat,pidstat,iostat,排查问题。
5.strace跟踪进程系统调用。
6.记住几个案例(面试讲故事)。
面试官问:
你在工作中遇到过哪些生产故障,是怎么解决的?
最好和数据库相关(负载高),和web相关(PHP进程100%,JAVA内存泄漏)
==================要掌握的============================
***6.平均负载案例分析实战\***
下面,我们以三个示例分别来看这三种情况,并用 stress、mpstat、pidstat 等工具,找出平均负载升高的根源。
stress 是 Linux 系统压力测试工具,这里我们用作异常进程模拟平均负载升高的场景。
mpstat 是多核 CPU 性能分析工具,用来实时查看每个 CPU 的性能指标,以及所有 CPU 的平均指标。
pidstat 是一个常用的进程性能分析工具,用来实时查看进程的 CPU、内存、I/O 以及上下文切换等性能指标。
#如果出现无法使用mpstat、pidstat命令查看%wait指标建议更新下软件包
yum install sysstats -y
yum install stress -y
stress --cpu 8 --io 4 --vm 2 --vm-bytes 128M --timeout 10s
***场景一:CPU 密集型进程\***
1.首先,我们在第一个终端运行 stress 命令,模拟一个 CPU 使用率 100% 的场景:
[root@oldboy ~]# stress --cpu 1 --timeout 600
2.接着,在第二个终端运行 uptime 查看平均负载的变化情况
# 使用watch -d 参数表示高亮显示变化的区域(注意负载会持续升高)
[root@oldboy ~]# watch -d uptime
*3.最后,在第三个终端运行 mpstat 查看 CPU 使用率的变化情况*
# -P ALL 表示监控所有CPU,后面数字5 表示间隔5秒后输出一组数据
[root@oldboy ~]# mpstat -P ALL 5
#单核CPU,所以只有一个all和0
4.从终端二中可以看到,1 分钟的平均负载会慢慢增加到 1.00,而从终端三中还可以看到,正好有一个 CPU 的使用率为 100%,但它的 iowait 只有 0。这说明,平均负载的升高正是由于 CPU 使用率为 100% 。那么,到底是哪个进程导致了 CPU 使用率为 100% 呢?可以使用 pidstat 来查询
![](18.Linux系统管理-进程管理.assets/a.png)
# 间隔5秒输出一组数据
[root@oldboy ~]# pidstat -u 5 1
#从这里可以明显看到,stress进程的CPU使用率为100%。
- 模拟cpu负载高 `stress --cpu 1 --timeout 100`
- 通过uptime或w 查看 `watch -d uptime`
- 查看整体状态mpstat -P ALL 1 查看每个cpu核心使用率
- 精确到进程: pidstat 1
****场景二:I/O 密集型进程\****
1.首先还是运行 stress 命令,但这次模拟 I/O 压力,即不停地执行 sync
[root@oldboy ~]# stress --io 1 --timeout 600s #利用sync()
stress --hdd 8 --hdd-bytes 1g # hd harkdisk 创建进程去进程写
*2.然后在第二个终端运行 uptime 查看平均负载的变化情况:*
[root@oldboy ~]# watch -d uptime
18:43:51 up 2 days, 4:27, 3 users, load average: 1.12, 0.65, 0.00
*3.最后第三个终端运行 mpstat 查看 CPU 使用率的变化情况:*
# 显示所有 CPU 的指标,并在间隔 5 秒输出一组数据
[root@oldboy ~]# mpstat -P ALL 5
#会发现cpu的与内核打交道的sys占用非常高
*4.那么到底是哪个进程,导致 iowait 这么高呢?我们还是用 pidstat 来查询*
# 间隔5秒后输出一组数据,-u 表示CPU指标
[root@oldboy ~]# pidstat -u 5 1
#可以发现,还是 stress 进程导致的。
- 通过stress 模拟大量进程读写 `stress --hdd 4 `
- 通过w/uptime查看系统负载信息 `watch -d uptime`
- 通过top/mpstat 排查 `mpstat -P ALL 1 或 top 按1`
- 确定是iowati `iostat 1查看整体磁盘读写情况 或iotop -o 查看具体哪个进程读写`
- 根据对应的进程,进行相关处理.
***场景三:大量进程的场景 高并发场景 \***
*当系统中运行进程超出 CPU 运行能力时,就会出现等待 CPU 的进程。*
*1.首先,我们还是使用 stress,但这次模拟的是 4 个进程*
[root@oldboy ~]# stress -c 4 --timeout 600
*2.由于系统只有 1 个 CPU,明显比 4 个进程要少得多,因而,系统的 CPU 处于严重过载状态*
*3.然后,再运行 pidstat 来看一下进程的情况:*
# 间隔5秒后输出一组数据
[root@oldboy ~]# pidstat -u 5 1
*可以看出,4 个进程在争抢 1 个 CPU,每个进程等待 CPU 的时间(也就是代码块中的 %wait 列)高达 75%。这些超出 CPU 计算能力的进程,最终导致 CPU 过载。*
****分析完这三个案例,我再来归纳一下平均负载与CPU\****
***平均负载提供了一个快速查看系统整体性能的手段,反映了整体的负载情况。但只看平均负载本身,我们并不能直接发现,到底是哪里出现了瓶颈。所以,在理解平均负载时,也要注意:
平均负载高有可能是 CPU 密集型进程导致的;
平均负载高并不一定代表 CPU 使用率高,还有可能是 I/O 更繁忙了;
当发现负载高的时候,你可以使用 mpstat、pidstat 等工具,辅助分析负载的来源****
**系统负载的计算和意义**
进程以及子进程和线程产生的计算指令都会让cpu执行,产生请求的这些进程组成"运行队列",等待cpu执行,这个队列就是系统负载, 系统负载是所有cpu的运行队列的总和.
[root@oldboye ~]# w
20:25:48 up 95 days, 9:06, 1 user, load average: 2.92, 0.00, 0.00
//假设当前计算机有4个核心的cpu,当前的负载是2.92
cpu1 cpu2 cpu3 cpu4
2.94/4(个cpu核心) = 73%的cpu资源被使用,剩下27%的cpu计算资源是空想的
//假设当前的计算有2个核心的cpu,当前的负载是2.92
2.92/2 = 146% 已经验证超过了cpu的处理能力
7. 日常故障排查流程(含日志)
- w/uptime, 查看负载
- ps aux/top 看看 cpu百分比, io wait或者是内存占用的高? (三高 cpu,io,内存)
- top检查具体是哪个进程,找出可疑进程
- 追踪这个进程使用情况,做什么的?
- 看看对应**日志**是否有异常
- 系统日志: /var/log/messages(系统通用日志) /var/log/secure(用户登录情况)
- 服务软件的日志
***3.那平均负载为多少时合理\***
*最理想的状态是每个 CPU核心 上都刚好运行着一个进程,这样每个 CPU 都得到了充分利用。所以在评判平均负载时,首先你要知道系统有几个 CPU核心,这可以通过 top 命令获取,或`grep 'model name' /proc/cpuinfo`*
系统平均负载被定义为在特定时间间隔内运行队列中的平均进程数。如果一个进程满足以下条件则其就会位于运行队列中:
- 它没有在等待I/O操作的结果
- 它没有主动进入等待状态(也就是没有调用'wait')
- 没有被停止(例如:等待终止)
《内容来自老男孩老师的课堂笔记》