浅谈用户和组相关配置文件

用户、组和权限的管理

Linux如何像Windows系统那样,可以不输入密码直接进入图形界面?那么如何如何自动登录图形界面呢?这就要用到编辑配置文件:

nano  /etc/gdm/custom.cof  ,在里面加上  

automaticLoginEnable=true

automaticLogin=root

退出之后重启系统会自动登录图形界面

上述的操作不可能自发的进行下去,还需要靠用户来进行操作。用户也就是user:拥有tokenidentity等权限令牌。Linux用户身份的识别,即为用户(username)的id号,用UID来表示;系统的管理员默认为:rootID=0;但是ID=0就一定是管理员,而root并不一定是管理员,系统给予管理员的定义是ID=0(也就是一个看身份证来判别,而不是看脸识别)。至于普通用户的UID1-65535

    在默认情况下系统用户UID1-499CentOS6);1-999CentOS7);这些ID是给系统中的一些进程,程序来使用的 ,对守护进程获取资源进行权限分配。

而普通的登录用户UID500+CentOS6),1000+CentOS7

group:组也有自己的id,即所谓的groupname/GID,组中的用户可以继承组的权限(加入组织,对里面的统一授权,获取执行或者其他权限)

    注意: Windows不允许组和用户重名,linux可以

每个用户在创建的时候必然有一个组,这个组就是主组,并且只有一个(和windows一样),而在主组中又有给组分配的id

  管理员组GIDroot0

    系统组GID1-4991-999  普通组:500+1000+

Linux组的类别

   用户的主组:有且仅有一个,若组名同用户名,且只包含一个用户则是私有组

   用户的附加组(辅助组):一个用户可以属于0或多个辅助组(身兼数职)

   命令:getent  group  查看用户组的信息 getent passwd USER只看用户信息

      getent gshadow 查看用户组的密码信息

Linux 用户和组的主要配置文件:

  /etc/passwd(文本文件):用户及其属性信息(名称、UID主组ID

 cat /etc/passwd

浅谈用户和组相关配置文件

上面的root:x:0:0:,mage,110,119:/root:/bin/bash,分别对应下面的:

    用户帐号名称:密码:UID:主组GID:描述信息(用chfn可以修改描述信息,finger可以看描述信息):家目录:shell类型(chsh –s /bin/csh 用户名,可以该用户的shellcsh  ,也可改为系统账号nologin

注意:若把其中用户ID改为0root改成其他,那这个用户就成为管理员,但是没有管理员的话系统就无法启动了(没有用户ID0

插入查帮助的命令:比如说查passwd ,用man就要知道查帮助的章节,而用whatis  passwd可以查passwd的章节,在用man就可以查到passwd的相关信息。

  /etc/group:组及其属性信息

cat /etc/group

浅谈用户和组相关配置文件

上面的bin:x:1:bin,daemon,gentoo,分别对应下面的:

用户的主组名:主组的密码:主组的GID号:附加组的所有成员(可以用      groupmems  -l  -g  GROUPNAME,来查看组的其他成员;groups USERNAME 查询用户属于什么附加组;id USERNAME也可以查看用户的ID信息)

   /etc/shadow:用户密码及其相关属性

cat /etc/shadow

浅谈用户和组相关配置文件

上面的natasha:$6$pCnil/79r2d/$wm8vNDPbg2.FKXepRjvgKvEy7JKJJeCsY9uHxuC/QvPa6p4Bj9f/rhkEUGsmlltsKpQnMlVANt8sE2SU25auN.:17096:0:99999:7:::,分别对应下面的:

      用户的帐号名称:用户密码:最近更改密码的日期:密码不可被更改的天数:密码的使用期限:密码需要更改期限前的警告天数:密码过期后的宽限天数:帐号失效日期:保留用以更新的。可以把下图作为参考

浅谈用户和组相关配置文件

注意:后面关于密码的天数都是相对于最近更改密码的日期,密码是乱码,$6表示sha512加密算法  $1表示md5加密算法已经被破解了 $5表示sha256的加密算法,因为加盐了,所以即便是相同的密码也显示密码项的乱码不同。

其中的!!表示禁止登录(可以用usermod –U USERNAME来解锁,去掉!,默认为!!,如果只有一个!,可能用户误打误撞的解锁了;usermod –L USERNAME来锁定用户)

  /etc/gshadow:组密码及其相关属性

cat /etc/gshadow

浅谈用户和组相关配置文件

上面的admins:!::natasha,harry分别对应下面的:

    用户组的名称:用户组密码:用户主组GID:辅助组

命令:pwunconv:密码不转换,早期可以看到用户密码的加密乱码状态

        Pwconv:密码转换,以x的方式显现

cat /etc/default/useradd 

浅谈用户和组相关配置文件

可以显现默认家目录;默认口令有效期;过期后口令的宽限期;默认的shell类型;默认创建邮箱(邮箱是一个文本文件);默认skel,创建用户时默认家目录下创建的文件是从/etc/skel 下拷贝过来的)

注意:有复制/etc/skel 下的所有配置文件的话不能用 cp  -r /etc/skel/.* .  (因为.*包含..这样的结果就会是把/etc/下的所有文件都复制过来了,所以要用cp  -r /etc/skel/.[^.]* .复制。

用户和组的管理命令

   useradd adduser的指向文件(链接文件) 【选项】 用户帐号名

-u:指定UID 可以为0 ,也可拥有root权限,登录拿着管理员的令牌(ID=0),只要没注销就有root权限 

-s :后接shell的实际文件,如/bin/bash ;/bin/csh ,改变shell类型 

-c:描述信息,用双引号,可用finger USERNAME查看描述信息。

-g group1:把新增用户加入group1组,这个group1也就成了用户的主组

-d dir1 E :把新增用户的家目录指定在dir1(原不存在的)中;

-G GROUP1,GROUP2…:用户加入到自己的辅助组GROUP1,GROUP2…

给服务用一般用useradd –s /sbin/nologin (默认不登陆) –r(给服务的系统帐号)服务名

   usermod 【选项】 用户帐号名

-u #:更改用户UID#

-g group1:把新增用户加入group1组,这个group1也就成了用户的主组

-G GROUP1:更改辅助组为GROUP1  -aG GROUP2:增加一个辅助组  -G “”:清空家目录

-d dir1 –m:把用户家目录指定为dir1(原不存在),并把家目录里的数据一同复制到dir1

-l NEWNAME OLDNAME:仅更改为新名字;

-L:锁定用户,在/etc/shadow密码栏增加! -U:解锁用户,把/etc/shadow密码栏!拿掉;

   userdel不删除用户的家目录和邮箱

-r:删除用户的家目录和邮箱

组帐号维护命令

   groupadd

-g GID:指定用户的组ID   -r:创建系统组<500

   groupmod

-n GROUPNAME:改新名字  -g GID:指定新的GID

   groupdel  删除组

简单应用:由于系统更新需要把用户帐号迁移到一个新的主机,如何批量创建帐号?

如从67 :只要是/etc/passwd的文件格式定义,就只需使用newuser user.txt来创建,但是创建的user.txt 中用户的密码是随机生成的,需要自己修改;批量修改口令nano  p.txt 编辑对应 |(管道)chpasswd  这样批量改密码,这样也就自己创建了家目录,但是没有/etc/skel拷贝过来的配置文件,需要自己配置。

   su切换账户的方式:

    su USERNAME:非登录式交换,即不会读取目标用户的配置文件,不改变当前工作目录;  su – USERNAME:登录式交换,会读取用户的配置文件,切换至家目录,完全切换。

  passwd修改自己的密码

-l:锁定用户  -u解锁用户  -e强制用户下次登录修改密码;

  newgrp GROUP1临时切换主组GROUP1,但是创建的文件的主组是GROUP1,即使是登出后,登出后恢复主组。如果用户本不属于此组,则需要密码(口令为空直接不能进去)

  gpasswd

-a User GROUP:将User添加到指定组中

-d User GROUP:将User从指定组中删除

-A User1User2…设置有管理权限的用户列表

其它命令

  chage 【选项】帐号名; 可以更改/etc/shadow的最长时间,最短时间,警告时间的选项

   -l:列出帐号的详细密码参数

   -d:最近一次更改密码的时间 ,格式 YYYY-MM-DD  

-m:密码的最短保留天数

   -M:密码的最长使用天数

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

  -I(大ai):密码的失效日期

  -E:账户失效日期 ,格式 YYYY-MM-DD

  vigr =vi  /etc/group,修改组的相关属性

  vipw=vi  /etc/passwd,修改用户的相关属性

  pwck:检查用户的相关属性是否有问题

  grpck:检查组的相关属性是否有问题

原创文章,作者:lyx,如若转载,请注明出处:http://www.178linux.com/53859

(0)
lyxlyx
上一篇 2016-10-23 20:17
下一篇 2016-10-23 21:35

相关推荐

  • 语言的歧义

    语言是人与人相互沟通的途径,而计算机语言则是人和计算机沟通的途径。就算是任何再完美的自然语言都会有歧义,但是又是什么让人和计算计算机间产生了歧义呢?下面这篇文章来自Gowri Kumar的Puzzle C一文。我做了一些整理,挑选了其中的一些问题,并在之后配上相应的答案(这些答案是我加的,如果需要原版的答案可以直接和本文作者Gowri Kumar联系,作者的…

    Linux干货 2016-05-08
  • 马哥教育网络班21期+第8周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 集线器(HUB)是在OSI模型的第一层——物理层——连接多台主机、延长网络的设备。其主要功能是将从一个端口接收到的数据包转发给所有端口。中继器(Repeater)是将由电缆传过来的电信号或光信号调整波形和放大再传给另一个电缆的设备,提供多端口服务的中继器称作集线器。二者的主要区别…

    Linux干货 2016-09-05
  • N23-卡卡琦-第一周

    1、描述计算机的组成及其功能 硬件: 控制器:是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等;运算器:运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理;存储器:存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息;输入输…

    Linux干货 2016-11-16
  • 文本处理工具sed

    处理文本的工具sed Stream EDitor,  行编辑器     sed 是一种流编辑器,它一次处理一行内容。处理时,把     当前处理的行存储在临时缓冲区中,称为“模式空间”(     pa…

    Linux干货 2016-08-10
  • 命令find应用

    作业:  查找/var目录下属主为root,且属组为mail的所有文件 [root@localhost bin]# find /var/ -user root -group mail     2. 查找/var目录下不属于root、lp、gdm的所有文件    [root@localhost bin…

    Linux干货 2016-08-22
  • Linux系统自动化安装基础

    Linux系统自动化安装基础 安装程序CentOS系统安装系统启动流程:bootloader–>kernel(initramfs)–>rootfs–>/sbin/init注意:安装过程中与启动过程中的文件不同 anaconda系统安装程序tui: 基于图形库curses的文本窗口gui:图形窗口 安装程序…

    Linux干货 2016-10-08

评论列表(1条)

  • N24_Jerry
    N24_Jerry 2016-10-25 09:42

    师哥写的不错,师弟佩服得五体投地