好记忆不如烂笔头,很多东西不常用突然要用就是记得相关的命令但是具体就不确定了,本文记录个人不常用同时偶尔用到但不确定或者记不住的内容。

  一、用户管理

    这组个人使用频率不高,知道同时记不住具体涉及的系统配置文件,下面以特殊方式——修改系统配置文件增删用户为例解析用户删减涉及的系统文件:

    1、增加用户步骤:

      1)在/etc/passwd是一个文本文件用来保存用户信息,一行表示一个用户。新增一行数据,表示新增一个用户信息;

      大致看下/etc/passwd的文件格式:

        

        user_name:password:uid:gid:comment:home:shell

        

      例如新建mysql用户,添加一行:(暂定组别)

      2)为该用户选择用户组,将该用户标识附加在/etc/group文件内指定字段;

      /etc/group也是一个文本文件,用来存放用户组信息,每行表示一个组,大致格式如下:

        

        group_name:password:gid:member_list

        

      3)为该用户创建一个家目录(home directory),将其家目录的属组改为该用户所有,组别也改为该用户的组别;

        mkdir /home/mysql

        chown mysql /home/mysql

        chgrp dba /home/mysql

        chmod 755 /home/mysql

      4)为该用户设置密码。

        passwd mysql

    2、删除用户就是一个逆向过程:

      

      以上都可以用命令完成:useradd / groupadd等,具体使用方法参考man

    3、很多时候可能需要做的是本机哪些用户在使用,有没有黑户o(* ̄︶ ̄*)o

      Unix上一般都使用finger,但是CentOS8不提供finger,同时yum可安装软件包中也没有该命令。CentOS8提供轻量级的finger——pinky。

      

   下面系统用户访问MySQL数据文件权限为例,实践不同用户不同权限的访问(对于涉及已存在的用户可能会修改用户相关的属性,如果修改组属性usermod -g lifish jrm 将用户jrm的组属性修改为lifish):

    在实践之前,有写概念需要明确——用户组属性,文件用户属性、组属性、文件权限是不同的概念,但是他们之间又有关联:  

      用户和用户组的对应关系有以下 4 种:

      • 一对一:一个用户可以存在一个组中,是组中的唯一成员。
      • 一对多:一个用户可以存在多个用户组中,此用户具有这多个组的共同权限。
      • 多对一:多个用户可以存在一个组中,这些用户具有和组相同的权限。
      • 多对多:多个用户可以存在多个组中,也就是以上 3 种关系的扩展。

      文件与用户即用户组均是一对一的关系。如上用户与用户组的关系,进而有了文件权限与用户及用户组的关系。

    看三个用户,lifish,mysql,jrm :

      

    lifish和jrm共用用户组,与mysql非同一用户组。依据上面的对应关系,lifish和jrm具有相同的组权限,即他们可以访问lifish组下所有用户允许组用户执行的文件权限;同时由于mysql与他们不同组,他们没有mysql用户下相关文件权限。

      

  

未完,待续……

    

tip2:Linux系统相关命令使用的更多相关文章

  1. [Linux命令]查看Linux系统相关命令

    #查看系统内核/操作系统/CPU信息 uname -a #返回:内核名 主机名 Linux内核版本 内核编译日期 操作系统版本 CPU型号 硬件平台 GNU/Linux#查看系统是32位还是64位un ...

  2. linux 系统相关命令

    说明:此篇以 Debian ( ubuntu16.04 ) 命令为例 1. tab键默认是不能自动补全命令 apt install bash-completion // 安装完成之后重启系统 2. 虚 ...

  3. Linux系统相关命令

    时间和日期 date cal 磁盘和目录空间 df du 进程信息 ps top kill 01. 时间和日期 序号 命令 作用 01 date 查看系统时间 02 cal calendar 查看日历 ...

  4. Linux进程相关命令使用场景

    Linux进程相关命令使用场景 在Linux系统上工作时,我们常常会碰到很多和进程相关的查询场景,今天在这里进行详细的讲解,进程相关的对象包括以下几个: 端口:Port 进程号:PId 执行文件所在路 ...

  5. spark实验(一)--linux系统常见命令及其文件互传(2)

    2.使用 Linux 系统的常用命令 启动 Linux 虚拟机,进入 Linux 系统,通过查阅相关 Linux 书籍和网络资料,或者参考 本教程官网的“实验指南”的“Linux 系统常用命令”,完成 ...

  6. Linux解压缩相关命令

    Linux解压缩相关命令 运行级别: 0:关机 1:单用户 2:多用户无网络连接 3:多用户有网络连接 4:系统保留 5:图形界面 6:系统重启 通过init[0123456]来切换不同的运行级别 g ...

  7. Linux 文本相关命令(1)

    Linux 文本相关命令(1) 前言 最近线上环境(Windows Server)出现了一些问题,需要分析一下日志.感觉 Windows 下缺少了一些 Linux 系统中的小工具,像在这波操作中用到的 ...

  8. 查看linux系统版本命令 (转)

    查看linux系统版本命令 分类: Linux 知识小结2011-10-10 15:26 240162人阅读 评论(9) 收藏 举报 linuxredhatdebianx86susesun 一.查看内 ...

  9. Linux文件管理相关命令

    Linux文件管理相关命令   作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以 ...

随机推荐

  1. 机器学习|线性回归算法详解 (Python 语言描述)

    原文地址 ? 传送门 线性回归 线性回归是一种较为简单,但十分重要的机器学习方法.掌握线性的原理及求解方法,是深入了解线性回归的基本要求.除此之外,线性回归也是监督学习回归部分的基石. 线性回归介绍 ...

  2. 【Warrior刷题笔记】143.重排链表 【线性化 || 双指针+翻转链表+链表合并】详细注释

    题目一 力扣143.重排链表 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/reorder-list/ 1.描述 给定一个单链表L的头节点he ...

  3. 1.配置桥接,并抓包验证 2.实现免密登录 3.修改登录端口: 22-》2222 4.不允许root用户远程登录 5.创建用户sshuser1,并设置密码,且只允许sshuser1远程ssh登录

    1.配置桥接:  抓包时如果有ens160的ICMP,说明我们的桥接搭建成功通过桥接访问到了ens160(这里忘加图片了) (1)创建一个桥接设备和会话 (2)添加设备和会话到桥接设备上 (3)启动从 ...

  4. 《剑指offer》面试题50. 第一个只出现一次的字符

    问题描述 在字符串 s 中找出第一个只出现一次的字符.如果没有,返回一个单空格. 示例: s = "abaccdeff" 返回 "b" s = "&q ...

  5. 【记录一个问题】go get -u github.com/go-redis/redis出现错误" invalid character '.' after top-level value"

    安装某个库的时候依赖于redis库,总是出现这样的错误: go install go: github.com/go-redis/redis/v7@v7.2.0: parsing go.mod: mis ...

  6. 面试突击17:HashMap除了死循环还有什么问题?

    面试合集:https://gitee.com/mydb/interview 本篇的这个问题是一个开放性问题,HashMap 除了死循环之外,还有其他什么问题?总体来说 HashMap 的所有" ...

  7. 第02讲:Flink 入门程序 WordCount 和 SQL 实现

    我们右键运行时相当于在本地启动了一个单机版本.生产中都是集群环境,并且是高可用的,生产上提交任务需要用到flink run 命令,指定必要的参数. 本课时我们主要介绍 Flink 的入门程序以及 SQ ...

  8. golang中数组指针与指针数组的区别实现

      指针数组和数组的指针,指的是两个不同的东西. 指针数组是有指针组成的数组,数组的指针是一个数组的指针. package main import "fmt" const MAX ...

  9. gin框架中请求参数的绑定与多数据格式处理

    package main import ( "fmt" "github.com/gin-gonic/gin" ) // gin框架提供给开发者表单实体绑定的功能 ...

  10. golang中函数的可变参数

    package main import "fmt" // 一个函数中最多只可有一个可变参数, 如果参数列表中还有其它类型的参数,则可变参数写在最后 // 注意:参数不定,参数的个数 ...