Linux操作系统概述(二)

6.umask

umask 系统建立文件时默认保留的权力

1)临时修改umask

umask 077 临时设定系统预留权限为077

目录:700
文件:600
在这里插入图片描述

2)永久修改umask

vim /etc/profile 系统配置文件

if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
    umask 002     普通用户的uamsk值
else
    umask 022     超级用户的uamsk值
fi

在这里插入图片描述

vim /etc/bashrc shell的配置文件

if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
    umask 002     普通用户的umask值
else
    umask 022	  超级用户的umask值
fi

在这里插入图片描述
source /etc/profile 让更改立即生效
source /etc/bashrc
在这里插入图片描述

7.特殊权限

1)sticky 粘制位

作用:
只针对目录生效,当一个目录上有sticky权限时
在这个目录中的文件只能被文件的所有者删除

设定方式:

	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

在这里插入图片描述

8.acl权限列表

1)作用

让特定的用户对特定的文件拥有特定的权限

2)acl列表查看
-rw-r--r--+ 1 root root     0 Oct  1 19:15 file
	  ^
	acl开启

getfacl		查看acl开启的文件的权限

# file: file	文件的名称
# owner: root	文件的所有者
# group: root	文件的所有组	
user::rw-	文件所有人的权限
user:tom:rwx	指定用户的权限
group::r--	文件所有组的权限
mask::rwx	能赋予用户的最大权力阀值
other::r--	其他人的权限

在这里插入图片描述

3)acl列表的管理
setfacl -m u:username:rwx file		设定username对file拥有rwx权限
setfacl -m g:group:rwx file	 	设定group组成员对file拥有rwx权限

在这里插入图片描述
去掉group组成员对file的权限:
在这里插入图片描述

4)mask值

在权限列表中mask表示能生效的权力值
当用chmod减小开启acl的文件权限时,mask值会发生变化

chmod g-w westos 看到减掉的时mask值
在这里插入图片描述

恢复mask值

setfacl -m m:rwx westos 

在这里插入图片描述
acl默认权限只针对目录设定

setfacl -m d:u:student:rwx /mnt/westos

在这里插入图片描述
在这里插入图片描述
“acl权限只针对设定完成之后新建立的文件或目录生效,而已经存在的文件是不会继承默认权限的”
在这里插入图片描述

第六单元 系统进程及服务的控制

1.什么是进程

1)图形方式查看
gnome-system-monitor
2)进程查看命令

常用命令

ps	-A	所有进程
ps 	-a	当前环境中运行的进程,不包含环境信息
ps	-u	显示进程用户信息
ps	a	在当前环境中运行的进程
ps	x	列出系统中所有运行包含tty输出设备
ps	f	显示进程的父子关系
ps	e	显示进程的详细信息(系统的资源调用)

常用组合

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

显示进程指定信息

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

ps ax -o xxx	显示所有进程的指定信息

在这里插入图片描述
进程排序

ps ax --sort=+%cpu|-%cpu
ps ax --sort=+%mem|-%mem	+正向排序(从小到大) -反向排序(从大到小)

grep 过滤
grep -v 反向过滤
在这里插入图片描述

2.进程优先级

S	进程状态
L	内存中有锁定空间
N	优先级低
<	优先级高
+	前台运行(占用了终端)
s	顶级进程
1)优先级范围

-20~19

2)优先级查看
ps ax -o pid,nice,comm

在这里插入图片描述

3)改变进程优先级
renice -n   优先级数字	进程id
renice -n   -5 		6574		 改变6574进程的优先级为-5

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

4)指定某个优先级开启进程
nice -n   优先级数字	进程名称
nice -n   -5 		vim & 		 开启vim并且指定程序优先级位-5

在这里插入图片描述

3.环境中进程的前后台调用

jobs 查看被打入环境后台的进程
ctrl+z 把占用终端的进程打入后台
fg jobsnum 把后台进程调回前台
bg jobsnum 把后台暂停的进程运行
comm & 让命令直接在后台运行

4.进程信号

1)常用进程信号等级

1 进程重新加在配置
2 删除进程在内存中的数据
3 删除鼠标在内存中的数据
9 强行结束单个进程(不可被阻塞)
15 正常关闭的进程
18 运行暂停的进程
19 暂停某个进程(不能被阻塞)
20 把进程打入后台

man 7 signal 查看信号详细信息

2)进程信号管理
kill 	-信号	   进程id
killall	-信号	   进程名字
pkill	-u student -信号

5.进程的动态监控

top

1	显示cpu每个核的负载
s	调整刷新频率
c	cpu负载排序
m	内存使用量排序
h	查看帮助
u	查看指定用户进程
k	对指定进程发起信号
q	退出

6.控制服务

1)什么是服务
2)用什么控制服务

系统初始化进程可以对服务进行相应的控制

3)当前系统初始化进程是什么

systemd 系统初始化进程
pstree 显示系统中的进程树

4)进程控制命令
ssh------>sshd
client	 server

systemctl			服务控制命令
systemctl	status	sshd	查看服务状态,inactive(不可用),active(可用)
systemctl	start	sshd	开启服务
systemctl	stop	sshd	关闭服务
systemctl	restart	sshd	重启服务
systemctl	reload	sshd	重新加载服务配置
systemctl	enable	sshd	设定服务开机启动
systemctl	disable	sshd	设定服务开机不启动
systemctl	list-units 	列出已经开启服务的当前状态
systemctl	list-unit-files	列出所有服务开机启动状态
systemctl	list-dependencies		列出服务依赖
systemctl	set-default multi-user.target	设定系统启动级别为多用户模式(无图形)
systemctl	set-default graphical.target	设定系统启动级别为图形模式

启动图形模式
init 5
startx

查看服务状态:
(1)可用:
在这里插入图片描述
(2)不可用:
在这里插入图片描述
开启服务:
在这里插入图片描述
关闭并重启服务:
在这里插入图片描述

第七单元 sshd服务

1.sshd简介

sshd=secure shell
可以通过网络在主机中开启shell的服务

客户端软件
ssh

远程连接:
ssh username@ip 文本模式的连接
ssh -X username@ip 可以在连接成功后打开图形

注意:
第一次连接陌生主机时需要建立认证文件
会询问是否建立,需要输入yes
再次连接此主机时,因为已经生成~/.ssh/know_hosts

物理机连接虚拟机:
在这里插入图片描述
远程复制:

	scp	file		root@ip:dir	上传文件(dir为绝对路径)
	scp	root@ip:file	dir		下载文件(file为绝对路径)

	scp -rp	test		root@ip:dir	上传目录(dir为绝对路径)
	scp -rp	root@ip:test	dir		下载目录(test为绝对路径)

下载文件/目录:

(1)先在客户端建立文件/目录:
在这里插入图片描述
(2)再在服务端把文件/目录从客户端下载到服务端:
在这里插入图片描述
上传文件/目录:
先把服务端的文件/目录删除,然后在客户端把文件/目录从客户端上传到服务端:
在这里插入图片描述

2.sshd的key认证

1)生成密钥

ssh-keygen 生成密钥命令
在这里插入图片描述

2)加密服务

ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.167 加密root用户
出现authorized_keys文件时,表示加密成功
在这里插入图片描述

3)分发钥匙

scp id_rsa root@172.25.254.117:/root/.ssh/
在这里插入图片描述
在这里插入图片描述

4)测试

在客户主机中(172.25.254.117)
ssh root@172.25.254.67 连接时发现不需要输入root密码
在这里插入图片描述

3.sshd的安全设定

PasswdAuthentication yes/no 是否允许用户通过密码做sshd认证
(1)在服务端打开文件/etc/ssh/sshd_config,找到PasswdAuthentication 将yes改为no,保存退出,然后重启服务:
在这里插入图片描述
在这里插入图片描述
(2)再在客户端连接服务端时,密码认证会被拒绝(在没有服务端给的密钥的情况下):
在这里插入图片描述

PermitRootLogin yes/no 是否允许root用户通过sshd服务的认证
(1)在服务端打开文件/etc/ssh/sshd_config,找到PermitRootLogin将yes改为no,保存退出,然后重启服务:
在这里插入图片描述
(2)再在客户端连接服务端时,student用户通过认证而root用户不被认证:
在这里插入图片描述
AllowUsers student 设定白名单,白名单出现,默认不在白名单中的用户不能使用sshd
(1)在服务端打开文件/etc/ssh/sshd_config,设定白名单,保存退出,然后重启服务:
在这里插入图片描述
(2)再在客户端连接服务端时,student用户通过认证而westos用户不被认证(student用户在白名单中):
在这里插入图片描述

DenyUsers student westos 设定黑名单,黑名单出现,默认不在黑名单中的用户可以使用sshd
(1)在服务端打开文件/etc/ssh/sshd_config,设定黑名单,保存退出,然后重启服务:
在这里插入图片描述
(2)再在客户端连接服务端时,student用户和westos用户都不被认证(student用户和westos用户都在黑名单中):
在这里插入图片描述

*白/黑名单添加用户时,用空格隔开*

4.添加sshd登录信息

vim /etc/motd 文件内容就是登录后的信息显示

5.用户的登录审计

w		查看正在使用当前系统的用户
	-f	查看使用来源
	-i	显示IP

last		查看使用过并退出的用户信息
  
lastb		试图登录但没有成功的用户

第八单元 文件在系统中的传输

1.scp

远程复制,速度慢

scp	file		root@ip:dir	上传文件(dir为绝对路径)
scp	root@ip:file	dir		下载文件(file为绝对路径)

scp -rp	test		root@ip:dir	上传目录(dir为绝对路径)
scp -rp	root@ip:test	dir		下载目录(test为绝对路径)

2.rsync

远程同步,速度快,默认会忽略文件属性,链接文件,设备文件

-r	同步目录
-p	同步权限
-o	同步文件所有人
-g	同步文件所有组
-t	同步时间
-l	同步链接文件
-D	同步设备文件

(1)在服务端创建文件并设置其权限及属主属组,然后同步到客户端:
在这里插入图片描述

(2)同步到客户端的文件与服务端文件的权限,属主,属组,时间皆相同:
在这里插入图片描述

3.打包

tar
	-c	创建
	-x	解档
	-v	显示过程
	-f	指定归档文件名称
	-t	查看归档文件内容
	-r	添加文件到归档中
	--get	解档指定文件
	--delete删除归档中的指定文件
	-C	指定解档目录

创建文档etc.tar,并上传文档到客户端:在这里插入图片描述
将etc文件解档:
在这里插入图片描述
创建新文件file并将其归档至etc.tar:
在这里插入图片描述
删除文件file,再将file从etc.tar中解档,然后删除归档的file文件:
在这里插入图片描述
将etc解档到指定目录/mnt/中:
在这里插入图片描述

4.压缩

zip
	zip -r 	xxx.tar.zip	xxx.tar	压缩
	unzip  	xxx.tar.zip		解压

gz
	gzip	xxx.tar			压缩
	gunzip	xxx.tar.gz		解压
	====
	tar zcf	xxx.tar.gz  /xxx	压缩
	tar zxf	xxx.tar.gz		解压

bz2
	bzip2	xxx.tar			压缩
	bunzip2	xxx.tar.bz2		解压
	====
	tar jcf	xxx.tar.bz2  /xxx	压缩
	tar jxf	xxx.tar.bz2		解压

xz
	xz	xxx.tar			压缩
	xunz	xxx.tar.xz		解压
	====
	tar Jcf	xxx.tar.xz  /xxx	压缩
	tar Jxf	xxx.tar.xz		解压

除zip,其余三种都可以打包压缩一步完成

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值