【Linux】用户与组的操作详细介绍

简介: 【Linux】用户与组的操作详细介绍

Linux操作系统是多用户多任务的操作系统,允许多个用户同时登录系统,使用系统的资源,Linux操作系统下的用户账户分为两种,普通用户账户和超级用户账户(root),普通用户在系统中只能进行普通工作,只能访问他们拥有的或有权限执行的文件,超级用户账户也叫管理员账户,它的任务是对普通账户进行管理,也对系统拥有绝对的控制权。


1.Linux用户账户文件的介绍


用户的账户信息和组信息分别存储在用户的账户文件和组文件中,分别为

/etc/passwd,/etc/shadow,/etc/group:

/etc/passwd,我们可以用vim或者cat命令查看这个文件,创建的用户账户及其相关信息都存在这个文件中


如图所示,每一行代表一个用户的资料,第一个用户是root,然后是一些标准账户,此类账户的shell为/sbin/nologin 代表无本地登录权限,最后一行是由系统管理员创建的普通账户:test

passwd文件中每一行用":"分隔为7个字段,各字段内容如下:

用户名:加密口令:UID:GID:用户的描述信息:主目录:命令解释器(登录shell)


2.useradd命令


在新建用户可以使用ueradd或者adduser命令,格式为:

useradd [-选项] test #新建一个名为test的用户


useradd的一些常用选项:

-c 用户的注释性信息

-d 指定用户的主目录

-e 禁用账户的日期,格式为YYYY-MM-DD

-g 用户所属的组名或者GID

-G 用户所属的附属组列表,多个组之间用“,”分割

-m 若用户主目录不存在则创建它

-s 指定用户登录的shell,默认为/bin/bash

-u 指定用户的UID,它必须是唯一的,且大于999

-p 加密的口令

例子:

groupadd -g 1088 group1 #新建组group1,组的GID为1088
useradd -u 1088 -d /home/user3 -s /bin/bash -p 123456


3.passwd命令


设置用户账户口令的命令是passwd。超级用户可以为自己和其他用户设置口令,而普通用户只能给自己设置口令,格式为:

passwd [-选项] [指定的用户名]


passwd的一些常用选项:

-I 锁定(停用)用户账户

-u 口令解锁

-d 将用户的口令设置为空,与未设置口令的账户不同,未设置口令的账户无法登录系统,而口令为空的账户可以

-f 强迫用户下次登录时必须修改口令

-n 指定口令的最短存活期

-x 指定口令的最长存活期

-w 口令要到期前提前警告的天数

-i 口令过期后多少天停用账户

-S 显示账户口令的简短状态信息


例子:

passwd #用户修改自己的口令,直接输入passwd命令
passwd test #修改test的账户密码


4.chage命令


chage命令用于更改用户密码过期信息。


chage命令的常用选项:

-l 列出账户口令的各个数值

-m 指定口令最短存活期

-M 指定口令最长存活期

-I 口令过期后多少天停用账户

-E 用户账户到期作废的日期

-d 设置口令上一次的修改日期


例子(设置test用户的最短口令存活期为5天,最长口令存活期为30天,口令到期前5天提醒用户修改口令):

chage -m 5 -M 30 -W 5 test #设置test用户的最短口令存活期为5天,最长口令存活期为30天,口令到期前5天提醒用户修改口令


5.usermod命令


usermod命令用于修改用户账户的属性,格式为:

usermod [-选项] 用户名


usermod的常用选项:

-c 填写用户的备注信息

-d -m 选项-m和-d连用,用于指定用户的家目录,并自动把旧的数据迁移过去

-e 账户的到期时间,格式为YYYY-MM-DD

-g 变更用户所属的用户组

-G 变更扩展用户组

-L 锁定用户,禁止登录系统

-U 解锁用户,允许登录系统

-u 修改用户的UID

我们可以通过以下命令提前查看用户的默认信息:

id test #查看test用户的默认信息


例子:

usermod -u 8888 test #修改用户test的uid为8888
usermod -L test #锁定test用户,无法登录
usermod -U test #解锁test用户,允许登录


6.userdel命令


删除一个用户可以直接删除/erc/passwd和/etc/shadow文件中要删除的用户对应的行,或者用userdel命令删,格式为:

userdel [-r] 用户名


7.创建和删除组命令


我们用groupadd和grouopdel命令来对组进行创建和删除

groupadd testgroup #新建一个名为testgroup的组
groupdel testgroup #删除名为testgroup的组


8.groupmod命令


我们用groupmod命令对组进行修改

groupmod [-选项] 组名

groupmod命令的常用选项:

-g gid 把组的GID改为gid

-n test2 把组的名称改为test2

-o 强制接受更改组的GID为重复号码


以上就是本篇文章对用户与组的操作介绍

目录
相关文章
|
4月前
|
网络协议 Linux 网络安全
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作
在CentOS 7中,新引入了firewalld服务(防火墙),取代了CentOS 6之前的iptables服务(防火墙)。
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作
|
4月前
|
存储 运维 Linux
Linux磁盘精准缩容:操作详解与技巧
在Linux系统管理中,有效的磁盘空间优化对于维护系统性能至关重要。本文将深入探讨如何在Linux环境下安全地进行磁盘缩容,帮助你合理调整存储资源,确保系统高效运行。跟随本篇的步骤,一起优化你的Linux系统磁盘空间!
Linux磁盘精准缩容:操作详解与技巧
|
5月前
|
Linux 网络安全 开发工具
Linux 管理远程会话 screen:掌握终端的多任务操作
`Linux screen` 命令让多任务管理变得更简单,尤其在SSH连接远程服务器时。创建新会话如`screen -S backup`,查看会话`screen -ls`,退出`exit`。高级功能包括直接在会话中运行命令,如`screen vim memo.txt`,会话共享以协同工作,以及通过`screen -r`或`-D -r`重新连接或强制恢复断开的会话。提高效率,确保任务不间断运行。
100 1
|
6月前
|
Linux 芯片
Linux驱动入门 —— 利用寄存器操作GPIO进行LED点灯-1
Linux驱动入门 —— 利用寄存器操作GPIO进行LED点灯
Linux驱动入门 —— 利用寄存器操作GPIO进行LED点灯-1
|
6月前
|
Ubuntu Linux
Linux驱动入门 —— 利用寄存器操作GPIO进行LED点灯-2
Linux驱动入门 —— 利用寄存器操作GPIO进行LED点灯
Linux驱动入门 —— 利用寄存器操作GPIO进行LED点灯-2
|
4月前
|
安全 固态存储 Linux
服务器linux操作系统重装的完整流程-傻瓜式教学
服务器linux操作系统重装的完整流程-傻瓜式教学
|
5月前
|
Linux 应用服务中间件 网络安全
linux 初始化全部操作
linux 初始化全部操作
42 1
|
6月前
|
Linux 芯片 Ubuntu
Linux驱动入门 —— 利用引脚号操作GPIO进行LED点灯
Linux驱动入门 —— 利用引脚号操作GPIO进行LED点灯
|
6月前
|
分布式计算 Hadoop Linux
实验: 熟悉常用的Linux操作和Hadoop操作
实验: 熟悉常用的Linux操作和Hadoop操作
88 2
|
6月前
|
存储 Linux C++
linux信号量与PV操作知识点总结
linux信号量与PV操作知识点总结
下一篇
无影云桌面