Linux权限管理
1. Linux权限管理
Ubuntu 是一个支持多用户的操作系统,可以给不同的使用者创建不同的账号,并且可以控制每个用户对系统权限的访问,以此对用户进行管理。在进行 ubuntu 安装的时候,创建的用户名为 topeet ,进入 ubuntu 之后,一般会进到该用户的家目录,可以在 topeet 目录下创建和修改文件。
初次创建的用户要比普通用户有更多的权限。作为嵌入式开发人员,系统的所有权限都要为我们打开,而且该系统一般都是自己单独使用。在根目录下,不要随便使用 rm -rf 命令,如果误删了某些文件,系统可能会崩溃。
Ubuntu 的用户分为三类:
1. root(超级用户)
2. 系统初次创建的用户表,比如 topeet
3. 安装完系统之后创建的用户
用户的信息全部被保存在 /etc/passwd 文件里面。
2. Ubuntu 的文件权限
使用 “ls -l”命令来查看文件的权限信息,对于文件一般有四个权限,读权限 r ,写权限 w ,执行权限 x ,无权限 -,如下图红框所示:
9 个英文字符划分成三组,每三个字母为一组,以 test2.txt 的权限为例进行讲解。
第一组【文件拥有者的权限】: rw- topeet 用户对 test2.txt 有 rw 权限,没有执行权限。
第二组【文件拥有者所在用户组的权限】:rw- 与 topeet 文件拥有者所在 topeet 组的用户可以读写,但是不能执行。
第三组【其他用户的权限,即不与文件拥有者在同一个组的用户对该文件的权限】: r-- 表示只能读,不能写和执行。
文件的权限不仅可以用字母来表示,也可以使用二进制来表示,对应的表格如下:
因为每个文件的权限是由 9 位来表示的,每 3 位为一组,这样就可以组合成 8 种不同的 情况,如下表所示:
文件的权限是对应的十进制数,也就是每个权限的位相加的结果,比如说可读可写可执行, 就是 rwx 权限,用十进制来表示就是 4+2+1=7 ,
rw- 6 4+2=6
rw- 6 4+2=6
r-- 4 4+0+0=4
664为 test.c 文件的权限。
3. chmod命令
功能:修改文件或者文件夹的权限
使用格式:chmod [参数] [权限] [文件名]
例如:使用命令 chmod 777 test.txt 赋予 test.txt 文件一个 777 的权限。
下图给出了还没有使用上述命令对 test.txt 赋予777权限。
对 test.txt 文件赋予777权限,如下图所示。