用户及ACL

用户分类

超级用户:root(唯一标示:uid=0)
普通用户:可以登录系统,权限没有root用户高;可以创建自己的文件,辅助管理系统(uid=500~6000)
程序用户:(uid=1~499),不可以登录系统

用户文件详解

/etc/passwd:记录系统中所有用户信息
    root:x:0:0:root:/root:/bin/bash
    以:为分隔符,为字段
    字段一:用户名
    字段二:密码占位符
    字段三:udi
    字段四:gid(用户基本组)
    字段五:用户信息(包括用户全名,电话,信息等)
    字段六:用户的家目录
    字段七:用户的登录shell
/etc/shadow:记录用户的密码信息
    root:乱码:17098:0:99999:7:::
    字段一:用户名
    字段二:sha-512加密后的密文
    字段三:天数距离1970年1月1日密码最近一次修改的时间
    字段四:密码的最短有效期(n天内不能改密码,0是不限制,随时可以改)
    字段五:密码的最长有效期(99999:无限期)
    字段六:密码过期前7天提醒
    字段七:密码的不活跃期(5:密码过期后5天内还能使用)
    字段八:用户的失效时间(距离1970年1月1日)
    字段九:
/etc/group:组信息
    root:x:0:
    字段一:组名
    字段二:密码占位符
    字段三:组id
    字段四:改组中的附加用户

常用命令

登入其他用户:Ctrl+Alt+F2
    退出登录界面:Ctrl+Alt+F1
    查看用户的信息:id 用户名
    切换用户:su 用户名
useradd     建立用户
    -u:指定用户的uid
    -g:指定用户的组
    -G:指定用户的附加组
    -s:指定用户登录shell
    -M:不建立用户家目录
    -d:指定用户家目录(不存在的目录)
程序用户:game
    #useradd -u 250 -M -s /sbin/nologin game
基本组:雪豹 gid 1000
    #group -g 1000 xuebao
普通用户:ccg 600 附加组:root
    #useradd -u 600 -g xuebao -G root ccg
groupadd    建立组
    -g:指定gid号
passwd  为用户建立密码
    -S:查看用户密码状态
    -l:锁定用户
    -u:解锁用户
usermod 修改用户
    useradd的选项也适合
    -L:锁定用户
    -U:解锁用户
userdel 删除用户
    -r:删除用户的所有文件包括家目录
groupdel    删除组
groupmod    修改组信息
    -g:修改gid
gpasswd 为组中添加附加用户
    -a 添加

Linux中文件权限

ls -l    查看文件的信息
    中间两个root:
        第一个:所属者
        第二个:所属组
    root前面的数字:
        对于文件:代表这个文件有多少个硬链接
        对于目录:代表这个目录中有所少个子目录
    权限块:- --- --- ---(从左向右查询权限)
    第一位:文件的类型(-:普通文件;d:目录;l:符号连接;b:块设备)
    第二三四位:文件所有者的权限(r:读取;w:写入;x:执行;-:无权限)
        对目录:r:列出目录;w:可以增删文件;x:可以进入该目录
    第五六七位:文件所属组的权限
    第八九十位:其他用户对文件的权限
能不能删除文件:看目录权限
chmod o:对象 +:运算符 权限 改变文件或者目录的权限
    #chmod g+w test.txt
    对象:u:user;g:group;o:other;a:all
    运算符:+:添加;-删除;=:指定(会让原来的权限失效)
用八进制换算文件权限:
    #chmod 777 test.txt  给属主,属组,其他用户赋予读写执行的权限
    普通文件:644
    目录文件:755

改变文件属组

chown 用户名 文件名     将文件的所属者改成另一个用户(一般用root身份改)
chgrp 组名   文件名     将文件的所属组改成另一个组:用root身份
chown [用户名]:[组名] 文件名    同时修改所属者和所属组

特殊权限设置

#which 命令字   查询该命令的文件位置
粘滞位:一般作用域目录,是目录中的文件只能谁创建谁删除(root除外)
    命令:chmod o+t 目录
          chmod 1777 目录
sgid:作用于目录,该目录下所建立的文件和目录,强制继承该目录的组
    命令:chmod g+s 目录
          chmod 4777 目录
suid:作用于可执行文件,使文件拥有者的身份运行该文件
    命令:chmod u+s 文件
设置文件的ACL:
    命令:setfacl   设置文件访问控制
          getfacl 文件   查看文件访问控制列表
    seetfacl -m:修改|-x:撤销 u:用户名:权限(撤销的时候不需要) 文件   设置访问控制列表