当前位置: 首页 > news >正文

普通用户执行ps兼容sudo和非sudo场景

前面有一篇文章《Linux隐藏进程的 PID 信息》,讲的是在做了相关安全加固之后,ps查看进程信息,只能看到普通用户自己的。

那么,当我们需要使用ps命令获取所有进程信息的时候,就需要sudo授权。

所以呢?我这边的所有检查脚本的ps命令前都加了sudo关键字。但是,万万没想到,有些现场不想授权ps的sudu权限给检查用户。

理由是:1、现场不存在hidepid加固的情况,所有机器上,普通用户均可以查看所有进程信息;2、用户没时间执行授权操作。

要求:去掉ps前的sudo关键字。

这不就尬了吗?其他省份需要sudo,另外一些省份不需要。然而,我们产品不可能为每个省单独维护一份检查脚本。

综合评估下来:

带sudo:1、现场只需要授权ps的sudo即可;2、当然也可以修改脚本

不带sudo:现场出现需要sudo的情况,只能改脚本

所以,还是带的好!!!但是,实在难以说服现场同事。非要去掉sudo,坚持不授权(用户不理会);也很是理解现场同事的处境,想想办法吧!!!看看能不能兼顾一下。

于是乎,有了第一版方案:

编写一个函数封装判断逻辑,然后使用函数名替换原有的sudo ps -ef命令:

get_proc() {local raw=$(ps -ef)local is_full=$(echo "$raw"|grep -E '^[[:space:]]*root'|wc -l)if [ -n "$is_full" ] && [ $is_full -ge 1 ];thenecho "$raw"elsesudo ps -effi
}
get_proc

效果达到了,但是呢感觉还是有点臃肿了,能否一行搞定呢?遇事不决问AI

通过AI给的答复,灵感一闪:

(ps -ef | grep -qE '^[[:space:]]*root' && ps -ef || sudo ps -ef)

使用上面的代码替换sudo ps -ef;使用修改后的脚本扔给现场执行,解决了两难的情况

http://www.dtcms.com/a/479261.html

相关文章:

  • Java--网络编程(二)
  • 如何将网站转成小程序网站 微信 app
  • 若依框架下的接口测试
  • Unity网络开发--第三方协议工具Protobuf
  • 城阳网站建设公司wordpress首页文章缩略图插件
  • 兼职招聘网站中国最新军事新闻
  • MATLAB做一个简单的元胞自动机:森林火灾模拟
  • 嵌入式开发培训机构排名seo自动推广工具
  • 百度网盘公益解析网站下载限速一边去
  • 站酷网首页蛋糕店微网站
  • 2025年--Lc183--198. 打家劫舍(菲波那契数列类型)--Java版
  • linux系统中命令基础
  • 站酷网站建设合肥网建公司
  • 湖南旅游网站开发做毕业设计的网站
  • 安卓上谷歌35版本
  • 《架构设计精讲》学习笔记
  • Uvicorn在多核CPU上启动的参数workers
  • 宁波网站建设免费咨询手表
  • DDD架构——充血模型、领域模型
  • 【Linux系列】Vim 中删除当前光标到行尾
  • 建设银行手机网站首页域名访问过程会不会影响网站访问
  • 【1017】浮点型数据类型存储空间大小
  • 算法奇妙屋(六)-哈希表
  • Java基础加强14-File、字符的编码与解码、IO流、IO框架
  • [算法练习]Day 8: 变长滑动窗口
  • 做网站联系wordpress怎么做背景图片
  • 道路建设网站专题上海网站seo设计
  • asp.net做网站系统wordpress 首页不显示
  • GESP2025年9月认证C++四级( 第三部分编程题(1)排兵布阵)
  • 论文解读 -- A FOUNDATION MODEL FOR MUSIC INFORMATICS