passwd --stdin没有这个参数(debian)

passwd –stdin没有这个参数(debian)

在RHEL/CentOS中,我们批量创建用户时一般都会用到passwd –stdin参数,但是在debian/ubuntu下没有这个参数:

man passwd
 -a, --all
 This option can be used only with -S and causes show status for all users.
-d, --delete
 Delete a user‘s password (make it empty). This is a quick way to disable a password for an account. It will set the named account passwordless.
-e, --expire
 Immediately expire an account‘s password. This in effect can force a user to change his/her password at the user‘s next login.
-h, --help
 Display help message and exit.
-i, --inactive INACTIVE
 This option is used to disable an account after the password has been expired for a number of days. After a user account has had an expired password
 for INACTIVE days, the user may no longer sign on to the account.
-k, --keep-tokens
 Indicate password change should be performed only for expired authentication tokens (passwords). The user wishes to keep their non-expired tokens as
 before.
-l, --lock
 Lock the password of the named account. This option disables a password by changing it to a value which matches no possible encrypted value (it adds
 a ′!′ at the beginning of the password).
Note that this does not disable the account. The user may still be able to login using another authentication token (e.g. an SSH key). To disable
 the account, administrators should use usermod --expiredate 1 (this set the account‘s expire date to Jan 2, 1970).
Users with a locked password are not allowed to change their password.
-n, --mindays MIN_DAYS
 Set the minimum number of days between password changes to MIN_DAYS. A value of zero for this field indicates that the user may change his/her
 password at any time.
-q, --quiet
 Quiet mode.
-r, --repository REPOSITORY
 change password in REPOSITORY repository
-R, --root CHROOT_DIR
Apply changes in the CHROOT_DIR directory and use the configuration files from the CHROOT_DIR directory.
-S, --status
 Display account status information. The status information consists of 7 fields. The first field is the user‘s login name. The second field
 indicates if the user account has a locked password (L), has no password (NP), or has a usable password (P). The third field gives the date of the
 last password change. The next four fields are the minimum age, maximum age, warning period, and inactivity period for the password. These ages are
 expressed in days.
-u, --unlock
 Unlock the password of the named account. This option re-enables a password by changing the password back to its previous value (to the value before
 using the -l option).
-w, --warndays WARN_DAYS
 Set the number of days of warning before a password change is required. The WARN_DAYS option is the number of days prior to the password expiring
 that a user will be warned that his/her password is about to expire.
-x, --maxdays MAX_DAYS
 Set the maximum number of days a password remains valid. After MAX_DAYS, the password is required to be changed.

解决的办法是使用chpasswd命令,详细的可以自行查看man手册:

man chpasswdf

用法:

chpasswd user_name:password

可以用echo输出指定的信息,然后管道给chpasswd命令处理,如:

echo testuser:Newpasswd|chpasswd

这样,我的批量部署用户脚本就是:

#!/bin/bash
for u in `seq -w 16 20`
do
 pass=`openssl rand -base64 8|cut -c 1-9`
 useradd tuser$u && echo "tuser$u:$pass"|chpasswd
 echo User:tuser$u pass:$pass >> /home/shell_dir/testdir/user.log
done
时间: 2024-10-12 11:10:19

passwd --stdin没有这个参数(debian)的相关文章

通过echo "password" |passwd --stdin user命令改密码引发的问题

出于安全考虑,公司要求对阿里云上的部分服务器修改root密码,其中服务器中有一台Centos和若干台ubuntu.在我很慎重地更改了密码之后,没想到还是出了问题,有一台服务器ssh登录不上去了. 当时考虑到有两个可能: 1.有可能是ssh配置文件没有打开,PermitRootLogin yes(刚刚升级过ssh,这个原因也是可能的) 2.密码错误 往回梳理,发现这台服务器是Centos的,并且是用复制粘贴echo "LN3T!854qq" |passwd --stdin root 这条

echo “新密码”|passwd --stdin 用户名

--stdin This option is used to indicate that passwd should read the new password from standard input, which can be a pipe. 这个选项用于从标准输入管道读入新的密码. 使用 echo 方式来重置Linux 系统用户密码: echo "新密码"|passwd --stdin 用户名 [[email protected] ~]# passwd --stdin rusky

Ubuntu(Debian)中使用passwd提示找不到--stdin参数

问题引出 在RHEL/CentOS中,我们批量创建用户时一般都会用到passwd –stdin参数,但是在debian/ubuntu中passwd命令没有--stdin这个参数: man passwd 解决的办法 使用chpasswd命令代替 man chpasswd 用法 : chpasswd user_name:password 非交互式: echo user_name:password | chpasswd 案例:批量创建用户并设置密码 cat addUsers.sh #!/bin/bas

Ubuntu中echo "test" | password --stdin test 错误

今天看到了马哥的视频,讲道理passwd命令和管道的标准输入时,一个命令重置密码. 我测试了一下报错 echo "test" | password --stdin test [email protected]:/home/test2# echo "test" | password --stdin test 未找到 'password' 命令,您要输入的是否是: 命令 'assword' 来自于包 'assword' (universe) password:未找到命令

Linux指令详解useradd groupadd passwd chpasswd chage 密码修改

创建用户.设置密码.修改用户.删除用户: useradd testuser 创建用户testuser passwd testuser 给创建的用户testuser设置密码 说明:新创建的用户会在/home下创建一个用户目录testuser usermod --help 修改用户这个命令的相关参数 userdel testuser 删除用户testuser rm -rf testuser 删除用户testuser所在目录 上面的几个命令只有root账号才可以使用,如果你不知道自己的系统上面的命令在

(转)linux passwd批量修改用户密码

linux passwd批量修改用户密码 原文:http://blog.csdn.net/xuwuhao/article/details/46618913 对系统定期修改密码是一个很重要的安全常识,通常,我们修改用户密码都使用 passwd user 这样的命令来修改密码,但是这样会进入交互模式,即使使用脚本也不能很方便的批量修改,除非使用expect 这样的软件来实现,难道修改一下密码还需要单独安装一个软件包吗? 不,我们其实还有其他很多方法可以让我们避开交互的,下面具体写一下具体的实现方式:

linux '--stdin'错误 -批量修改密码

虚拟机:VMware虚拟机  系统:Linux ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux 看 <鸟哥的私房菜 -服务器架设篇>的时候,跟着书上敲指令的时候遇到了一个问题,批量添加用户和修改密码失败. shell命令如下: 使用 sh运行脚本的时候出现以下错误: 实测用户和用户组都已经添加成功,但是批量修改密码的时候出现错误,

linux命令:passwd

  passwd令简介: 此命令用于修改用户的密码.  1.命令格式:   passwd [OPTION] USERNAME  2.命令功能: 用于设置用户的认证信息,包括用户密码.密码过期时间等.系统管理者则能用它管理系统用户的密码. 只有管理者可以指定用户名称,一般用户只能变更自己的密码.  3.命令参数:      --stdin  standinput 标准输入  从标准输入中接收密码,比如通过键盘直接输入密码 -d:删除密码,仅有系统管理者才能使用: -f:强制执行: -k:设置只有在

FTP简述之CentOS平台vsftpd参数讲解

FTP知识概述 FTP的全称为"File Transfer Protocol"即(文件传输协议),用于在Internet或Intranet的两台主机之间传输文件,利用FTP可以传输文本文件和二进制文件: 该协议的简称叫"FTP",现如今已然成为文件传输的代名词:FTP 是Internet上最早出现且使用也最为广泛的一种文件传输服务.基于C/S架构,工作在应用层且通过该服务可在FTP服务器和FTP客户端之间建立连接,实现FTP服务器和FTP客户端之间的数据文件传输: