【北京迅为】《STM32MP157开发板嵌入式开发指南》- 第十二章 Linux 权限管理

时间:2024-09-30 18:13:14

iTOP-STM32MP157开发板采用ST推出的双核cortex-A7+单核cortex-M4异构处理器,既可用Linux、又可以用于STM32单片机开发。开发板采用核心板+底板结构,主频650M、1G内存、8G存储,核心板采用工业级板对板连接器,高可靠,牢固耐用,可满足高速信号环境下使用。共240PIN,CPU功能全部引出:底板扩展接口丰富底板板载4G接口(选配)、千兆以太网、WIFI蓝牙模块HDMI、CAN、RS485、LVDS接口、温湿度传感器(选配)光环境传感器、六轴传感器、2路USB OTG、3路串口,CAMERA接口、ADC电位器、SPDIF、SDIO接口等


第十二章 Linux 权限管理

本章内容对应视频讲解链接(在线观看):https://www.bilibili.com/video/BV1M7411m7wT?p=14

12.1 为什么要管理 linux 权限?

Ubuntu 是一个支持多用户的操作系统,我们可以给不同的使用者创建各种账号,每个使用者有自己的账号来登录,好处就是可以很好地管理每个用户,我们也可以控制每个用户对系统权限的访问。我们在安装ubuntu的时候,我们创建的是名为 topeet 的用户,我们登录 ubuntu 时也是用的这个账号,登录 ubuntu ,一般会进到这个用户的家目录,所以我这里是处在 topeet 这个用户的家目录下,此时我们可以在这个目录下创建和修改文件。

初次创建的用户要比普通用户有更多的权限。我们作为嵌入式开发人员,系统的所有权限都要为我们打开,这也就是之前为什么没有给大家着重的介绍添加用户命令和删除用户命令,因为我们一般都是自己一个人在用,我们不会给别人来使用我们的 ubuntu 系统,因为我们初次创建的用户要比普通用户有更多的权限,也就是说,我们现在是处在我们初次创建的用户这个状态下。我们也不能随便的在根目录下乱删东西,我们进到根目录,在这个目录下,我们不能随便使用 rm -rf 命令,虽然说我现在的是普通用户,但是我们也不能随便乱删,如果乱删了的话可能系统估计就会崩溃了。

Ubuntu 的用户分为三类:

1 root(超级用户)

2 系统初次创建的用户表,比如 topeet

3 安装完系统之后创建的用户

用户的信息全部被保存在 /etc/passwd 文件里面

我们看这个文件,可以看到每个用户都有两组数据,比如说topeet,它的第一组数据为 1000 ,第一个 1000代表的用户的 uid ,第二个代表的是用户的 gid ,ubuntu里通过用户组来划分不同的用户,而每个用户通过uid 来区分,我们了解下就可以了。如下图所示。

12.2 Ubuntu的文件权限

比如说我们使用 ls -l 命令,对于文件一般有三个权限,读权限 r ,写权限 w ,执行权限 x 。

 

9个英文字符划分成三组,每三个字母为一组

第一组: rw- 文件拥有者的权限  topeet用户对myfile 有rw 权限,没有执行权限。

第二组: rw- 文件拥有者所在用户组的权限   与topeet 文件拥有者所在 topeet 组的用户可以读写,但是不能执行。

第三组: r-- 其他用户的权限 不与文件拥有者在同一个组的用户权限是只能读,不能写和执行

 

第三列: topeet 代表文件拥有者

第四列:topeet文件拥有者所在的组

文件的权限不仅可以用字母来表示,也可以使用二进制来表示,

 

字母

二进制

十进制

r

100

4

w

010

2

x

001

1

因为我们每个文件的权限是由9位来表示的,每3位为一组,这样我们就可以组合成8 种不同的情况,

权限

二进制

十进制

第一种组合

---

000

0

第二种组合

--x

001

1

第三种组合

r--

100

4

第四种组合

-w-

010

2

第五种组合

-wx

011

3

第六种组合

r-x

101

5

第七种组合

rw-

110

6

第八种组合

rwx

111

7

文件的权限是对应的十进制数,也就是每个权限的位相加的结果,比如说可读可写可执行,就是 rwx权限,用十进制来表示就是 4+2+1=7 ,

rw-   6    4+2=6

rw-    6    4+2=6

r--      4   4+0+0=4

664 为 myfile 文件的权限

12.3 chmod 命令

功能:修改文件或者文件夹的权限

chmod 参数 权限 文件名

给 myfile文件一个777 的权限,使用

chmod 777 myfile.c