Linux全攻略--用户和组管理

简介:
每一个用户都由一个惟一的身份来标识,这个标识叫做用户ID.系统中的每一个用户也至少需要属于一个"用户分组".同样,用户分组屯是由一个惟一的身份来标识的,该标识叫做用户分组ID(GID).每位用户的权限可以被定义为普遍用户或者根用户,普通用户只能访问其拥有的或者有权限执行的文件.根用户能够访问系统全部的文件和程序,根用户通常也被称为"超级用户"其权限是系统中最大的,可以执行任何操作.
 
用户和组文件
用户账号--passwd
/etc/passwd文件用于用户登录时校验用户登录名.加密的口令数据项,用户ID(UID),默认用户分组ID(GID),用户信息,用户登录子目录和登录后使用的shell.这个文件的每一行保存一个用户的资料,而用户资料的每一个数据项采用冒号":"分隔.如下
LOGNAME:PASSWORD:UID:GID:USERINFO:HOME:SHELL
通常UID为0这个特殊值的用户登录名为"root",从0到99的UID保留用做系统用户的UID.如果在/etc/passwd文件中有两个不同的入口项有相同的UID,则这两个用户对文件具有相同的存取权限.
  每一个用户都需要有地方保存专属于自己的配置文件,这需要让用户服务工作在自己定制的操作环境中以免改变其它用户定制的操作环境,这个地方就叫做用户登录子目录,在这个目录中,用户不仅可以保存自己的配置文件,还可以保存自己日常工作用到的各种文件.出于一致性考虑,大多数站点都从/home开始安排用户登录子目录.并把每个用户的子目录命名为其上机使用的登录名.
  当用户登录进入系统时,都有一个属于自己的操作环境,用户遇到的第一个程序叫做shell.在LINUX系统里,大多数shell都是基于文本的,LIUNX操作系统带有好几种SHELL供用户选用,用户可以在/etc/shells文件中看到它们中的绝大多数.用户可以根据自己的喜好来选用不同的SHELL进行操作,按照最严格定义,在上面的/etc/passwd文件中,每个用户的口令数据项中并没有定义需要运行某个特定的SHELL,其中列出的是这个用户上机后第一个运行的程序是哪个.
下面查看下/etc/passwd文件.
 
用户影子文件--shadow
LINUX使用不可逆的加密算法如DES来加密口令,所以黑客从密文是得不到明文的.文件的每行是8个冒号分割的9个域,如下:
username:passwd:lastchg:min:max:warn:inactive:expire:flag
解释一下:
username:用户登录名
passwd:加密的用户口令
lastchg:表示从1970年1月1日起到上次修改口令所经过的天数
min:表示两次修改口令之间至少经过的天数
max:表示口令还会有效的最大天数,如果是99999则表示永不过期
warn:表示口令失效前多少天内系统向用户发出警告
inactive:表示禁止登录前用户名还有效的天数
expire:表示用户被禁止登录的时间
flag:保留域,暂未使用
下面看其文件.
 
下面看 用户组账号文件---group
内容如下
用户分组名:加过密的用户分组口令:用户分组ID号:以逗号分隔的成员用户清单
 
组账号文件--gshadow
其格式如下:
用户组名:加密的组口令:组成员列表
 
使用pwk和grpck命令验证用户和组文件
pwk用来验证用户账号文件(/etc/passwd)和影子文件(/etc/shadow)的一致性.其验证文件中的每一个数据项中每个域的格式和数据的正确性.如果发现错误,该命令将会提示用户对出现错误的数据项进行删除.
主要验证每个数据项是否具有:正确的域数目,惟一的用户名,合法的用户和组标识.合法的主要组群,合法的主目录,合法的登录SHELL.
显示用户原来的用户账号文件
然后进行编辑,在最后一行添加一项并不存在的数据项.再进行保存退出.
然后验证出系统并不存在super用户,提示要不要删除.
对于组账号同样如此
查看原文件.
增加一项并不存在的TEXT项.
可看见同样验证出来了,并删除.
使用命令行方式管理用户和组
使用useradd命令添加用户使用命令格式:useradd 选项 用户名
参数:-c 描述新用户账号,通常为用户全名.
-d: 设置用户主目录,默认值为用户的登录名,并放在/home目录下.
-D:创建新账号后保存为新账号设置的默认信息
-e:用YYYY-MM-YY格式设置账号过期日期.
-f inactivity:设置口令失效时间.为0时,口令失效后账号立即失效;为-1时,使该选项失效.
-g:设置基本组
-k:框架目录:设置框架目录,该目录包含用户的初始配置文件,创建用户时该目录下的文件都被复制到用户主目录下
-m:自动创建用户主目录,并把框架目录(默认为/etc/skel)下的文件复制到用户主目录下.
-M:不创建用户主目录
-r:允许保留的系统账号使用用户ID创建一个新账号.
-s shell类型:设定用户使用的登录SHELL类型
-u 用户ID:设置用户ID.
建立一个用户名为xiao,描述信息为ming,用户组为yang,登录shell为/bin/sh登录主目录为/home/xiao.
并指定密码.
这里并指定用户ID,账户过期日期.
 使用 usermod命令修改用户信息
使用格式:usermod 选项 用户名
参数与上面的一样.
将用户you,的组改为buding,其用户ID改为5600.
使用 userdel命令删除用户
格式为:userdel 选项 用户名
-r:删除账号时,连同账号主目录一起删除。
#userdel manager
使用 groupadd命令创建用户组
使用格式:groupadd 选项 用户组名
-g gid: 组ID值
-o:配合上面的参数选项使用,可以设定不惟一的组ID值。
-r:此参数用来建立系统账号
-f:新增一个已经存在的组账号,系统会出现错误信息然后结束该命令执行操作,如果是这样的情况,不新增这个群组;如果新增的组所使用的GID系统已经存在。
创建一个GID为5425,组名为testbed的用户组。然后再次创建同样的组名,创建失败,可验证必须惟一。
使用 groupmod命令修改用户组属性
使用格式:groupmod 选项 用户组名
参数:-g gid:组ID值。
-o:配合上面的参数使用
-n group_name:更改组名
使用 groupdel命令删除用户组
这个命令比较简单
 
下面来看 使用用户管理器管理用户和组。
打开开始/系统设置/用户和组群。
创建用户
点添加用户
输入相关信息,点确定
下面来修改用户属性
点用户右键选择属性
可看到登录SHELL有好几种
设置帐号过期时间
设置口令过期。
设置加入组群。
下面看下创建组群
点添加组群
确定
看创建好的属性
可修改组名
可加入用户
 



     本文转自yangming1052 51CTO博客,原文链接:http://blog.51cto.com/ming228/106425,如需转载请自行联系原作者





相关文章
|
Linux
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
系统启动以后一直存在且常驻内存没有界面的进程就是服务。Linux系统中的所有服务都保存在下列目录中:/usr/lib/systemd/system,进入该目录就能看到所有的服务。
228 3
入职必会-开发环境搭建37-Linux常用操作-Linux服务管理
|
Linux
Linux 中RPM软件包管理
Linux 中RPM软件包管理
265 2
|
SQL 自然语言处理 网络协议
【Linux开发实战指南】基于TCP、进程数据结构与SQL数据库:构建在线云词典系统(含注册、登录、查询、历史记录管理功能及源码分享)
TCP(Transmission Control Protocol)连接是互联网上最常用的一种面向连接、可靠的、基于字节流的传输层通信协议。建立TCP连接需要经过著名的“三次握手”过程: 1. SYN(同步序列编号):客户端发送一个SYN包给服务器,并进入SYN_SEND状态,等待服务器确认。 2. SYN-ACK:服务器收到SYN包后,回应一个SYN-ACK(SYN+ACKnowledgment)包,告诉客户端其接收到了请求,并同意建立连接,此时服务器进入SYN_RECV状态。 3. ACK(确认字符):客户端收到服务器的SYN-ACK包后,发送一个ACK包给服务器,确认收到了服务器的确
432 1
|
安全 Linux
Linux通配符及其在文件搜索和管理中的应用
Linux通配符及其在文件搜索和管理中的应用
|
运维 Linux 调度
Linux定时器的配置与管理方法
Linux定时器的配置与管理方法
|
监控 安全 Unix
探索Linux命令repo-rss:管理仓库更新的新视角
`repo-rss`是一个设想中的Linux工具,用于通过RSS订阅跟踪软件仓库更新。它能订阅仓库、检测更新、生成RSS feed并发送通知。主要特点包括实时性、灵活性、自动化和可扩展性。用户可定制订阅、时间间隔及输出格式。示例用法包括订阅Debian仓库、将更新输出为RSS文件或发送至邮箱。使用时需注意安全、资源消耗和隐私,最佳实践包括定期评估、自动化处理、多源订阅和备份。此工具展示了RSS在软件管理中的创新应用。
|
Linux 网络安全 开发工具
Linux 管理远程会话 screen:掌握终端的多任务操作
`Linux screen` 命令让多任务管理变得更简单,尤其在SSH连接远程服务器时。创建新会话如`screen -S backup`,查看会话`screen -ls`,退出`exit`。高级功能包括直接在会话中运行命令,如`screen vim memo.txt`,会话共享以协同工作,以及通过`screen -r`或`-D -r`重新连接或强制恢复断开的会话。提高效率,确保任务不间断运行。
487 1
|
监控 网络协议 Linux
技术好文共享::Linux系统日志管理日志转储
技术好文共享::Linux系统日志管理日志转储
394 0
|
缓存 Linux 编译器
技术笔记:Linux程序包管理
技术笔记:Linux程序包管理
|
Java Linux
Linux上管理不同版本的 JDK
Linux上管理不同版本的 JDK
1032 0
下一篇
开通oss服务