linux学习入门12——linux用户基础(linuxcast.net)(用户和组的管理和操作)

用户和组


1.当我们使用LInux时,需要以一个用户的身份登入,一个进程也需要以一个用户的身份运行,用户限制使用者后进程可以使用、不可以使用哪些资源

组用来方便管理用户

每个可登录的用户拥有一个指定的shell


没个用户创建时都会创建一个与用户名相同的组,这个组就是这个用户的主组,一个用户最多有31个附属组



2.用户

用户ID是32位,2^32个ID,为了和老系统兼容,用户ID限制在60000以下

root:ID为0

系统用户:ID范围1-499(没有指定的shell,为某些服务或进程创建的,为了限制进程或服务能访问的资源,功能比较单一)并非强制

普通用户:ID范围500以上


系统中每一个文件都有一个所属文件和所属组

使用id命令显示当前用户信息

使用passwd命令个可以进行吗,密码修改


3.各用户信息相关的文件

/etc/passwd    ---------->>>>>>保存用户信息 (每一行代表一个用户信息)

格式:

用户名:密码(x表示密码保存在shadow文件中):用户ID:组ID:用户的描述信息:用户的家目录:用户的登录shell(系统用户一般为/sbin/nologin或者/bin/false)

/etc/shadow   ---------->>>>>>保存用户密码(加密的)

格式:

用户名:加密密码(!!代表用户没有创建密码,可以暴力破解或穷举法)

加密密码格式:

分为3个部分用$分开

$6$Pyz3KuKG$gBzBIiDipqQ2gbk9S5QpT3lUuibi4dltgc8mLJJz3W6fDNCrhZPUbS6sNDQiQfR4C10aVZqS4hN.aUEWEACnw.

6代表密码加密类型sha512加密,Pyz3KuKG代表在原密码中加入的东西(盐),最终加密后的东西

/etc/group     ---------->>>>>>保存组信息

格式:

组名:组密码:组ID

组密码:以前老的系统中使用,现在不需要使用了(向后兼容)


4.查看登录用户(有一个约定俗成的规律,命令越长显示出的内容越少,命令越短显示的内容越多)

whoami显示当前用户

who显示有那些用户登录到系统上

w显示有有那些用户用户已经登录并且在干什么


5.创建一个用户

useradd用以创建一个用户

系统在背后执行的操作。

系统会生成用户的userID,并在/etc/passwd中添加信息--->>>如果使用passwd创建了密码,则将加密后的密码保存在/etc/shadow中--->>>为用户创建一个新的家目录--->>>将/etc/skel中的文件复制到家目录中(可以将一些信息放到这个文件夹中,这样每创建一个用户就没有必要在拷贝一次)--->>>建立一个与用户名相同的组,并默认用户属于这个组


-d 指定家目录

-s 登录shell

-u 指定UserID
-g 指定主组

-G 附属组(最多31个,用","分隔)

也可以通过直接修改/etc/passwd的方式实现,但是不建议

linux学习入门12——linux用户基础(linuxcast.net)(用户和组的管理和操作)_第1张图片


6.usermod修改用户信息

usermod 参数 username

用此命令修改用户名时,用户的家目录不会改变

linux学习入门12——linux用户基础(linuxcast.net)(用户和组的管理和操作)_第2张图片

7.userdel命令


linux学习入门12——linux用户基础(linuxcast.net)(用户和组的管理和操作)_第3张图片


8.组

通过组,我们可以更加方便的归类、管理用户。一般来讲我们使用部门、只能或地理区域的分类方式来创建使用组

每各组有一个组ID

组信息保存在/etc/group

没个用户拥有一个主组,同时还可以拥有31个附属组

linux学习入门12——linux用户基础(linuxcast.net)(用户和组的管理和操作)_第4张图片

组设计示例


linux学习入门12——linux用户基础(linuxcast.net)(用户和组的管理和操作)_第5张图片

你可能感兴趣的:(linux学习入门12——linux用户基础(linuxcast.net)(用户和组的管理和操作))