专栏首页Jed的技术阶梯Linux用户管理常用命令

Linux用户管理常用命令

1. Linux用户类型

(1) linux系统由3种类型的用户

用户类型

描述

超级管理员root

具有使用系统所有权限的用户,其UID为0

系统用户

保障系统运行的用户,一般不提供密码登录系统,其UID为1-499之间

普通用户

即一般用户,其使用系统的权限受限,其UID为500-60000之间

(2) 查看用户基本信息:/etc/passwd文件

[root@repo ~]# vim /etc/passwd

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
mysql:x:498:498:MySQL server:/var/lib/mysql:/bin/bash
hadoop:x:500:500::/home/hadoop:/bin/bash
......

以"root:x:0:0:root:/root:/bin/bash"这一行为例,以":"为分隔符,说明每一列的意义

  • root:用户名
  • x:密码占位符,密码保存在/etc/shadow文件内
  • 0:用户id,UID
  • 0:组id,GID
  • root:注释信息
  • /root:用户家目录
  • /bin/bash:用户默认使用shell

注意: root用户的UID为0,它是超级管理员 mysql用户的UID为498,它是系统用户 apache用户的UID为48,它是系统用户,另外apache用户的最后一列内容为/sbin/nologin,说明它不需要登录,也就是没有登录密码 hadoop用户的UID为500,它是普通用户

(3) 查看用户的密码:/etc/shadow

[root@repo ~]# vim /etc/shadow

root:$6$lOL0f494Ymh9egGI$dCaGt2o.rBTaQXkL4Pc7dkH./jV5/LnNtwHPQCYTfcyKIjOPLJWQHhb/i3ws/7SU.Igc0PV8qkk0iYIQ5wTyo/:17490:0:99999:7:::
hadoop:$6$xRZPstvJ$QSDekuZYPs.joxJNvbvd4tjQ7J1Qe72qfXhr0Lpo6l8yPNUuHbZFxXuWpDOy0F090IPQK/zk9mY1x05N596La/:17492:0:99999:7:::
apache:!!:17492::::::
mysql:!!:17492::::::

密码是经过加密显示的

2. Linux组类型

(1) linux有3种类型的组

  • 系统组 一般加入一些系统用户
  • 普通用户组 可以加入多个用户
  • 私有组/基本组 当创建用户时,如果没有为其指明所属组,则就为其定义一个私有的用户组,起名称与用户名同名,当把其他用户加入到该组中,则其就变成了普通组

(2) 查看组信息

与Linux用户组信息相关的文件有两个:分别是/etc/group 和 /etc/gshadow

[root@repo ~]# vim /etc/group

root:x:0:
bin:x:1:bin,daemon
daemon:x:2:bin,daemon
sys:x:3:bin,adm
......
  • root:组名
  • x:组密码占位符
  • 0:GID
[root@repo ~]# vim /etc/gshadow

root:::
bin:::bin,daemon
daemon:::bin,daemon
sys:::bin,adm

3. 常用命令

(1) 用户操作

<1> 添加用户

useradd jed # 添加jed用户
usermod -G sales jed ## 设置jed用户属于sales组,前提,sales组需存在
usermod -c "jed's dept is sales" jed # 给jed添加备注信息

# 以上3步可以一步完成
useradd -G sales -c "jed's dept is sales" jed

<2> 设置密码

passwd jed # 给jed用户设置密码,根据提示输入密码即可

<3> 修改用户

usermod -l jed tony # 修改jed用户登录名为tony
usermod -G root,company jed # 把jed用户添加到root和company组,添加到多个组用-G,添加到一个组用-G和-g都可以
groups jed # 查看jed用户的组信息

<4> 删除用户

userdel -r jed # -r 表示把jed用户及jed用户的主目录都删除

(2) 组操作

<1> 添加组

groupadd company # 添加一个叫company的组

<2> 查看系统中目前有哪些组

cat /etc/group

<3> 将某用户添加到某些组

usermod -g company jed # 把jed用户添加到company组
usermod -G company,sales jed # 把jed用户添加到company和sales组

# 或者
gpasswd -a jed sales # 把jed用户添加到sales组

<4> 将某用户从组中删除

gpasswd -d jed sales # 把jed用户从sales组中删除 

<5> 修改组名

groupmod -n test sales # 把sales组的组名改为test

<6> 删除组

groupdel company # 删除company组

(3) 切换用户

切换用户使用的命令是su,意思为"switch user"

<1> 从root切换到普通用户

[root@repo ~]# su hadoop # 不需要输入密码
[hadoop@repo root]$ exit # 退出当前用户登录
exit
[root@repo ~]#

<2> 从普通用户切换到root用户

[hadoop@repo root]$ su root # 需要输入密码
Password:
[root@repo ~]# 

# 或者

[hadoop@repo root]$ su
Password: 
[root@repo ~]#

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux设置本地yum源

    linux系统:CentOS-6.7 系统镜像:CentOS-6.7-x86_64-bin-DVD1.iso、CentOS-6.7-x86_64-bin-DV...

    CoderJed
  • 002.Docker镜像制作之基于容器制作镜像

    CoderJed
  • 008.Linux文件目录管理命令基础

    CoderJed
  • 使用CentOS 7.5卸载自带jdk安装自己的JDK1.8

      删完之后可以再通过:rpm -qa | grep java 或 rpm -qa | grep jdk 命令来查询出是否删除掉

    黑泽君
  • docker学习5-docker安装tomcat环境和部署war包

    tomcat部署web项目非常方便,把war包放到webapps目录就可以了。本篇使用docker快速搭建一个tomcat环境

    上海-悠悠
  • Linux系统是否被植入木马的排查流程梳理

    在日常繁琐的运维工作中,对linux服务器进行安全检查是一个非常重要的环节。今天,分享一下如何检查linux系统是否遭受了入侵? 一、是否入侵检查 1)检查系统...

    洗尽了浮华
  • 为ubuntu操作系统增加root用户

    1:当安装好虚拟机,安装好Ubuntu操作系统后,登陆的时候发现除了自己的设置的用户就是外来用户,其实Ubuntu中的root帐号默认是被禁用了的,所以登陆的时...

    别先生
  • Shel正则表达式

    剧终
  • Linux开发环境第三方库规划

    让工作变得有条理,不乱糟糟,即使存在大量的第三方,也有章可循。简而言之,就是要保持目录的干净(如/usr/local目录),保持文件的干净(如profile文...

    一见
  • 软硬链接、文件删除原理、linux中的三种时间、chkconfig优化

    第1章 软硬链接 1.1 硬链接 1.1.1 含义 多个文件拥有相同的inode号码 硬链接即文件的多个入口 1.1.2 作用 防止你误删除文件 1.1.3 如...

    惨绿少年

扫码关注云+社区

领取腾讯云代金券