用户、组的管理常用到的命令介绍
在LINUX系统管理中,我们经常添加删除修改用户和组的信息,所以我们来学习下创建删除修改用户和组
下面我们就来简单的说下什么是组、什么是用户的概念?
用户:
其实简单的理解就是文件或者目录创建的一种标识。
组:
组简单的理解就是一种容器,是用来赋予用户对于目录或文件的一种容器,所以组是不能登录系统,而且还不能使用资源。
- 账号、组管理:
- /etc/login.defs
- Shadow password suite configuration.
- /etc/passwd
- User account information.
- root:x:0:0:root:/root:/bin/bash
- 第一字段:account: 登录名
- 第二字段:password-->/etc/shadow
- 第三段:UID:
- 第四段:GID:基本组ID
- 第五段:comment: 账号的注释信息
- 第六段:HOME DIR:用户账号家目录
- 第七段:SHELL:用户的默认shell
- /etc/shadow
- Secure user account information.
- root:$1$AKMibarg$G/nw/HgmH3geg66k8/keF1:15761:0:99999:7:::
- 第一字段:account: 登录名
- 第二字段:encrypted password (如果出现的是*/!,则表明此账号无法登陆系统)
- 第三字段:最近更改密码的日期
- 第四字段:密码不可更改的天数
- 第五字段:密码要重新更改的天数
- 第六字段:密码更改期限前的警告信息
- 第七字段:密码过期的宽限时间
- 第八字段:账号失效日期
- 第九字段:保留
- /etc/group
- Group account information.
- daemon:x:2:root,bin,daemon
- 第一字段:account
- 第二字段:password
- 第三字段:GID ->用户组ID
- 第四字段:加入这个组的所有账号
- 创建用户:
- useradd [options] LOGINNAME
- -u:UID(默认是大于等于500,且不能重复)
- -g:GID(基本组):前提是这个组事先存在
- -G:GID ....附加组
- -c:"comment":指定注释信息
- -d:/path/to/directory,指定用户家目录
- -s:指定shell ->/etc/shells(当前)
- -m:当指定家目录不存在,-m强制为用户家目录。
- -M:不创建家目录
- 综合利用:
- 创建一个系统用户tom,注释信息为"This is a text account",并将ID指为111,家目录为/home/tom3
- shell改为/sbin/nologin,并加入到mygroup里面。
- # adduser -r -c "This is a text account: -d /home/tom3 -m -s /sbin/nologin -G mygroup
- ID:
- 功能:查看用户详细信息
- 选项:
- -G:所有组ID信息
- -u:显示用户ID
- -g:显示gid
- -n:显示名称
- For example:
- 查看tom用户的ID账号信息:
- # id tom 即可显示
- userdel:
- 功能:删除用户
- 选项:
- -r:删除用户的同时、家目录一并删除
- For example
- 删除tom用户并将其家目录一并删除:
- # userdel -r tom
- usermod:
- 功能:修改用户账号的各项设定
- 选项:
- -u:UID
- -g:GID 接group name必须在/etc/group组中
- -G:默认覆盖之前的附加组
- -a:追加附加组 改变用户能够支持的用户组
- -c:指定注释信息
- -d:指定家目录
- -m:即指定家目录的位置,5并移动之前家目录的内容移植到当前指定家目录中。
- -s:修改shell
- -l:更改用户名名称-->对应的是/etc/passwd文件中第一栏。
- -e:修改密码过期时间,后接日期参数为MM/DD/YY或YYYY-MM-DD
- -L:(lock)锁定用户账号
- -U:(unlock)解锁用户账号
- For example 锁定jack用户账户信息,并修改注释信息为"download file" #usermod -c "beause download file" -L jack
- 用户的功能:
- chsh:更改用户默认shell
- -l:列出当前系统可用的shell
- -s:修改自己的shell
- chfn:更改用户注释信息(finger)信息
- 选项:
- -f:后面接完整的名字
- -o:办公室地址
- -p:办公室电话
- -h:家庭电话
- passwd:修改用户密码
- 管理员:可以指定用户名,并修改用户密码
- 普通用户:只能修改本身密码
- 选项:
- --stdin:从标准输入接收
- -l:锁定账号
- -u:解锁
- -d:删除账号密码(空密码)
- For example
- 创建用户redhat,密码为空密码
- # adduser redhat
- # passwd -d redhat
- 组管理:创建、修改、删除
- 创建组:grouopadd
- groupadd
- -g:指定GID(大于500)
- -r:添加一个系统组
- 修改组属性:
- groupmod
- -g:修改GID
- -n:修改组名
- For example
- 修改组hive改名为hadoop
- # groupmod -l hadoop hive
- 删除组:
- groupdel:
- 组加密码:
- gpasswd:
- gpasswd GROUPNAME:一个用户创建的文件属主是自身,属组为自身的基本组
- newgrp GROUPNAME
- 临时切换文件的基本组
- chage:
- -d:最近一次的修改时间
- -E:仅用时间/过期时间
- -I:非活动时间
- -M: 最短使用期限
- -m:最长使用期限
- -W:警告时间
- 权限管理:
- chown:改变文件属主(只有管理员才可以使用此命令)
- 文件和目录都都可以使用
- # chown USERNAME file,.....
- -R:(递归修改):修改目录及其内部文件或目录的属主
- --reference=/path/to/somefile file...引用、参考
- chgrp:改变文件属组
- # chgrp GRPNAME file,......
- --reference=/path/to/somefile file,...
- chown:同时改变属主和属组
- # chown USERNAME:GRPNAME file,....
- # chown USERNAME.GRPNAME file,....
- chmod:修改文件的权限
- 修改三类用户的权限
- chmod MODE file,...
- -R:修改目录及子文件
- --reference=/path/to/somefile file,..
- 修改某些类用户或某些类用户权限
- 修改某类用户的某位或某些位权限
- chmod 用户类别+-MODE file,...
- chmod u-x /tmp/file
- 将/tmp/file属主执行权限去掉
- chmod a+x /tmp/file
- -x /tmp/file
转载于:https://blog.51cto.com/guodayong/1144115
相关文章:

react生命周期函数
在react中,生命周期函数指的是组件在加载前,加载后,以及组件更新数据和组件销毁时触发的一系列方法。通常分为以下几类: 组件加载的时候触发的函数:constructor 、componentWillMount、 render 、componentDidMount 组…

C语言的单链表求交点
单链表求交点,问题如下: 使用o(1)的空间复杂度,求两个链表相交的时候的交点,这个思想就类似于使用o(1)的空间复杂度和o(n)的时间复杂度来求链表的第k个节点。 过程如下: 获取两个链表的长度将较长的链表移动和短链表…

jquery中如何以逗号分割字符串_百度知道
jquery中如何以逗号分割字符串_百度知道javascript本身就是带split方法的定义和用法split() 方法用于把一个字符串分割成字符串数组。语法stringObject.split(separator,howmany)参数 描述separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。…

mysql 前台启动_从Windows命令行启动MySQL
可以从命令行手动启动MySQL服务器。可以在任何版本的Windows中实现。要想从命令行启动mysqld服务器,你应当启动控制台窗口(或“DOS window”)并输入命令:C:\> C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld根据系统中MySQL安装位置…

设置datagridview的数据源为(DATASET)SQL查寻结果
private void button5_Click(object sender, EventArgs e)02 {03 if (MessageBox.Show("确认删除该行吗?", "删除", MessageBoxButtons.YesNo, MessageBoxIcon.Question) DialogResult.Yes )04 {05 SqlConnection conn new SqlConnection();0…

vim中文手册
http://vimcdoc.sourceforge.net/doc/help.html转载于:https://www.cnblogs.com/answercard/p/10125611.html

C语言单链表求环,并返回环的起始节点
若链表中存在环,找出其中的环所在的节点,否则,返回NULL 在没有C set容器的优势前提下,我们对这样的环型的寻找以及定位可以利用快慢指针来实现。 有环的存在,类似与操场跑圈,必然存在快慢之分。有了快慢&a…

CSS3无前缀脚本prefixfree.js与Animatable使用介绍
要求 必备知识 本文要求基本了解 JAVASCRIPT 和 和 CSS3 基本知识。 运行环境 桌面端:IE9 ,Opera 10,火狐3.5 ,Safari 4和Chrome浏览器;移动端:移动Safari,Android浏览器,Chrome浏览器和Opera Mobile。 演示地址 演示…

mysql的优化之table_open_cache 篇_mysql性能优化之table_open_cache
表现:数据库查询效率慢,show processlist 发现比较多的查询正在opening table。进一步确认,执行以下语句:mysql> show global status like open%tables%;------------------------| Variable_name | Value |----------------…

AIX系统日志学习笔记之一
AIX系统上线之后,难免会出现错误,为了应对错误,aix提供了很多处理错误的方法和日志记录机制,为修复故障和系统提供方便。 Errdemon是aix的一个守护进程,该进程会实时检查/dev/drror设备文件,查看是否有新的…

C语言的单链表分割
已知链表头指针head与数值x,将所有小于x的节点放在大于或等于x 的节点前,且保持这些节点的原来的相对位置。 这个过程有点类似于快速排序,寻找一个阈值,比该阈值小的放左边,比该阈值大的放右边。只是由数组遍历变为来…

java面试时候算法题多吗_java程序员面试中最容易被问到的18个算法题(附答案!)...
作者:cpp软件架构狮链接:https://www.toutiao.com/i6618515311836529156/(点击阅读原文前去围观)算法是比较复杂又基础的学科,每个学编程的人都会学习大量的算法。而根据统计,以下这18个问题是面试中最容易遇到的,本文…

Ubantu Mark
说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装、卸载和删除的方法。 一、Ubuntu中软件安装方法 1、APT方式 (1)普…

Linux挂载Windows共享目录
手工挂载: mount -t cifs -o usernameXXX,passwordXXX //IP/共享目录 /挂载目录 自动挂载: 在etc/fstab加入 //IP/共享目录 /挂载目录 cifs defaults,auto,usernameXXX,passwordXXX 0 0 重启转载于:https://blog.51cto.com/kenzhuang/1149033

搭建私有npm私库(使用verdaccio)
一、为什么要搭建npm私库 原因:1)公司内部开发的私有包,统一管理,方便开发和使用;2)安全性,由于公司内部开发的模块和一些内容并不希望其他无关人员能够看到,但是又希望内部能方便使用ÿ…

C语言的有序单链表合并
已知两个已排序链表头节点指针headA与headB,将这两个链表合并,合并后仍为 有序的,返回合并后的头节点。 主要步骤如下: 创建一个临时的头节点,头节点每次指向headA 或者 headB较小的节点当headA->data 比headB-&g…

我的世界java版双海底神殿种子_我的世界海底神殿种子2021
游戏我的世界中,2021年的海底神殿地图中有五种类型的种子可以使用,建议在找海底神殿时使用夜视药水。那么2021年在MC中最新的海底神殿种子分别是Seed:-1005362104,Seed:-1436927780,Seed:-10053…

Erlang服务端开发(无需Erlang基础)笔试题
某游戏公司Erlang服务端开发(无需Erlang基础)笔试题,面向C/C程序员 一、用你熟悉的语言解决下面的问题。 1、反转输出字符串,并移除其中的空格。 2、快速的判断一个数是否素数的方法。 3、给一个数组进行排序。 4、设计一个背包系…

几何匹配和分合算法的图像识别技术
第一章 引言 1.1 面像定位概述及其与面像识别的关系 这个设计所涉及到的是面像的定位和识别。简单来说,所谓面像的定位,就是在照片(静态图像)或视频(动态图像)中标出面像所在的位置,把面像选取出来。而面像的识别就是把选取出来的面像与…

RegExp 正则
正则:就是一条规则,用于检验字符串的格式,目标就是字符串。 只要是表单提交的数据都是字符串 正则的定义: 1.var regnew RegExp(); 2.var reg/格式/; 正则的方法: 两个功能,一个是匹…

C++的多个有序链表合并
已知k个已排序链表头节点指针,将这k个链表合并,合并后仍为有序的 ,返回合并后的头节点 如下三个链表: 合并后的结果如下: 方法一(STL sort算法进行排序): 先将输入的排序链表插入…

c# 垃圾回收是引用类型而言的
c# 垃圾回收是引用类型而言的转载于:https://www.cnblogs.com/C-CHERS/p/3646387.html

java unlimited_具有无限参数的Java方法(Java method with unlimited arguments)
具有无限参数的Java方法(Java method with unlimited arguments)Spring框架使用方法,您可以根据需要传递尽可能多的参数。我想写一个函数,也可以采取无限量的数据。 这个功能是如何调用的,以便我可以阅读它。 或者我该如何定义它?…

2013-3-10日记
2019独角兽企业重金招聘Python工程师标准>>> 今天星期日,在家早上看NBA,中午去买菜,下午在家种花,晚上看CBA。 转载于:https://my.oschina.net/guanyun/blog/112801

P1522 牛的旅行
这题挺好……有几个坑……(反正我都跳进去了) 对于新的更大的图,由于求的是最小连接边,所以它的值可能小于之前单独一个图的最长的最短路…… 所以之后的值应该取个max(emmm……) 所以第一次我只拿了70。。…

C++ algorithm的sort函数总结
sort函数 sort对给定区间进行排序,支持各种数据类型,迭代器,结构体,自定义排序规则stable_sort 对给定区间进行稳定排序,且可保证相等元素的原本相对次序在排序后保持不变partial_sort 对给定区间部分元素排序partial_sort_copy …

加密解密php,PHP实现的加密解密处理类
本文实例讲述了PHP实现的加密解密处理类。分享给大家供大家参考,具体如下:/* 版权协议: GPL (The GNU GENERAL PUBLIC LICENSE Version 2, June 1991)------------------------------------------------------------ 文件名称:cls…

技术人生:本周改进计划
分配时间学习领域知识和管理知识。更慎重的命名。注意交流的态度和方式(特别是在出现不同意见的时候)。对待任何工作内容都不能应付了事。转载于:https://www.cnblogs.com/happyframework/p/3695596.html

linux下batik-rasterizer.jar生成图片中文乱码
为什么80%的码农都做不了架构师?>>> 发现原来jdk5.0在linux下和以前的版本还不一样,默认不支持中文字体的。得手动去搞一个fontconfig配置, 此文件在$JAVA_HOME/jre/lib/下, 果然有一大堆fontconfig.XX.properties, 官…

小记,springboot项目中自己常用的logback配置文件
把配置文件放到resources这个classpath目录即可生效,日志输入样式是从springboot中日志配置中copy过来的, 其他常用配置不做过多注释了。 logback-spring.xml <?xml version"1.0" encoding"UTF-8"?> <configuration><conversi…