小言_互联网的博客

Linux |组管理与权限管理 |rpm包管理 |yum包管理

353人阅读  评论(0)


一、组管理

在linux中的每个用户必须属于一个组,不能独立于组外。组信息会存放在/etc/group中。

1.1 文件所有者

文件的所有者一般为文件的创建者。但也可以通过指令修改文件所有者。

查看文件所有者指令 ls -ahl
修改文件所有者指令 chown 用户名 文件名

1.2 组的创建与修改

创建组 group 组名
修改文件所在组 chgrp 新组名 文件名
改变用户所在组 usermod -g 组名 用户名改变用户所在组;usermod -d 目录名 用户名 改变用户登录的初始目录

二、权限管理

这里的权限,指的是文件目录的权限。使用ls -l查看ok.txt文件的信息如下,下面对此信息做详细介绍。

-rw-r--r--. ⑤1rootroot05月 21 23:16ok.txt

①文件类型 ②文件所有者的权限 ③与文件所有者同组的其他用户的用户权限 ④不与文件所有者同组的其他用户的用户权限 ⑤number ⑥文件所有者 ⑦文件所在组 ⑧文件大小(字节) ⑨文件最后的修改时间 ⑩文件名

权限:r读权限,w写权限,-无权限
第①位确定文件类型:(d目录, -普通文件,l软连接,c字符设备,b块文件,x可执行文件)
第⑤位,如果是文件:显示硬链接数;是目录:显示子目录个数。
第⑧位,如果是文件:显示文件大小;是目录:显示4096。

注意:这些权限作用在目录和作用在文件上是不完全相同的。

2.2 修改权限

u:拥有者g:所在组o:其他用户a:所有人(u,g,o的总和)
r=4w=2x=1rwx=7
方法一:使用+-=变更权限;方式二:通过数字变更权限

方式一 方式二 说明
chmod u=rwx,g=rx,o=x 文件目录名 chmod 751 给目录拥有者rwx权限,所在组rx权限,其他用户x权限
chmod o+w 文件目录名 给文件的其他用户增加一个w权限
chmod a-x 文件目录名 给所有的用户都减掉一个x权限

2.3 修改文件所有者

chown newowner file 改变文件的所有者
chown -R newowner file 递归改变文件file目录下所有文件的所有者
chown newowner:newgroup file 同时改变用户的所有者和所有组

三、权限实践案例

存在police(警察组)bandit(土匪组),警察有A和B,土匪有C和D,

要求:
(1)创建police(警察组)bandit(土匪组)
(2)创建用户ABCD。
(3)用户A创建一个hello.txt文件,自己可以读写u=rw6,本组人可以读g=r4,其它组没有任何权限o0。
(4)用户A修改该文件,让其它组人可以读o=r, 本组人可以读写g=rw
(5)C投靠警察,查看看是否可以读写。

代码实践:

(1)
[root@fcal ~]# groupadd police
[root@fcal ~]# groupadd bandit
(2)
[root@fcal ~]# useradd -g police A
[root@fcal ~]# useradd -g police B
[root@fcal ~]# useradd -g bandit C
[root@fcal ~]# useradd -g bandit D
(3)
[A@fcal ~]$ ls -l
总用量 4
-rw-r--r--. 1 A police 6 5月  22 07:25 hello.txt
[root@fcal ~]# su - A
[A@fcal ~]$ chmod 640 hello.txt
(4)
[A@fcal ~]$ ls -l
-rw-r-----. 1 A police 6 5月  22 07:25 hello.txt
[A@fcal ~]$ chmod o=r,g=rw hello.txt
[A@fcal ~]$ ll
总用量 4
-rw-rw-r--. 1 A police 6 5月  22 07:25 hello.txt
(5)
[root@fcal ~]# usermod -g police C
[root@fcal ~]# id C
uid=503(C) gid=503(police) 组=503(police)
此时C并不能访问同组成员的目录,仍然需要手动更改成员目录的权限(更改后需要重新登录)

四、rpm包管理

rpm包介绍:rpm是一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。生成具有.rpm扩展名的文件,RPM(RedHat Package Manager,RedHat软件包管理工具)类似windows的setup.exe安装程序。Linux的分发版本都有采用(suse,redhat,centos等),几乎是公认的行业标准了。

rpm包的简单查询指令:rpm -qa | grep firfox(qa代表查询所有,grep代表过滤;查询是否有火狐)

rpm包的其它查询指令 说明
rpm -qa(一般配合grep和more使用) 查询所安装的所有rpm软件包
rpm -q 软件包名 查询软件包是否安装
rpm -qi 软件包名 查询软件包信息
rpm -ql 软件包名 查询软件包安装了哪些文件,目录在哪
rpm -qf 文件全路径名 查询文件所属的软件包

卸载rpm包
基本语法:rpm -e rpm包名称

删除firefox的rpm包

细节问题:如果其它软件包依赖于要卸载的软件包,卸载时会产生错误信息。此时可以通过rpm -e -nodeps rpm包名称强制删除,但不推荐。

安装rpm包
基本语法:rpm -ivh rpm包全路径名称(i安装,v提示,h进度条)

安装firefox的rpm包

五、yum包管理

yum介绍:Yum是一个Shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载rpm包并安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。

基本指令:

  • 查询yum服务器是否有需要安装的软件yum list | grep xx软件列表
  • 安装指定的yum包yum install xxx 下载安装

转载:https://blog.csdn.net/weixin_43691058/article/details/106258459
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场