tip2:Linux系统相关命令使用
好记忆不如烂笔头,很多东西不常用突然要用就是记得相关的命令但是具体就不确定了,本文记录个人不常用同时偶尔用到但不确定或者记不住的内容。
一、用户管理
这组个人使用频率不高,知道同时记不住具体涉及的系统配置文件,下面以特殊方式——修改系统配置文件增删用户为例解析用户删减涉及的系统文件:
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系统相关命令使用的更多相关文章
- [Linux命令]查看Linux系统相关命令
#查看系统内核/操作系统/CPU信息 uname -a #返回:内核名 主机名 Linux内核版本 内核编译日期 操作系统版本 CPU型号 硬件平台 GNU/Linux#查看系统是32位还是64位un ...
- linux 系统相关命令
说明:此篇以 Debian ( ubuntu16.04 ) 命令为例 1. tab键默认是不能自动补全命令 apt install bash-completion // 安装完成之后重启系统 2. 虚 ...
- Linux系统相关命令
时间和日期 date cal 磁盘和目录空间 df du 进程信息 ps top kill 01. 时间和日期 序号 命令 作用 01 date 查看系统时间 02 cal calendar 查看日历 ...
- Linux进程相关命令使用场景
Linux进程相关命令使用场景 在Linux系统上工作时,我们常常会碰到很多和进程相关的查询场景,今天在这里进行详细的讲解,进程相关的对象包括以下几个: 端口:Port 进程号:PId 执行文件所在路 ...
- spark实验(一)--linux系统常见命令及其文件互传(2)
2.使用 Linux 系统的常用命令 启动 Linux 虚拟机,进入 Linux 系统,通过查阅相关 Linux 书籍和网络资料,或者参考 本教程官网的“实验指南”的“Linux 系统常用命令”,完成 ...
- Linux解压缩相关命令
Linux解压缩相关命令 运行级别: 0:关机 1:单用户 2:多用户无网络连接 3:多用户有网络连接 4:系统保留 5:图形界面 6:系统重启 通过init[0123456]来切换不同的运行级别 g ...
- Linux 文本相关命令(1)
Linux 文本相关命令(1) 前言 最近线上环境(Windows Server)出现了一些问题,需要分析一下日志.感觉 Windows 下缺少了一些 Linux 系统中的小工具,像在这波操作中用到的 ...
- 查看linux系统版本命令 (转)
查看linux系统版本命令 分类: Linux 知识小结2011-10-10 15:26 240162人阅读 评论(9) 收藏 举报 linuxredhatdebianx86susesun 一.查看内 ...
- Linux文件管理相关命令
Linux文件管理相关命令 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以 ...
随机推荐
- SYCOJ2140祝福短信
题目-祝福短信 (shiyancang.cn) 1 #include<bits/stdc++.h> 2 using namespace std; 3 map<string,bool& ...
- 金融云原生漫谈(三)|银行云原生基础设施构建:裸金属VS虚拟机
在金融行业数字化转型的驱动下,国有银行.股份制银行和各级商业银行也纷纷步入容器化的进程. 如果以容器云上生产为目标,那么整个容器云平台的设计.建设和优化对于银行来说是一个巨大的挑战.如何更好地利用 ...
- 纯手画WinForm的Alert提示弹出框
纯手画WinForm的Alert弹框 一.窗体设置 设置以下属性: 属性名 属性值 说明 AutoScaleMode None 确定屏幕分辨率或字体更改时窗体如何缩放 BackColor 103, 1 ...
- Git使用:版本回退
在Git中,我们可以用 git log命令查看我们修改的历史记录 C:\Users\Administrator\Documents\GitHub\learngit [master]> git l ...
- VScode远程连接服务器
VScode远程连接服务器 1.远程服务器安装rmate,在远程服务器上执行以下操作 wget https://raw.githubusercontent.com/sclukey/rmate-pyth ...
- 使用redis+lua实现SQL中的select intersect的效果
公众号文章地址 1.需求 业务中需要实现在两个集合中搜索数据,并返回交集. 用SQL的伪代码可以描述如下: select key from set1 where sorted_key between ...
- VS IDE之xml过大报错
语料处理时遇到这个错误 在命令行中输入 $vsWherePath = Join-Path ${env:ProgramFiles(x86)} "Microsoft Visual Studio\ ...
- java接口应用
1 package face_09; 2 /* 3 * 笔记本电脑使用. 4 * 为了扩展笔记本的功能,但日后出现什么功能设备不知道. 5 * 6 * 定义了一个规则,只要日后出现的设备都符合这个规则 ...
- 多线程-线程间通信-多生产者多消费者问题解决(notifyAll)
1 package multithread4; 2 3 /* 4 * 生产者,消费者. 5 * 6 * 多生产者,多消费者的问题. 7 * 8 * if判断标记,只有一次,会导致不该运行的线程运行了. ...
- 不难懂-------git版本回退
1. git log 定义:该命令显示从最近到最远的提交日志.每一次提交都有对应的 commit id 和 commit message. 如果嫌弃输出的信息杂乱无章,那么加上 --pretty= ...