目录
- centos和Ubuntu的软件包管理常见命令
进程管理
用户权限管理(umask)
特殊权限(SetUID、SetGID、Sticky BIT)
SUID
SGID
SBIT
Centos和Ubuntu的包管理常见命令
操作\系统 | Ubuntu | CentOS |
包管理命令 | apt\apt-cache\apt-get | yum |
更新已安装的包 | apt upgrade | yum update |
搜索安装包 | apt search package | yum search [all] package |
查看已安装的包的信息 | apt show package | yum info package |
更新软件库 | apt update | yum update |
显示包的当前安装状态 | dpkg -s package | yum info package |
安装包 | apt install [-y] package | yum install [-y] package |
从本地文件安装 | 1、安装本地的包无需补充安装依赖文件:dpkg -i package.deb 2、安装 gdebi,然后使用 gdebi 安装package.deb并处理缺失的依赖:apt install -y gdebi &&gdebi package.deb | yum install package.rpm |
删除包 | apt remove package [-- purge] | yum remove package |
列出所有apt/yum库中的安装包 | apt list | yum list [匹配名] |
显示所有的可安装的包 | apt list | yum list available [匹配名] |
显示所有可更新的已安装的软件包 | apt list --upgradeable | yum list updates |
显示已安装的包 | apt list--installed | yum list installed |
显示最近安装的 | apt show | yum list recent |
清除本地缓存 | apt clean | yum clean all |
列出包的依赖 | apt depends package | yum deplist package |
进程管理
ps -ef/aux 查看进程
USER | 启动这些进程的用户 |
PID | 进程ID |
%CPU | 进程的CPU占比 |
%MEN | 占用内存的百分比 |
VSZ | 占用虚拟内存的大小/KB |
RSS | 占用物理内存的大小/KB |
STAT | 程序目前的状态 |
R/S/T/Z/D | 程序正在运作/休眠/停止/僵尸/不可中断 |
</N/L/s/l/+ | 表示进程运行在最高优先级/最低优先级/有页面锁定在内存/是控制进程/是多线程/运行在前台 |
START | 该process被触发启动的时间 |
TIME | 该process实际使用CPU运作的时间 |
COMMAND | 程序的实际指令 |
uptime 服务器当前时间 运行时长 当前用户数 负载均衡
top 动态获取系统当前状态
第1行 | 系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低) |
第2行 | 进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数 |
第3行 | 用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等 |
第4行 | 物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量 |
第5行 | 虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量 |
第6行 | PID/USER/PR/NI/VIRT/RES/SHR/S/%CPU/%MEN/TIME+/COMMAND |
PR | 进程优先级 |
kill [-9] PID [强制]结束进程
用户权限管理(umask)
linux通过配置权限来控制不同用户对不同文件是否可以进行读写执行。每个用户被创建都会默认被赋予一个权限码,每个文件、目录被创建也会默认赋予初始权限,
命令 | 解释 |
umask | 获取当前用户权限掩码 |
root用户默认是0022 | 普通用户默认是 0002 |
umask权限第 1 个数 | 代表的是用户所具有的特殊权限(SetUID、SetGID、Sticky BIT) |
umask权限后 3 位数字 | 4/2/1 4/2/1 4/2/1(4读、2写、1执行) |
文件和目录的真正初始权限 | 文件(或目录)的初始权限 = 文件(或目录)的最大默认权限 - 创建文件(目录)的用户的umask权限码 |
对文件来讲 | 其可拥有的最大默认权限是 666 |
对目录来讲 | 其可拥有的最大默认权限是 777 |
umask xxx | 临时修改umask,一旦重启或重新登陆系统,就会失效 |
vim /etc/profile | 找到umask配置项,永久修改 |
特殊权限(SetUID、SetGID、Sticky BIT)
SUID
SUID 特殊权限仅适用于可执行文件,所具有的功能是,只要用户对设置有 SUID 的文件有执行权限,那么当用户执行此文件时,会以文件所有者的身份去执行此文件,一旦文件执行结束,身份的切换也随之消失。
- 只有可执行文件才能设定 SetUID 权限,对目录设定 SUID,是无效的。
- 用户要对该文件拥有 x(执行)权限。
- 用户在执行该文件时,会以文件所有者的身份执行。
- SetUID 权限只在文件执行过程中有效,一旦执行完毕,身份的切换也随之消失。
SGID
当 s 权限位于所属组的 x 权限位时,就被称为SetGID,简称 SGID 特殊权限。
- SGID 只针对可执行文件有效,换句话说,只有可执行文件才可以被赋予 SGID 权限,普通文件赋予SGID 没有意义。
- 用户需要对此可执行文件有 x 权限;
- 用户在执行具有 SGID 权限的可执行文件时,用户的群组身份会变为文件所属群组;
- SGID 权限赋予用户改变组身份的效果,只在可执行文件运行过程中有效;
SBIT
SBIT 权限仅对目录有效,一旦目录设定了 SBIT 权限,则用户在此目录下创建的文件或目录,就只有自己和 root 才有权利修改或删除该文件。
SUID | 4 |
SGID | 2 |
SBIT | 1 |
在设定的rwx数字值前面添加三种特殊权限的数字(及其组合)即可设置 | |
执行chmod 4755 文件名命令,就完成了-rwsr-xr-x 权限的设定 | |
chmod6755,就完成了-rwsr-sr-x 权限的设定 | |
也可以通过 “u+/-s” 给文件赋予/撤销 SUID 权限; 通过 “g+/-s” 给文件或目录赋予/撤销 SGID 权限; 通过 “o+/-t” 给目录赋予/撤销 SBIT 权限。 | |
chmod u+/-s 文件名 | 给文件赋予/删除 SUID 权限 |
chmod g+/-s 文件名 | 给文件赋予/删除 SGID 权限 |
chmod o+/-t 文件名 | 给文件赋予/删除 SBIT 权限 |