linux系列(三)---文件权限的管理 ,修改, 权限列表 , 进程及服务的控制与管理
一.文件权限的控制
1.权限存在的意义--->为了更好的约束用户的权力范围,可以精确到让谁可读可写,也为了信息的安全
2.权限的识别命令
ls -l file--->针对文件而言 ls -d dir--->针对文件夹
3.权限的查看与理解
首先在mnt中建立3个文件(file1.file2.file3)和一个目录westos,包含(filea.fileb.filec)。
首先先通过一个file1的例子对文件权限进行详解
- rw- r-- r--. 1 root root 0 Aug 16 06:13 file1
(1) - :表示文件的类型
文件的类型:
- - 普通文件
- d 目录
- | 软链接(快捷方式)
- s socket 套接字
- c 字符设备
(2)文件权限的2-10位 前三位针对用户user而言,中间三位针对用户组group而言,后三位针对其他人other而言
具体权限在下面会说到 r--->可读 w-->可写 x-->可执行 rw- r-- r--.
(3)文件硬链接的个数,也就是文件被系统记录的次数,首次建立为1,复制次数会增加,删除次数会减少
(4)root 文件的所有人
(5)root 文件拥有组
(6)0 文件的大小
(7)Aug 16 06:13 文件最后一次被修改的日期
(8)file1 文件的名称
接下来通过一个westos目录的例子对目录权限进行详解(重点记住文件与目录的区别,红色字体)
- rwx r-x r-x. 2 root root 42 Aug 16 06:13 westos
(1) - :表示文件的类型
(2)文件权限的2-10位 前三位针对用户user而言,中间三位针对用户组group而言,后三位针对其他人other而言
具体权限在下面会说到 r--->可读 w-->可写 x-->可执行 rw- r-- r--.
(3)目录中子目录的个数
(4)root 文件的所有人
(5)root 文件拥有组
(6)子文件或者子目录中元数据的大小---也就是描述数据的数据(属性)
(7)Aug 16 06:13 文件最后一次被修改的日期
(8)westos 目录的名称
4.修改文件用户的用户组
修改操作之前的用户权限监控页面(watch -n 1 ls -Rl /mnt/)
- chown username /dir/file 只修改文件的用户名
- chgrp group /dir/file 只修改文件的用户组
- chown username.group /dir/file 或者 chown username|group /dir/file 既修改文件的用户名也修改文件的用户组 操作如下图:
- chown -R username dir 把整个目录下的所有下级目录及文件的用户名均修改
- chgrp -R group dir 把整个目录下的所有下级目录及文件的用户组均修改
- 操作如下图
5.文件的权限
(1)文件权限的作用
r 可读---> 对文件而言 是否可以查看文件中的字符
--->对目录而言 是否可以查看目录中的文件
w 可写---> 对文件而言 是否可以改变文件中记录的字符
--->对目录而言 是否可以在目录中管理文件,是否可以更改目录中文件的元数据
x 可执行-->对文件而言 是否可以通过文件名称调用文件中记录的程序
-->对目录而言 是否可以进入目录
(2)权限的管理 chmod 更改权限
<1>以字符的形式修改 chmod <u|g|o> <+|-|=> <r|w|x> 文件路径 eg: chmod u+r /mnt/file1
w 可写,会造成程序的不安全,所以当在给ugo+w时,ugo不可以省略,而在ugo+r,ugo+x,ugo可以省略
<2>以数字的形式
x 2*0*0|1=0|1 w 2*1*0|1=0|2 r 2*2*0|1=0|4
r,w,x=0时,表示不具有该权限,当具有可读权限时,r=4,当具有可写权限时,w=2,当文件具有可执行权限时,x=1;
共有8中排列组合
eg:chmod 755 /mnt/file1 ====chmod rwxr_xr_x 表示file1,对用户可读可写可执行,对用户组可读可执行,对其他人可读可执行
6.权限列表:特定用户对特定文件由指定的权限,用来设置与已有用户的冲突,在文件权限后有+表示权限列表开启
命令操作:
getfacl file 查看用户的文件的权限列表内容
setfacl -m u:dmin:755 /mnt/file1 设定列表用户的权限
setfacl -x u:admin /mnt/file1 删除列表中的指定用户
setfacl -b file 关闭权限列表
操作如下图:
二.进程及服务的控制
1.什么是进程?进程是正在运行的程序
2.图形的进程查看方式 gnome-system-monitor
3.查看进程命令 whatis gedit
ps 查看进程
ps a 包含当前环境的相关进程---与上图的区别:包含了当前环境的进程,比如background
ps -A|-e 查看所有进程
ps -a 不包含当前环境进程,在当前终端运行的进程--->也就是在shell中运行的命令
ps x 查看含有输出终端的进程
ps f 查看进程的从属关系
ps u 查看进程的所有人
ps l 长列表显示
ps ax -o comm,%CPU,%mem,pid,nice,user,group,stat 输出进程的名字,CPU,内存,pid,优先级,用户,用户组
正排序:ps ax --sort=%mem 按照CPU正序排列进程
逆排序;ps ax --sort=-%mem 按照进程逆序排列进程
4.进程的优先级,负数越小,说明优先级越高
进程的状态
S 进程状态运行中
s 此优先级为顶级进程
T 进程是暂停的
< 进程的优先级高
N 进程的优先级低
l 进程在内存中有锁定空间
renice -n 5 2580 :修改进程
nice -n 5 vim& :指定优先级开启进程
5.进程前后台的调用
[1] + 优先被调用,默认调用 [1]- 不优先被调用
ctrl+c:将占用当前终端的进程结束
ctrl+z:将占用终端的进程打入后台停止运行
jobs:查看被打入后台的进程
bg jobsnum:将指定进程在后台运行
fg jobsnum:将指定进程调入前台
6.信号
1 进程不停止情况下重新加载配置
2 清除进程在内存中的数据
3 清除鼠标在内存中的数据
9 强行结束进程
kill -9 gedit
15 正常关闭
kill -15 gedit
18 运行停止的进程
19 暂停进程,不能被阻塞
20 暂停进程
暂停进程,运行停止的进程如下:
kill 信号 pid
killall 信号 进程名称 killall -9 vim 将所有的vim进程全部都关掉
课外知识,
查看虚拟机 ip ifconfig eth0
控制别人的电脑 ssh -x [email protected]
7.服务的控管
systemctl start sshd 开启服务
systemctl stop sshd 关闭服务
systemctl status sshd 查看服务状态
systemctl restart sshd 重启服务
systemctl enable|disable 开机启动,开机不启动
命令操作---->systemctl disable abrtd.service
systemctl list-units 列出系统中运行的服务
systemctl list-units-files 列出系统中服务开机状态
systemctl list-dependencies sshd 列出服务依赖关系
systemctl mask sshd 冻结服务
systemctl unmask sshd 解锁服务
systemctl set-default multi-user.target 开机不启动图形界面
systemctl set-default graphical.target 开机自启动图形界面