Linux账号和权限管理
目录
一、用户账号和组账号概述
1、用户账号类型
2、组账号
1.基本组(私有组)
2.附加组(公共组)
3、ID
1.UID
2.GID
4、用户和账号管理
1.文件位置
2.useradd-----创建用户
3.userdel——删除用户账号
4.usermod---修改用户账号的属性
5、建立用户组
1.groupadd----添加组
2.gpasswd-----添加添加、设置、删除组成员
3.groupdel-----删除组账号
4.查询账户信息
1.w--查询已登录到主机的用户信息
2.who
3.users
4.finger
二、 文件/目录的权限和归属
1、程序访问文件时的权限,取决于此程序的发起者
2、访问人群分为了三类
3、权限分为三种
1.对 文件的权限
2.对目录的权限
4、chmod--设置文件和目录的权限
5、chown--设置文件和目录的归属
6、umask---权限掩码
一、用户账号和组账号概述
1、用户账号类型
- 普通用户:权限受到限制的用户
- 超级管理员:拥有至高无上的权限
- 程序用户:不是给人使用的,是给程序使用的,不允许登录
查看当前用户登陆的信息,可以使用以下几种方式:
w
who
users
finger
系统如何区别用户的身份:
系统是根据uid号来区别的
范围:
Centos6:
超级管理员:uid=0
程序用户:1-499
普通用户 500+
Centos7:
超级管理员:默认uid=0
普通用户 :1000-60000 不指定 顺序给用户进行交互式登录使用
超级管理员:root, 0
程序用户:1-999
2、组账号
1.基本组(私有组)
- 建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组默认只容纳了一个用户。
- 在用户所属组中的第一个组称为基本组,基本组在 /etc/passwd 文件中指定。
- 等于主职位,有且唯一。
2.附加组(公共组)
- 除了第一个组外的其他组为附加组或公共组,附加组在 /etc/group 文件中指定。
- 等于兼职位,可有可无,可以有多个。
3、ID
1.UID
Linux 操作系统中的每一个用户账号都有一个数字形式的身份标记,称为UID号
root 用户账号的 UID 号为固定值 0,而程序用户账号的 UID号默认为1~499,500~60000 的 UID 号默认分配给普通用户使用。1-999 预留给系统,叫系统用户, 给人使用的账户是从1000开始。
2.GID
与 UID 类似,每一个组账号也有一个数字形式的身份标记,称为 GID,root 组账号的 GID 号为固定值 0,而程序组账号的 GID 号默认为 1~499,500~60000 的 GID 号默认分配给普通组使用。
4、用户和账号管理
1.文件位置
- /etc/passwd
存放保存用户名称、宿主目录、登录Shell等基本信息,一行对应一个账户
- /etc/shadow 存放保存密码,一行对应一个密码
2.useradd-----创建用户
- 基本格式
useradd [选项] 用户名
添加用户:查看是否在passwd和shadow文件中生成信息
选项:
选项 | 说明 |
---|---|
-u | 指定用户的 UID 号,要求该 UID 号码未被其他用户使用。 |
-d | 指定用户的宿主目录位置(当与-M 一起使用时,不生效)。 |
-e | 指定用户的账户失效时间,可使用 YYYY-MM-DD 的日期格式。 |
-g | 指定用户的基本组名(或使用 GID 号)。 |
-G | 指定用户的附加组名(或使用 GID 号)。 |
-M | 不建立宿主目录,即使/etc/login.defs 系统配置中已设定要建立宿主目录。 |
-s | 指定用户的登录 Shell /sbin/nologin。 |
例如给用户指定uid号
3.设置用户更改、锁定密码
选项 | 说明 |
---|---|
-d | 清空指定用户的密码,仅使用用户名即可登录系统 |
-l | 锁定用户账户 |
-S | 查看用户账户的状态(是否被锁定) |
-u | 解锁用户账户 |
(1)设置密码 echo “123123” | passwd --stdin lisi
(2)锁定用户 passwd -l zhangsan
(3) 解锁用户 passwd -u zhangsan
(4) 查看用户状态 passwd -S zhangsan
(5)清楚密码 passwd -d zhangsan
3.userdel——删除用户账号
格式:
userdel [-r] 用户名
- 添加-r选项时,表示用户的宿主目录一并删除
- 如果不加-r选项,删除之后在创建用户时会报错
- userdel 直接删除用户不加参数,然后再重新创建出相同的用户
4.usermod---修改用户账号的属性
格式:
usermod [选项]... 用户名
选项:
选项 | 说明 |
---|---|
-l | 更改用户账号的登录名称 |
-L | 锁定用户账户 |
-u | 修改用户的UID号 |
-U | 解锁用户账户 |
-d | 修改用户的宿主目录位置 |
-e | 修改用户的账户失效时间(YYYY-MM-DD) |
-g | 修改用户的基本组名(或使用GID号) |
-G | 修改用户的附加组名(或使用GID号) |
-s | 指定用户的登录shell |
5、建立用户组
1.groupadd----添加组
格式:
groupadd [-g GID] 组账号名
2.gpasswd-----添加添加、设置、删除组成员
格式:
gpasswd
选项 | 说明 |
---|---|
-a | 添加用户到组 |
-d | 从组删除用户 |
-M | 批量加,指定组成员 |
[root@test1 /]# useradd zhou1 //组内加入新成员
[root@test1 /]# gpasswd -a zhou1 zhou
正在将用户“zhou1”加入到“zhou”组中 用户在前,组在后
[root@test1 /]# gpasswd -d zhou1 zhou
正在将用户“zhou1”从“zhou”组中删除
[root@test1 /]# gpasswd -M zhou1,zhou zhou
[root@test1 /]# grep "^zhou" /etc/group
zhou:x:88:zhou1,zhou
3.groupdel-----删除组账号
格式:
groupdel 组账号名
4.查询账户信息
1.w--查询已登录到主机的用户信息
w [选项] [用户名]
选项 | 说明 |
---|---|
-h | 不显示输出信息的标题 |
-l | 用长格式输出 |
-s | 用短格式输出,不显示登陆时间,JCPU 和 PCPU 时间 |
-V | 显示版本信息 |
2.who
相比较 w 命令,who 命令只能显示当前登陆的用户信息,但无法知晓每个用户正在执行的命令
who [选项] [file]
需要说明的是,who 命令默认是通过 /var/run/utmp 文件来获取登陆用户信息,但如果通过 file 指定另一个文件,则 who 命令将不再默认读取 /var/run/utmp 文件,而是读取该指定文件来获取信息。
选项 | 说明 |
---|---|
-a | 列出所有信息,相当于所有选项。 |
-b | 列出系统最近启动的时间日期。 |
-l | 列出所有可登陆的终端信息。 |
-m | 仅列出关于当前终端的信息,who -m 命令等同于 who am i 。 |
-q | 列出在本地系统上的用户和用户数的清单 |
-r | 显示当前系统的运行级别。 |
-s | 仅显示名称、线路和时间字段信息,这是 who 命令的默认选项。 |
-u | 显示当前每个用户的用户名、登陆终端、登陆时间、线路活动和进程标识。 |
-T 或-w | 显示 tty 终端的状态,“+”表示对任何人可写,“-”表示仅对 root 用户或所有者可写,“?”表示遇到线路故障。 |
3.users
[root@localhost ~]# users
root root
4.finger
finger 用户名
查询用户的详细信息
5.id
id 用户名
查询身份表示
二、 文件/目录的权限和归属
1、程序访问文件时的权限,取决于此程序的发起者
-
进程的发起者,同文件的属主:则应用文件属主权限
-
进程的发起者,属于文件属组;则应用文件属组权限
-
应用文件“其它”权限
2、访问人群分为了三类
- 所属住(u)
- 所属组(g)
- 其他人(o)
3、权限分为三种
1.对 文件的权限
- 读(r,4)
- 写(w,2)
- 执行(x,1 程序,脚本)
2.对目录的权限
- r 可以使用ls查看此目录中文件列表
- w 可在此目录中创建文件,也可删除此目录中的文件,而和此被删除的文件的权限无关
- x 可以cd进入此目录,可以使用ls -l查看此目录中文件元数据(须配合r权限),属于目录的可访问的最小权限
4、chmod--设置文件和目录的权限
选项 -R : 递归
chmod [ugoa] [+ - =] [rwx] 文件或目录
u:所有者(属主) g:所有组(属组) o:其他人 a:所有、其他
+:增加 -:去除 =:设置权限
r:读 w:写 x:运行权限1. u=rwx,g=rx,o=x
2. o+w 其它用户增加w权限
3. a-x 所有人减去执行权限
5、chown--设置文件和目录的归属
选项 -R 递归
修改属主 属组
chown 属主:属组 文件
chown 属主 文件
chown :属组 文件
6、umask---权限掩码
umask 的值可以用来保留在创建文件权限
实现方式:
新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
新建目录的默认权限: 777-umask
非特权用户umask默认是 002
root的umask 默认是 022
作用:
(1)控制新建的文件或目录的权限
(2)默认权限去除umask’的权限为新建文件或者目录的权限
相关文章:
Linux账号和权限管理
目录 一、用户账号和组账号概述 1、用户账号类型 2、组账号 1.基本组(私有组) 2.附加组(公共组) 3、ID 1.UID 2.GID 4、用户和账号管理 1.文件位置 2.useradd-----创建用户 3.userdel——删除用户账号 4.usermod---修…...
Qt/QML编程学习之心得:QML和C++的相互调用(十五)
Qt下的QML说到底是类似于JavaScript的一种解释性语言,习惯了VC的MVC(Veiw+Control)的模式,那种界面视图任何事件都是和C++的cpp中处理函数一一对应,在类中也有明确的说明的。一下子玩Qt会觉得哪里对不上,比如使用QML这种节脚本语言贴了图做了layout布局,那么一个按钮的o…...
月入10.5K,专科小伙转行网优:据说每个领域都有一个“显眼包”
网络热词流行的今天,显眼包一词又上热搜。除了熟知的内娱显眼包外,其实各行业也都有自己的“显眼包”。 显眼包又叫“现眼包”看似丢人现眼,实则是个“褒义词”,他们勇敢自信,积极乐观,敢于展示自己&#x…...
Python自动化测试:选择最佳的自动化测试框架
在开始学习python自动化测试之前,先了解目前市场上的自动化测试框架有哪些? 随着技术的不断迭代更新,优胜劣汰也同样发展下来。从一开始工具型自动化,到现在的框架型;从一开始的能用,到现在的不仅能用&…...
Ubuntu16.04 安装Anaconda
步骤 1: 去官网下载安装包,链接如下: https://repo.anaconda.com/archive/ 找到对应版本下载至本地电脑,并上传至服务器。 步骤2: 通过命令解压 sh Anaconda3-2023.03-0-Linux-x86_64.sh 一路选择yes或则回车,直到安装成功出现下面画面&…...
MR实战:统计总分与平均分
文章目录 一、实战概述二、提出任务三、完成任务(一)准备数据1、在虚拟机上创建文本文件2、上传文件到HDFS指定目录 (二)实现步骤1、创建Maven项目2、添加相关依赖3、创建日志属性文件4、创建成绩映射器类5、创建成绩驱动器类6、启…...
Redux与React环境准备、实现counter(及传参)、异步获取数据
环境说明: 一:说明 在React中使用redux,官方要求安装两个其他插件:Redux Toolkit和react-redux 1. Redux ToolKit(RTK) - 官方推荐编写Redux逻辑的方式,是一套工具的集合集,简化书写方式 (简化…...
网站服务器被入侵,如何排查,该如何预防入侵呢?
在我们日常使用服务器的过程中,当公司的网站服务器被黑客入侵时,导致整个网站以及业务系统瘫痪,将会给企业带来无法估量的损失。作为服务器的维护人员应当在第一时间做好安全响应,对入侵问题做到及时处理,以最快的时间…...
应用在网络摄像机领域中的国产音频ADC芯片
IPC:其实叫“网络摄像机”,是IP Camera的简称。它是在前一代模拟摄像机的基础上,集成了编码模块后的摄像机。它和模拟摄像机的区别,就是在新增的“编码模块”上。模拟摄像机,顾名思义,输出的是模拟视频信号…...
Unity3D 安装和下载指南及汉化
Unity3D是一款强大的游戏开发引擎,为开发者提供了丰富的工具和资源,使得游戏制作变得更加简单和高效。本文将介绍Unity3D的安装和下载步骤,以帮助初学者迅速入门。 步骤一:访问Unity官网 首先,打开浏览器,…...
【SpringCache】SpringCache详解及其使用,Redis控制失效时间
一、使用 在 Spring 中,使用缓存通常涉及以下步骤: 1、添加缓存依赖: 确保项目中添加了缓存相关的依赖。如果使用 Maven,可以在项目的 pom.xml 文件中添加 Spring Cache 的依赖。 <dependency><groupId>org.spring…...
MyBatis的基本使用及常见问题
MyBatis 前言MyBatis简介MyBatis快速上手Mapper代理开发增删改查环境准备配置文件完成增删改查查询添加修改删除 参数传递注解完成增删改查 前言 JavaWeb JavaWeb是用Java技术来解决相关Web互联网领域的技术栈。 MySQL数据库与SQL语言 MySQL:开源的中小型数据库。…...
[RoarCTF2019] TankGame
不多说,用dnspy反编译data文件夹中的Assembly-CSharp文件 使用分析器分析一下可疑的FlagText 发现其在WinGame中被调用,跟进WinGame函数 public static void WinGame(){if (!MapManager.winGame && (MapManager.nDestroyNum 4 || MapManager.n…...
相比于其他流处理技术,Flink的优点在哪?
Apache Flink 是一个开源的流处理框架,用于在高吞吐量和低延迟的情况下进行大规模数据流的处理。Flink 以其在流处理领域的性能而闻名,相比于其他流处理技术,Flink 提供了一些独特的特性和优化,使其在某些情况下更快。以下是 Flin…...
react中使用ref属性获取元素,并判断该元素内是否含有子元素
在react中,可以使用ref属性来获取到一个元素的引用,然后再使用ref.current来访问该元素的DOM节点,使用DOM API来判断这个元素是否含有子元素,要判断一个元素是否含有子元素,可以使用hasChildNodes(),其返回…...
idea 如何快速拉取新分支
方式1 (快捷键:CtrlShift~) 方式2:(快捷键:Alt9)...
【经验分享】日常开发中的故障排查经验分享(一)
目录 简介CPU飙高问题1、使用JVM命令排查CPU飙升100%问题2、使用Arthas的方式定位CPU飙升问题3、Java项目导致CPU飙升的原因有哪些?如何解决? OOM问题(内存溢出)1、如何定位OOM问题?2、OOM问题产生原因 死锁问题的定位…...
关于Unity使用图片字体示例
1.使用TexturePacker打包图集 下载地址 TexturePacker - Create Sprite Sheets for your game! 2.准备好数字图 3. 导入图片 4. 打包图集需要的设置 将重心点设置为左下方 点击回车 > 后点击回 >到精灵列表 选择导出的格式 导出后的内容 >导入unity 导入 >…...
开源大语言模型简记
文章目录 开源大模型LlamaChinese-LLaMA-AlpacaLlama2-ChineseLinlyYaYiChatGLMtransformersGPT-3(未完全开源)BERTT5QwenBELLEMossBaichuan其他...
python高级代码
目录 列表推导式和生成器表达式:使用简洁的语法来生成列表和生成器。 装饰器:用于修改函数行为的函数。 上下文管理器:用于管理资源的对象,可以使用with语句来自动管理资源的分配和释放。 多线程和多进程编程:使用…...
透彻掌握GIT基础使用
网址 https://learngitbranching.js.org/?localezh_CN 清屏 clear重新开始reset...
二、类与对象(三)
17 初始化列表 17.1 初始化列表的引入 之前我们给成员进行初始化时,采用的是下面的这种方式: class Date { public:Date(int year, int month, int day)//构造函数{_year year;_month month;_day day;} private:int _year;int _month;int _day; };…...
CentOS 7 Tomcat服务的安装
前提 安装java https://blog.csdn.net/qq_36940806/article/details/134945175?spm1001.2014.3001.5501 1. 下载 wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.84/bin/apache-tomcat-9.0.84.tar.gzps: 可选择自己需要的版本下载安装https://mir…...
文件夹共享功能的配置 以及Windows server2012防火墙的配置
目录 一. 配置文件夹共享功能 1.1 为什么需要配置文件夹共享功能 1.2 配置文件夹共享 1.3 访问共享文件夹 1.4 配置取消 用户名和密码认证 二. windows server 2012防火墙配置 思维导图 一. 配置文件夹共享功能 1.1 为什么需要配置文件夹共享功能 我们在工作和生活中经…...
前端使用高德api的AMap.Autocomplete无效,使用AMap.Autocomplete报错
今天需要一个坐标拾取器,需要一个输入框输入模糊地址能筛选的功能 查看官方文档,有一个api可以直接满足我们的需求 AMap.Autocomplete 上代码 AMapLoader.load({"key": "你的key", // 申请好的Web端开发者Key,首次调…...
反转链表、链表的中间结点、合并两个有序链表(leetcode 一题多解)
一、反转链表 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 思路一:翻转单链表指针方向 这里解释一下三个指针的作用: n1࿱…...
深度学习中的Dropout
1 Dropout概述 1.1 什么是Dropout 在2012年,Hinton在其论文《Improving neural networks by preventing co-adaptation of feature detectors》中提出Dropout。当一个复杂的前馈神经网络被训练在小的数据集时,容易造成过拟合。为了防止过拟合ÿ…...
MySQL 中的 ibdata1 文件过大如何处理?
ibdata1 是什么文件? ibdata1 是InnoDB的共有表空间,默认情况下会把表空间存放在一个名叫 ibdata1的文件中,日积月累会使该文件越来越大。 ibdata1 文件过大的解决办法 使用独享表空间,将表空间分别单独存放。MySQL开启独享表空…...
Weblogic反序列化远程命令执行(CVE-2019-2725)
漏洞描述: CVE-2019-2725是一个Oracle weblogic反序列化远程命令执行漏洞,这个漏洞依旧是根据weblogic的xmldecoder反序列化漏洞,通过针对Oracle官网历年来的补丁构造payload来绕过。 复现过程: 1.访问ip:port 2.可…...
鸿蒙组件数据传递:ui传递、@prop、@link
鸿蒙组件数据传递方式有很多种,下面详细罗列一下: 注意: 文章内名词解释: 正向:父变子也变 逆向:子变父也变 **第一种:直接传递 - 特点:1、任何数据类型都可以传递 2、不能响应式…...
wordpress添加锚/官方推广平台
前言近年来,自动驾驶行业发展如火如荼,雷达技术也逐渐从军工封闭圈走向了开放的市场。毫米波雷达具有全天候探测能力,特别是在雨雪雾天气以及夜间都能可靠工作,并且探测距离极远(相对其它车载传感器)&#…...
建网站和建小程序多少钱/谷歌seo外链平台
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼昂达v975w双系统(win10x86安卓5.1R1)安装教程微软也确实令人失望,在win10下,app还是这样子,所以楼主萌生了在不刷v975i的bios状况刷安卓,而是在win下的bios装上x86安卓玩耍安卓的海量…...
易居房产网官网/百度seo排名技术必不可少
一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 20267 Accepted Submission(s): 7081 Problem Description虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路…...
初学者拟建网站/百度标注平台怎么加入
1. 给文字加阴影 最近在做一个直播的项目,本来一切顺利,结果UI妹子说要给透明背景下的文字添加阴影效果,第一次遇到这样的需求,于是呢就搜索了一下,木有找到满意的办法。转念一想,属性字符串应该是可以解决…...
台州外贸网站建设/cps推广联盟
8月7日,第26届中国儿童青少年威盛中国芯HTC计算机表演赛(以下简称“表演赛”)成果汇报及颁奖暨人工智能科普教育战略发布在北京航天航空大学体育馆落下帷幕。这一盛事,标志着第26届表演赛的完美收官。活动开场,小选手们首先为各位出席的领导献…...
深圳定制巴士怎么买票/嘉兴seo网络推广
Mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。什么是不容易构造的对象呢?例如HttpServletRequest,需要在有servlet容器环境中创建获取。那不容易获取的对象呢&am…...