useradd 用户名

passwd 用户名,给指定用户设密码

passwd给当前用户设密码

添加一个用户系统会自动在以下文件或目录创建对应用户信息:

[root@localhost ~]# grep shipotian /etc/passwd
shipotian:x:1002:1002::/home/shipotian:/bin/bash
[root@localhost ~]# grep shipotian /etc/shadow
shipotian:$6$mDzNFfmC$c/PmvY4M2WIoRE.ITMO6B71tl.WWDm/XhrRnAq.ecMhy86mdWwOeWADxhDOsSp953d7ggt4mCklUzZMQja4g30:17383:0:99999:7:::
[root@localhost ~]# grep shipotian /etc/group
shipotian:x:1002:
[root@localhost ~]# grep shipotian /etc/gshadow
shipotian:!::
[root@localhost ~]# ll /home
总用量 0
drwx------. 4 qiaofeng    qiaofeng    112 7月  23 21:23 qiaofeng
drwx------. 2 shipotian   shipotian    62 8月   5 15:27 shipotian
drwx------. 4 xiongjiawei xiongjiawei 191 7月  23 21:23 xiongjiawei
[root@localhost ~]# ls /var/spool/mail
qiaofeng  root  rpc  shipotian  xiongjiawei


添加用户默认值文件:/etc/default/useradd

# useradd defaults file
GROUP=100  公有模式会使用此默认值,目前一般添加用户是私有模式,所以此条无效。
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

另一个默认值文件:/etc/login.defs

 [root@localhost ~]# grep -v ^# /etc/login.defs

 MAIL_DIR        /var/spool/mail

 PASS_MAX_DAYS   99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7 UID_MIN 1000
UID_MAX 60000
SYS_UID_MIN 201
SYS_UID_MAX 999 GID_MIN 1000
GID_MAX 60000
SYS_GID_MIN 201
SYS_GID_MAX 999 CREATE_HOME yes UMASK 077 USERGROUPS_ENAB yes ENCRYPT_METHOD SHA512

passwd

查询用户密码状态:root命令

[root@localhost ~]# passwd -S xiongjiawei
xiongjiawei PS 1969-12-31 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

锁定用户:root命令

[root@localhost ~]# passwd -l xiongjiawei 此操作的本质即给shadow文件的密码位前加两个!!
锁定用户 xiongjiawei 的密码 。
passwd: 操作成功

解锁用户:root命令

[root@localhost ~]# passwd -u xiongjiawei
解锁用户 xiongjiawei 的密码。
passwd: 操作成功

通过管道输出接收密码:echo "密码" | passwd --stdin 用户名


usermod

-u 修改用户UID

-g 修改用户初始组

-G 修改用户附加组

-c 修改用户说明信息

-d 修改用户家目录

-L  临时锁定用户

-U 解锁用户锁定

这些选项的作用同useradd,只是useradd是添加新用户时同时定制用户相关信息,usermod是修改已存在用户相关信息。


chage

chage -选项 用户名

chage -l 用户名  :列出用户的详细密码状态

chage -d 日期 用户名  :修改密码最后一次更改日期

chage -m 天数  :两次密码修改间隔,即密码最小年龄

chage -M 天数  :密码有效期,即密码最大年龄

chage -W 天数  :密码过期前警告天数

chage -I 天数  :密码过期后宽限天数

chage -E 日期  :账号失效时间


userdel

userdel -r 用户名  :-r选项,删除用户同时删除用户家目录

此命令执行后对应这些文件里与被删除用户相关信息也一并删除:/etc/passwd、/etc/shadow、/etc/group、/etc/gshadow、/home、/var/spool/mail


id

查询用户id、初始组id、附加组id

[root@localhost ~]# id xiongjiawei
uid=1000(xiongjiawei) gid=1000(xiongjiawei) 组=1000(xiongjiawei),10(wheel)


su

su 用户名  :不建议不带选项-的切换

su - 用户名  :连环境变量一起切换,建议带选项-

su  :切换到root用户,不切换环境变量

su -  :切换到root用户,带环境变量一起切换

从超级用户切换到其他用户不需要输入密码,从其他用户切换到另一用户需要输入另一用户密码。

[xiongjiawei@localhost ~]$ su - root -c "useradd yangguo"  :不切换用户,只是临时用指定用户执行命令
密码:

[xiongjiawei@localhost ~]$ grep yangguo /etc/passwd
yangguo:x:1002:1002::/home/yangguo:/bin/bash


env

添加用户useradd,给用户设置修改密码passwd,修改用户信息usermod,修改用户密码状态chage,删除用户userdel,查询用户及组id,切换用户su,查看当前环境变量env的更多相关文章

  1. FastAdmin 环境变量 env 配置

    FastAdmin 环境变量 env 配置 目前 FastAdmin 支持环境变量 env 配置. 目前支持以下环境变量 app.debug app.trace database.type datab ...

  2. 自动配置/切换/查看JDK环境变量

    最近老是需要几个版本的JDK切换工作,于是网上收集资料整理,自己写了一个:自动配置/切换/查看JDK环境变量的批处理脚本.顺带3个JDK版本分别是:jdk1.6.0_43,jdk1.7.0_80,jd ...

  3. Linux下怎么添加和查看PATH环境变量

    linux下查看和添加PATH环境变量来自:http://apps.hi.baidu.com/share/detail/32942984 $PATH:决定了shell将到哪些目录中寻找命令或程序,PA ...

  4. Linux学习总结(十)-文件复制及查看, 环境变量

    一 文件复制及移动 1.命令 cp --------copy 的意思格式 cp 选项 源文件 目标文件a: 对于文件我们直接cp 文件 目标文件假定我们在普通用户家目录下/home/lv新建两个普通文 ...

  5. maven 常用插件 拷贝依赖 拷贝jar包 查看属性 环境变量

    1 maven编译后希望将生产的jar包拷贝到指定目录 在pom中配置maven插件 maven-antrun-plugin <build > <plugins> <pl ...

  6. java centos7配置查看jdk环境变量

    [root@bogon java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64]# which java/usr/bin/java[root@bogon jav ...

  7. Docker 查看容器环境变量

    #linux指令# printenv

  8. Powershell下设置环境变量

    NODE中经常会用到process.env.NODE_ENV来判断当前环境,因为使用的系统是windows,在sublime text下安装terminal插件后,默认启动的时Powershell, ...

  9. NodeJS学习:环境变量

    简介 环境变量(environment variables) 不属于 NodeJS 范畴,它是操作系统用于设定执行环境的参数.会在程序运行时传递给应用程序. NodeJS 获取环境变量,是通过 glo ...

随机推荐

  1. 照虎画猫写自己的Spring

    从细节跳出来 看了部分Spring的代码,前面用了四篇内容写了一些读书笔记. 回想起来,论复杂度,Spring够喝上好几壶的.他就像一颗枝繁叶茂的大树,远处看,只是一片绿:走近看,他为你撑起一片小天地 ...

  2. Android设置屏幕方向

    设置方法:在AndroidManifest.xml中的Activity里加一个属性android:screenOrientation.例如设置该Activity为横向 <activity and ...

  3. Cngigure和BUS实现远端配置

    1 server依赖 <?xml version="1.0" encoding="UTF-8"?><project xmlns="h ...

  4. JAVASE 循环 之 计算各位上数字的和

    问题:输入一个整数,计算它各位上数字的和 Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int sum = 0; while(a ...

  5. JAVA提高十八:Vector&Stack深入分析

    前面我们已经接触过几种数据结构了,有数组.链表.Hash表.红黑树(二叉查询树),今天再来看另外一种数据结构:栈. 什么是栈呢,我们先看一个例子:栈就相当于一个很窄的木桶,我们往木桶里放东西,往外拿东 ...

  6. KVM克隆 快照

    原创博文安装配置KVM http://www.cnblogs.com/elvi/p/7718574.htmlweb管理kvm http://www.cnblogs.com/elvi/p/7718582 ...

  7. linux 下配置静态IP

    设置静态网络如下[root@bogon network-scripts]# pwd 进入这个路径下 /etc/sysconfig/network-scripts [root@bogon network ...

  8. 关于 AspNet Core 的配置文件 与VS2017 安装

    下面链接 是VS2017 安装EXE 我现在装过了就不去截图演示了,有哪位不理解的可以@我. 链接:https://pan.baidu.com/s/1hsjGuJq 密码:ug59 1.今天我给大家带 ...

  9. 【Java入门提高篇】Day8 Java内部类——匿名内部类

    今天来看看另一个更加神奇的类--匿名内部类. 就像它的名字表示的那样,这个类是匿名的,用完之后,深藏功与名,就像扫地僧那样默默潜藏于深山之中.匿名内部类不仅没有名字,连class关键字都省掉了,而且匿 ...

  10. Linux 开启echo等服务

    第一步: 需要安装xinetd服务(其实daytime就包含在xinetd服务中),安装就直接在"新立得软件管理器"里搜索,安装. sudo apt-get install xin ...