Linux系统教程之用户与用户组分析。
一 用户与用户组
1 文件的类型与权限
ls -al 列出所有的文件详细的权限和属性(隐藏文件是第一个字符为“.”的文件)
例如:
-rw-r--r-- 1 root root 42304 sep 4 18:26 install.log
文件的类型与权限 连接数 属主 属组 文件大小(B) 最后修改日期 文件名称
第一个字符代表这个文件是“目录、文件或者链接文件等”
d 目录
- 文件
l 连接文件
c 串行接口设备,例如:键盘、鼠标
第二个字符开始 代表权限
r 可以读取此文件的实际内容
w 可以编辑、新增或者是修改该文件的内容(但不含删除该文件)
z 该文件具有可以被系统执行的权限
例如:
- rwx r-x r-- 2
1234567890
1:代表这个文件名为目录或者文件,本例为文件 -
234: 拥有者的权限,本例为可读、可写、可执行(rwx)
567:同用户组的权限,本例为可读可执行
890:其他组的权限,本例为可读
文件连接数:有多少文件名连接到此节点
权限也可以用数字表示
r:4
w:2
x:1
例如:chmod 644 .bashrc
如何改变文件权限
2 chgrp:改变文件所属组
例如:chgrp tom install.log 把文件install.log的属主改成tom
3 chown:改变文件所有人
例如:chown tom install.log 把文件install.log的所有者改成tom
chown tom:tom install.log
cp 123.test 1234.test 将123.test复制成为1234.test文件名,复制会复制执行者的属性与权限
4 chmod:改变文件权限
例如:chmod u=rwx,go=rx 123.test
chmod a+w 123.test
u 用户
g 组
o 其他
+ - =
5 目录属性的意义
r:表示具有读取目录结构清单的权限,当用户具有读取一个目录的权限时,使用ls这个指令就能将目录的内容列表显示出来
w:1)建立新的档案与目录
2)删除已存在的档案或目录
3)将已存在的档案或目录重命名
4)改变该目录内的档案、目录位置
x:与能否进入该目录有关
例如:
groupadd testgroup 创建一个组
useradd test1 -g testgroup 创建用户test1加入到testgroup
useradd test2 -g testgroup 创建用户test2加入到testgroup
touch 1.test
chmod g+r test2 可以读取
su - test1
ls -l test2
chmod g+r test2 可以进入目录
chmod g+w test2 可以添加文件 touch 2.test
mkdir test2dir
mv 2.test 3.test
mv 3.test test2dir