`

Linux系统中批量添加用户

阅读更多
一、为什么需要大批量添加用户;
我们什么时候才需要大批量添加用户呢?有时我们需要让几十个或更多的用户在主机上完成相同或相似的任务,比如我们想同时添加一堆的ftp 用户,这些ftp用户归属同一组,但不允许他们通过终端或远程登录服务器;有时我们可能为了教学,比如我们有50个学生,并且每个学生在服务器上有一个独立的用户名,能登录系统,并能管理自己的帐号或完成一些在自己权限下的作业;
二、批量用户添加流程;
批量添中用户流程是通过newusers 导入一个严格按照/etc/passwd 的书写格式来书写内容的文件来完成添加用户,然后通过chpasswd 导入用户密码文件来完成批量更新用户密码的过程;
1、newusers 成批添加用户的工具;
其用法很简单,newusers 后面直接跟一个文件;文件格式和/etc/passwd 的格式相同;
用户名1:x:UID:GID:用户说明:用户的家目录:所用SHELL
举例:

win00:x:520:520::/home/win00:/sbin/nologin
win01:x:521:521::/home/win01:/sbin/nologin
......
值得一提的是关于SHELL类型,查看主机上所有SHELL ,可以通过chsh 来查看;
[root@localhost beinan]# chsh --list
/bin/sh
/bin/bash
/sbin/nologin
/bin/ksh
/bin/tcsh
/bin/csh
/bin/zsh
其中除了/sbin/nologin ,其它类型的SHELL 都能登录系统;nologin 大多是虚拟用户用的SHELL ,也就是说虽然他是系统用户,但他并无登录系统的权限;如果您想添加这类用户,就把他的SHELL 设置成/sbin/nologin ,比如上面的例子;
关于用户名、UID、GID及用户的家目录是怎么回事,您可以读相应的参考文档;
2、chpasswd 批量更新用户口令工具;
chpasswd 工具是成批更新用户口令的工具,是把一个文件内容重新定向添加到/etc/shadow中;
chpasswd < 文件
但文件的内容并不是没有约定的,必须以下面的格式来书写,并且不能有空行;
用户名:口令
用户名1:口令1
用户名2:口令2
举例:
win00:123456
win01:654321
... ...
三、批量添加用户实例;
1、首先我们创建用户文件和密码文件;
我们要创建包含新用户的文件userfile.txt ;另一个是为新添加的用户设置密码的userpwdfile.txt;

[root@localhost ~]# touch userfile.txt
[root@localhost ~]# touch userpwdfile.txt
然后用文本编辑器打开文件userfile.txt,添加如下内容;
win00:x:520:520::/home/win00:/sbin/nologin
win01:x:521:521::/home/win01:/sbin/nologin
win02:x:522:522::/home/win02:/sbin/nologin
win03:x:523:523::/home/win03:/sbin/nologin
win04:x:524:524::/home/win04:/sbin/nologin
win05:x:525:525::/home/win05:/sbin/nologin
win06:x:526:526::/home/win06:/sbin/nologin
win07:x:527:527::/home/win07:/sbin/nologin
win08:x:528:528::/home/win08:/sbin/nologin
win09:x:529:529::/home/win09:/sbin/nologin
userfile.txt 文件内容格式和 /etc/passwd 的格式是一样的,必须严格按照/etc/passwd 的格式来书写;上面所添加的用户都不能登录系统,但完全能用于ftp登录,但您得在相应ftp服务器的配置文件中打开让本地用户有读写权限;如果您想让上面的部份用户可以登录系统,可以把SHELL类似改一改,比如改成/bin/bash ;
我们再来书写新增用户的密码文件userpwdfile.txt内容;这个文件的内容中的用户名要与 userfile.txt用户名相同;也就是说我们先是添加了win00到win09的用户,现在要为这些用户更新密码;比如下面的;
win00:123456
win01:654321
win02:123321
win03:qweewq
win04:google
win05:adadwc
win06:wsscee
win07:xxec32
win08:543wew
win09:3ce3wf
2、通过newusers和chpasswd 完成批量添加用户;
[root@localhost ~]# newusers userfile.txt
[root@localhost ~]# chpasswd < userpwdfile.txt
这样就算添加完成了,如果您发现 /etc/passwd 中能发现用户的明口令,您可以通过下面的命令来映射到 /etc/shadow文件名;

[root@localhost ~]# pwconv
分享到:
评论

相关推荐

    在Linux系统中批量添加用户的操作流程

    本文是大批量添加用户的一个实例,主要是 newusers 和 chpasswd 的用法的解说;,这两个工具还是有用的;至于能用在哪,可以用在 ftp 的虚拟用户,可以用到教学中。

    在linux 系统shell 批量添加用户和密码

    Shell脚本是Linux系统中的重要组成部分,它允许用户通过编写一系列命令来自动化复杂的任务。这些脚本可以执行一系列预定义的命令,从而节省时间和提高效率。在本例中,我们使用的是Bash shell,它是Linux中最常用的...

    Linux下批量添加用户.doc

    Linux 下批量添加用户 在 Linux 系统中,添加和删除用户是系统管理员的日常工作之一。但是,当需要添加大量用户时,使用 useradd 命令一个一个地添加用户将变得非常困难和耗时。因此,需要一种简便的方法来创建大量...

    在Linux系统中批量建立用户的shell

    在Linux系统中,批量创建用户是一项常见的管理任务,特别是在大规模部署和管理用户账户时,例如在校园网应用平台中为每个学生提供独立的系统账号。本文介绍了一种使用shell脚本实现这一目标的方法,适用于基于Unix...

    linux系统中使用adduser与useradd命令批量添加用户.docx

    Linux系统中使用adduser与useradd命令批量添加用户 Linux系统中使用adduser与useradd命令批量添加用户是两种常用的方法。在这篇文章中,我们将详细介绍adduser和useradd命令的使用方法,并比较这两种方法的区别。 ...

    实战1-RHEL7-Linux批量添加用户

    在管理Linux系统时,批量添加用户是一个常见但复杂的任务,尤其是在需要创建成百上千个用户时。使用useradd命令逐一手动添加用户显然是不现实的,因此需要掌握更为高效的批量创建用户的方法。 首先,了解Linux系统...

    linux实验三_Linux系统登录及用户管理

    ### Linux系统登录及用户管理知识点解析 ...通过本次实验,学习者不仅掌握了用户管理的基本命令,还深入了解了Linux系统中用户账户的工作机制,包括权限分配、文件结构等方面。这对于理解和管理Linux系统非常重要。

    Linux(Centos)批量添加连续账户

    Linux (Centos) 批量添加连续账户的shell脚本,可以使用

    User.tar.gz openEuler系统Shell编程批量添加用户和删除用户的脚本

    在Linux系统中,尤其是针对企业级的openEuler操作系统,高效地管理用户账户是运维工作的重要环节。批量处理用户添加和删除任务可以显著提高工作效率,避免手动操作带来的繁琐和潜在错误。本文将深入探讨如何利用...

    Linux批量scp命令执行工具 可批量对多个Linux主机执行传输文件命令 方便省力 适合统一化管理Linux服务器

    在IT行业中,Linux系统因其稳定性和可定制性而被广泛应用于服务器管理。在日常运维工作中,经常需要在多台远程Linux主机之间传输文件,这时,手动执行scp命令会显得效率低下且容易出错。为了解决这个问题,就有了...

    Linux基础课件-- Linux系统的用户和用户组.pptx

    本课件主要围绕Linux系统中的用户和用户组展开,旨在帮助学习者理解这两个关键概念及其相互关系。 首先,让我们深入了解一下Linux系统的用户。用户是操作系统中执行操作的基本实体,每个用户都有独特的标识。用户的...

    远程批量修改linux服务器密码的脚本归类.pdf

    4. 用户和组的管理:在 Linux 系统中,用户和组是非常重要的概念。我们使用 Expect 脚本来添加新的用户和组,并对其进行密码修改。 5.Shell 脚本的使用:我们使用 Shell 脚本来实现批量修改 Linux 服务器的密码。该...

    批量修改linux密码的脚本

    在Linux系统管理中,批量修改用户密码是一项常见的任务,特别是在多用户环境或者服务器集群中。本文将详细解析如何使用批量脚本来实现这一操作,主要基于提供的"change_pass.vbs"脚本,结合SecureCRT终端模拟器进行...

    批量安装服务器Linux系统

    本主题聚焦于批量安装Linux系统,这是一个高效且节省时间的方法,能够避免逐一手动安装的繁琐过程。以下是对批量安装Linux系统的关键知识点的详细解释: 1. **Kickstart自动化安装**:Kickstart是Linux发行版如Red ...

    批量修改linux密码

    在Linux系统管理中,批量修改用户密码是一项常见的任务,特别是在多用户环境或者服务器集群中。这篇博客"批量修改Linux密码"提供了一个实用的脚本工具,帮助管理员高效地完成这项工作。通过`mima.sh`这个脚本文件,...

    Linux批量命令执行工具 可批量对多个Linux主机执行命令 重启后依然可以 方便省力 适合统一化管理Linux服务器 Linux 远程管理

    在IT行业中,Linux系统的管理是一项重要的任务,尤其在大规模的服务器集群环境中,高效地执行命令和维护一致性至关重要。本文将详细介绍“Linux批量命令执行工具”的功能、用途以及它如何简化Linux服务器的统一化...

    Linux读取Excel文件批量创建用户并分组

    ### Linux读取Excel文件批量创建用户并分组 在Linux环境下进行系统管理和自动化运维时,经常需要处理大量的用户账户管理任务。例如,在学校或大型企业环境中,管理员可能需要批量创建新用户并根据一定的规则(如...

    linux操作系统实验linux下用户与组的管理借鉴.pdf

    本实验旨在让学生了解 Linux 中的用户和组管理机制,掌握用户和组的添加、删除、修改等操作,以及批量添加用户和修改用户密码等。 一、实验目的: 1. 理解 /etc/passwd 和 /etc/group 文件的含义; 2. 掌握桌面...

    技能大赛试题:linux 批量创建用户脚本

    在Linux系统管理中,批量创建用户是一项常见的任务。特别是在企业级环境中,管理员可能需要为新入职的员工或者进行大规模部署时快速创建大量的用户账户。技能大赛试题中的“Linux批量创建用户脚本文档”就是针对这一...

    系统日志批量收集分析(Linux).zip

    首先,Linux系统日志通常存储在`/var/log`目录下,包括各种服务的日志文件,如`syslog`、`auth.log`、`dmesg`等。这些日志记录了系统启动、服务运行、用户登录和错误信息等内容。对于大规模的Linux环境,手动检查...

Global site tag (gtag.js) - Google Analytics