linux -- 文件特殊权限和进程

<0>.建立目录和文件的默认权限[umask]

(1)umask ---> 查看系统目录默认预留权限位;文件默认预留权限位 ---> 目录权限减去<111>
在这里插入图片描述
(2)umask 007 ---> 临时修改系统目录默认预留权限位 为 007
在这里插入图片描述
(3) 永久修改系统umask值

	1).vim /etc/profile   系统配置文件,用户登陆后才会运行
	   if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
	      umask 002		普通用户的umask
	   else
	      umask 022		超级用户的umask
	   fi
	2).vim /etc/bashrc     shell的配置文件,系统启动自动运行
	   if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
	       umask 002
	    else
	       umask 022
	    fi
	3).source /etc/profile   更新修改后的命令;让更改立即生效
	4).source /etc/bashrc   更新修改后的命令;让更改立即生效

在这里插入图片描述

<1>.特殊权限位

1>.sticky   粘制位
   作用:只针对目录生效,当一个目录上有sticky权限时,在这个目录中的文件只能被文件的所有者和root用户删除
   设置方式:chmod o+t dir  或者  chmod 1XXX dir ---> 给目录加上粘制位

在这里插入图片描述
在这里插入图片描述

2>.sgid	强制位
    作用:对文件:只针对二进制可执行文件,当文件上有sgid时,任何人执行文件是以该文件所有组的身份去执行  
	对目录:当目录上有sgid时,任何人在此目录中建立的文件都属于目录的所有组
    设定方式:   chmod	g+s	file|dir
	       chmod	2xxx	file|dir

在这里插入图片描述
在这里插入图片描述

3>.suid	冒险位
	作用:只针对二进制可执行文件,当文件上有suid时,任何人执行这个文件中的程序产生的进程都属于文件的所有人
	设定方式:        chmod	u+s	file
			chmod	4xxx	file

在这里插入图片描述

<2>.acl列表( setfacl )

1>.作用:让特定用户拥有特定的权限
2>.acl列表的查看

[root@foundation13 mnt]# setfacl -m u:kiosk:rwx file
	-rw-rwxr--+ 1 root root 0 Oct  1 19:45 file
   注释 : 第 11 位为 . 时代表没有 acl 权限 ; 为 + 时代表有 acl 权限。
[kiosk@foundation13 mnt]$ getfacl file 	-----> 查看文件的acl权限
	# file: file    ----->查看acl开启后的文件的权限
	# owner: root    ----->文件名称
	# group: root   ----->文件所在组
	user::rw-   ----->文件所有人的权限
	user:kiosk:rwx   ----->指定用户的权限
	group::r--   ----->文件所在组的权限
	mask::rwx ------>能赋予用户的最大权限值
	other::r--   ----->其他人的权限
3>.acl列表的管理
	getfacl  file|dir ---> 查看文件的 ACL 权限
	setfacl -m <u|g|m>:<username|groupname>:rwx 文件名  ---> 给文件添加指定用户|组|mask的指定权限值
	setfacl -m d:<u|g|m>:<username|groupname>:rwx目录名  ---> 给目录添加指定用户|组|mask的指定权限值
	setfacl -x <u|g>:<username|groupname> 文件名 | 目录  ---> 移除指定用户|组在文件或者目录上的指定权限值
	setfacl -b 文件名 | 目录  ---> 移除文件或者目录上的所有acl值

在这里插入图片描述
在这里插入图片描述

4>.mask的值
在权限列表中mask表示能生效的最大权力值
当用chmod减小开启后acl的文件权限时,mask值会发生变化
	chmod g-w file----->看到减掉时的mask值
	setfacl -m m:rwx file----->恢复mask值
	setfacl -m d:u:student:rwx /mnt/file----->acl默认权限只针对目录设定
"acl权限只针对设定完成之后新建立的文件或目录生效,而已经存在的文件是不会继承默认权限的“

<3>.查看进程

图形查看    gnome-system-monitor
进程查看命令
ps	-A	---> 所有进程
	-a	---> 当前环境中运行的进程,不包含环境信息
	-u	---> 在当前环境中运行的进程
	 a	---> 在当前环境中运行的进程
	 x	---> 列出系统中所有运行包含tty输出设备
	 f	---> 列出进程的父子关系
	 e	---> 列出进程的详细信息(系统的资源调用)

<4>.进程常用的组合

ps	aux	---> 显示系统中所有进程并显示进程用户
ps	ef	---> 显示进程详细信息并显示进程父子关系
ps	ax	---> 显示当前系统中的所有进程

<5>.显示进程指定信息

ps	-o	xxx	---> 显示进程的指定信息
ps	-o	comm	---> 进程名称
		user	---> 进程所有人
		group	---> 进程所有组
		%cpu	---> 进程cpu使用率
		%mem	---> 进程内存使用率
		pid	---> 进程id
		nice	---> 进程优先级

<6>.进程排序

ps	ax	--sort=+%cpu    由低到高排序
		       -%cpu	有高到低排序

在这里插入图片描述

<7>.进程的优先级

S --->进程状态	s --->顶级进程	N --->优先级低	
+ --->前台运行	< --->优先级高	l --->内存中有锁定空间
优先级范围 ----> (-20~19)-20 最高,19 最低
优先级查看 ----> ps ax -o pid,nice,comm
改变进程优先级 ---->  renice -n 优先级数字	进程id
指定某个优先级开启进程:
	nice -n 优先级数字 进程名称 ---> 开启进程并且指定程序优先级,在前台运行
	nice -n -5 vim&  ---> 开启vim进程并且指定程序优先级为-5,在后台运行

在这里插入图片描述

<8>.环境中进程的前后台调用

jobs		--->查看被打入环境后台的进程
jobs -l		---> 查看当前 bash 的 job, 并显示该 job 的状态与 PID
ctrl+z		--->把占用终端的进程打入后台
fg jobsnum	--->把后台进程调回前台
bg jobsnum	--->把后台暂停的进程运行
comm &		--->让命令直接在后台运行

<9>.进程信号等级

常用进程信号等级
	1	进程重新加在配置
	2	删除进程在内存中的数据
	3	删除鼠标在内存中的数据
	9	强行结束单个进程(不可以被阻塞)
	15	正常关闭进程(可能会被阻塞)
	18	继续运行暂停的进程
	19	暂停指定进程,(不会被阻塞)
	20	暂停指定进程,(会被阻塞)
发起信号
	kill	信号	进程pid
	killal	信号	进程名称**加粗样式**
	pkill	信号	条件

<10>.信号的监控(top)

top:动态监控进程,查看进程信息
s: 修改进程刷新间隔时间
m: 根据内存占有率进行排序
c: 根据 cpu 占有率进行排序
u: 后面输入用户名 , 用来查看该用户发起的所有进程
k: 后面跟要作用的进程 pid, 和发起的信号 (eg:9,15,20) 用来给某个进程发起一信号
q: 退出进程查看界面
h: 显示 top 命令的帮助
1 ;显示cpu每个核的负载

猜你喜欢

转载自blog.csdn.net/hzyuhz/article/details/82980464