用户以及用户组

用户管理:
linux是一个多用户的操作系统,linux服务器会导致很多的在线用户去用不同的用户访问同一个,这时候会产生很多用户在用同一个服务器;
区分用户不是目的,目的是给不同的用户区分不同的权限;用用户来区分权限
用户之间怎么区分,它的不同之处:是靠3个文件来管理的

/etc/passwd #用户管理
/etc/shadow #用户管理
/etc/group #用户组管理
两个用户管理文件会记录一个用户的16种属性
useradd user01 创建用户
adduser user02 创建用户
# tail -1 /etc/passwd 查看文件最后一行
user01:x:500:500::/home/user01:/bin/bash  ----》这是7个属性

1:用户名
2:口令位(如果是x,登录需要密码;没有x,就不需要密码;root切换user01不用密码;普通用户需要)
          切记:权限大的用户往权限小的切换不用密码;都是普通用户之间需要密码;权限小的用户往权限大的切换用密码
3:uid(系统之间不是通过用户名来区分的,是通过uid来区分的;用户名是用户为了方便来记的)
4:gid;组id
5:描述信息(默认为空);说白了就是注释
6.用户的家目录(默认在/home/用户名)
7.shell(默认/bin/bash)
# tail -2 /etc/shadow
user01:!!:17228:0:99999:7:::
user02:!!:17228:0:99999:7:::
1:用户名
2:密码(需要注意的是,如果密码是以!开头的,代表该用户处于禁用状态;linux下禁用是禁用的是密码,就是怎么输密码,都不对)
3.上次修改时间(时间是距离1970-1-1有多少天)
4.最小间隔
5.最大间隔
6.警告时间
7.缓冲时间
8.失效时间
9.保留

设置密码:

方法一:交互设置密码:

#passwd   用户名

方法二:非交互设置密码:

#echo "明文密码"|passwd  用户名 --stdin

组(用户组)分类:
1.主组(在/etc/passwd里面第4个字段上)
2.从组(附加组)
约定:一个用户只能属于一个主组(默认跟随用户自动创建出来的那个组),可以属于多个附加组!

系统约定:

uid: 0           特权用户

uid: 1~499     系统用户(程序用户)

uid: 500+       普通用户

# useradd user02 -u 503  //创建用户usr02,指定uid(没事不要自定义uid,因为系统默认uid是有限制的)

# useradd user03 -d /aaa //创建用户user03 指定家目录

# useradd user04 -M //创建用户user04,不创建家目录,而不是不在passwd中设置家目录(意思就是配置文件里面有,但是真正home下面没有      一些资源网络用户的时候才用到,为了安全不用创建家目录

例如:

# useradd tom -M

# tail -1 /etc/passwd 配置文件有

tom:x:502:502::/home/tom:/bin/bash

# ls /home/ 实际是没有 user01  user02

# useradd user08 -e 2014-04-01 //指定过期时间

# useradd user05 -s /sbin/nologin //创建用户并指定shell,默认是bash

# useradd user06 -g hr  //创建用户,指定主组,尽量不要制定主组,指定附加组

# useradd user07 -G sale //创建用户,指定附加组

查看用户id号:

[[email protected] ~]# id user10

uid=506(user10) gid=510(user10) groups=510(user10)

修改已经存在用户的信息 usermod

# usermod -u 2000 user10 //修改用户uid

# usermod -s /sbin/nologin user10 //修改用户shell

==删除用户==
# userdel user10 //删除用户user10,但不删除用户家目录;再次创建同名用户,使用原同名用户的家目录
# ll -d /home/user10/
drwx------ 3 506 510 4096 09-01 21:14 /home/user10/

==删除用户及主目录==
[[email protected] ~]# userdel -r user11 //删除用户user11,删除用户家目录(但不建议使用r)
[[email protected] ~]# ll /home/user11
ls: /home/user11: 没有那个文件或目录

# usermod -L tom #禁用tom
# usermod -U tom #解除禁用
# passwd -l tom #禁用tom
# passwd -u tom #解除禁用
# passwd -S tom #查看用户状态,是否已经锁定
# passwd -d tom #清除密码,变成空密码,就是没有密码

用户组:
# groupadd hr
# groupadd sale
# groupadd it
# groupadd net01 -g 2000 添加组net01,并指定gid 2000
# groupdel net01  删除组net01
# grep ‘net01‘ /etc/group   查看/etc/group中组net01信息
组是用来管理一些相似权限的用户,可能是权限相似,也可能是属性相似;把相似的权限或者属性添加到组里面,然后给组设置权限
组在linux下有两种类型:一种是指定主组,另外是指定附加组

/etc/group这个文件本来是用来记录组名,组ID
/etc/passwd记录用户属于哪个组
# usermod -u 2000 user10  //修改用户uid
# usermod -s /sbin/nologin user10  //修改用户shell
# usermod --help     //修改用户属性的时候,尽量用命令修改,少用配置文件,因为可能要更改的不是一个地方

用户的附加组没有记录在/etc/passwd里面,记录在/etc/group
一个用户只能属于一个主组,/etc/passwd:gid指定记录
一个用户可以有多个附加组,/etc/group指定记录
id username:可以用id来查看用户的主组和附加组
用户创建文件,默认为主组,默认不会标记附加组,附加组不受影响

组在做配额要注意:如果要给一个组设置配额,一定要考虑那个组内的用户它所创建的文件组名写的是不是受配额影响的那个组;

所谓的配额怎么去统计?就是扫描所有文件,如果是组配额,就扫描所有文件,查看哪些文件是标记为哪个组,如果在做配额的时候

==useradd 命令参考的文件==以下这三个文件是创建用户相关的文件,相当于模板文件

1. /etc/login.defs                    //定义在创建用户时候的初始设置,uid gid 是否家目录 邮箱位置神码的

2. /etc/default/useradd   //系统默认用户创建配置,可以修改家目录的位置 (但是为什么组是100)可以使用命令 useradd -D查看

3. /etc/skel/*    //用户的初始配置文件

[[email protected] ~]# ls /etc/skel/.bash*  用户配置文件

/etc/skel/.bash_logout    /etc/skel/.bash_profile              /etc/skel/.bashrc

登出时执行命令        登录时执行的命令                        是否创建bashrc

系统还会把用户以上的所有信息写入到/etc/passwd 文件中。

组的信息会存储到/etc/group中

用户的密码信息在/etc/shadow文件中存储

组的密码信息在/etc/gshadow文件中存储

useradd 用户名      或  adduser用户名
   -d  指定家目录的位置
   -c  指定备注的内容
   -s  指定shell程序文件名
   -r 创建系统用户(服务账户)
   -M  不创建用户的家目录
   -m  创建用户的家目录
   -u  指定用户的UID 
   -g 指定用户的私有组(群组)
   -G 指定用户加入某个普通组
   -e 2014/7/25

usermod [参数] 用户名

-d  -c  -s  -g  -G  -e

-L  锁定用户 (lock)

-U  解锁用户 (unlock)

-l 为用户更改登录名称

uid=0         管理员

gid=0     管理组

uid=1-499     系统用户

gid=1-499  系统用户组

uid=500-60000  普通用户

gid=500-60000 普通用户组

附加组:

#usermod -G boss wg    覆盖用户wg的附加组

#usermod -a -G kf wg    添加用户wg的附加组

组密码

gpasswd boss

Useradd:

-g 初始组

-G 附属组

-d 指定用户默认路径

-m 指定的路径不存在,自动创建。

Usermod:

-d 修改用户登录时的目录

-e 修改用户的有效期

-g 修改用户所属组群

-p 修改用户密码

-L 锁定用户

-U 解锁用户

Userdel:

-r 删除用户的同时也删除用户所属的目录

Groupadd:

-g 指定GID(唯一的)

-o 指定GID(可以是不唯一的)

Groupmod:        -

-g 修改GID

-n 修改组名称

Gpasswd:

-a 添加用户到组

-d 删除组中的用户

-A 指定组管理员

时间: 2024-10-23 00:57:32

用户以及用户组的相关文章

linux基本命令整理(二):用户、用户组、文件系统和网络

linux常用命令(二).txt -----------用户.用户组.文件系统和网络 一.用户的管理     1.用户的管理        useradd +"用户名" 新怎用户 如:useradd dy            -p :指定用户的密码            -c :制定一段注释性的描述            -d :指定用户所在的目录            -m:当指定的用户所在目录不存在时,可用-m创建 -g :指定用户所属的组(主组) -G :指定用户所属地附加组

Linux权限管理及用户与用户组

第一部分:Linux权限管理 一.基本权限 linux权限机制采用UGO模式.其中 u(user)表示所属用户.g(group)表示所属组.o(other)表示除了所属用户.所属组之外的情况. u.g.o 都有读(read).写(write).执行(excute) 三个权限,所以UGO模式是三类九种基本权限. 用命令 ls -l 可列出文件的权限,第一列输出明确了后面的输出(后面一列代表 ugo权限).第一个字母对应的关系: "-"    普通文件 "d"   目录

LINUX用户、用户组及权限管理

LINUX用户.用户组及权限管理 一.LINUX权限管理 LINUX权限分为:r,w,x,读,写,可执行 对文件来说: r 可读,即可以使用类似cat等命令查看文件的内容 w 可写,可以编辑或删除此文件: x 可执行,exacutable,可以在命令提示符下当做命令提交给内核运行. 对于目录来说(默认有x权限): r 可以对此目录执行ls以列出内部的所有文件 w 可以在此目录中创建文件 x 可以使用cd切换进此目录,也可以使用ls -l查看内部文件的详细信息. 文件 目录 r 可读,即可以使用类

用户与用户组的管理

一. 用户与用户组的管理 1####################用户如何存在与系统当中###################### /etc/passwd #用信息文件 用户名字:用户密码:用户uid:用户gid:用户说明:用户加目录:用户使用的shell /etc/shadow #用户认证信息 用户名称:密码:密码使用天数:最短有效期:密码最长有效期:密码警告期:密码非活跃期:密码到期日: /etc/group #用户组信息 用户组名称:用户组密码:用户组id:附加用户成员 /home/u

用户,用户组及权限管理

用户.用户组.其他的权限 多用户:多人同时使用系统资源: 多任务:同行运行多个进程: AAA: Authentication认证 Authorization授权 Account账户 用户的类别: 管理员:root 普通用户: 系统用户:仅用于运行服务程序: 登录用户:系统资源的正常使用者: 用户标识:UserID, UID 16bits二进制数字:0-65535: 管理员:0 普通用户: 系统用户: CentOS 5, 6: 1-499 CentOS 7: 1-999 普通用户: CentOS

Linux学习8---(用户和用户组管理)

1.用户和用户组     用户和用户组概念        用户:使用操作系统的人(Linux支持多个用户在同一时间登陆同一个操作系统)        用户组:具有相同权限的一组用户(Linux系统中可以存在多个用户组)     相关的配置文件        /etc/group:储存当前系统中所有用户组信息            Group:        x        :    123        :    abx,def,xyz            组名称:    组密码占位符:  

攻城狮在路上(叁)Linux(十一)--- 用户与用户组、文件权限、目录配置

一.用户与用户组: 3个概念:文件所有者(user).用户组(group).其他人(others). /etc/passwd  <==存放所有的用户名 /etc/shadow  <==存放个人密码 /etc/group     <==存放所有的组名 二.文件权限的概念: 1.文件属性 <==使用ls -al命令 drwxr-x---       1       root  root   4096  sep8 18:27  install.log    ① ② ③ ④ ⑤ ⑥ ⑦ 参

Linux用户及用户组设置

查看当前用户所属的组 groups 查看<user1>, <user2> 和 <user3>所属的组 groups <user1> <user2> <user3> 更改用户的主用户组或附加组 usremod <user> -g <maingroup> -G<addgroup> Linux用户及用户组设置,布布扣,bubuko.com

C#修改文件或文件夹的权限,为指定用户、用户组添加完全控制权限

题目链接:11645 - Bits 题意:给定一个数字n,要求0-n的二进制形式下,连续11的个数. 思路:和 UVA 11038 这题类似,枚举中间,然后处理两边的情况. 不过本题最大的答案会超过longlong,要用高精度,不过借鉴http://www.cnblogs.com/TO-Asia/p/3214706.html这个人的方法,直接用两个数字来保存一个数字,这样能保存到2个longlong的长度,就足够存放这题的答案了. 代码: #include <stdio.h> #include

Linux用户、用户组权限管理详解 --- 02

2,用户.用户组管理操作详解: 2.1 adduser 添加用户: adduser [-u uid][-g group][-d home][-s shell] -u:直接给出userID                      -g:直接给出GID -d:直接将根目录建立在已存在目录         -s:定义shell 添加用户 garfield 1 adduser garfield 通过前面介绍的三个用户管理文件检验用户 garfield 的添加是否成功: 当我们新建用户时,通过 /etc