Linux用户及用户组管理命令

简介: Linux用户及用户组管理命令

Linux操作系统是一种基于UNIX的多用户、多任务的操作系统。在Linux系统中,用户和用户组的管理是非常重要的,因为它关系到系统安全和多用户环境下的资源共享。本文将详细介绍Linux中用户和用户组管理的相关命令,帮助用户更好地理解和管理Linux系统。

1. 用户管理命令

1.1 添加用户

  • useradd:添加新用户
  • 语法:useradd [选项] 用户名
  • 示例:useradd -m john 添加一个新用户john,并为其创建家目录。

系统将创建一个新用户john, 该用户的 Home 目录为/home/john

useradd 命令的参数较多 常用的组合为

useradd 用户名 -g 组名 –G 组名 -d Home 目录名 -p 密码

其中 -g 指定该用户的首要组

-G 指定该用户的次要组

-d 指定该用户的 Home 目录

-p 指定该用户的密码

如输入以下命令

useradd oracle –g oinstall –G dba –d /home/oracle –p ora123

系统将创建一个用户 oracle oracle 用户的首要组为 oinstall 次要组为 dba

Home 目录为/home/oracle 密码为 ora123

1.2 删除用户

  • userdel:删除用户账号
  • 语法:userdel [选项] 用户名
  • 示例:userdel -r john 删除用户john,并将其家目录一并删除。

1.3 修改用户信息

  • usermod:修改用户信息
  • 语法:usermod [选项] 用户名
  • 示例:usermod -G developers john 将用户john添加到developers组。

1.4 查看用户信息

  • id:显示用户的用户ID、组ID及所属的用户组
  • 语法:id 用户名
  • 示例:id john 显示用户john的用户ID、组ID及所属的用户组信息。
  • finger:显示用户的详细信息
  • 语法:finger [选项] 用户名
  • 示例:finger john 显示用户john的详细信息。

2. 用户组管理命令

2.1 添加用户组

  • groupadd:添加新的用户组
  • 语法:groupadd [选项] 组名
  • 示例:groupadd developers 添加一个名为developers的新组。

2.2 删除用户组

  • groupdel:删除用户组
  • 语法:groupdel 组名
  • 示例:groupdel developers 删除名为developers的用户组。

2.3 修改用户组信息

  • groupmod:修改用户组信息
  • 语法:groupmod [选项] 组名
  • 示例:groupmod -n newname developers 将developers组重命名为newname组。

2.4 查看用户组信息

  • getent:获取条目信息
  • 语法:getent group 组名
  • 示例:getent group developers 获取developers组的信息。
  • groups:显示用户所属的所有用户组
  • 语法:groups 用户名
  • 示例:groups john 显示用户john所属的所有用户组信息。

3. 其它相关命令

3.1. passwd

出于系统安全考虑 Linux系统中的每一个用户除了有其用户名外还有其对应的用户口令 用户可以随时用 passwd 命令改变自己的口令 该命令的一般格式为:

  • passwd

输入该命令后 按系统提示依次输入密码和密码确认后 即可完成用户密码的修改

此外 超级用户还可以修改其他用户的口令 命令如下:

  • passwd 用户名

3.2. su

su 命令这个命令非常重要 它可以让一个普通用户拥有超级用户或其他用户的权限 也可以让超级用户以普通用户的身份做一些事情 普通用户使用这个命令时必须有超级用户或其他用户的口令 如要离开当前用户的身份 可以键入 exit 命令 su 命令的一般形式为:

  • su - 用户名

3.3. chmod

chmod 命令是非常重要的 用于改变文件或目录的访问权限 该命令有两种用法 一种是包含字母和操作符表达式的文字设定法 另一种是包含数字的数字设定法

由于数字设定法不太直观 本文不做介绍 文字设定法的用法如下

  • chmod [who] [+ | - | =] [mode] 文件名

命令中各选项的含义为:

1. 操作对象 who 可以是下述字母中的任一个或者它们的组合

u 表示用户(user) 即文件或目录的所有者

g 表示同组(group)用户 即与文件属主有相同组 ID 的所有用户

o 表示其他(others)用户

a 表示所有(all)用户 它是系统默认值

2. 操作符号可以是

+ 添加某个权限

- 取消某个权限

= 赋予给定权限,并取消其他所有权限

3. mode 表示权限 常用的参数有

r 可读

w 可写

x 可执行


举例


1. 将文件 script 的权限设为可执行 命令如下:


chmod =rx text

执行成功后 用 ls -l script 命令查看文件属性的结果如下

-r-xr-xr-x 1 user group 0 Feb 10 09:42 script

2. 将文件 text 的权限设为 文件属主可读 可写 可执行 与文件属主同组

的用户可读 其他用户不可读 命令如下:


chmod u=rwx,g=r,o= text

注意,后无空格 o=后有空格,执行成功后 用 ls –l text 命令查看文件属性的结果如下

-rwxr----- 1 user group 0 Feb 10 09:42 text

3.4. chown

chown 用于更改某个文件或目录的属主和属组 这个命令也很常用 例如

root 用户把自己的一个文件拷贝给用户 oracle 为了让用户 oracle 能够存

取这个文件 root 用户应该把这个文件的属主设为oracle 否则用户oracle

无法存取这个文件 chown 的基本用法为

chown [用户:组] 文件


举例


chown oracle:dba text

该命令将 text 文件的属主和属组分别改为 oracle 和 dba

4. 管理用户和用户组的注意事项

  • 在添加或删除用户和用户组时,需要注意对系统的影响,尤其是当操作的是系统关键用户或用户组时。
  • 修改用户信息或用户组信息时,需要确保新的信息符合系统的安全策略和业务需求。
  • 在进行用户和用户组管理操作时,建议使用root用户或具有相应权限的用户执行,以避免权限不足导致的错误。
  • 定期审计用户和用户组信息,确保系统的用户和用户组配置符合组织的安全策略。

通过上述命令和注意事项的介绍,相信用户可以更加熟练地进行Linux系统下的用户及用户组管理。合理地管理用户和用户组,不仅可以提高系统的安全性

,还可以有效地实现资源共享和权限控制,为多用户环境下的系统管理提供便利。


目录
打赏
0
0
0
0
74
分享
相关文章
|
13天前
|
Linux系统之whereis命令的基本使用
Linux系统之whereis命令的基本使用
52 23
Linux系统之whereis命令的基本使用
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
366 8
|
3月前
|
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
1159 6
|
3月前
|
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
209 3
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
150 2
Linux用户组管理“小窍门”
创建用户组 使用 groupadd 命令可以创建一个新的用户组。命令格式为: groupadd 用户组 例如,要创建一个名为 dev 的用户组,可以执行: groupadd dev 删除用户组 使用 groupdel 命令可以删除一个用户组。命令格式为: groupdel 用户组 例如,要删除 dev 用户组,可以执行:
15 5
深入解析:Linux网络配置工具ifconfig与ip命令的全面对比
虽然 `ifconfig`作为一个经典的网络配置工具,简单易用,但其功能已经不能满足现代网络配置的需求。相比之下,`ip`命令不仅功能全面,而且提供了一致且简洁的语法,适用于各种网络配置场景。因此,在实际使用中,推荐逐步过渡到 `ip`命令,以更好地适应现代网络管理需求。
38 11
|
2月前
|
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
111 14
Linux 10 个“who”命令示例
|
2月前
|
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
225 20
|
2月前
|
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
149 8