用户和用户组
用户:简称UID(UsersID),linux下的用户可以分为三类,分别是普通用户、系统用户以及根用户。
用户组:简称GID(GroupID)。
普通用户
指使用linux系统中的真实用户如何删除linux用户,这类用户可以使用用户名和密码来登入系统。普通用户只能在其家目录中操作,其用户的UID通常小于500。
根用户
根用户也就是root用户,ID是0嵌入式linux论坛,亦称为超级用户。root用户对系统拥有绝对的控制权。其可以更改、删除任何文件,可以运行任何命令。
系统用户
系统用户是指运行系统必须有的用户,但不是指真实的使用者。诸如须要运行MySQL数据库服务时,须要系统用户mysql来运行mysqld进程。系统用户ID的范围是1~499。
用户组
用户组跟用户类似,其每位用亩均属于其三个用户组中。
查用户和用户组命令
用户查找用id命令来进行。
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来查找。
swz@swz-ubuntu:~$ groups
swz adm cdrom sudo dip plugdev lpadmin lxd sambashare
用户名和用户密码配置文件
我们在登入linux系统时,必需要输入用户和密码。而记录系统用户名和密码的两个重要文件为:/etc/passwd以及/etc/shadow。
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个破折号进行分隔的,隔开的七列字符串。其意义如右图。
列数涵义说明
用户名
UID的字符串方式
密码
旧的系统,是加密的密码。新系统中,将密码置于/etc/shadow下,此时为x
UID
系统来分辨不同用户的整数
GID
系统分辨不同用户组的整数
说明栏
类似于注释
家目录
用户登陆以后,其所处的目录就是家目录
登录shell
用户登入时所用的shell
默认其他用户是不能查看密码的,只有根用户(root用户)能够查看密码。不过此密码是加密以后形成的,不是用户的登陆密码。
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:::
比如上述6mGjGK2OhUsTtxXpE$HhuQ字符串就是其加密过后的密码。
/etc/shadow文件是由8个逗号分隔开的9列字符串,其意义如右图。
列数涵义说明
用户名
是UID的字符串标记方法
密码
经过加密过后的密码
密码的近来更改时间
这个数字是从1970年之后更改日的天数
密码不可更改的天数
更改密码后,几天内不可以更改密码linux软件,若果是0,可以更改
密码重复更改的天数
考虑到密码使用一段时间后,可能会泄漏。可以再设置一个更改时间,密码到期后系统会提醒用户更改密码。
密码失效前警告的天数
设定密码到期前几天开始提醒用户更改密码
密码失效宽限天数
假如密码到期,过了几天才会失效,未能登入到系统
帐号失效日期
通常为空
保留数组
暂时没有使用
帐号管理
帐号管理涉及到帐号的添加、删除、以及更改。
新增和删掉帐户添加用户
useradd这个命令拿来添加用户,使用方式,useradd用户名。
具体的我就不演示了。其创建以后会创建根目录如何删除linux用户,通常是/home/用户名。
修改密码
用passwd修改密码,注意密码不能太简单。passwd前面不加用户名,默认更改当前用户的密码。通常用法为:passwd用户名。
检测用户信息
常见命令通常有users、who、w。
users命令通常拿来查看当前系统有什么用户,默认在不同终端的登入同一个用户,系统会判断是两个用户。users查看的信息量比较少,可以使用who查看更多的信息。
swz@swz-ubuntu:~$ users
swz
swz@swz-ubuntu:~$ who
swz pts/0 2022-07-09 09:05 (192.168.141.142)
显著使用who可以查看更多的信息,上述who中第二列是登陆的终端,通常pts是远程登陆的终端。旁边是登陆时间。