在CentOS下使用文件批量添加用户

在CentOS添加用户的方法是多样的,例如,使用useradd、passwd单个添加用户;使用脚本批量添加用 户;使用文件批量导入用户。本节介绍的是使用文件批量导入用户的方法。

环境介绍:

[[email protected] ~]# uname -r

3.10.0-327.el7.x86_64

[[email protected] ~]# cat /etc/centos-release

CentOS Linux release 7.2.1511 (Core)

[[email protected] ~]#

  1. 创建用户文件,文件格式需和/etc/passwd的格式一致。

[[email protected] ~]# cat useradds.txt

user1:x:1001:1001::/home/user1:/bin/bash

user2:x:1002:1002::/home/user2:/bin/bash

user3:x:1003:1003::/home/user3:/bin/bash

user4:x:1004:1004::/home/user4:/bin/bash

# /etc/passwd文件格式说明: username:passwd:UID:GID:comment:home-directory:shell

2. 使用newusers导入用户,并验证。

[[email protected] ~]# newusers useradds.txt

[[email protected] ~]# tail -5 /etc/passwd

tcpdump:x:72:72::/:/sbin/nologin

user1:x:1001:1001::/home/user1:/bin/bash

user2:x:1002:1002::/home/user2:/bin/bash

user3:x:1003:1003::/home/user3:/bin/bash

user4:x:1004:1004::/home/user4:/bin/bash

[[email protected] ~]#

在/etc/passwd文件中已经显示用户被成功导入。

[[email protected] ~]# ll /home

total 0

drwx------ 2 user1 user1 6 May 24 11:09 user1

drwx------ 2 user2 user2 6 May 24 11:09 user2

drwx------ 2 user3 user3 6 May 24 11:09 user3

drwx------ 2 user4 user4 6 May 24 11:09 user4

[[email protected] ~]#

查看/home目录已经建立了用户的家目录。

3.使用chpasswd 导入用户密码文件。密码文件格式为 username:passwd

[[email protected] ~]# cat passwd.txt

user1:qwe123

user2:qwe123

user3:qwe123

user4:qwe123

[[email protected] ~]#

如上所示,先创建用户密码文件。

[[email protected] ~]# chpasswd < passwd.txt

[[email protected] ~]#

使用chpasswd 导入密码文件。由于chpasswd命令只能从standard input读入,因此需要使用重定向,用文件内容来代替键盘输入。

[[email protected] ~]# tail -5 /etc/shadow

tcpdump:!!:16930::::::

user1:$6$j9xvrnk7u$RkUW5pp5eZ6uZHE80QuF.OoudakhW0m5Bi2y42qhY/wXwyXt6qSrekI4qbc6QVlT9P2XdXc8CzpyZ0nNKdHnE1:16945:0:99999:7:::

user2:$6$Z0e6nuRnU5/$KQvkQCG2p2wkpbg8JJN4WDc6hPjewtjAV8JO3Zue6VgYIeR34YNMOXDfVz5QylB5VMMrnk7nbAOTKFLjrVpnT1:16945:0:99999:7:::

user3:$6$MDMIBLT4I$Cw/F/ZPeCrnfRYyxhMR/387tNxFCrSJtwATb5V9l1uwl0hn/rt3PRK.ds0dHIR2YM0P469Z8PGBEdvCkXpu7q/:16945:0:99999:7:::

user4:$6$Wf6Yg/IDssC/$aQCdVqJ9tkX7OzIjKWyGKe1De2rZ0.JGbyrIYwT6pUXACiDKcBAARTghC1YgHONOfA6B2b3erZ70d5TKDJQ0g1:16945:0:99999:7:::

[[email protected] ~]#

查看/etc/shadow文件,用户密码导入成功.

#/etc/shadow文件格式说明:

username:passwd:change-date:minimum-password-lifetime:maximum-password-lifetime:warning:expire:inactive:reserve

4. 使用chown 更改复制到用户家目录以及家目录本身的所有者和所属组。

[[email protected] ~]# chown  -R user4:user4  /home/user4

[[email protected] ~]# ll -d /home/user4

drwxr-xr-x. 3 user4 user4 74 May  9 16:50 /home/user4

5. 使用cp -a /etc/skel/. /home/user4 复制用户环境配置文件。

[[email protected] user1]# ls -a /home/user4

.  ..

[[email protected] user1]# cp -a /etc/skel/. /home/user4

[[email protected] user1]# ls -a /home/user4

.  ..  .bash_logout  .bash_profile  .bashrc  .mozilla

默认情况下,使用文本导入方式创建的用户在家目录下没有环境配置文件,需要手工从/etc/skel复制到家目录下。

6. 验证用户是否可以成功登录系统。

[[email protected] ~]$

[[email protected] ~]$ touch file1

[[email protected] ~]$ ls -l

total 0

-rw-rw-r-- 1 user4 user4 0 May 24 11:47 file1

[[email protected] ~]$

如上图所示,用户已可成功登录。

时间: 2024-11-08 19:12:45

在CentOS下使用文件批量添加用户的相关文章

Centos6配置samba服务器并批量添加用户和文件夹

一.需求 局域网内有若干用户,所有用户访问一个共享目录 每个用户在共享目录里有自己的文件夹 每个用户都可以读取其他人的文件夹 每个用户只能对自己的文件夹有写入权限 所有用户都属于filesgroup组 二.环境 服务器:Centos6 主机名:fileserver IP地址:192.168.1.2 用户端IP网段: 192.168.1.0/24 , 192.168.2.0/24 , 172.16.1.0/24 三.配置步骤 1.安装samba,备份原始配置文件,编辑配置文件 [[email pr

shell 脚本实战笔记(9)--linux自动批量添加用户

前言: 添加linux用户帐号,这个相对简单, 在面对集群, 许多机器的时候, 我们该如何去做和实现? 这篇短文, 简单讲解一些思路, 尽可能地涉及周边的一些知识点. 不光是运维人员会面临这个问题, 对一个基于linux平台的集群服务或软件(比如hadoop集群), 有时也会涉及到这块. 应用场景: 是以centos 6.4作为演示的系统, 其他的系统有类同, 也有差异, 且以实战演练, 一步步的讲述下流程. *) 实战演练 查阅useradd的使用和参数选项useradd --help -d,

centos下配置sftp且限制用户访问目录

第一步:创建sftp服务用户组,创建sftp服务根目录 groupadd sftp #此目录及上级目录的所有者(owner)必须为root,权限不高于755,此目录的组最好设定为sftp mkdir /srv/sftp chown -R root:sftp /srv/sftp chmod -R 0755 /srv/sftp 第二步:备份sshd配置文件然后编辑 mv /etc/ssh/sshd_config ~/backup/sshd_config_xxx vim /etc/ssh/sshd_c

工程师技术(五):Shell脚本的编写及测试、重定向输出的应用、使用特殊变量、编写一个判断脚本、编写一个批量添加用户脚本

一.Shell脚本的编写及测 目标: 本例要求两个简单的Shell脚本程序,任务目标如下: 1> 编写一个面世问候 /root/helloworld.sh 脚本,执行后显示出一段话"Hello World!!"   2> 编写一个能输出系统信息的 /root/sysinfo 脚本,执行后依次输出当前红帽系统的版本信息.当前使用的内核版本.当前系统的主机名 方案: 规范Shell脚本的一般组成: 1> #! 环境声明(Sha-Bang)    2> # 注释文本 

SHELL脚本批量添加用户

在Linux服务中添加相应的用户账号,初始密码均为"123456".可以先指定所有用户的列表文件,然后编写一个名为uadduser.sh的脚本 [[email protected] ~]# vim /root/users.txt                       //新建一个指定所有用户的列表文件xiaomingxiaoqingxiaofangxiaodong [[email protected] ~]# vim uadduser.sh         //创建批量添加用户的

为Discuz! X3.2批量添加用户的python脚本

为Discuz! X3.2批量添加用户的python脚本 搭建了一个Discuz! X3.2环境用于工作,需要添加用户时没有找到合适的工具,虽然同事最终用按键精灵解决了问题,不过还是决定写一段代码留下来,也许用得上. 之所以是Python而不是PHP,只是最近在接触Python,发现在这种场合更加方便. 添加用户代码: # encoding: utf-8 ''' Created on 2015年7月1日 @author: ZhongPing ''' import urllib import ur

从Exchange 通往Office 365系列(十八)通过csv文件批量创建用户

之前已经讲过在Office 365中创建用户一种方法是通过活动目录同步工具将本地AD同步到Office 365中,其实这也就是同步到Office 365后台的Windows Azure中,这是在企业已经有本地的AD架构之后的做法,如果小型机构可能内部并没有AD的架构,那么这时候可以通过csv格式的文件在Office 365中直接创建用户,之前已经讲过如何通过活动目录同步工具将本地AD同步到Office 365中,想看的可以去看一下http://mxyit.blog.51cto.com/43088

(转)通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加

通过shell脚本实现批量添加用户和设置随机密码以及生产环境如何批量添加 原文:http://www.21yunwei.com/archives/4773 有一个朋友问我如何批量创建用户和设置密码 ,我就简单给他写了两个脚本,让他自己参考下并自己根据实际情况进行修改,毕竟他需要的用户名和密码都是实际生产环境的. 这里分两种情况,一种是测试for循环批量添加用户,一个是根据实际生产环境进行批量添加.分别写一下案例如下:1,for添加指定类型用户以及设置随机密码.脚本作用:批量添加user1-10用

gitlab批量添加用户的方法

gitlab批量添加用户的方法要在gitlab中添加新的用户,可以用管理员账户在登录gitlab后进入admin area页面,进行添加用户的操作.但是这样只能手工进行操作,一次只能添加一个用户.如果需要一次添加大量用户,不仅操作速度慢,还很容易出错.要能够?批量添加用户,一个比较好的解决方案是使用gitlab提供的api接口.gitlab API的使用可以参考的gitlab的帮助文档,gitlab提供了很多语言的api 客户端.这里只介绍最简单的http方法.所有的api请求都要进行身份验证,