当前位置: 首页 > 编程日记 > 正文

Linux添加用户组和添加用户

1.用户组

  • 添加组:groupadd 组名
    [root@Server-n93yom ~]# groupadd dev
    [root@Server-n93yom ~]# cat /etc/group | grep dev
    dev:x:10011:
    [root@Server-n93yom ~]#
  • 删除组:groupdel 组名
    [root@Server-n93yom ~]# groupdel dev
    [root@Server-n93yom ~]# cat /etc/group | grep dev
    [root@Server-n93yom ~]#
  • 查询组:cat /etc/group 或者使用管道来精确查询 cat /etc/group | grep dev
    [root@Server-n93yom ~]# cat /etc/group
    root:x:0:
    bin:x:1:
    daemon:x:2:
    sys:x:3:
    adm:x:4:
    tty:x:5:
    disk:x:6:
    lp:x:7:
    mem:x:8:
    kmem:x:9:
    wheel:x:10:
    cdrom:x:11:
    mail:x:12:postfix
    man:x:15:
    dialout:x:18:
    floppy:x:19:
    games:x:20:
    tape:x:30:
    video:x:39:
    ftp:x:50:
    lock:x:54:
    audio:x:63:
    nobody:x:99:
    users:x:100:
    utmp:x:22:
    utempter:x:35:
    ssh_keys:x:999:
    input:x:998:
    systemd-journal:x:190:
    systemd-bus-proxy:x:997:
    systemd-network:x:192:
    dbus:x:81:
    polkitd:x:996:
    tss:x:59:
    dip:x:40:
    postdrop:x:90:
    postfix:x:89:
    sshd:x:74:
    check:x:1000:check
    cfyuser:x:10000:
    consul:x:10002:
    rabbitmq:x:10003:
    mysql:x:10009:
    prometheus:x:10004:
    grafana:x:10005:
    logstash:x:10006:
    nginx:x:995:
    tomcat:x:10008:
    guanbin:x:10010:
    dev:x:10011:

        /etc 目录是专门用来保存 系统配置信息 的目录

        group 是保存组信息的文件

2.用户

  • 添加用户:useradd -m -g 组 新建用户名            注意:-m 自动建立用户家目录; -g 指定用户所在的组,否则会建立一个和用户名同名的组
    [root@Server-n93yom ~]# useradd -m -g dev test1
    [root@Server-n93yom ~]#

    dev为用户组,test1为用户名

  • 查询用户:在/etc/passwd文件下存储的是用户的list
    [root@Server-n93yom ~]# cat /etc/passwd
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    sync:x:5:0:sync:/sbin:/bin/sync
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
    halt:x:7:0:halt:/sbin:/sbin/halt
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    operator:x:11:0:operator:/root:/sbin/nologin
    games:x:12:100:games:/usr/games:/sbin/nologin
    ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
    nobody:x:99:99:Nobody:/:/sbin/nologin
    systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin
    systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
    dbus:x:81:81:System message bus:/:/sbin/nologin
    polkitd:x:998:996:User for polkitd:/:/sbin/nologin
    tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin
    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
    check:x:1000:1000:check:/home/check:/bin/bash
    cfyuser:x:10000:10000::/home/cfyuser:/bin/bash
    consul:x:10002:10002::/opt/cloudchef/consul:/sbin/nologin
    rabbitmq:x:10003:10003::/etc/rabbitmq:/sbin/nologin
    mysql:x:10009:10009::/home/mysql:/bin/bash
    prometheus:x:10004:10004::/home/prometheus:/sbin/nologin
    grafana:x:10005:10005::/home/grafana:/bin/bash
    logstash:x:10006:10006::/home/logstash:/bin/bash
    nginx:x:997:995:nginx user:/var/cache/nginx:/sbin/nologin
    tomcat:x:10008:10008::/opt/cloudchef/tomcat:/sbin/nologin
    test:x:10010:10010::/home/test:/bin/bash
    test1:x:10011:10011::/home/test1:/bin/bash

  • 只查找test1用户
    [root@Server-n93yom ~]# id test1
    uid=10011(test1) gid=10011(dev) groups=10011(dev)
    [root@Server-n93yom ~]#

    uid为用户id,  gid为组id

  • 修改和创建密码 passwd 用户名    如果不加用户名则默认修改当前登录者的密码
    [root@Server-n93yom ~]# passwd test1
    Changing password for user test1.
    New password:
    BAD PASSWORD: The password is shorter than 8 characters
    Retype new password:
    passwd: all authentication tokens updated successfully.
    [root@Server-n93yom ~]#

    设置好密码后,使用此账号和密码登录

    ➜  ~ ssh test1@192.168.85.163
    test1@192.168.85.163's password:
    Last failed login: Mon Jul 22 17:00:05 CST 2019 from 192.168.1.53 on ssh:notty
    There were 3 failed login attempts since the last successful login.
    [test1@Server-n93yom ~]$

  • 设置用户不能修改密码
    [root@Server-n93yom ~]# passwd -l test1     //在root下,禁止test1用户修改密码的权限
    Locking password for user test1.            //锁住test1不能修改密码
    passwd: Success
    [root@Server-n93yom ~]# su test1            //切换用户
    [test1@Server-n93yom root]$ passwd          //修改密码
    Changing password for user test1.
    Changing password for test1.
    (current) UNIX password:
    passwd: Authentication token manipulation error  //没用权限修改密码
    [test1@Server-n93yom root]$

  • 清除密码
    [root@Server-n93yom ~]# passwd -d test1    //删除test1的密码
    Removing password for user test1.
    passwd: Success
    [root@Server-n93yom ~]# passwd -S test1     //查看test1的密码
    test1 NP 2019-07-22 0 99999 7 -1 (Empty password.)   //密码为空
    [root@Server-n93yom ~]#

  • passwd 帮助命令
    [root@Server-n93yom ~]# passwd --help
    Usage: passwd [OPTION...] <accountName>-k, --keep-tokens       keep non-expired authentication tokens-d, --delete            delete the password for the named account (root only)-l, --lock              lock the password for the named account (root only)-u, --unlock            unlock the password for the named account (root only)-e, --expire            expire the password for the named account (root only)-f, --force             force operation-x, --maximum=DAYS      maximum password lifetime (root only)-n, --minimum=DAYS      minimum password lifetime (root only)-w, --warning=DAYS      number of days warning users receives before passwordexpiration (root only)-i, --inactive=DAYS     number of days after password expiration when an accountbecomes disabled (root only)-S, --status            report password status on the named account (root only)--stdin                 read new tokens from stdin (root only)Help options:-?, --help              Show this help message--usage                 Display brief usage message
    [root@Server-n93yom ~]#

3.设置密码失效时间

  • 可以编辑/etc/login.defs来设定几个参数,以后设置口令默认就按照参数设定为准:
    PASS_MAX_DAYS   99999
    PASS_MIN_DAYS   0
    PASS_MIN_LEN    5
    PASS_WARN_AGE   7

  • 当然在/etc/default/useradd可以找到如下2个参数进行设置:

    # useradd defaults file
    GROUP=100
    HOME=/home
    INACTIVE=-1
    EXPIRE=
    SHELL=/bin/bash
    SKEL=/etc/skel
    CREATE_MAIL_SPOOL=yes

    通过修改配置文件,能对之后新建用户起作用,而目前系统已经存在的用户,则直接用chage来配置。

  • chage [选项] 用户名

    chage命令是用来修改帐号和密码的有效期限。

    -m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
    -M:密码保持有效的最大天数。
    -w:用户密码到期前,提前收到警告信息的天数。
    -E:帐号到期的日期。过了这天,此帐号将不可用。
    -d:上一次更改的日期。
    -i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
    -l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。

  • chage -l root 查root账号的信息

    [root@Server-n93yom ~]# chage -l root
    Last password change                    : Jul 22, 2019
    Password expires                    : never
    Password inactive                    : never
    Account expires                        : never
    Minimum number of days between password change        : 0
    Maximum number of days between password change        : 99999
    Number of days of warning before password expires    : 7
    [root@Server-n93yom ~]#

  • chage -M 60 test  设置密码过期时间为60天
  • chage -I 5 test    设置密码失效时间为5天
  • 以test1账号为例,再查一次信息账号信息
    [root@Server-n93yom ~]# chage -l test1
    Last password change                    : Jul 22, 2019
    Password expires                    : Sep 20, 2019
    Password inactive                    : Sep 25, 2019
    Account expires                        : never
    Minimum number of days between password change        : 0
    Maximum number of days between password change        : 60
    Number of days of warning before password expires    : 7

    从上述命令可以看到,在密码过期后5天,密码自动失效,这个用户将无法登陆系统了。

转载于:https://www.cnblogs.com/guanbin-529/p/11227069.html

相关文章:

用javascript实现仿163的js广告向下挤压页面的效果

本次实现一个js小小特效&#xff0c;效果就是广告从页面的上方出来将基本页面挤压下去。 实现的思路是将两个div&#xff08;广告div1和div2&#xff09;。将div1的高度不断增加&#xff0c;增加的同时div2的y轴坐标变大&#xff0c;div1的高度增加多少相对应的y轴坐标加大多少…

【eclipse】快速调整eclipse背景和格式的方法

第一步 第二步 第三步 &#xff1a;选择相应的格式 效果如图

对做C#自定义控件的一点心得

近期在做DSOFramer这个控件&#xff0c;打算自己弄一个自定义控件来封装这个COM组件&#xff0c;中间遇到很多曲折&#xff0c;研究了一个星期&#xff0c;终于完成了 下面总结一下我做DSOFramer这个自定义控件的注意地方&#xff1a; 1、在创建一个Windows窗体控件库的时候&am…

numpy知识点

1、nonzero 对于一维数据来说&#xff0c;将返回符合条件的 下标 >>> b1 np.array([True, False, True, False]) >>> np.nonzero(b1)(array([0, 2]),)对于二维数据来说&#xff0c;将返回两维 元组&#xff0c; 第一维是符合条件的 x的索引&#xff0c;第二…

Excel导入异常Cannot get a text value from a numeric cell解决

POI操作Excel时偶尔会出现Cannot get a text value from a numeric cell的异常错误。 异常原因&#xff1a;Excel数据Cell有不同的类型&#xff0c;当我们试图从一个数字类型的Cell读取出一个字符串并写入数据库时&#xff0c;就会出现Cannot get a text value from a numeric …

【蓝桥java】递归基础之反向输出字符串

题目&#xff1a;输入一个字符串&#xff0c;要求将该字符串反向输出 代码实现&#xff1a; package xn.zzunit.recurrence;/*** 递归方法反向输出字符串* author tyrantForever**/ public class Project1 {public static void main(String[] args) {String testString "…

SQL Server中灾难时备份结尾日志(Tail of log)的两种方法

简介 在数据库数据文件因各种原因发生损坏时&#xff0c;如果日志文件没有损坏。可以通过备份结尾日志&#xff08;Tail of log)使得数据库可以恢复到灾难发生时的状态。 例如: 上图中。在DB_1中做了完整备份&#xff0c;在Log_1,Log_2处做了日志备份。在Log_2备份之后不久&…

C examples

最近在看David R. Hanson 的《C Interfaces and Implementations》&#xff0c;文中第一章提到了Literate Programming 作者举了一个例子&#xff1a; 功能&#xff1a;用于检测输入中相邻且相同的单词 #include<stdio.h> #include<math.h> #include<errno.h&g…

特征工程:特征生成,特征选择(三)

转自&#xff1a;https://blog.csdn.net/cymy001/article/details/79169862 特征生成 特征工程中引入的新特征&#xff0c;需要验证它确实能提高预测得准确度&#xff0c;而不是加入一个无用的特征增加算法运算的复杂度。 1. 时间戳处理 时间戳属性通常需要分离成多个维度比如年…

JAVA设计模式之不变模式

在阎宏博士的《JAVA与模式》一书中开头是这样描述不变&#xff08;Immutable&#xff09;模式的&#xff1a; 一个对象的状态在对象被创建之后就不再变化&#xff0c;这就是所谓的不变模式。 不变模式的结构 不变模式可增强对象的强壮型(robustness)。不变模式允许多个对象共享…

【蓝桥java】递归基础之智力训练

题目&#xff1a; 匪警请拨110,即使手机欠费也可拨通&#xff01; 为了保障社会秩序&#xff0c;保护人民群众生命财产安全&#xff0c;警察叔叔需要与罪犯斗智斗勇&#xff0c;因而需要经常性地进行体力训练和智力训练&#xff01; 某批警察叔叔正在进行智力训练&#xff1a; …

EF-Entity Framework 相关技术点收集贴

不定期、偶尔、添加更新 在网络上看到或者自己开发过程中碰到的EF&#xff0d;Entity Framework相关技术点 本文地址:http://www.cnblogs.com/vnii/archive/2012/02/28/2371736.html 1.数据表字段有默认值&#xff0c;比如DateTime类型的字段CreateTime默认值为数据新增的时间g…

[翻译]LightRacer游戏架构

1.0版本的Light Racer架构可说的不多。仅有一个单一的Activity&#xff0c;进行按钮的处理&#xff0c;显示游戏相关数据和显示GameView。我将在另一篇文章中说明游戏的画面是如何工作的&#xff0c;但是现在我先声明一下的就是&#xff1a;在Android中&#xff0c;单个Activit…

case when里的like功能 ////// 截取(substr)

case when里的like功能 假如要用到case when又要用到like这样的功能&#xff0c;即如果字符串包含‘语文’就怎么怎么样&#xff0c;包含‘数学’就怎么怎么样&#xff0c;包含‘英语’就怎么怎么样&#xff0c;like是用于where中的&#xff0c;放在case when里面是无效的&…

在Asp.Net MVC中设定site路径所对应的默认action

设置路由的default的Controller和Action可以达到我们预期的效果&#xff0c;代码如下所示&#xff1a; public class RouteConfig {public static void RegisterRoutes(RouteCollection routes){routes.IgnoreRoute("{resource}.axd/{*pathInfo}");routes.MapRoute(n…

【蓝桥java】递归基础之输出连续数字

题目&#xff1a;使用递归方法输出连续的数字 代码实现&#xff1a; package xn.zzunit.recurrence;/*** 递归方法输出连续的数字* author tyrantForever**/ public class Project2 {public static void main(String[] args) {printNumber(2, 9);}public static void printNu…

慢慢学Linux驱动开发,第十章,GNU C的扩展

内核开发者使用的C语言涵盖了ISO C99标准和GNU C扩展特性。这里简单介绍一下GNU C的扩展特性。 1.内联&#xff08;inline&#xff09;函数 GNU的C编译器支持内联函数&#xff0c;也是C的一个特性之一。就是函数会在所调用的位置上展开&#xff0c;这样做虽然会导致代码量的增加…

vMA学习笔记之一:将vMA加入域

目的&#xff1a; 将vMA加入域的方法 操作步骤&#xff1a; 1、 开启vMA 2、 按住AltF2切换到虚拟终端界面&#xff0c;使用vi-admin用户登录 2 3、 已经登录进来了 4、 在进行加域操作之前&#xff0c;必须确保DNS配置正确&#xff08;在初始化安装的时候会提示你设置DNS&…

关于DWG文件转换成PDF

最近有这样一个需求&#xff0c;客户会提供DWG文件&#xff0c;因为DWG文件是不能直接在网页上显示的&#xff0c;所以必须对他做处理&#xff0c;要求是转换成PDF格式。我查了很久的资料&#xff0c;很多都是基于C#和.NET的方法&#xff0c;而且都是说的很模糊&#xff0c;不是…

剑指offer--day07

1.1 题目&#xff1a;反转链表&#xff1a;输入一个链表&#xff0c;反转链表后&#xff0c;输出新链表的表头。 1.2 思路&#xff1a;这道题&#xff0c;我们要做到的是反转链表&#xff0c;我们的思路是将前一个节点与后一个节点断开&#xff0c;然后让后一个节点指向前一个节…

【蓝桥java】递归基础之计算共多少种走法

计算从某个位置&#xff08;x,y&#xff09;走到&#xff08;0,0&#xff09; 一共多少种走法 代码实现&#xff1a; package xn.zzunit.recurrence;/*** 从某个位置&#xff08;x,y&#xff09;走到&#xff08;0,0&#xff09; 一共多少种走法* author tyrantForever**/ pub…

数据库设计的三大范式

为了建立冗余较小、结构合理的数据库&#xff0c;设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库&#xff0c;必须满足一定的范式。在实际开发中最为常见的设计范式有三个&#xf…

JS得到对应字段 的值。遍历

这个写法不是经典。我受感触是因为。我写很多代码&#xff0c;没去想过怎么样去节省我们的开发时间&#xff0c;应该去写一些通用性的代码。 而且。我也没有把C#代码优化的思想转到各个地方。像JS的代码。我就没去想过怎么去优化。 加油吧。 function getPageListSet(pageIndex…

微信小程序开发中如何实现侧边栏的滑动效果?

原文链接&#xff1a;https://mp.weixin.qq.com/s/7CM18izpZqf0oc0D75IGmQ1概述在手机应用的开发中侧边栏滑动是很常见的功能&#xff0c;当然在小程序中也不会例外&#xff0c;很多特效还没有成熟案例&#xff0c;只能原生重写&#xff0c;所以今天在网上为大家收集整理来几个…

采购审批专题总结--bob

一采购审批设置的一般步骤&#xff1a; 前置步骤 ①定义安全性控制 N&#xff1a;PO/设置/采购/单据类型 ②使用审批结构 N&#xff1a;PO/设置/组织/财务选项 ③安全层次结构选择 N&#xff1a;PO/设置/组织/采购选项 ④采购…

【蓝桥java】递归基础之39级台阶

题目&#xff1a; 小明刚刚看完电影《第39级台阶》。离开电影院的时候&#xff0c;他数了数礼堂前的台阶数&#xff0c;恰好是39级! 站在台阶前&#xff0c;他突然又想着一个问题&#xff1a; 如果我每一步只能迈上1个或2个台阶。先迈左脚&#xff0c;然后左右交替&#xff0c;…

Linux服务器安装配置JDK

一、准备工作&#xff1a; 1.登录服务器&#xff0c;切换到root用户&#xff08;su - root&#xff0c;然后输入密码&#xff0c;按enter&#xff09;&#xff0c;进入根目录&#xff1a;cd / 2.进入要安装jdk的目录&#xff0c;自己可以创建一个java目录&#xff0c;执行命令如…

Apache的工作原理

Apache的请求处理 尽管不是全部的&#xff0c;但是绝大部分模块都关注处理HTTP请求的某些方面。不过&#xff0c;一个模块不能考虑处理HTTP的所有方面——这是httpd要做的工作。模块化方法的一个好处就是&#xff1a;一个模块可以只关注一个具体的任务&#xff0c;而不去考虑那…

TP框架数据模型

1.TP框架的数据模型需要建在Model文件夹下&#xff1a; 1.数据模型 与控制器相似&#xff0c;但是每个数据模型控制一张数据表。 2.数据模型可写可不写&#xff0c;如果不写 则沿用父类数据模型。 2.访问数据库&#xff1a; 1.更改数据库配置&#xff1a; 2.访问数据库的三种方…

【蓝桥java】递归基础之车辆进出栈

题目&#xff1a; X星球特别讲究秩序&#xff0c;所有道路都是单行线。 一个甲壳虫车队&#xff0c;共16辆车&#xff0c;按照编号先后发车&#xff0c;夹在其它车流中&#xff0c;缓缓前行。 路边有个死胡同&#xff0c;只能容一辆车通过&#xff0c;是临时的检查站&#xff0…