@


本文以 CentOS7.6 为例

1:用户管理指令

Linux 系统是一个多用户多任务的操作系统。任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

1.1:添加用户

基本语法

useradd 用户名

默认一个用户的家目录在 /home/用户名/。

当创建用户成功后,会自动的创建和用户同名的家目录。

添加用户并指定家目录

useradd -d 指定目录 用户名

1.2:修改用户密码

基本语法

passwd 用户名

命令执行后输入密码即可。

注意:如果只执行 passwd 命令,则是给当前登录用户更改密码

1.3:用户切换与注销

切换用户

su - 用户名

从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。

注销用户

方式一、logout

方式二、exit

登录时尽量少用 root 帐号登录,因为它是系统管理员,有最大的权限,操作失误后果可能会很严重。

一般用普通用户登录,如果需要,再用 “ su - root ” 命令来切换成系统管理员身份使用。

1.4:删除用户

删除用户但保留家目录

userdel 用户名

删除用户且删除家目录

userdel -r 用户名

一般情况下,删除时建议保留家目录。

1.5:查询用户信息

基本语法

id 用户名

当用户不存在时,返回无此用户。

1.6:查看当前登录用户

查看登录用户

who am i

查看当前用户

whoami

注意:

两个指令的区别:例如使用 root 登录,然后使用 su - bob 切换到 bob 用户,则

使用 whoami 指令,显示为 bob 用户

使用 who am i 指令,显示为 root 用户

1.7:查看有哪些用户

用户信息存放在 /etc/passwd 文件中,所以可以查看 passwd 的文件内容来查看有哪些用户:

方式一、cat /etc/passwd

方式二、cat /etc/passwd | cut -f 1 -d :

2:用户组指令

类似于角色,系统可以对有共性/权限的多个用户进行统一的管理

linux 中的每个用户必须属于一个组,不能独立于组外。

2.1:新增组

基本语法

groupadd 组名

2.2:删除组

基本语法

groupdel 组名

2.3:给用户分配组

添加用户时就分配组

useradd -g 组名 用户名

如果在添加用户时不指定组,则会自动创建和用户同名的组并将用户分配到这个组。

将用户分配到指定组

usermod -g 组名 用户名

2.4:更改用户登陆初始目录

基本语法

usermod -d 目录名 用户名

用户需要有进入到新目录的权限。

3:用户和组相关文件

/etc/passwd:

用户(user)的配置文件,记录用户的各种信息。

每行含义:用户名 : 口令 : 用户标识号 : 组标识号 : 注释性描述 : 主目录 : 登录 Shell。

一般来说,第三个参数(即用户标识号)在500以上的,就是后面建的用户了,其它则为系统用户。

/etc/shadow:

口令的配置文件。

每行含义:登录名 : 加密口令 : 最后一次修改时间 : 最小时间间隔 : 最大时间间隔 : 警告时间 : 不活动时间 : 失效时间 : 标志。

/etc/group:

组(group)的配置文件,记录 Linux 包含的组的信息。

每行含义:组名 : 口令 : 组标识号 : 组内用户列表。

4:拥有者、所属组、其它组

在 Linux 中,对每个文件或目录(文件和目录:统称 “ 文档 ”),有拥有者所属组其它组的概念。

之后权限部分会涉及这些概念。

查看文档信息

ls -ahl

示例:

如下图,红框部分即拥有者,绿框部分即所属组。

  • 拥有者

默认情况下,拥有者就是文档的创建者

修改文档拥有者

chown [选项] 用户名 文档名

选项 说明
-R 如果是目录,则使其下所有子文件或目录递归生效
  • 所属组

默认情况下,当某个用户创建了一个文档后,这个文档的所属组就是该用户所在的组

修改文档所属组

chgrp [选项] 组名 文档名

修改文档拥有者与所属组

chown [选项] 用户名:组名 文档名

选项 说明
-R 如果是目录,则使其下所有子文件或目录递归生效
  • 其它组

除文档的拥有者和所属组的用户外,系统的其它用户都属于其它组

5:权限

ls -l 可用来查看目录下文档详细信息。信息可分为 7 列。

示例:

信息显示为七列

     一     | 二 |  三   |  四  |  五  |       六      |   七
=================================================================
-rw-r--r--. 1 tom root 176 Feb 2 09:39 pig.txt
drwxr-xr-x. 2 root root 4.0K Dec 16 02:34 home
=================================================================
  • 第一列:表示文档类型与权限。
  • 第二列:对文件:硬连接数。对目录:子目录数与文件数量之和。
  • 第三列:表示拥有者。
  • 第四列:表示所属组。
  • 第五列:文档大小。
  • 第六列:文档最后修改时间。
  • 第七列:文档名称。

其中第一列又可分为10位,用 0 ~ 9 表示。

0  1  2  3  4  5  6  7  8  9
=============================
- r w - r - - r - -
d r w x r - x r - x
=============================
  • 第0位:代表文档类型。
  • 第1~3位:拥有者(User)对该文档拥有的权限。
  • 第4~6位:所属组(Group)对该文档拥有的权限。
  • 第7~9位:其它组(Others)对该文档拥有的权限。
文档类型 说明
d 目录。相当于 Windows 的文件夹。
l 链接。相当于 Windows 的快捷方式。
c 字符设备文件。如鼠标,键盘等。
b 块设备。比如硬盘。
- 普通文件

而权限分为 r、w、x。“ - ” 代表无此权限。

5.1:权限介绍

权限可作用于文件和目录。

权限 说明 作用于文件 作用于文件
r read,代表可读 可以读取,查看 可以读取,查看目录内容
w write,代表可写 可以修改,但是不代表可以删除该文件 可以修改,可在目录内创建、删除文档
x execute,代表可执行 可以被执行 可以进入该目录

为了方便,权限也可用数字来表示:

  • r = 4
  • w = 2
  • x = 1

示例:

rwx = 4 + 2 + 1 = 7
rw- = 4 + 2 + 0 = 6
r-x = 4 + 0 + 1 = 5
r-- = 4 + 0 + 0 = 4

5.2:权限修改

通过 chmod 指令,可以修改文档的权限。

基本语法

chmod [权限修改] 文档名

而 “ 权限修改 ” 操作,有两种方式。

  • 方式一

通过 +-= 来变更权限。“ + ” 代表授予某个权限,“ - ” 代表撤销某个权限。

且用以下字母来代表权限修改的对象:

u:拥有者。

g:所属组。

o:其它组。

a:所有人(u、g、o 的总和)。

示例:

# 给 dog.txt 文件的拥有者读、写、执行的权限,给所属组读、执行权限,给其它组读、执行权限
chmod u=rwx,g=rx,o=rx dog.txt
# 给 dog.txt 文件的拥有者除去执行的权限,增加所属组写的权限
chmod u-x,g+w dog.txt
# 给 dog.txt 文件的所有用户添加读的权限
chmod a+r dog.txt
  • 方式二

通过数字组合来变更权限。

且第一个数字为拥有者,第二个数字为所属组,第三个数字为其它组。

示例:

# 将 /home/abc.txt 文件的权限修改成 rwxr-xr-x
方式一、 chmod u=rwx,g=rx,o=rx /home/abc.txt
方式二、 chmod 755 /home/abc.txt

疏风淡月有来时,流水行云无觅处。

——《玉楼春 · 东山探梅》(宋)刘镇

《Linux基础》04. 用户管理 · 用户组 · 相关文件 · 权限管理的更多相关文章

  1. Linux下的用户和用户组,文件权限:chown和chmod

    如下图所示,root权限下新建一个用户MasterBai, /etc/passwd文件中新加入一些信息 这个文件中,记录了该服务器的用户信息,如下图红色框起来的用户,就是我们自己创建的用户,而起来2- ...

  2. Linux用户、用户组、文件权限学习笔记

    最近打算更仔细学习一下linux操作系统.先是恶补了一下用户.用户组.文件权限这三样比较重要的知识.学习这几样东西,得先掌握linux的权限系统相关知识.linux的权限系统主要是由用户.用户组和权限 ...

  3. linux每日命令(30):Linux 用户及用户组相关文件、命令详解

    一. 用户.用户组概念及其文件结构详解 Linux用户只有两个等级:root及非root.Linux中还有一部分用户,如:apache.mysql.nobody.ftp等,这些也都是非root用户,即 ...

  4. linux基础之用户及用户组管理

    本节内容 用户管理 1. 为什么需要用户? 1.linux是一个多用户系统 2.权限管理(权限最小化) 2. 用户相关文件 /etc/passwd -->用户基本信息 /etc/shadow - ...

  5. Linux基础学习 | 用户及用户组

    Linux 用户及用户组 目录 一.用户    添加用户实例 二.用户组    添加用户组实例 三.用户及用户组文件 四.各命令参数对照 一.用户 Linux系统是一个多用户多任务的分时操作系统.任何 ...

  6. LFCS 系列第八讲:管理用户和用户组、文件权限和属性以及启用账户 sudo 访问权限

    由于 Linux 是一个多用户的操作系统(允许多个用户通过不同主机或者终端访问一个独立系统),因此你需要知道如何才能有效地管理用户:如何添加.编辑.禁用和删除用户账户,并赋予他们足以完成自身任务的必要 ...

  7. 攻城狮在路上(叁)Linux(十一)--- 用户与用户组、文件权限、目录配置

    一.用户与用户组: 3个概念:文件所有者(user).用户组(group).其他人(others). /etc/passwd  <==存放所有的用户名 /etc/shadow  <==存放 ...

  8. centos7用户,组及文件权限管理

    centos7安装过程中如果没有创建用户的话,默认只有ROOT用户,这个用户是具有最高权限的帐户,可以做任何事情,但实际生产环境中我们一般不会使用这个用户,因为权限太大了,很危险. 所以在生产环境中就 ...

  9. Linux基础-3.用户、群组和权限

    1.用户及passwd文件 1)掌握/etc/passwd文件的功能:存储所有用户的相关信息,每一个用户占用一行记录,该文件也被称为用户信息数据库(Database) 2)/etc/passwd文件中 ...

  10. (大数据工程师学习路径)第一步 Linux 基础入门----用户及文件权限管理

    用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李 ...

随机推荐

  1. js 字符串格式数组转为数组对象

    工作中经常会遇到将json字符串转换为json对象,但是将字符串格式数组转为数组对象的场景却不多 如: 其中label_exp: "["cap_pop","wk ...

  2. 使用js闭包封装一个原生的模态框

    现在都是用的是人家封装的框架什么的,但是对于底层的了解也是必须的,不然就无法提升,下面分享一个2 years ago 自己封装的一个提示框 样式很简单(适用于任何分辨率) 具体代码如下 /** * 该 ...

  3. MySQL的sql语句执行流程(简述)

    导言: MySQL和服务器端对接的时候,我们知道一般就是服务器端会打包一些SQL命令去增删改查数据库,这个打包的数据库SQL语句数据包一般为4MB,再大一些就不会被数据库端接收了 但是我们可以自己更改 ...

  4. odoo部署安全性问题

    本文档描述在生产中或在面向Internet的服务器上设置Odoo的基本步骤.它是在安装之后进行的,对于没有在internet上公开的开发系统来说,它通常不是必需的.警告如果您正在设置公共服务器,请务必 ...

  5. GPT虚拟直播Demo系列(二)|无人直播间实现虚拟人回复粉丝

    摘要 虚拟人和数字人是人工智能技术在现实生活中的具体应用,它们可以为人们的生活和工作带来便利和创新.在直播间场景里,虚拟人和数字人可用于直播主播.智能客服.营销推广等.接入GPT的虚拟人像是加了超强b ...

  6. Java中打印对象输出的字符串到底是什么?

    前言 我们在进行 Java 编程时,经常要打印对象,有的是查看是否拿到了该对象,有的是查看该对象中的数据.打印输出的却是一知半解的字符串,那么这个字符串是怎么来的?代表什么?我们如何打印出对象中的数据 ...

  7. 【QCustomPlot】下载

    说明 使用 QCustomPlot 绘图库辅助开发时整理的学习笔记.同系列文章目录可见 <绘图库 QCustomPlot 学习笔记>目录.本篇介绍 QCustomPlot 的下载. 目录 ...

  8. 解决org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource **/**/dao/**Mapper.xml问题

    1. 问题分析 出现此问题的原因是资源过滤的问题,编写在DAO包中的XML文件没有被打包. 2. 解决方案 在pom.xml文件中加入如下资源过滤: <!-- 静态资源导出问题 --> & ...

  9. Spring Boot 通用对象列表比较和去重

    1.前言   在Excel批量导入数据时,常常需要与数据库中已存在数据的比较,并且需要考虑导入数据重复的可能性.   导入的行数据,一般有一个实体类(对象)与之对应,往往这个实体类在数据库中的字段要比 ...

  10. AntdPro中formItemProps和fieldProps的区别

    最近在工作中接触到了 antd 和 antd pro,作为一个 react 和 antd 新人,在学习和使用中遇到了不少的问题,下边就常见的一个问题来进行记录,后续还会记录更多的问题以及心得 Form ...