linux用户与组管理


linux用户与组管理
 
涉及到的文件:/etc/passwd /etc/group /etc/shadow /etc/gshadow
 
/etc/passwd 存放用户账户的地方,每一行代表一个账户,在一行里面使用“:”作为分隔符。其中各个字段的意思如下:
 
    root:x:0:0:root:/root:/bin/bash
 
    用户名:密码(现在密码都单独保存在shadow文件里面,该字段无用):用户ID:组ID:说明信息:家目录:shell路径
 
/etc/shadow 存放于账号密码相关的信息
 
    root:xxoo@!%:14127:0:99999:7:::
 
    用户名:密码(加密过后):最后修改日期:不能被修改的天数:需要重新修改的天数:需要修改前的警告天数:密码过期后的账号宽限时间:账号失效日期:保留(暂无意义)
 
/etc/group 分组信息
 
    root:x:0:root
 
    组名称:组密码:组ID:该组的用户(多个用户之间用英文逗号分隔,注:无空格)
 
/etc/gshadow 
 
    root:::root
 
    组名称:密码:用户组管理员账号:该用户组的成员账号(多个账号用英文逗号隔开)
 
常用的命令:
 
    查看当前登录的用户信息:id
 
    查看某个用户的信息:id user_name
 
    查看当前用户所属的组:groups
 
    查看某个组里面的所有用户:cat /etc/gshadow | grep group_name  或者 cat /etc/group | grep group_name (结果将列出该组对应的那一行,在以“:”作为分隔符的第四列,即是改组的所有账号,多个账号之间用英文逗号分隔)
 
    查看某用户所在的所有组:cat /etc/gshadow | grep user_name  或者 cat /etc/group | grep user_name(结果将列出包含该用户名的所有行,一行表示一个组)
 
    添加用户:useradd user_name 或者指定到某个组里面 useradd -g group_name user_name
 
    添加|修改用户密码:passwd [user_name](该命令执行后会提示您输出密码,然后再确认一下密码,如果是修改密码,则将会提示您输入旧密码。如果后边没有跟账号,则是修改当前用户的密码)
 
    删除用户:userdel [-r] user_name(如果带参数-r,则连同该用户的家目录一块删除)
 
    添加组:groupadd group_name
 
    删除组:groupdel group_name
 
    修改用户所属的组:usermod -g target_group_name user_name
 
    将某个用户添加到其他用户组,而不修改原来的用户组:usermod -a target_group_name user_name
 
        或者 gpasswd -a user_name group_name
 
    将某用户从某个组里面删除:gpasswd -d user_name group_name
 
    修改文件或目录所属的组:chgrp group_name file_name
 
    修改文件或目录所属的用户:chown user_name file_name
 
    修改文件或目录所属的用户和组:chown user_name:group_name file_name
 
 
    用户组切换:newgrp group_name

相关内容

    暂无相关文章