Linux——进程的优先级、ACL

一、系统性能调优

 Redhat7和centos7默认安装并启动了tuned服务

  实验

[root@user ~]# tuned-adm list                    //查看所有的调优方案

[root@user ~]# tuned-adm recommend         // 查看推荐的调优方案

virtual-guest

适用于作为虚拟机客户机运行的设备,基于throughput-performance策略

在throughput-performance策略基础上,修改了vm.dirty_ratio

vm.dirty_ratio 是 Linux 操作系统中与磁盘缓存相关的内核参数。这个参数指定了当文件系统缓存中的脏页(Dirty Pages)数量达到系统总内存(RAM)的某个百分比时,系统会开始同步地将这些脏页写回到磁盘中.

vm.dirty_ratio 参数的值表示了一个阈值

[root@user ~]# tuned-adm profile balanced //调整调优方案为指定的方案

[root@user ~]# tuned-adm active // 查看目前启用的调优方案

Current active profile: balanced

[root@user ~]#

[root@user ~]# tuned-adm auto_profile // 自动调整调优方案

[root@user ~]# tuned-adm active   // 查看目前启用的调优方案

二、进程优先级调整

计算进程优先级的公式:PRI (优先级) = PRI(初始优先级 80|20) + NICE(相对优先级 -20~19)

初识优先级的值不是不会发生改变的,以相对优先级作为调整优先级的方式。

优先级的值越高,优先级越低

# top查看优先级

nice // 创建进程的时候,为nice赋值

nice -n [-20-19] 命令

renice //重新设定NICE的值

renice -n  [-20-19]  进程PID

普通权限回顾

XXXX 用户 对于文件  具备xxx 权限

属主 属组 其他人

读  写  执行

三、ACL

(Access Control List/访问控制列表)

  • getfacl:获取某个文件/目录的ACL设置选项
  • setfacl:设置某个文件/目录的ACL规范

getfacl  [选项]  文件 ...

  -a,  --access           仅显示文件访问控制列表
  -d, --default           仅显示默认的访问控制列表
  -c, --omit-header       不显示注释表头
  -e, --all-effective     显示所有的有效权限
  -E, --no-effective      显示无效权限
  -s, --skip-base         跳过只有基条目(base entries)的文件
  -R, --recursive         递归显示子目录
  -L, --logical           逻辑遍历(跟随符号链接)
  -P, --physical          物理遍历(不跟随符号链接)
  -t, --tabular           使用制表符分隔的输出格式
  -n, --numeric           显示数字的用户/组标识
  -p, --absolute-names    不去除路径前的 '/' 符号
  -v, --version           显示版本并退出
  -h, --help              显示本帮助信息

setfacl [参数] 文件或者目录名
-b清空扩展访问控制列表策略
-d应用到默认访问控制列表
-k移除默认访问控制列表
-L跟踪符号链接文件
-m更改文件访问控制列表策略,不可与-x合用
-P找到符号链接对应的文件
-R递归处理所有子文件
-x根据文件中访问控制列表移除指定策略
--help显示帮助信息
--version

显示版本信息

最简单的【u:账号:权限】设置

设置规范为 【u/g/m:使用者账号/用户组名:rwx】

u:针对用户

g:针对用户组

m:针对有效权限

设置acl

 实验

[root@user ~]# useradd user1
[root@user ~]# ll /test/aaa
-r--r--r--. 1 student root 18 May  8 16:14 /test/aaa
[root@user ~]# setfacl -m u:user1:rw /test/aaa		//设置ACL
[root@user ~]# ll /test/aaa
-r--rw-r--+ 1 student root 18 May  8 16:14 /test/aaa
[root@user ~]# getfacl /test/aaa			//查看设置的ACL
getfacl: Removing leading '/' from absolute path names
# file: test/aaa
# owner: student
# group: root
user::r--
user:user1:rw-
group::r--
mask::rw-
other::r--[root@user ~]# setfacl -m u:1005:6 /test/aaa			//通过数字而不是字母表示权限
[root@user ~]# getfacl /test/aaa
getfacl: Removing leading '/' from absolute path names
# file: test/aaa
# owner: student
# group: root
user::r--
user:user1:rw-
user:1005:rw-
user:user2:r-x
group::r--
mask::rwx
other::r--[root@user ~]# setfacl -m u:student:1 /test/aaa
[root@user ~]# getfacl /test/aaa
getfacl: Removing leading '/' from absolute path names
# file: test/aaa
# owner: student
# group: root
user::r--
user:student:--x
user:user1:rw-
user:1005:rw-
user:user2:r-x
group::r--
mask::rwx
other::r--

 

  1. # file: test/aaa - 这是 ACL 应用到的文件或目录的路径。注意这里并没有前导的斜杠 /,这通常是因为 getfacl 命令在处理绝对路径时会自动去除它。
  2. # owner: root - 文件的属主是 root
  3. # group: root - 文件的属组也是 root
  4. user::rw- - 文件所有者(在这个例子中是 root)有读(r)和写(w)权限,但没有执行(x)权限。
  5. user:user1:rw- - 用户 user1 也有读和写权限。
  6. group::r-- - 文件所属的组(在这个例子中是 root 组)只有读权限。
  7. mask::rw- - mask 权限决定了除了文件所有者和其他用户之外的用户和组的最大权限。在这个例子中,mask 设置为 rw-,这意味着即使用户或组在 ACL 中被赋予了更多的权限,他们也只会被允许读和写。
  8. other::r-- - 其他用户只有读权限。

 设置掩码

m:针对有效权限

 有效权限(mask)的意思为规范最大允许范围,所以当mask的权限只有r时,redhat用户权限最大也只有r,x权限并不生效

[root@user ~]# ll /test/aaa
-r--rwxrwx+ 1 student root 18 May  8 16:14 /test/aaa
[root@user ~]# setfacl -m m::rw /test/aaa        //设置掩码
[root@user ~]# getfacl /test/aaa
getfacl: Removing leading '/' from absolute path names
# file: test/aaa
# owner: student
# group: root
user::r--
user:student:--x                #effective:---
user:user1:rw-
user:1005:rw-
user:user2:r-x                  #effective:r--
group::r--
mask::rw-
other::rwx

设置递归

[root@user ~]#

[root@user ~]# touch /test/one/abc

[root@user ~]# ll /test/one/

total 0

-rw-r--r--. 1 root    root    0 May  8 17:03 abc

-rw-rw-r--. 1 student student 0 May  8 16:20 bbb

drwxr-xr-x. 2 student root    6 May  8 16:15 yi

[root@user ~]# setfacl -R  -m u:user1:rX /test/one/ //递归到目前目录下所有的文件

[root@user ~]# getfacl /test/one/

getfacl: Removing leading '/' from absolute path names

# file: test/one/

# owner: student

# group: root

user::rwx

user:user1:r-x

group::r-x

mask::r-x

other::r-x

[root@user ~]# getfacl /test/one/abc

getfacl: Removing leading '/' from absolute path names

# file: test/one/abc

# owner: root

# group: root

user::rw-

user:user1:r--

group::r--

mask::r--

other::r--

[root@user ~]# getfacl /test/one/yi

getfacl: Removing leading '/' from absolute path names

# file: test/one/yi

# owner: student

# group: root

user::rwx

user:user1:r-x

group::r-x

mask::r-x

other::r-x

[root@user ~]# getfacl /test/aaa

getfacl: Removing leading '/' from absolute path names

# file: test/aaa

# owner: student

# group: root

user::r--

user:student:--x                #effective:---

user:user1:rw-

user:1005:rw-

user:user2:r-x                  #effective:r--

group::r--

mask::rw-

other::rwx

[root@user ~]# setfacl -x u:student /test/aaa //移除ACL条目

[root@user ~]# getfacl /test/aaa

getfacl: Removing leading '/' from absolute path names

# file: test/aaa

# owner: student

# group: root

user::r--

user:user1:rw-

user:1005:rw-

user:user2:r-x

group::r--

mask::rwx

other::rwx

设置继承

[root@user ~]# setfacl -m d:u:1005:rwX /test/one/ //设置默认,可以产生继承效果

                                                                                //即目录下新建文件和子目录 都有

                                                                                //这个默认的ACL

[root@user ~]# getfacl /test/one/

getfacl: Removing leading '/' from absolute path names

# file: test/one/

# owner: student

# group: root

user::rwx

user:user1:r-x

group::r-x

mask::r-x

other::r-x

default:user::rwx

default:user:1005:rwx

default:group::r-x

default:mask::rwx

default:other::r-x

[root@user ~]# getfacl /test/one/bbb //已存在文件不受继承效果影响

getfacl: Removing leading '/' from absolute path names

# file: test/one/bbb

# owner: student

# group: student

user::rw-

user:user1:r--

group::rw-

mask::rw-

other::r--

[root@user ~]# touch /test/one/ccc

[root@user ~]# getfacl /test/one/ccc //新建文件 收继承影响

getfacl: Removing leading '/' from absolute path names

# file: test/one/ccc

# owner: root

# group: root

user::rw-

user:1005:rwx                   #effective:rw-

group::r-x                      #effective:r--

mask::rw-

other::r--

[root@user ~]# mkdir /test/one/111

[root@user ~]# getfacl /test/one/111 //新建目录 收继承影响

getfacl: Removing leading '/' from absolute path names

# file: test/one/111

# owner: root

# group: root

user::rwx

user:1005:rwx

group::r-x

mask::rwx

other::r-x

default:user::rwx

default:user:1005:rwx

default:group::r-x

default:mask::rwx

default:other::r-x

[root@user ~]# touch /test/one/111/222

[root@user ~]# getfacl /test/one/111/222

getfacl: Removing leading '/' from absolute path names

# file: test/one/111/222

# owner: root

# group: root

user::rw-

user:1005:rwx                   #effective:rw-

group::r-x                      #effective:r--

mask::rw-

other::r--

[root@user ~]# setfacl -x d:u:1005 /test/one/111/ //移除默认ACL

[root@user ~]# getfacl /test/one/111/

getfacl: Removing leading '/' from absolute path names

# file: test/one/111/

# owner: root

# group: root

user::rwx

user:1005:rwx

group::r-x

mask::rwx

other::r-x

default:user::rwx

default:group::r-x

default:mask::r-x

default:other::r-x

 移除ACL

[root@user ~]# setfacl -b /test/aaa //移除所有的ACL

[root@user ~]# getfacl /test/aaa

getfacl: Removing leading '/' from absolute path names

# file: test/aaa

# owner: student

# group: root

user::r--

group::r--

other::rwx

[root@user ~]# ll /test/aaa //还原到没有ACL的状态了

-r--r--rwx. 1 student root 18 May  8 16:14 /test/aaa

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/9511.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

盘点2024年4月Sui生态发展,了解Sui近期成长历程!

2024年4月是Sui的活动月,10–11日聚焦全世界目光的Sui Basecamp会议如约而至,来自65个国家的超过1100人参加了这场在巴黎举办的Sui全球性活动。21日,Sui首届全球黑客松正式开放注册。同时,20日-28日,七天四场大陆地区重…

【数据结构】单链表专题详细分析

与其临渊羡鱼,不如退而结网。💓💓💓 目录 •✨说在前面 🍋知识点一:什么是链表? • 🌰1.链表的概念 • 🌰2.链表的结构 • 🌰3.链表的分类 🍋…

C++包装内置容器项目实战

问题1&#xff1a;template<class _Ty,class _Container set<_Ty> >用法 这里给出了一个模板类模板参数的定义&#xff0c;其中有两个模板参数&#xff1a;_Ty 和 _Container。这个模板类可以用来创建一个容器&#xff0c;其中存储的元素类型是 _Ty&#xff0c;容…

9.为什么有时候会“烫烫烫”——之函数栈桢

目录 1. 什么是函数栈帧 2. 理解函数栈帧能解决什么问题呢&#xff1f; 3. 函数栈帧的创建和销毁解析 3.1 什么是栈&#xff1f; 3.2 认识相关寄存器和汇编指令 3.3 解析函数栈帧的创建和销毁 小知识&#xff1a;烫烫烫~ Q&A 1. 什么是函数栈帧 我们在写C语言代码…

Element-ui el-table组件单选/多选/跨页勾选讲解

文章目录 一、el-table介绍二、el-table单选三、el-table多选四、el-table跨页勾选五、热门文章 一、el-table介绍 el-table 是 Element UI&#xff08;一个基于 Vue.js 的高质量 UI 组件库&#xff09;中的一个组件&#xff0c;用于展示表格数据。通过 el-table&#xff0c;你…

QT设计模式:模板模式

基本概念 模板模式&#xff08;Template Pattern&#xff09;是一种行为型设计模式&#xff0c;它定义了一个操作中的算法的模板&#xff0c;而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定步骤。 实现的模块有&#xff1…

AI智能分析高精度烟火算法EasyCVR视频方案助力打造森林防火建设

一、背景 随着夏季的来临&#xff0c;高温、干燥的天气条件使得火灾隐患显著增加&#xff0c;特别是对于广袤的森林地区来说&#xff0c;一旦发生火灾&#xff0c;后果将不堪设想。在这样的背景下&#xff0c;视频汇聚系统EasyCVR视频融合云平台AI智能分析在森林防火中发挥着至…

广告归因数据回传:打造低成本、高ROI的oCPX模型

优化成本、提升转化&#xff0c;这一直是App效果广告买量投放的两大核心目标。广告归因中的数据回传正是因此而生&#xff0c;在投放oCPX类智能出价时&#xff0c;通过数据回传&#xff0c;数据算法不断对模型进行调优&#xff0c;广告投放机器人就会变得更加地聪明和智能&…

计算机答辩常见问题汇总(一)

答辩过程中&#xff0c;老师问的问题一般都和你的设计有关&#xff0c;特别是设计中的一些关键技术&#xff0c;比如&#xff1a; 数据库链接方式&#xff0c;数据库设计中的 ER 图、范式等。一般不会太难&#xff0c;都是一些学过的知识。 用到的所有概念都了解&#xff08;…

鸿蒙原生应用元服务开发-Web相关说明

Web组件用于在应用程序中显示Web页面内容&#xff0c;为开发者提供页面加载、页面交互、页面调试等能力。 页面加载&#xff1a;Web组件提供基础的前端页面加载的能力&#xff0c;包括加载网络页面、本地页面、Html格式文本数据。 页面交互&#xff1a;Web组件提供丰富的页面交…

css 子元素 圆 均匀分布 展开动画

一般情况下使用scss就可以实现 import "math";#app {display: flex;align-items: center;justify-content: center;width: 200px;height: 200px;position: relative;border-radius: 50%;border: 1px solid #000;> span {position: absolute;display: flex;align-…

什么是HTTP/2?

HTTP/2&#xff08;原名HTTP 2.0&#xff09;即超文本传输协议第二版&#xff0c;使用于万维网。HTTP/2主要基于SPDY协议&#xff0c;通过对HTTP头字段进行数据压缩、对数据传输采用多路复用和增加服务端推送等举措&#xff0c;来减少网络延迟&#xff0c;提高客户端的页面加载…

Java数组(如果想知道Java中有关数组的知识点,那么只看这一篇就足够了!)

前言&#xff1a;数组对于每一门编程语言来说都是重要的数据结构之一&#xff0c;当然不同语言对数组的实现及处理也不尽相同,Java 语言中提供的数组是用来存储固定大小的同类型元素。 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSD…

PixelYourSite PRO插件下载:提升网站性能与用户体验的终极解决方案

在数字时代&#xff0c;网站的性能和用户体验是企业成功的关键。PixelYourSite PRO插件是专为WordPress网站设计的一款高效工具&#xff0c;旨在通过先进的像素管理和优化技术&#xff0c;提升网站加载速度&#xff0c;增强用户互动&#xff0c;从而显著提高转化率。 一、为什…

智慧便民小程序源码系统 求职招聘+房产出租+相亲交友 带完整的安装代码包以及系统搭建教程

在数字化、智能化的今天&#xff0c;我们的生活节奏越来越快&#xff0c;对于各种服务的需求也越发多元化和个性化。为了满足广大市民对于便捷、高效、全面的服务需求&#xff0c;罗峰给大家分享一款智慧便民小程序源码系统&#xff0c;集求职招聘、房产出租、相亲交友三大功能…

深入理解指针(4)

目录 1. 字符指针变量2. 数组指针变量2.1 数组指针变量是什么&#xff1f;2.2 数组指针变量怎么初始化 3. ⼆维数组传参的本质4. 函数指针变量4.1 函数指针变量的创建4.2 函数指针变量的使⽤4.3 两段有趣的代码4.3.1 typedef 关键字 5. 函数指针数组6. 转移表 1. 字符指针变量 …

Redis7降级到Redis6如何AOF备份恢复(错的)

Redis7降级到Redis6如何AOF备份恢复&#xff08;错的&#xff09; 前提&#xff1a;从始至终开启AOF 介绍的Docker安装的Redis&#xff0c;不是Docker也一样&#xff0c;差不多 一、data目录差异 redis版本7 - /data/appendonlydir - appendonly.aof.manifest - appendo…

条件变量详解

概述 条件变量是限制线程执行的一种机制&#xff0c;即在某些条件满足之前限制线程的执行。这种限制的目的&#xff0c;大多是为了减少线程之间信息闭塞&#xff0c;达到线程同步&#xff0c;从而提高线程之间的通信效率。 线程中访问共享数据的代码常常带有一定的逻辑顺序&a…

处理解决python

1、问题现象&#xff1a; ModuleNotFoundError: No module named pkg_resources 2、解决方案 安装pip install setuptools即可解决&#xff1a;

Windows环境下VSCode C无法跳转自动补全

前言&#xff1a; 本文记录了自己在配置 Windows环境下 VSCode C开发环境的遇到的问题和解决方法。 参考: vscode c语言没有代码提示_clangd提示不生效-CSDN博客 VSCODE无法跳转_vscode 不能跳转-CSDN博客 vscode c/c环境配置&#xff08;MinGW&#xff09;调用第三官方库…