课时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 组名 可以删除一个组
- 课时14 Linux用户基础
- 课时18 Linux网络基础配置
- 第14课时 DOM基础概念、操作
- Java基础课时1
- H5基础第一课时
- H5基础第二课时
- 课时17 网络基础
- 课时11 Linux文件系统
- Linux 用户基础
- Linux用户基础(一)
- Linux用户基础
- 【Linux基础】用户管理
- linux用户基础
- Linux用户基础
- 10.Linux用户基础
- Linux基础-用户管理
- Linux用户基础
- Linux用户基础
- MySQL Binlog的介绍以及主从配置注意
- 对Kth number的一点小研究——主席树
- idea 控制台中文乱码
- VMware Workstation 错误(虚拟机似乎正在使用无法获得使用权)
- android开源项目
- 课时14 Linux用户基础
- oracle基本操作语句
- react-native初始化项目时候报错?Error: Command failed: yarn add react-native --exact
- ASP.NET Core之跨平台的实时性能监控
- 评论回复功能数据表设计
- 打包时报字符串资源多语言的错误
- mysql数据库连接查询
- 三个优秀的Android图表开源控件
- 单例模式 懒汉式 饿汉式