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

linux之用户管理

作者头像
用户9628320
发布2022-11-14 17:14:03
1.4K0
发布2022-11-14 17:14:03
举报

用户和用户组

用户:简称UID(Users ID),linux下的用户可以分为三类,分别是普通用户、系统用户以及根用户。

用户组:简称GID(Group ID)。

普通用户

指使用linux系统中的真实用户,这类用户可以使用用户名和密码来登陆系统。普通用户只能在其家目录中操作,其用户的UID一般大于500。

根用户

根用户也就是root用户,ID是0,也称为超级用户。root用户对系统拥有绝对的控制权。其可以修改、删除任何文件,可以运行任何命令。

系统用户

系统用户是指运行系统必须有的用户,但不是指真实的使用者。例如需要运行MySQL数据库服务时,需要系统用户mysql来运行mysqld进程。系统用户ID的范围是1~499。

用户组

用户组跟用户类似,其每个用户均属于其一个用户组中。

查用户和用户组命令

用户查找用id命令来进行。

代码语言:javascript
复制
swz@swz-ubuntu:~$ id
用户id=1000(swz) 组id=1000(swz) 组=1000(swz),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),122(lpadmin),133(lxd),134(sambashare)

用户组命令可以用groups来查找。

代码语言:javascript
复制
swz@swz-ubuntu:~$ groups
swz adm cdrom sudo dip plugdev lpadmin lxd sambashare

用户名和用户密码配置文件

我们在登陆linux系统时,必须要输入用户和密码。而记录系统用户名和密码的两个重要文件为:/etc/passwd以及/etc/shadow。

代码语言:javascript
复制
swz@swz-ubuntu:~$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin

上述配置文件都是使用6个冒号进行分隔的,隔开的七列字符串。其意义如下图。

列数

含义

说明

1

用户名

UID的字符串形式

2

密码

旧的系统,是加密的密码。新系统中,将密码放在/etc/shadow下,此时为x

3

UID

系统来区分不同用户的整数

4

GID

系统区分不同用户组的整数

5

说明栏

类似于注释

6

家目录

用户登录之后,其所处的目录就是家目录

7

登陆shell

用户登录时所用的shell

默认其他用户是不能查看密码的,只有根用户(root用户)才能查看密码。不过此密码是加密之后产生的,不是用户的登录密码。

代码语言:javascript
复制
root@swz-ubuntu:/home/swz# cat /etc/shadow
root:$6$mGjGK2OhUsTtxXpE$HhuQ/FqGfHidpZVrN76jBywe8Hw3IV9NXUWaIIlpAoil99JEwlu9eODOYgMyPiMqe3pau9lmgbtZBo4Uao94Q1:19178:0:99999:7:::
daemon:*:18912:0:99999:7:::
bin:*:18912:0:99999:7:::
sys:*:18912:0:99999:7:::

例如上述

6

mGjGK2OhUsTtxXpE$HhuQ字符串就是其加密之后的密码。

/etc/shadow文件是由8个冒号分隔开的9列字符串,其意义如下图。

列数

含义

说明

1

用户名

是UID的字符串标记方式

2

密码

经过加密之后的密码

3

密码的最近修改时间

这个数字是从1970年以后修改日的天数

4

密码不可修改的天数

修改密码后,几天内不可以修改密码,如果是0,可以修改

5

密码重复修改的天数

考虑到密码使用一段时间后,可能会泄露。可以再设置一个修改时间,密码到期后系统会提醒用户修改密码。

6

密码失效前警告的天数

设定密码到期前几天开始提醒用户修改密码

7

密码失效宽限天数

如果密码到期,过了几天就会失效,无法登录到系统

8

账号失效日期

一般为空

9

保留字段

暂时没有使用

账号管理

账号管理涉及到账号的添加、删除、以及修改。

新增和删除账户

添加用户

useradd这个命令用来添加用户,使用方法,useradd 用户名。

具体的我就不演示了。其创建之后会创建根目录,一般是/home/用户名。

更改密码

用passwd更改密码,注意密码不能太简单。passwd后面不加用户名,默认修改当前用户的密码。一般用法为:passwd 用户名。

检查用户信息

常见命令一般有users、who、w。

users命令一般用来查看当前系统有哪些用户,默认在不同终端的登录同一个用户,系统会判定是两个用户。users查看的信息量比较少,可以使用who查看更多的信息。

代码语言:javascript
复制
swz@swz-ubuntu:~$ users
swz
代码语言:javascript
复制
swz@swz-ubuntu:~$ who
swz      pts/0        2022-07-09 09:05 (192.168.141.142)

明显使用who可以查看更多的信息,上述who中第二列是登录的终端,一般pts是远程登录的终端。后面是登录时间。

而w可以查看更多的信息,如下。

代码语言:javascript
复制
swz@swz-ubuntu:~$ w
 09:53:21 up  1:07,  1 user,  load average: 0.01, 0.02, 0.00
USER     TTY      来自           LOGIN@   IDLE   JCPU   PCPU WHAT
swz      pts/0    192.168.141.142  09:05    1.00s  0.07s  0.00s w
调查用户

可以用finger查看登录用户的信息,加用户名可以看到登录用户的详细信息。

代码语言:javascript
复制
swz@swz-ubuntu:~$ finger
Login     Name       Tty      Idle  Login Time   Office     Office Phone
swz       swz        pts/0          Jul  9 09:05 (192.168.141.142)
代码语言:javascript
复制
swz@swz-ubuntu:~$ finger swz
Login: swz               Name: swz
Directory: /home/swz                 Shell: /bin/bash
On since Sat Jul  9 09:05 (CST) on pts/0 from 192.168.141.142
   5 seconds idle
No mail.
No Plan.
切换用户

可以使用su来切换用户,其目录会变,必须输入密码。

代码语言:javascript
复制
swz@swz-ubuntu:~$ su root 
密码: 
root@swz-ubuntu:/home/swz# 

利用sudo,可以行使其他用户的权利,但不是真正切换到了用户。

代码语言:javascript
复制
swz@swz-ubuntu:~$ sudo ls /root
snap
swz@swz-ubuntu:~$ pwd
/home/swz
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-07-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 灰灰的数学与机械世界 微信公众号,前往查看

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

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

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