博客
关于我
Linux学习--第七天--用户和用户组
阅读量:794 次
发布时间:2023-02-03

本文共 1822 字,大约阅读时间需要 6 分钟。

用户和用户组管理

用户和用户组

在Linux系统中,用户和用户组是系统管理的基础。以下是常用命令和相关文件解释。

usermod 命令

usermod -a -G groupname username

将已有用户添加到已有用户组。

/etc/passwd

系统用户信息文件,格式为:username:x:uid:gid:home_dir:shell

  • x:密码(如果没有密码,x为空,在本机登录时无需输入密码)。
  • uid:用户ID,0为超级用户,1-499为伪用户,500及以上为普通用户。
  • gid:初次组ID,建议勿修改。
  • home_dir:用户主目录。
  • shell:默认为/bin/bash,特殊用户(如root)使用/sbin/nologin
字段序号 说明
1 用户名
2 密码或x
3 用户ID
4 组ID
5 主目录
6 shell

/etc/shadow

存储用户密码信息,格式为:username:sha512哈希值:修改日期:生效时间:到期提醒:失效时间:保留字段

  • 密码必须使用sha512算法,否则用户无法登录。
  • 修改日期为1970年后的天数。
字段序号 说明
1 用户名
2 密码(sha512格式)
3 最后一次修改时间(1970年后的天数)
4 密码生效时间
5 密码有效期(天数)
6 密码到期前的提醒天数
7 密码失效前的宽限天数
8 保留字段

时间戳与日期转换

  • 将时间戳转换为日期:date -d '1970-01-02 18 days'
  • 将日期转换为时间戳:echo $(($(date --date='2014/01/06' +%s)/86400+1))

/etc/group

存储用户组信息,格式为:groupname:gid:members

  • gid为组ID,members为组内用户。

/etc/gshadow

存储用户组的加密密码信息,格式为:groupname:group_password:admin_username:members

  • admin_username为组管理员。

用户和用户组管理命令

useradd

useradd [选项] username

  • -u UID:指定用户ID。
  • -d directory:指定用户主目录(必须是绝对路径)。
  • -c comment:添加注释。
  • -g group:指定初次组。
  • -G group:指定附加组。
  • -s shell:指定shell,默认为/bin/sh

passwd

passwd [选项] username

  • -S:查看用户密码状态(仅root)。
  • -l:锁定用户(仅root)。
  • -u:解锁用户(仅root)。
  • --stdin:通过管道输入密码。

usermod

usermod [选项] username

  • -u UID:修改用户ID。
  • -G group:修改附加组。
  • -L:锁定密码。
  • -U:解锁密码。

chage

chage [选项] username

  • -d days:修改最后一次修改时间。
  • -m days:设置两次密码修改间隔。
  • -M days:设置密码有效期。
  • -W days:设置密码到期前的提醒天数。
  • -I days:设置密码失效后的宽限天数。
  • -E date:设置帐号失效时间。

删除用户

userdel username

userdel -r username:删除用户及相关数据。
su - username:切换用户身份后删除用户及数据。

组管理命令

groupadd

groupadd [选项] groupname

  • -g gid:指定组ID。

groupmod

groupmod [选项] groupname

  • -g gid:修改组ID。
  • -n newname:修改组名。

groupdel

groupdel groupname

删除组时,组不能是任何用户的初次组。

gpasswd

gpasswd [选项] groupname

  • -a username:将用户添加到组。
  • -d username:将用户从组中移除。

实用信息

  • /home/:普通用户目录权限为700
  • /root:目录权限为550,root用户无视权限限制。
  • /etc/skel:用户模板目录,添加文件后会出现在用户主目录中。
  • /var/spool/mail/:用户邮箱存储位置。

通过以上命令和文件操作,可以方便地管理用户和用户组,确保系统安全和规范。

转载地址:http://aqzfk.baihongyu.com/

你可能感兴趣的文章
linux下vi编辑器使用方法
查看>>
linux下vi编辑某文件时,操作出现 错误提示: E325: ATTENTION 2, Found a swap file by the name ".p1.c.swp"...
查看>>
linux下vsode超级用户运行
查看>>
Linux下以C构建WEB服务并响应XHR(XMLHttpRequest)请求
查看>>
linux下使用logrotate切割nginx日志
查看>>
Linux下使用popen()执行shell命令
查看>>
linux下使用source /etc/profile保存配置后,新的环境变量只能在一个终端里面有效...
查看>>
Linux下修改Apache根目录
查看>>
linux下删除目录及其子目录下某种类型文件
查看>>
linux下删除除了指定文件以外文件
查看>>
linux下利用nohup后台运行jar文件包程序
查看>>
linux下利用nohup后台运行jar文件包程序
查看>>
Linux下如何安装jdk
查看>>
Linux下学【MySQL】中如何实现:多表查询(配sql+实操图+案例巩固 通俗易懂版~)
查看>>
Linux下安装c/c++环境(gcc/gcc+)
查看>>
linux下安装GPU 版本 torch torchvision等最方便的方式
查看>>
linux下安装jdk7
查看>>
linux下安装Maven
查看>>
linux下安装memcached以及扩展(xampp环境)
查看>>
linux下安装mongodb,以及解决安装报错问题
查看>>