2017.7.18 linux下用户、组和文件的操作
参考来自:《鸟叔的linux私房菜(基础学习篇)-第14章》
0 目的
在linux下搭建ELK环境时,因为elasticsearch不能在root下操作,所以要为其新增一个用户,以及随之的一些操作。
主要涉及:
1 创建新用户组和新用户
2 将新用户添加到新组
3 创建用户主目录
4 让新用户获得其主目录有文件的拥有权限
5 设置新用户的密码
1 etc/passwd、 etc/shadow、etc/group
1.1 etc/passwd 文件
etc/passwd 保存了账号信息,可以查看现在已经建立好了elkuser的账号。
一行代表一个账号,字段依次为:账号名称,密码(全用x代替,实际存放在etc/shaow中),UID(0为系统管理员,1~499为系统账号,其他为普通账号),GID,用户信息说明,主文件夹(这里为elkuser),shell(默认使用bash)。

1.2 etc/shadow文件
etc/shadow里保存了密码和权限等信息。一行代表一个账号,一共9个字段,详细的就略过了。

1.3 etc/group文件
(1)文件内容
etc/passwd 保存了群组信息,可以查看现在已经建立好了elkgroup的群组。
一行代表一个账号,字段依次为:群组名称,密码(全用x代替,实际存放在etc/shaow中),GID(可以看到和前面passwd中elkuser的GID列数字相同),此用户组支持的账户(可以看到这里为空,后面有解释)。

(2)有效群组和初始群组
a.存储在etc/passwd中GID列对应的群组,即为该账号的initial group。初始群组,不需要写在etc/group文件中的第四列。
实际上,查询一下groups,可以知道elkuser是属于elkgroup的。

b.如果将elkuser加入到另一个群组anothergroup中,那么必须要将elkuser加入到etc/group中对应的行中第四列,即非initial group,必须要显示写在etc/group文件里。
c.现在elkuser同时属于:elkgroup、anothergroup。如果现在要新建一个文件或目录,那么这个新文件的组是elkgroup,还是anothergroup?
输入命令groups,结果中的第一列即为effective group。这个新文件属于这个effective group。
d.切换effective group使用命令:
newgrp anothergroup
2 账号管理
2.1 新增用户
-u:指定userid
-g:指定initial group,没有-g则默认创建和user同名的group
-G:指定其他group
-m:强制创建主文件夹,与user同名
其他的-xxx命令略。

2.2 设置密码
使用useradd创建用户时,默认情况下,账户是被锁定的。因为密码没有设置。ps:这里提示的密码过短的错误可以无视。修改密码也可以用这个命令。
不加后面的用户名lyhtest,表示修改当前用户的密码,所以一定要小心!

2.3 修改用户
-l:修改username
-d:修改主目录
-g:修改initial group
-G:修改普通group
修改了名字之后,同时要注意的是lyhtestuser的主目录名并没有同步更改。


2.4 删除用户
-r:同时删除主目录

3 用户组管理
3.1 新增用户组
-g:指定id
-r:指定groupname

3.2 修改用户组
-g:修改groupid,最好不要改
-n:修改groupname

3.3 删除用户组

但是删除elkgroup时报了错,因为elkuser还在,它的初始用户组elkgroup不能被删掉。

3.4 用户组管理员
如果系统管理员比较忙碌,那么可以为某一个用户组增加一个用户组管理员,这个用户组管理员就可以管理这个用户组的账号加入/移除。

可以看到lyhtestuser已经成为了用户组管理员:

转换到此用户登录,将用户lyhtestuser2加入/移除到用户组里。
这里要注意的是:系统管理员root为用户组lyhtestgroup增加用户组管理员lyhtestuser时,用的是-A,而用户组管理员lyhtestuser为用户组lyhtestgroup增加用户lyhtestuser2时,用的是-a。另外,从用户组删除用户是-d。

4 完成目的

2017.7.18 linux下用户、组和文件的操作的更多相关文章
- 2017.7.18 linux下ELK环境搭建
参考来自:Linux日志分析ELK环境搭建 另一篇博文:2017.7.18 windows下ELK环境搭建 0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1 ...
- Linux的用户(组),权限,文件精妙的三角关系,和强大的帮助系统
在linux中一切都是文件(文件夹和硬件外设是特殊的文件),如果有可能尽量使用文本文件.文本文件是人和机器能理解的文件,也成为人和机器进行 交流的最好途径.由于所有的配置文件都是文本,所以你只需要一个 ...
- Linux下用户-组权限配置
cat /etc/group cat /etc/ashadow 一.用户管理 1.添加用户 #useradd 用户名 useradd php100;用cat /etc/passwd查看 分析:php1 ...
- Linux 给用户 赋某个文件夹操作的权限
https://my.oschina.net/cqyj/blog/1796047 在root用户登录的情况,赋予opt目录给liuhai这个用户权限 示例代码: # 将目录/opt 及其下面的所有文件 ...
- Linux下快速迁移海量文件的操作记录
有这么一种迁移海量文件的运维场景:由于现有网站服务器配置不够,需要做网站迁移(就是迁移到另一台高配置服务器上跑着),站点目录下有海量的小文件,大概100G左右,图片文件居多.目测直接拷贝过去的话,要好 ...
- 2017.7.18 windows下ELK环境搭建
参考来自:Windows环境下ELK平台的搭建 另一篇博文:2017.7.18 linux下ELK环境搭建 0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1.7, ...
- linux 下用户管理
linux 下用户管理 一.用户的分类 1.超级用户:root UID=0 2.系统用户:不需要登录系统,对应用程序服务,主要维护系统的正常运行:UID = 1 ~ 499(RHEL7 = 1 ~ 9 ...
- Linux下用户管理:创建用户指定密码
首先我们来了解下Linux下用户管理的概念: 如上图所示,左边的一列表示用户名,中间的一列表示用户组,最右边的一列表示的是家目录.用户名我们这里处于简单就,添加了root,xm,xh三个用户.用户组和 ...
- linux下播放组播流出现setsockopt:No such device错误
在linux下播放组播流出现setsockopt:No such device错误是因为多播IP没有add路由表里面 可以采用如下命令完成: root@android:/ # busybox rout ...
随机推荐
- 1031. 高一学堂 (at)
题目描述 在美丽的中山纪念中学里面,有一座高一学堂.所谓山不在高,有仙则名:水不在深,有龙则灵.高一学堂,因为有了yxr,就成了现在这个样子 = =. 由于yxr的语言太过雷人,每次他发微往往都会有一 ...
- js常用数组去重
// ES6 function unique (arr){ const seen = new Map() return arr.filter((a) => !seen.has(a) && ...
- oracle的隐式游标
游标的概念: 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理, ...
- Sed替换文本中的指定内容
可以这样做:方法1:sed -i 's/被替换的内容/要替换成的内容/' file 方法2:sed 's/被替换的内容/要替换成的内容/g' file > file.outmv file.out ...
- vue中动态循环model
vue动态循环model与angular有所不同,angular直接定义一个数组,然后传入循环列表的index即可. 而vue不仅需要定义一个数组,还需要通过接口读出循环的数组长度,然后在create ...
- SSH整合一
Spring整合Hibernate 1.引入我们所需的jar包 2.在applicationContext.xml中植入我们的数据源和sessionFactory工厂,将生成权交由Spring容器进行 ...
- sql id 或使用nolock
qlserver 批量插入记录时,对有标识列的字段要设置 set IDENTITY_INSERT 表名 on,然后再执行插入记录操作;插入完毕后恢复为 off 设置 格式: set IDENTITY ...
- ES6 - Babel编译环境搭建
都看到这里了,我就不写什么node环境安装之类的了. 直接从新建项目文件夹后开始吧! 安装依赖: 命令行cd到项目文件夹之后,执行以下命令:(mac记得前边加sudo) npm init –y // ...
- Codeforces538F A Heap of Heaps(函数式线段树)
题意:给你一个数组a[n],对于数组每次建立一个完全k叉树,对于每个节点,如果父节点的值比这个节点的值大,那么就是一个违规点,统计出1~n-1完全叉树下的违规点的各自的个数. 一个直觉的思想就是暴力, ...
- 漂亮的弹窗口插件——sweetAlert的使用
想必你已经受够了单调的alert弹窗吧? 为了更好的用户体验性,现在介绍一款漂亮的弹窗口插件——sweetAlert,现在就来介绍它的使用 1.首先在官网下载它的CSS和JavaScript文件:ht ...