课时14 Linux用户基础

来源:互联网 发布:淘宝网开放平台 编辑:程序博客网 时间:2024/05/16 01:34

Linux课程学习笔记来源于网易云课堂:Linux 入门基础

1 用户和组

       当我们使用Linux时,需要以一个用户的身份登入,一个进程也需要以一个用户的身份运行,用户限制使用者或者进程可以使用、不可以使用那些资源。组用来方便管理用户。

  • 每个用户拥有一个UserID,操作系统实际使用的是用户ID,而非用户名
  • 每个用户属于一个主组,属于一个或多个附属组,并受该用户可访问的资源限制
  • 每个组拥有一个GroupID
  • 每个进程以一个用户身份运行,并受该用户可访问的资源限制
  • 每个可登录用户都拥有一个指定的shell

2 用户

       用户ID为32位,从0开始,但是为了和老式操作系统兼容,用户ID限制在60000以下。

      用户分为以下三种:

  • -root用户,ID为0的用户,强制为0,其他用户不限制
  • -系统用户 1-499,没有shell,为某些服务使用创建的,不需要登录
  • -普通用户 500以上

       系统中的文件都有一个所属用户及所属组

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

       使用passwd命令可以修改当前用户密码

3 用户信息相关的文件

  • /etc/passwd  //7个部分,用:分开[1.用户名、2.x表示用户密码是保存在shadow之中的、3.用户id号、4.组id、5.用户描述信息、6.用户的家目录、7.用户的登录shell,实际上就是bin下的bash,系统用户没有shell]
  • /etc/shadow  //加密的[1.用户名、2.密码,!!表示用户没有创建过密码,加密后的(分3个部分,用$隔开,第一个6表示用的是SHA算法的512位加密,第3部分是加密后的秘密)]
  • /etc/group [组用户名、组密码、组ID]

4 查看登录的用户

whoami 显示当前用户,只返回名称

who  显示登录用户,tty1 是登录终端;pts/0 是图形界面

w 显示那些用户登录,还能显示他们在做什么

5 创建一个用户

(1)useradd 用户名 //创建一个用户名,如果要登陆至新用户下,命令为:su [用户名]su不接任何参数,默认切换至root用户

[上面这条命令或执行以下操作:

1.在/etc/passwd 中添加用户信息

2.如果使用passwd 命令创建密码[格式(root下):passwd用户名],则将密码加密保存在/ect/shadow 中;如果没有密码,会用!!显示

3.为用户建立一个新的家目录 /home/xxx

4.将/ect/skel 中的文件复制到用户的家目录中,是一些用户创建时的基本文件,一般是隐藏文件。所以需要在创建用户时就创建一些文件,可以在该目录下创建。在创建新的用户时,会自动将/ect/skel的文件复制到新用户的家目录中。

5.建立一个与用户名相同的组,默认的用户属于这个同名组]

(2)命令useradd 支持一下参数(仅在创建用户的时候使用,创建完之后不能再使用,进行修改):

格式为:useradd [参数] [指定的家目录、ID] [新的用户名]

-d 指定家目录

-s 修改登录shell

-u 指定UID

-g 指定主组

-G附属组(最多31个)

passwd 用户名  //给一个用户创建密码

6 修改用户信息

(1)usermod 用来修改用户信息

usermod 参数  username

(2)命令usrmod支持以下参数:

        -l更新用户名 [usermod -l 新用户名 老用户名]

-u 更新userid

-d 用户家目录位置

-g 用户所属主组

-L锁定用户使其不能登录

-U 解除锁定

-G 指定附属组

7 删除用户

命令usrdel用以删除指定的用户:

       userdel 用户名  //删除一个用户,保留用户的家目录

       userdel -r 用户名  //删除用户和用户的家目录,如果“user ** is currently logged in”无法删除时,可以使用暴力删除,再加一个参数-f。

       也有几种处理办法:

(1)通过su –username切换至已经登录的username用户,通过输入kill -9 -1来注销此用户,切换至另外一个用户,在该用户的终端进行对要修改用户进行修改。(或者使用pkill -u username,两种命令功能相同)

(2)mv /var/run/utmp /var/run/utmp_

touch > /var/run/utmp

关于:/var/run/utmp

utmp是一个文件,除了utmp程序你不能编辑这个文件,删掉他的话,当前登陆信息都会丢失。

这个文件在每次机器reboot起来后都会重新创建。

8 组

几乎所有操作系统都有组的概念,通过组更加方便的归类、管理用户。一般来讲,我们使用部门、职能或地理区域的分类方式来创建使用组。

(1)每个组有一个组ID

(2)组信息保存在/etc/group中

(3)每个用户拥有一个主组,同时还可以拥有最多31个附属组

9 创建、修改、删除组

(1)命令groupadd用以创建组:

groupadd 组名  添加一个组

(2)命令groupmod用以修改组信息:

groupmod-n 新组名 旧组名  //修改组名

groupmod-g 新id  旧id  //修改组ID

(3)命令groupdel用以删除组信息:

groupdel 组名  可以删除一个组


原创粉丝点击