账号管理
当我们登录主机的时候输入的是我们的账号和密码,但是主机是不会识别账号的,毕竟他只认识0和1。我们每一个账号都有一个uid。输入账号后,系统会在etc/passwd里面找有没有对应的UID,如果有,就把uid和gid还有家目录的shell一起读出来。然后再去、etc/shadow、寻找密码。如果对了,账号登录成功,如果口令不对的话,就退出。
账号存储在、etc/passwd里。结构如下
账号名称 : 口令 :uid : gid :家目录 :shell
useradd 添加用户的命令
-u +uid -g +gid -G +次组
-c 说明内容
创建账号的时候会自动创键相应的根目录 且权限是 700
新建系统账号 useradd -r + 用户名
系统账号的 uid centos6.5 为1-700 高版本为 1-999
刚创建的账号是无法登录的。需要passwd命令来给账户创建一个密码
如果要对账号进行小范围的修改需要用usermod
- 参数 -c 说明部分
- -d 家目录
- l 后面是要修改的账号名称 比较重要
- -g 后面是初始群组
- 其余选项用到的很少
账号的删除
userdel 参数常用就是 -r 意思是连同根目录一起删除
id 命令
参数 -g 意思显而易见 就是显示uid -u 显示uid
每一个账号都会一个组,对应着组号
创建一个组 命令 groupadd 没有多余的选项
删除 命令 groupdel
ACL
当有的时候我想给某个用户某个特定的文件的特定访问权限普通的办法很难解决,这个时候就需要ACL。
设置acl
setfacl - 参数 -m 基本都会用到,意思是给后续的acl参数配置给文件,
- -x 删除后续的acl参数 当然它不能与m一起合用
- -b移除所有的acl参数
- -k 移除默认的acl参数
- -R 递归配置acl参数 当配置的是文件夹的时候,目录下原来存在的目录会递归配置acl参数,但是新建的文件不会继承acl参数
- -d配置默认的参数,只会对目录有效,新建的目录会继承acl参数
下面配置一个文件的acl
setfacl -m u:user1:rw test
意思是 给用户user1 对test文件具有读写的权限
有一个默认的 mask 权限 默认的最大权限
当我们设置acl时 ,权限会和mask的权限做 于运算。所以配置acl尤其注意这一点