umask 系统建立文件时默认保留的权力
umask 077 临时设定系统预留权限为077
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
作用:
只针对目录生效,当一个目录上有sticky权限时
在这个目录中的文件只能被文件的所有者删除
设定方式:
chmod o+t dir
chmod 1xxx dir
作用:
对文件:只针对二进制可执行文件
当文件上sgid时,任何人执行此文件产生的进程都属于文件的组
对目录:当目录有sgid时,任何人在此目录中建立的文件都属于目录的所有组
设定方式:
chmod g+s file|dir
chmod 2xxx file|dir
作用:
只针对二进制可执行文件
当文件上有suid时任何人执行这个文件中的程序产生的进程都属于文件的所有人
设定方式:
chmod u+s file
chmod 4xxx file
让特定的用户对特定的文件拥有特定的权限
-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-- 其他人的权限
setfacl -m u:username:rwx file 设定username对file拥有rwx权限
setfacl -m g:group:rwx file 设定group组成员对file拥有rwx权限
在权限列表中mask表示能生效的权力值
当用chmod减小开启acl的文件权限时,mask值会发生变化
恢复mask值
setfacl -m m:rwx westos
setfacl -m d:u:student:rwx /mnt/westos
“acl权限只针对设定完成之后新建立的文件或目录生效,而已经存在的文件是不会继承默认权限的”
gnome-system-monitor
常用命令
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 +正向排序(从小到大) -反向排序(从大到小)
S 进程状态
L 内存中有锁定空间
N 优先级低
< 优先级高
+ 前台运行(占用了终端)
s 顶级进程
-20~19
ps ax -o pid,nice,comm
renice -n 优先级数字 进程id
renice -n -5 6574 改变6574进程的优先级为-5
nice -n 优先级数字 进程名称
nice -n -5 vim & 开启vim并且指定程序优先级位-5
jobs 查看被打入环境后台的进程
ctrl+z 把占用终端的进程打入后台
fg jobsnum 把后台进程调回前台
bg jobsnum 把后台暂停的进程运行
comm & 让命令直接在后台运行
1 进程重新加在配置
2 删除进程在内存中的数据
3 删除鼠标在内存中的数据
9 强行结束单个进程(不可被阻塞)
15 正常关闭的进程
18 运行暂停的进程
19 暂停某个进程(不能被阻塞)
20 把进程打入后台
man 7 signal 查看信号详细信息
kill -信号 进程id
killall -信号 进程名字
pkill -u student -信号
top
1 显示cpu每个核的负载
s 调整刷新频率
c cpu负载排序
m 内存使用量排序
h 查看帮助
u 查看指定用户进程
k 对指定进程发起信号
q 退出
系统初始化进程可以对服务进行相应的控制
systemd 系统初始化进程
pstree 显示系统中的进程树
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=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)再在服务端把文件/目录从客户端下载到服务端:
上传文件/目录:
先把服务端的文件/目录删除,然后在客户端把文件/目录从客户端上传到服务端:
ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected] 加密root用户
出现authorized_keys文件时,表示加密成功
scp id_rsa [email protected]:/root/.ssh/
在客户主机中(172.25.254.117)
ssh [email protected] 连接时发现不需要输入root密码
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用户都在黑名单中):
*白/黑名单添加用户时,用空格隔开*
vim /etc/motd 文件内容就是登录后的信息显示
w 查看正在使用当前系统的用户
-f 查看使用来源
-i 显示IP
last 查看使用过并退出的用户信息
lastb 试图登录但没有成功的用户
远程复制,速度慢
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为绝对路径)
远程同步,速度快,默认会忽略文件属性,链接文件,设备文件
-r 同步目录
-p 同步权限
-o 同步文件所有人
-g 同步文件所有组
-t 同步时间
-l 同步链接文件
-D 同步设备文件
(1)在服务端创建文件并设置其权限及属主属组,然后同步到客户端:
(2)同步到客户端的文件与服务端文件的权限,属主,属组,时间皆相同:
tar
-c 创建
-x 解档
-v 显示过程
-f 指定归档文件名称
-t 查看归档文件内容
-r 添加文件到归档中
--get 解档指定文件
--delete删除归档中的指定文件
-C 指定解档目录
创建文档etc.tar,并上传文档到客户端:
将etc文件解档:
创建新文件file并将其归档至etc.tar:
删除文件file,再将file从etc.tar中解档,然后删除归档的file文件:
将etc解档到指定目录/mnt/中:
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,其余三种都可以打包压缩一步完成