day 9 用户管理

1.什么是用户?

能正常登陆系统的都算用户

windows系统和linux系统的用户有什么区别?

本质上没有区别, linux支持多个用户同一时刻登陆系统, 互相之间不影

而windows只允许同一时刻不允许多个用户登录. (windowsServer2008 )

root 超级管理员用户

普通用户 多个普通用户能逻辑上分为一个组 当然一个用户也能隶属

于多个组

2.为什么要创建用户?

1.系统上的每一个进程(运行的程序),都需要一个特定的用户运行

2.通常在公司是使用普通用户管理服务器,因为root权限过大,容易

造成故障。

3.如何查看系统中所存在的用户

[root@oldboyedu ~]# id

uid=0(root) gid=0(root) groups=0(root)

[root@oldboyedu ~]# id jack

uid=1000(jack) gid=1000(jack) groups=1000(jack)

4.创建用户会在系统的哪个配置中保存信息

当创建一个用户时,系统会操作/etc/passwd /etc/shadow 这两个文件,变

更文件中的内容

/etc/passwd文件内容各部分意义

/etc/shadow 文件内容各部分意义

https://www.cnblogs.com/xuliangwei/p/10679004.html

下面我们就围绕着用户的创建、变更、删除等来讲讲涉及到的命令:

useradd、usermod、userdel

useradd添加用户

1.创建bgx用户,UID5001,基本组students,附加组sa 注释信

息:2019 new student,登陆shell:/bin/bash

[root@oldboyedu ~]# groupadd students

[root@oldboyedu ~]# groupadd sa

[root@oldboyedu ~]# useradd oldxu -u5001 -g students -

G sa -c "2020 new" -s /bin/bash

检查用户

[root@oldboyedu ~]# id oldxu

uid=5001(oldxu) gid=1003(students)

groups=1003(students),1004(sa)

检查用户

[root@oldboyedu ~]# grep "oldxu" /etc/passwd

oldxu:x:5001:1003:2020 new:/home/oldxu:/bin/bash

2.创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户

无法登陆系统

[root@oldboyedu ~]# useradd -r -M -s /sbin/nologin

mysql

检查用户

[root@oldboyedu ~]# id mysql

uid=997(mysql) gid=995(mysql) groups=995(mysql)

检查用户

[root@oldboyedu ~]# grep "mysql" /etc/passwd

mysql:x:997:995::/home/mysql:/sbin/nologin

模拟登陆.登陆失败

[root@oldboyedu ~]# su - mysql

This account is currently not available.

3.创建一个xlw用户,uid为6666,附加组为sa,用户的家目录

为/tmp/xlw 登陆的shell为/sbin/nologin

[root@oldboyedu ~]# useradd od -u 777 -G sa -d /tmp/od

-s /sbin/nologin

PS: UID GID 在整个系统是唯一的.

选项

-u 指定要创建用户的UID,不允许冲突

-g 指定要创建用户默认组(基本组 主要的组)

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

-d 指定要创建用户家目录

usermod修改用户[重要程度一般]

-s 指定要创建用户的bash shell /bin/bash

/sbin/nologin

-c 指定要创建用户注释信息

-M 给创建的用户不创建家目录

-r 创建系统账户,默认无家目录 [999-200]

1.检查之前创建的od用户

[root@oldboyedu ~]# id od

uid=777(od) gid=6667(od) groups=6667(od),1004(sa)

2.修改od用户uid 9999、gid (devops),附加组 dba,sa,dsb

[root@oldboyedu ~]# groupadd devops

[root@oldboyedu ~]# groupadd dba

[root@oldboyedu ~]# groupadd sa

[root@oldboyedu ~]# groupadd dsb

[root@oldboyedu ~]# usermod od -u9999 -g devops -aG

dba,sa,dsb

3.修改od用户的注释信息, 用户家目录, 登录shell, 登录名

[root@oldboyedu ~]# usermod od -c "oldboyedu.com" -md

/home/oldboy -s /bin/bash -l oldboy

[root@oldboyedu ~]# grep "oldboy" /etc/passwd

oldboy:x:9999:6668:oldboyedu.com:/home/oldboy:/bin/bas

h

选项

-u 指定要修改用户的UID

-g 指定要修改用户基本组

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

加组 -aG 追加

-d 指定要修改用户家目录 -md 旧家搬新家

-s 指定要修改用户的bash shell

userdel删除用户

PS: 与用户相关的还有很多命令,以下简单列举一些,但都不是常用

命令,所以了解即可 1) 使用finger命名查询用户信息以及登录信息,

示例: finger UserName 2) 使用chfn命令修改用户信息,示例: chfn

UserName 3) 使用chsh命令修改用户登录Bash Shell,示例: chsh

UserName 4) 使用who、whoami、w检查用户登陆情况

-c 指定要修改用户注释信息

-l 指定要修改用户的登陆名

-L 指定要锁定的用户

-U 指定要解锁的用户

选项 -r 删除用户同时删除它的家目录

1.删除user1用户,但不删除用户家目录和 mail spool

[root@bgx ~]# userdel user1

2.-r参数可以连同用户家目录一起删除(慎用)

[root@bgx ~]# userdel -r user1

[root@oldboyedu ~]# who

root pts/0 2019-08-05 08:59 (10.0.0.1)

root pts/1 2019-08-05 10:14 (10.0.0.1)

root pts/2 2019-08-05 12:26 (10.0.0.1)

当前登录系统的用户是

[root@oldboyedu ~]# whoami

root

2 今日总结

1.什么是用户?

2.我们为什么要创建用户?

3.用户相关配置文件? /etc/passwd(重要) /etc/shadow (一般般)

4.useradd usermod userdel

5.明天: 为用户设定密码\ 用户创建的流程\ 组的管理 普通用户提


今天主要关注/etc/passwd 和/etc/shadow 文件内容各部分代表的含义,
还有就是 useradd usermod userdel 的选项需要理解记忆

你可能感兴趣的:(day 9 用户管理)