linux中定义用户账户的文件为,Linux中用户和组中认证库和解析库的文件格式以及默认参数定义文件...
解析库:/etc/passwd,/etc/group 组名和组的对应关系
认证库:/etc/shadow,/etc/gshadow 组密码的相关内容存储位置
与用户账户和组账户相关的文件有:
/etc/passwd
/etc/group
/etc/shadow
/etc/gshadow
/etc/default/useradd
/etc/login.defs(登录的默认属性)
/etc/skel(家目录默认存储文件)
/etc/passwd(用户的相关信息):
用户账户在/etc/passwd中的格式(新的用户账户使用追加的方式存贮在该目录下):
root:x:0:0:root:/root:/bin/bash
1 2 3 4 5 6 7
1:用户账户的登录名称;
2:使用“x”表示密码占位符,保证数据格式不发生变化(以前是密码的存放位置,为了用户账户的安全,为了保证位置格式不发生变化,用x代替);
3:用户的UID:
4;用户的GID,即该用户账户的基本组的ID;
5:注释信息,如:用户职位,用户完整名称等;
6:用户账户的家目录的绝对路径(必须是绝对路径);
7:用户账户的默认登录shell;
/etc/group(组账户的相关信息):
root:x:0:
1 2 3 4
1:组账户名称;
2:组账户密码占位符;
3:组账户的GID;
4:以该组为附加组的用户列表,多个用户名之间使用“,”分隔;
/etc/shadow(用户密码位置):
root:$6$rOs3gBYgL29jCae4$tDKZuPUfQm6g8U5G7ekA8kuVS/enhpHjOSdgFtDsUwde.qnCRtRicDUVQoBqyDL2ZrpxEid7xFWBY9YT/nuXF/: :0:99999:7: : :
以冒号分隔为1 2 3 4 5 6 7 8 9,九个位,含义分别如下:
1:用户账户的登录名;
2:密码的加密算法+salt+密码的加密结果;
3:最后一次修改密码的时间,其表示法为:从1970年1月1日到当前系统时间所表示的日期的天数;
4:用户密码的最短使用期限(多长时间内不能更改密码,如果为0表示随时更改密码,天数为单位);
5:用户密码的最长使用期限(多长时间内无须更改密码也可以正常登陆)
6:用户密码的使用时间在达到最长使用期限之前多少天开始,在用户登录到系统时发送警告消息,默认是7天;
7:用户过期之后的宽限期(密码过期之后还能使用,密码过期后在宽限期内登陆会提示更改密码,,在宽限期之外密码锁死,默认是无尽);
8:用户密码的绝对有效期,绝对失效时间,其表示法为:从1970年1月1日到指定日期所表示的日期的天数(绝对有效期到了密码绝对会失效);
9:保留,未被使用;
/etc/gshadow(组账户的密码认证信息):
root: : :
1 2 3 4
1:组账户的名称;
2:组账户的加密密码;
3:组管理员,现在已经废弃,保留为空;
4:以该组为附加组的用户账户的列表;
命令:
gpasswd:设置组的密码及管理组成员;
格式:gpasswd [option] GROUPNAME
-a USERNAME:将-a指定的用户添加至指定组;
-d USERNAME:将-d指定的用户从指定的组中删除;
newgrp:用一个新的组重新登录到系统;需要被指定的组有正确的密码设置(如果没有密码,则此次操作不能进行,注销后此命令恢复原来设置,想要永久有效,必须在文件中修改配置);
格式:newgrp [-] [group]
/etc/default/useradd:
作用:定义创建用户时的用户属性的默认值的文件
# useradd defaults file
GROUP=100 //在创建用户时,如果没有为用户指定基本组,系统会为用户指定一个与用户名相同的组作为其基本组;
HOME=/home //在创建用户时,如果没有为用户指定家目录,则会在/home目录中创建一个与用户同名的目录作为其家目录;
INACTIVE=-1 //在创建用户时,设定用户密码过期之后的宽限期,默认为-1,意为关闭用户密码过期宽限的功能,即宽限期为永远;
EXPIRE= //在创建用户时,设定用户密码的绝对失效日期,默认没有启用;
SHELL=/bin/bash //在创建用户时,设定用户的默认登录shell,默认值为/shell/bash;
SKEL=/etc/skel //在创建用户时,为用户的家目录提供的默认文件的模板;
CREATE_MAIL_SPOOL=yes //在创建用户时,是否直接为用户创建邮箱文件,默认创建;
/etc/login.defs:
作用:定义shadow_utils相关的属性,包括用户邮箱路径、密码的时间参数、UID和GID的范围,删除用户账户的命令、是否设置私有组(仅包含一个用户并作为该用户的主要组)、权限位掩码、家目录创建开关、密码的加密算法;
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
# System accounts
SYS_UID_MIN 201
SYS_UID_MAX 999
//指定默认的ID的选择范围
GID_MIN 1000
GID_MAX 60000
# System accounts
SYS_GID_MIN 201
SYS_GID_MAX 999
//指定默认的ID的选择范围
USERDEL_CMD /usr/sbin/userdel_local
//指定删除用户时使用的命令
CREATE_HOME yes
//是否在创建用户时为用户创建家目录
UMASK 077
//指定用户家目录的默认权限的掩码
USERGROUPS_ENAB yes
//是否开启私有组的开关
ENCRYPT_METHOD SHA512
//使用何种算法进行加密
/etc/skel(目录directory):
作用:为新创建的用户的家目录提供默认的文件;
linux中定义用户账户的文件为,Linux中用户和组中认证库和解析库的文件格式以及默认参数定义文件...相关推荐
- 怎么关闭计算机用户账户控制面板,win7系统用户账户控制设置|win7关闭/取消用户账户控制的方法-系统城...
2017-06-15 15:57:07 浏览量:2659 win7系统内置有用户账户控制功能,用户账户控制有什么作用呢 ?它是微软为提高系统安全而在Windows Vista中引入一组新的基础结构技术 ...
- 任务计划程序无法应用你的更改。用户账户未知、密码错误或用户账户没有修改此任务的权限
问题: 新增或修改自己的定时任务,点击提交时,按要求输入密码却修改失败,提示任务计划程序无法应用你的更改.用户账户未知.密码错误或用户账户没有修改此任务的权限. 确认不是以下问题导致: 选择的用户明确 ...
- pandas使用groupby.last函数获取每个组中的最后一个值实战:groupby.last函数获取每个组中的最后一个值、groupby.nth函数获取每个组中的最后一个值
pandas使用groupby.last函数获取每个组中的最后一个值实战:groupby.last函数获取每个组中的最后一个值.groupby.nth函数获取每个组中的最后一个值 目录
- 在linux系统中 创建用户账户的同时,在Linux系统中大批量建立帐户
在Linux系统中大批量建立帐户 企业如果想在Linux操作系统上部署文件的话,可能需要一次性建立大量的帐户.如为了加强文件的管理力度,需要为每个员工配置一个帐户.如此的话,就可以针对员工进行权限控制 ...
- 怎么给当前计算机添加一个用户,如何在win7中添加新账户 2种创建win7新用户方法总结...
对于很多家庭电脑或者共用电脑用户来说,往往会在电脑中创建多个登录用户,以满足不同用户不同桌面需求.那么在日常电脑使用过程中,我们应该如何计算机添加新账户呢?接下来脚本之家编辑针对时下最流行的Win7系 ...
- win8 必须重新启动计算机才能关闭用户账户控制,windows8中怎么关闭用户账户控制(UAC)仅针对单个用户...
1.登陆 Windows 8 Metro 界面,单击左下角桌面图标,如下图: 2.登录桌面后,使用组合热键"Windows + X键"调出快捷菜单(如果桌面已经调出控制面板图标,直 ...
- 用户账户控制对计算机的影响,用户账户的UAC是什么
点蓝色关注不迷路,电脑实用技巧学习与应用! 我们在使用win10操作系统时,经常会遇到打开某个程序弹出"是否允许此应用程序对你设备的更改".对话框提示你选择"是" ...
- 计算机的用户账户打不开怎么办,电脑用户密码忘记了打不开怎么办
电脑设置密码有时候忘记了会带来很严重的后果,不但别人打不开,自己也会打不开电脑了,下面由学习啦小编为你整理了电脑用户密码忘记了打不开怎么办的相关方法,希望对你有帮助! 电脑用户密码忘记了打不开解决方法 ...
- 计算机如何取消用户账户控制面板,电脑控制面板里面的用户账户怎么取消密码?...
优质回答 回答者:链记士多 开始-----〉控制面板-----〉性能和维护-----〉管理工具-----〉计算机管理-----〉本地用户和组------〉用户选择删除. 或者你以管理员的身份登入,如果 ...
- 三色求组合。从5个红球、5个蓝球、5个白球中任意取出8个球作为一组,要求每组中可以没有白球,但必须有红球和蓝球。 输出各种可能的取球组合。
#include <stdio.h> int main() { int x,y,z; for(x=1;x<=5;x++) for(y=0;y<=5;y++) for(z=1;z ...
最新文章
- 怎么删除XP中无法删除的文件
- wxpython多个面板_wxpython笔记:wxPython的布局管理实践【嵌入matplotlib、页面切换】...
- minio扩展现有的分布式集群:扩大集群规模,增加磁盘数量
- 存储过程语法 - 变量
- ODT .NET 详解之 SqlDataSource 访问 Oracle
- 计算机网络(二十一)-数据链路层设备
- java多用户商城b2b2c源码
- HDU 2277 Change the ball
- qt.qpa.screen: QXcbConnection: Could not connect to display(vnpy,云主机,图形界面)
- php考试试卷,php测试题(一)
- Android loader 详解
- linux结课考试试题,Linux认证考试课后基础试题及答案
- 数据结构课设——航空航天订票系统
- 基于python的酒店管理系统_(完整版)新 基于web的酒店管理系统毕业论文
- 2021年国家HW行动部分0day漏洞复现
- Visual Studio 2012
- 爬虫三(Bs4搜索、Selenium基本使用、无界面浏览器、Selenium自动登录百度案例、自动获取12306登录验证码案例、切换选项卡、浏览器前进后退、登录Cnblogs获取Cookie自动点赞)
- 【4 于博士Cadence SPB15.7 快速入门视频】建立不规则SOIC封装NE5532
- 摄影-曝光口诀(阳光16法则)
- 我,28岁程序员,没想到今年找工作这么难
热门文章
- 用java怎么让时间走动起来,java脚本实现时间刷新
- php 获取小数精度,php小数精度问题
- android 获取service 实例化,在Activity中,如何获取service对象?a.可以通过直接实例化得到。b.可以通过绑定得到。c.通过star - 众答网问答...
- 程序设计基础基于C语言(第二版),程序设计基础_基于C语言(第2版)__课后习题参考答案.doc...
- 判断输入框是不是数字_【Excel技巧】老板说,“我只要数字!数字!”
- java删除指定文件后重新建立文件系统_java file 操作之创建、删除文件及文件夹...
- JAVA 线程池的分析和使用
- C语言底层原理(二):动态库、静态库
- 获取浏览器地址栏字符串参数
- 拷贝构造函数什么时候调用?