[大阪/横滨/德岛] 寻找基础设施/服务器端工程师!

[大阪/横滨/德岛] 寻找基础设施/服务器端工程师!

【超过500家企业部署】AWS搭建、运维、监控服务

【超过500家企业部署】AWS搭建、运维、监控服务

【CentOS的后继者】AlmaLinux OS服务器搭建/迁移服务

【CentOS的后继者】AlmaLinux OS服务器搭建/迁移服务

[仅适用于 WordPress] 云服务器“Web Speed”

[仅适用于 WordPress] 云服务器“Web Speed”

[便宜]网站安全自动诊断“快速扫描仪”

[便宜]网站安全自动诊断“快速扫描仪”

[预约系统开发] EDISONE定制开发服务

[预约系统开发] EDISONE定制开发服务

[注册100个URL 0日元] 网站监控服务“Appmill”

[注册100个URL 0日元] 网站监控服务“Appmill”

【兼容200多个国家】全球eSIM“超越SIM”

【兼容200多个国家】全球eSIM“超越SIM”

[如果您在中国旅行、出差或驻扎]中国SIM服务“Choco SIM”

[如果您在中国旅行、出差或驻扎]中国SIM服务“Choco SIM”

【全球专属服务】Beyond北美及中国MSP

【全球专属服务】Beyond北美及中国MSP

[YouTube]超越官方频道“美由丸频道”

[YouTube]超越官方频道“美由丸频道”

“好”实际上是一个命令。

 

我是系统解决方案部的犬杵,一个热爱游戏和动漫的杂食宅男。

这次,我将写一篇关于基于 UNIX 的操作系统(Linux 等)中使用的“nice”命令的博客。

关于nice命令

Nice命令改变进程的相对优先级的命令

有一个类似的命令称为“renice”,但是这个命令改变了正在执行的内容(格式也略有不同)

*这次,为了避免混淆,我故意不包括它。

优先级和选项摘要

关于优先事项

优先级(nice 值)调整为 -20 到 19 之间的值

越消极,优先级越高越积极,优先级越低(为什么……)

请注意,需要才能提高优先级

优先事项 价值 评论
高的 -20 只能由root用户修改
0 初始值
低的 19 可由root用户或普通用户更改

关于选项

这是不错的命令选项

选项 解释
-【价值】 将优先级增加或减少指定值
-n [值] 将优先级增加或减少指定值
(*如果未指定值,
则默认应用10)
--调整=[值]
- 帮助 显示帮助
- 版本 显示版本

…是的!有各种各样的事情,但基本上你应该能够记住 -n [value]

(*请注意,如果您没有明确指定,则将指定默认值 (+10)。

 

例如,以优先级-5运行名为beyond.sh的脚本,则格式如下。

# 好 -n -5 /opt/beyond.sh

如果将其与其他进程进行比较,您可以看到它正在以 -5 的优先级 (NI) 执行。

 
PID 用户 PR NI VIRT RES SHR S %CPU %MEM TIME+ 命令 2818 root 15 -5 13004 1416 1208 S 0.0 0.3 0:00.05 /bin/bash /opt/beyond.sh

如何查看好值

确认方法(示例)

您可以ps -ltop -c当前正在运行的进程的相对优先级 (NI)

ps-l

# ps -l FS UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 4 S 0 2526 2503 0 80 0 - 35262 poll_s pts/0 00:00:00 sudo 4 S 0 2528 2526 0 80 0 - 22938 do_wai pts/ 0 00:00:00 su 4 S 0 2529 2528 0 80 0 - 3946 do_wai pts/0 00:00:00 bash 0 R 0 3315 2529 0 80 0 - 13267 - pts/0 00:00:00 ps

顶部-c

#top -c PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ 命令 571 root 20 0 474024 17456 6156 S 0.0 3.5 0:05.50 /usr/bin/python2 -Es /usr/sbin/tuned -l -P 341 polkitd 20 0 613016 9184 5076 S 0.0 1.8 0:00.20 /usr/lib/polkit-1/polkitd --no-debug 1474 root 20 0 447996 8968 6708 S 0.0 1.8 0:01.16 /usr/sbin/NetworkManager --no-守护进程 1 根 20 0 127992 6612 4128 S 0.0 1.3 0:03.88 /usr/lib/systemd/systemd --switched-root --system --deserialize 21 1499 根 20 0 102904 5512 3456 S 0.0 1.1 0:00.02 /sbin/ dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eth0.pid -lf /var/lib/NetworkManager/dhclient-+ 2818 根 15 -5 13004 1416 1208 S 0.0 0.3 0:00.05 /bin/bash /opt/beyond.sh

改变的好处

通过显式指定优先级,可以将CPU资源分配给其他优先级更高的进程。

也就是说, CPU的负载可以相对减轻(显然)!

 

……嗯,就算你这么说我也不太明白。

从人的角度来看,我认为要么是在你忙碌的时候给你分配了一份重要的工作,要么给你分配了一份给你多一点余地的工作

如果你得到了像前者这样的工作,那就很难处理,也很难重新安排你的日程。

我认为如果你被分配了一个固定优先级的任务,即使你同时做其他任务,你也可以更顺利地处理它们

CPU也是如此(我希望我能传达这一点)

你什么时候使用它?

现在,我们什么时候应该使用这个好命令呢?

我捡到了一些有用的东西!

  • 使用mysqldump导出大量数据时
  • 使用正则表达式从大量日志中进行 grep 进行事后调查时
  • 执行大量批处理时

等等...

当你想通过非紧急且繁重的处理而不拉动其他进程的处理时可以使用它

 

哪个部分好看?

嗯,到目前为止我已经对这个好命令做了很多研究,但是......

这个好命令有什么好处......?

(我很好奇!)

我确信有些人喜欢这个,所以我把它留在这里作为一个专栏。

我研究了这个好命令的起源!

当我研究它时,有各种各样的理论,

为了其他用户而降低你的优先级,你真是太好了!

你照顾CPU真是太好了。

似乎是对使用者表示善意或者赞扬的命令

(这就是为什么当优先级降低时该值会变成正值......我不知道。)

概括

本文内容简单概括如下。

  • 基本格式是nice -n [value]
  • 您可以更改优先级并执行以减少CPU 的负载。
  • 如果为负数,则优先级高,如果为正数,则优先级低(nice值:-20~19)
  • 需要root权限才能提高优先级

最后

感谢您阅读这篇简陋的博客到最后。

我会继续发帖,尽管不定期,所以请回来查看。

那么请原谅。

 

如果您觉得这篇文章有帮助,请点赞!
4
加载中...
4 票,平均:1.00 / 14
7,366
X Facebook 哈特纳书签 口袋
[2025.6.30 Amazon Linux 2 支持结束] Amazon Linux 服务器迁移解决方案

[2025.6.30 Amazon Linux 2 支持结束] Amazon Linux 服务器迁移解决方案

[大阪/横滨] 积极招募基础设施工程师和服务器端工程师!

[大阪/横滨] 积极招募基础设施工程师和服务器端工程师!

写这篇文章的人

关于作者

犬宿

2021 年 4 月作为应届毕业生加入 Beyond。
也许是因为我的输出有问题,但有时我会说一些奇怪的话。