前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux系统的用户和用户组管理

Linux系统的用户和用户组管理

作者头像
码客说
发布2019-10-21 17:10:27
3K0
发布2019-10-21 17:10:27
举报
文章被收录于专栏:码客码客

用户角色划分

用户在系统中是分角色的,在Linux系统中,由于角色的不同,权限和所完成的任务也不同; 值得注意的是用户的角色是通过UID和GID识别的; 特别是UID,在运维工作中,一个UID是唯一标识一个系统用户的账号。

用户账户:

  • 超级用户root(0)
  • 程序用户(1~499)
  • 普通用户(500~65535)

超级用户:

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

普通用户:

这类用户一般是由具备系统管理员root的权限的运维人员添加的。

程序用户:

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

文件的权限

修改文件所属用户/组

代码语言:javascript
复制
# 所有者改成用户1
chown 用户1 tmp

# 所有者改成用户1,所属组改成组1
chown 用户1:组1 tmp

-R : 对目前目录下的所有文件与子目录进行相同的权限变更

修改组

代码语言:javascript
复制
# 所属的组改成了组1
chgrp 组1 tmp

-R : 对目前目录下的所有文件与子目录进行相同的权限变更

修改文件

当想用chmod命令来改变权限时,就把它们当做速记符号来记忆,因为实际要做的只是记住几个符号而已。

文件的用户身份主要有如下几类。

  • u:拥有文件的用户(所有者)。
  • g:所有者所在的组群。
  • o:其他人(不是所有者或所有者的组群)。
  • a:每个人或全部(u、g、和o)。

文件权限配置行为有如下几类。

  • +:添加权限。
  • -:删除权限。
  • =:使它成为唯一权限。

用户所具有的文件访问权限类型如下。

  • r:读取权。
  • w:写入权。
  • x:执行权。

现在再来练习一下,如果要删除用户对readme.txt文件的所有权限,则命令如下:

代码语言:javascript
复制
chmod a-rwx readme.txt

这样所有用户都不能进行读取或其他任何操作了

-R : 对目前目录下的所有文件与子目录进行相同的权限变更

用户

查询全部用户信息

代码语言:javascript
复制
cat /etc/passwd
cat /etc/passwd|grep 用户名

查询出来的用:分割的依次为

  • 用户名
  • 密码
  • 用户ID
  • 用户所在组ID
  • 备注
  • 用户家目录
  • Shell命令目录

查看用户信息

代码语言:javascript
复制
# 查询当前用户
id
# 查询指定用户
id 用户名

添加用户

代码语言:javascript
复制
useradd psvmc

删除用户

代码语言:javascript
复制
userdel psvmc

-r 连同主目录一起删除

设置密码

普通用户和超级用户都可以运行passwd命令,但普通用户只能更改自身的用户密码。超级用户则可以设置或修改所有用户的密码

当直接passwd命令后面不接任何参数或用户名时,则表示修改当前登陆用户的密码。

-d 清空密码,仅root能操作 -f 强制操作,仅root能操作   -k 保留即将过期的用户在期满后仍能使用 -l 锁定用户账户;锁定用户无权更改其密码,仅root能操作 -S 查看用户账户的状态 -u 解锁用户账户;仅root能操作 –stdin 从标准输入取密码

查看组信息

代码语言:javascript
复制
cat /etc/group
cat /etc/group|grep 组名

查询出来的用:分割的依次为

  • 用户组
  • 用户组口令
  • 组ID
  • 该组包含的用户

查看用户所在组

查询当前用户的组内成员

代码语言:javascript
复制
groups

查看用户所在的所有组及组内成员

代码语言:javascript
复制
groups 用户名

添加组

代码语言:javascript
复制
groupadd 组名

删除组

代码语言:javascript
复制
groupdel 组名

删除的目标组不能是用户的基本组

管理组

代码语言:javascript
复制
gpasswd [选项] 组名

-A 定义组管理员列表 -a 添加组成员,每次只能加一个 -d 删除组成员,每次只能删一个 -M 定义组成员列表,可设置多个,用,分开(定义的组成员必须是已存在用户的) -r 移除密码

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 用户角色划分
  • 文件的权限
    • 修改文件所属用户/组
      • 修改组
        • 修改文件
        • 用户
          • 查询全部用户信息
            • 查看用户信息
              • 添加用户
                • 删除用户
                  • 设置密码
                    • 查看组信息
                      • 查看用户所在组
                        • 添加组
                          • 删除组
                            • 管理组
                            相关产品与服务
                            访问管理
                            访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
                            领券
                            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档