用户的基本操作

Posted ronglianbing2019--

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用户的基本操作相关的知识,希望对你有一定的参考价值。

1.如何创建用户

先了解用户的分类(约定、规范)

用户UID 系统中约定的含义
0 超级管理员
1-200 系统用户,由系统分配进程使用
201-999 系统用户,用来运行服务账户,不需要登录系统(动态分配)
1000+ 常规普通用户

 

注意:在centos7之前,UID1-499用于系统用户,而UID500+则用于普通用户。

 

用户的相关命令:useradd、usermod、userdel

使用useradd和adduser这两个命令来创建用户

 

添加用户前需要确定:

1.默认组是否有特殊要求

2.用户是否允许登录

3.用户密码策略

4.用户的有效期

5.用户的UID是否有特殊要求

1)使用useradd命令新增用户,注意:adduser命令软链接指向useradd命令。

参数:

-u   指定用户的UID,不能和现有的冲突

-g  指定用户 默认基本组

-G  指定用户附加组,用逗号隔开添加多个附加组

-d  指定用户家目录  

-c  指定用户注释信息

-M  不建立家目录

-s  指定用户默认shell

-r  创建系统账户

-a  附加组,都留下,配合-G,追加

如:创建rong用户,指定UID5001,基本组students,附加组lianzhang,xiaobin 注释信息:one new user,登录的shell:/bin/bash

[[email protected] ~]# useradd rong -u 5001 -g students -G lianzhang,xiaobin -c "one new user" -d /home/rong -s /bin/bash 
[[email protected] ~]# tail -1 /etc/passwd
rong:x:1000:1000::/home/rong:/bin/bash

  

2)usermod 命令修改用户组

参数:

-u 修改用户的UID

-g 修改用户所属的基本组

-G 修改用户附加组,使用逗号隔开多个附加组,覆盖原有的附加组

-a 追加更多的附加组,必须和-G使用: -aG 追加附加组

-m 家目录迁移,必须和-d一起使用,移动用户的家目录到新的位置

-d 指定用户的家目录位置

-c 修改用户 的注释信息

-s 更改用户使用的shell

-l更改用户的登录名

-L锁定用户

-U解锁用户

2.修改用户的UID,gid,附加组,注释信息,用户家目录,登录shell,登录名

[[email protected] ~]# groupadd -g 5008 network_
lianzhang
[[email protected] ~]# groupadd -g 5009 xiaobin

 

1)建立组,指定组gid

[[email protected] ~]# groupadd -g 5008 network_
lianzhang
[[email protected] ~]# groupadd -g 5009 xiaobin

3)修改用户属性

[[email protected] ~]# usermod -u 6001 -g 5008 -a -G 5009 -c "2019 new student" -md /rong/bin/sh -l rong
[[email protected] ~]# 
检查是否修改成功
[[email protected] ~]# grep "rong" /etc/passwd
rong:x:1000:1000::/home/rong:/bin/bash

 

 

 

3)锁定用户

[[email protected] ~]# echo 123 |passwd --stdin rong
Changing password for user rong.
passwd: all authentication tokens updated successfully.
[[email protected] ~]# suermod -L rong
-bash: suermod: command not found
[[email protected] ~]# usermod -L rong
[[email protected] ~]# usermod -U rong

Last failed login: Fri Jun 28 00:05:21 CST 2019 from 10.0.0.1 on ssh:notty
There were 3 failed login attempts since the last successful login.
Last login: Thu Jun 20 23:55:20 2019
[[email protected] ~]$ 

没解锁的情况

正常登录系统
Last failed login: Fri Jun 28 00:08:19 CST 2019 from 10.0.0.1 on ssh:notty
There were 3 failed login attempts since the last successful login.
Last login: Fri Jun 28 00:05:55 2019 from 10.0.0.1
[[email protected] ~]$ 

 

Connecting to 10.0.0.100:22...
Connection established.
To escape to local shell, press Ctrl+Alt+].

 

-----------修改附加组   组合----------------------------------

-G  修改用户的附加组

-a  追加附加组

 

-----------------修改目录组合-----------------------------------------

-d  修改用户的家目录

-m  迁移家目录

 

删除用户

 

userdel

-r  删除用户并删除家目录

 

用户创建的相关文件

grep -i ‘^[a-z]’ /etc/login.defs

MAIL_DIR /var/spool/mail  邮件目录

PASS_MAX_DAYS    99999  密码最大的天数

PASS_MIN_DAYS     0    密码最小天数

PASS_MIN_LEN      5    密码最小长度

PASS_ARN_AGE      7    密码过期前7天警告

UID_min        1000    普通用户最小UID

UID _MAX       60000   最大UID

SYS_UID_MIN   201    系统最大小的UID

SYS_UID_MAX    999    系统用户最大的UID

GID_MIN      1000    普通用户最小gid

GID _MAX      60000  普通用户最大的gid

SYS_GID_MIN      201    提醒他用户最小的gid

SYS_GID_MAX      999    系统用户最大gid

CREATE_HOME    yes      是否创建家目录

UMASK      077      规定家目录权限

USEROROUPS_ENAB     yes    创建用户的同时创建组,删除用户的同时删除组

ENCRYPT_METHOD  SHA512  密码的加密算法

 

grep  -i  ‘[]a-z]‘ /etc/default/useradd

根据/etc/login.defs中的USERGROUPS_ENAB NO 走此配置

GROUP=100            创建用户默认家目录存放的路径

INACTIVE=-1              过期停权,-1 不启用

HOME=/home             创建用户默认家目录存放的路径

EXPIRE=              用户过期时间,不设置

SHELL=/bin/bash           创建用户默认的登录的shell

SKEL=etc/skel            用户家目录环境变量的存放路径

CREATE_MAIL_SPOOL=yes      是否创建邮件

 

 

用户密码管理

passwd  修改用户密码

passwd  修改当前用户

passwd username  修改指定用户密码

 

非交互式创建密码

echo "123" |passwd --stdin alias

生成随机密码&&记录文件

echo $RANDOM|md5sum|cut -c 1-10

echo $(eco $RANDOM|md5sum |cut -c 5-14) |tee pass.txt|passwd --stdin alias

 

 

生成复杂随机密码

mkpasswd 密码生成工具,-l 设定密码长度,-d 数字,-c 小写字母,-C大写字母,-s 特殊字符

yum install -y expect    安装扩展包名

mkpasswd -l 10 -d 2 -c 2 -C 2 -s 4

 

组的基本管理

  1.基本组 -g

  2.附加组 -G

相关命令

  groupadd  创建组

  -g  指定gid

  groupmod   修改组

  -g 修改gid  

  groupdel  删除组

head -2 /etc/group

组名  组密码占位符  gid  附加成员

egon    X:     1103   alias

 

字段名称

1.组的名称

2.组的密码(存在/etc/gshadow)

3.组gid信息

4.仅显示附加成员,基本成员不显示

 

 head -2  /etc/gshadow

组名  组密码,!没有密码  组管理员  附加成员

dba

root:::

bin:::bin,daemon

/etc/gshadow  由 ‘ : ‘ 分割,分割为4个字段,每个字段的具体含义如下:

字段名称

1.组名称

2.组密码

3.组管理员

4.仅显示附加成员,基本成员不显示

 

 

 

 

1)切换用户身身份

1.shell的分类

2.非交互式shell

3.登录式shell

4.非登录式shell

2)环境变量

个人配置文件

~/.bash_profile

~/.bashrc

 

全局配置文件

/etc/profile

/etc/profile.d/*.sh

/etc/bashrc

 

加载顺序(登录式shell)

/etc/profile

/etc/profile.d/*.sh

/root/bashrc

/root/bash_profile

/root/bashrc

/etc/bashrc

bash(非登录式shell)

/root/bashrc

/etc/bashrc

/etc/profile.d/*.sh

 

相关命令:

su - (-一定要加)

 

 

用户提权:sudo

 

以上是关于用户的基本操作的主要内容,如果未能解决你的问题,请参考以下文章

linux用户和用户组的基本操作

sql的基本操作,创建用户等

MariaDB基本操作--(创建用户)(转)

用户和组的基本操作(linux)

oracle数据库基本操作

用户如何让其他用户操作自己的表