首页 > 系统相关 >Linux用户和组命令

Linux用户和组命令

时间:2023-09-20 18:32:59浏览次数:34  
标签:密码 过期 etc 用户 修改 命令 Linux root

用户和组配置文件

1.用户:Linux基于用户身份对资源进行控制

  • 用户账号
  • root用户
  • 程序用户:不需要登录系统,服务于应用程序,维护系统的运行
  • 普通用户:可以登录系统的一般用户
  • 组账号
  • 基本组(私有组):当用户创建文件和文件夹时,默认的属组,只能有一个
  • 附加组(公共组):用户可以有多个附加组
  • UID和GID
  • UID用户标识号
  • GID组标识号

2.用户相关配置文件

/etc/passwd:用户信息

/etc/shadow:用户密码相关的信息

  • /etc/passwd信息含义:(7段内容)
  • 用户名:
  • 密码占位符:
  • UID:
  • GID:
  • 描述信息:
  • 家目录:
  • 登录shell
[root@localhost ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
......
  • /etc/shadow 信息含义:
  • 用户名
  • 加密后的密码
  • 上一次密码修改时间(单位是天,是距离1970年1月1日多少天)
  • 密码最小生存周期 单位:天 0表示随时可以修改密码;2表示两天内不能修改
  • 密码最大生存周期 单位:天,密码使用的最长时间
  • 密码到期前几天开始警告
  • 密码过期之后到账户失效之前的时间限制,密码过期之后还可以用几天
  • 账户过期时间
  • 保留列
[root@localhost ~]# cat /etc/shadow
root:$6$Gpft/m4f.o2AYeRq$eUv2Ct7IZloLXlI1NaQjXYbwxO/bN/XXaXVW1PCGDwBAXuxIWtIIydIqLunMtSYqqUQ8RlWfJVcrFcR2.Bydd/::0:99999:7:::
bin:*:17834:0:99999:7:::
daemon:*:17834:0:99999:7:::
......
  • /etc/group:组账户信息
  • 组名、密码占位符、GID、用户列表
[root@localhost ~]# cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
......
  • /etc/gshadow:安全组账户信息
  • 组名、加密后的密码[!表示没有设置密码]、组管理员、组成员
[root@localhost ~]# cat /etc/gshadow
root:::
bin:::
daemon:::
......

3.创建用户时有关的配置文件

  • /etc/login.defs:Shadow 密码套件配置 ,设置用户账号限制的文件,可配置;配置对root用户无效。配置优先级低于/etc/shadow
  • /etc/default/useradd:账户创建的默认值
  • /etc/skel:包含默认文件的目录
  • 主要的用户初始配置文件
  • ~/.bash_ profile 用户环境变量文件和启动程序文件
  • ~/.bashrc 用户的别名和函数,将别名写入,只针对当前用户有效
  • ~/.bash_logout 当用户注销时执行的文件
  • 别名机制:alias 别名=‘要执行的命令’
  • /etc/profile 针对所有用户生效
  • /etc/bashrc 针对所有用户生效

添加用户并设置密码

1、添加用户:useradd

  • 选项:
  • -u 指定用户的uid
  • -g 指定用户的gid
  • -G 指定附属组,可以有多个,但是这些附属组必须是系统内已经存在的
  • -c 指定描述
  • -d 指定家目录
  • -M 不建立家目录
  • -s 指定shell
  • -e 指定用户过期时间,日期
  • useradd -e $(date -d + 180days + %Y-%m-%d) zhangsan
  • 设置账户过期时间为180天后
  • -f 指定密码过期后账号失效之前的天数

2、给用户设置密码:passwd

  • root:既可以修改自己的密码,又可以修改别人的密码,并且不需要提供当前密码
  • 普通用户:只能修改自己的密码,要求严格,并且需要提供当前密码
  • -l:锁定用户[/etc/shadow 密码前有!!]
  • -u:解锁用户
  • -S:查看用户锁定状态
  • --stdin:指定可以从标准输入来读取密码,也可以是从管道

修改用户信息及组信息

1、usermod:修改用户信息

  • -u、-g、-G、-d、-s 与useradd参数差不多
  • -L: 锁定用户
  • -U: 解除锁定
  • -l: 改名
  • -a: 添加用户到组,结合-G使用

2、userdel:删除用户

  • -r: 联通用户的宿主目录一并删除

3、chage:查看和修改用户密码信息

  • chage -d 0用户名用户下次登录必须更改密码
  • chage -m 2用户名修改密码最少使用天数
  • chage -M 50用户名修改密码最大使用天数(密码过期时间)
  • chage -l 5用户名密码过期后到账户失效的天数 (密码过期后账号还能使用的天数)
  • chage -E “2019-3-5"用户名修改的是账户的过期时间

4、groupadd:添加组账号信息

5、gpasswd:添加删除组成员

  • -a:向组内添加一个用户
  • -d:从组内删除-个用户成员
  • -M:定义组成员列表,以逗号分隔

6、groupdel:删除组账号

7、chfn:修改用户相关信息

8、查看用户信息命令

  • id 显示真实和有效的UID和GID
  • whoami 查询用户的用户名
  • finger 查询用户帐号的详细信息
  • users、w、who命令 查询已登录到主机的用户信息
  • groups 查看用户所属组信息

标签:密码,过期,etc,用户,修改,命令,Linux,root
From: https://blog.51cto.com/u_16206331/7541965

相关文章

  • 谷歌防止网站和平台存在用户生成的垃圾内容
    垃圾内容发布者通常会利用开放评论表单和其他用户生成的内容敏感未设防的网站,在网站上生成垃圾内容。托管平台可能同样面临滥用风险;垃圾内容发布者可能会创建大量不遵循网络垃圾政策的网站,并且生成对网络价值不大或毫无价值的内容。防止平台或网站上出现滥用行为通常并非易事。简单......
  • linux 中字符串处理函数 ${i%%.*}
     001、[root@pc1test2]#ls[root@pc1test2]#str1="ab.cd_kk.mn_jjy"##测试字符串[root@pc1test2]#echo${str1%%.*}##从左侧开始,删除.号右侧所有的内容ab[root@pc1test2]#echo${str1%.*}##从左侧开始,删除最后一个.右侧的内容ab.......
  • Linux环境下sentence-transformers 之 all-MiniLM-L6-v2模型安装与使用
    好记性不如烂笔头系列一、背景:1、之前使用chatgpt接口生成embeddings的向量维度为1536维,数据库中占用较大,所以找寻低维度的向量生成方法,减少数据占用2、在huggingface上发现all-mpnet-base-v2及all-MiniLM-L6-v2两个模型不错,前者会生成768维的向量,后者会生成384维的向量 二......
  • 6、linux命令之`cp`与`scp`
    目录linux命令之cp与scp1、cp2、scp3、参数linux命令之cp与scpcp与scp命令的都是复制文件或目录,区别就是,cp只能在自己服务内进行copy,而scp可以跨服务器进行copy。1、cp语法:cp[srcFile][tgtFile]示例:cp/u01/dmps/*.dmp/u01/dmps/2、scp将本地的/home/testuser/test.......
  • FPGA 让LED灯按照指定的亮灭模式亮灭,亮灭模式未知,由用户随机指定
    代码内容如下:modulecounter_led_3(Clk,Reset_n,Ctrl_n,Led);inputClk;inputReset_n;input[7:0]Ctrl_n;outputregLed;reg[26:0]counter;parameterMCNT=100000000;always@(posedgeClkornegedgeRe......
  • git命令总结
    使用gitclone从现有Git仓库中拷贝项目gitclonehttp://mt.dadubi.com/gitlab/webteam/NewChinaLife gitstatus四种情况changesnotstagedforcommit表示未提交的更改若想提交,需要执行命令gitadd若想放弃本次修改,需执行gitcheckout若出现changestobecommitted......
  • CodeArts Check代码检查服务用户声音反馈集锦(5)
    作者:gentle_zhou原文链接:<https://bbs.huaweicloud.com/blogs/401608>CodeArtsCheck(原CodeCheck),是自主研发的代码检查服务。建立在华为30年自动化源代码静态检查技术积累与企业级应用经验的沉淀之上,为用户提供代码风格、通用质量与网络安全风险等丰富的检查能力,提供全面质量报告......
  • Linux
    前言原文作者:KyleViolet文章链接:https://cyborg2077.github.io/2022/10/15/LinuxStu/版权声明:本博客所有文章除特别声明外,均采用CCBY-NC-SA4.0许可协议。转载请注明来自Kyle'sBlog!本文章为在原文基础上,进行稍作修改的文章,版权声明如上。本文为瑞吉外卖项目的......
  • Hbase--执行hbase shell命令时提示:ERROR: KeeperErrorCode = NoNode for /hbase/mast
    1、问题描述执行hbase shell命令时提示:ERROR:KeeperErrorCode=NoNodefor/hbase/master2、问题原因这是与因为服务器重启后Hadoop的运行和Hbase的运行异常。3、解决办法依次去停止和启动Hadoop(1)到hadoop的sbin目录下 ./stop-all.sh(2)再./start-all.sh(3)再到hbase的b......
  • mysqldump导出命令
    导出数据备份数据[root@sf105113bin]#mysqldump-h127.0.0.1-P3306-uroot-p--add-locks-qdbname>dbname.sql//参数依次为:-h主机-p端口-u用户名-p密码--add-locks:导出过程中锁定表,完成后回解锁。-q:不缓冲查询,直接导出至标准输出2.  ......