Linux用户和用户组

用户和用户组的概念


用户:使用操作系统的人,linux允许多个用户同时登陆系统
用户组:具有相同系统权限的一组用户

用户和用户组涉及的四个文件


/etc/group文件


/etc/group 存储当前系统中所有用户组的信息
-Group: x :123 : abc, def,xyz
-组名称:组密码占位符:组编号:组中用户名列表

root用户组的组号一定是0
组号1~499是系统预留的组编号,一般预留给安装在操作系统的软件或服务的,例如mysql数据库。未被使用的最小组号分配给新安装的软件或服务。
用户手动创建用户组编号从500(有的Linux版本可能从1000开始)开始,一般情况下把>=500的未被使用最小组编号分配给用户手动创建的用户组。

/etc/gshadow文件


/etc/gshadow 存储当前系统中用户组的密码信息
与/etc/group 存储的信息一一对应。
-Group: * : : abc, def,xyz
-组名称: 组密码 :组管理者:组中用户名列表

组密码:空或*或!,可以任务组密码为空即没有密码
组管者:为空,组内所有用户都可以管理这个用户组

/etc/passwd文件


/etc/passwd 存储当前系统中所有用户的信息
- user:x:123:456:xxxx:/home/user/:/bin/bash
- 用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户组目录:shell类型

root 用户编号为0

/etc/shadow文件


/etc/shadow 存储当前系统中所有用户密码的信息
-user : vf;/zu8sdf… :::::
-用户名:密码 : : : : :

用户组的基本管理命令


例子

为公司每个部门创建一个管理组,并根据实际情况分配用户和用户组

// 为市场部创建一个用户组
#groupadd market
// 市场部划分为两个组,则修改原组market为市场组1(market1)并新加市场组2
#groupmod -n market1 market
#groupadd market2

// 为市场部组1更改组编号
#groupmod -g 668 market1

// 为老板创建用户组boss并指定组编号为888
#groupadd -g 888 boss

// 公司裁剪市场组2,即删除market2组。注:删除用户组之前必须删除用户组中的用户
#groupdel market2 

// 创建用户并添加用户xiaoming、xiaowang到market1组
#useradd -g market1 xiaoming
#useradd -g market1 xiaowang
// 在创建用户时指定用户的个人文件夹;未指定时,系统自动为用户在/home下创建同名个人文件夹
#useradd -d /home/xxx xiaozhang

// 给用户xiaoming 添加注释hello
#usermod -c hello xiaoming

// xiaoming离职,新员工xiaoli继续使用他的账号,并指定xiaoli的工作目录
#usermod -l xiaoli xiaoming
#usermod -d /home/xiaoli xiaoli

// xiaozhang调到market1组,则更改其用户组
#usermod -g market1 xiaozhang

// xiaowang 辞职,删除其用户和用户个人文件夹
#userdel xiaowang // 未删除其个人文件夹
#userdel -r xiaowang

// 服务器维护,暂停普通用户登录,在/etc目录创建nologin文件即可,其内容无关紧要
#touch /etc/nologin

// 公司检查xiaozhang的文件,锁定他的账户
#passwd -l xiaozhang
// 检查完毕,解锁账户
#passwd -u xiaozhang
// 可以清除xiaozhang的密码,xiaozhang可以无密码登录
#passwd -d xiaozhang

主要组与附属组


用户可以同时属于多个组,用户组中有一个是用户的主要组,其他组为附属组

  • 一个主要组
  • 多个附属组
// 公司让xiaozhang负责boss秘书的一部分工作,则把xiaowang添加到boss组这个附属组
#gpasswd -a xiaozhang boss
// usermod -g 修改用户的主要组
// 一次性添加用户到多个附属组
#gpasswd -a xiaozhang boss, otherg1, otherg2,...

// xiaozhang创建的文件默认属于主要组,如果以附属组组员身份创建文件,若boss让xiaozhang以秘书身份发送通知,则xiaozhang用户必须切换到附属用户组boss
$newgrp boss // 当前登录用户为xiaozhang
// 如果附属组设置有组密码,那么必须输入组密码才能完成登录

// 公司不再让xiaozhang负责秘书工作,则删除其附属组boss
#gpasswd -d xiaozhang boss

// useradd -g 指定用户的主要组,使用gpasswd -a指定用户的附属组,那么能不能同时指定用户的主要组group和附属组group1,group2,...
#useradd -g group -G group1, group2,...

// 设置用户组boss的组密码
#gpasswd boss 

切换用户


// 普通用户切换当前的其他普通用户身份
#su otheruser
// 普通用户切换到root用户
#su 
// root切换到其他普通用户不需要密码
#su otheruser

其他命令


// 我是谁,显示当前登录用户名
#whoami
// 显示指定用户信息,包括用户编号、用户名、主要组编号及名称,附属组列表
#id xiaoming

// 显示指定用户所在组
#groups xiaoming

// 设置用户资料,依次输入用户资料
#chfn xiaoming

// 显示用户详细资料
#finger xiaoming
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值