Linux之用户与用户组

1、基本介绍

        1.1、账户和账户组

                如果要使用系统资源,就必须向系统管理员申请一个账号,然后通过这个账号进入系统,这个账号即用户。Linux系统中的用户组(group)就是具有相同特性的用户(user)集合。

        1.2、UID和GID

                UID和GID即用户ID和组ID。

        用户账户分类:

  • 超级用户root(0):默认是root用户,其UID和GID均为0。在每台unix/linux操作系统中都是唯一且真实存在的,通过它可以登录系统,可以操作系统中任何文件和命令,拥有最高的管理权限。在生产环境,一般禁止root账号远程登录SSH连接服务器,以加强系统安全

  • 程序用户(1~499):这类用户一般是由具备系统管理员root的权限的运维人员添加的

  • 普通用户(500~65535): 与真实用户区分开来,这类用户的最大特点是安装系统后默认就会存在的,且默认情况不能登录系统,它们是系统正常运行必不可少的,他们的存在主要是方便系统管理,满足相应的系统进程都文件属主的要求。例如系统默认的bin、adm、nodoby、mail用户等。由于服务器角色的不同,有部分用不到的系统服务被禁止开机执行,因此,在做系统安全优化时,被禁止开机启动了的服务对应的虚拟用户也是可以处理掉的(删除或注释)

2、账户管理

        2.1、查看用户的UID和GID          

#查看用户id和gid
id 用户名

        2.2、用户基本信息

        用户基本信息文件存在于/etc/passwd中,由“:”分割为7段字符。语法格式:

#查看用户信息
cat /etc/passwd
#第二种查看
tail -数字(查看倒数的行数) /etc/passwd

        2.3、添加账号

参数说明:

参数选项说明
-c指定一段注释性描述
-d指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录
-g指定用户所属的用户组
-G指定用户所属的附加组
-s指定用户的登录Shell
-u指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号
#添加用户
useradd -d /home/用户名文件夹 -m 用户名
#也可以在添加用户的时候添加一段信息
useradd -c "信息" -d /home/用户名文件夹 -m 用户名
#指定用户组,跟附加组
useradd -s /bin/sh -g 主组 -G 附加组1,附加组2.... 用户名
#查看用户添加的信息
tail -5 /etc/passwd

注意:1)示例二中的group用户组是主组,adm和root是附加组;2)增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow, /etc/group

        2.4、删除账号

如果一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。

常用的选项是 -r,它的作用是把用户的主目录一起删除

#删除用户
userdel -r 用户名
#强制删除
userdel -rf 用户名

此命令删除用户jack在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录

        2.5、修改账号

# 此命令将用户sam的登录Shell修改为ksh,主目录改为/home/z,用户组改为developer(前提改用户组存在)
usermod -s /bin/ksh -d /home/z -g developer sam

        2.6、账号口令

用户口令的管理。语法格式:

passwd [选项] 用户名

选项参数:

参数选项说明
-l锁定口令,即禁用账号
-u口令解锁
-d使账号无口令
-f强迫用户下次登录时修改口令

如果默认用户名,则修改当前用户的口令

# 未指定用户名的情况下,将修改当前登录用的密码
passwd
# 指定用户名并修改登录密码
passwd jack
# 用户指定空口令
# 此命令将用户jack的口令删除,这样用户jack下一次登录时,系统就不再允许该用户登录了
passwd -d jack
# 用 -l(lock) 选项锁定某一用户,使其不能登录,解锁用-u
passwd -l jack

        2.7、切换与退出

#切换用户指令
su 用户名
#退出
exit

3、分组管理

        每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

        选项有:-g:GID指定新用户组的组标识号(GID)。 -o:一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

        3.1、新增用户组

#新增用户组
groupadd 用户组名称
#指定用户组的Gid
groupadd -g 201 用户组名称
#允许重复Gid编号
groupadd -g 201 -o 用户组名称

        3.2、删除用户组

#删除用户组
groupdel 用户组名称

        3.3、修改用户组

修改用户组的属性,语法格式:

groupmod 选项 用户组

常用的选项有:-g:GID 为用户组指定新的组标识号。-o:与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。-n:新用户组 将用户组的名字改为新名字

#修改用户组的GID编号
groupmod -g 102 用户组名称
#修改用户组的Gid还有重命名
groupmod -g 103 -n 新的用户组名称 用户组名称

        3.4、用户组切换

如果一个用户同时属于多个用户组,那么用户可以在用户组之间切换。 用户可以在登录后,使用命令newgrp切换到其他用户组,这个命令的参数就是目的用户组。

newgrp root

这条命令将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组。

  • 22
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值