Ubuntu中echo "test" | password --stdin test 错误
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Ubuntu中echo "test" | password --stdin test 错误,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3556字,纯文字阅读大概需要6分钟。
内容图文
![Ubuntu中echo "test" | password --stdin test 错误](/upload/InfoBanner/zyjiaocheng/1204/3d0b721f3f9941a8a3777a6fc0281411.jpg)
今天看到了马哥的视频,讲道理passwd命令和管道的标准输入时,一个命令重置密码。
我测试了一下报错
echo "test" | password --stdin test
root@localhost:/home/test2# echo "test" | password --stdin test
未找到 ‘password‘ 命令,您要输入的是否是:
命令 ‘assword‘ 来自于包 ‘assword‘ (universe)
password:未找到命令
root@localhost:/home/test2# echo "test" | passwd --stdin test
passwd:无法识别的选项“--stdin”
Usage: passwd [options] [LOGIN]
Options:
-a, --all report password status on all accounts
-d, --delete delete the password for the named account
-e, --expire force expire the password for the named account
-h, --help display this help message and exit
-k, --keep-tokens change password only if expired
-i, --inactive INACTIVE set password inactive after expiration
to INACTIVE
-l, --lock lock the password of the named account
-n, --mindays MIN_DAYS set minimum number of days before password
change to MIN_DAYS
-q, --quiet quiet mode
-r, --repository REPOSITORY change password in REPOSITORY repository
-R, --root CHROOT_DIR directory to chroot into
-S, --status report password status on the named account
-u, --unlock unlock the password of the named account
-w, --warndays WARN_DAYS set expiration warning days to WARN_DAYS
-x, --maxdays MAX_DAYS set maximum number of days before password
change to MAX_DAYS
我看到这个错误,我以为是passwd --stdin这个参数问题,于是我上网百度了一下,大家都说没问题啊,
意外在Ubuntu论坛中发现了一个帖子
最近学习鸟哥的passwd用法时练习建立账号并修改密码(密码统一为“password”),程序如下
#!/bin/bash
groupadd myquotagrp
for username in myquota1 myquota2 myquota3 myquota4 quota5
do
useradd -g myquotagrp $username
echo "password" | passwd --stdin $username
done
运行后报错
passwd: unrecognized option ‘--stdin‘
Usage: passwd [options] [LOGIN]
Options:
-a, --all report password status on all accounts
-d, --delete delete the password for the named account
-e, --expire force expire the password for the named account
-h, --help display this help message and exit
-k, --keep-tokens change password only if expired
-i, --inactive INACTIVE set password inactive after expiration
to INACTIVE
-l, --lock lock the password of the named account
-n, --mindays MIN_DAYS set minimum number of days before password
change to MIN_DAYS
-q, --quiet quiet mode
-r, --repository REPOSITORY change password in REPOSITORY repository
-S, --status report password status on the named account
-u, --unlock unlock the password of the named account
-w, --warndays WARN_DAYS set expiration warning days to WARN_DAYS
-x, --maxdays MAX_DAYS set maximim number of days before password
change to MAX_DAYS
我又查了下passwd的用法,虽然不是很懂,但尝试了openssl passwd -stdin
还是报错:
Usage: passwd [options] [passwords]
where options are
-crypt standard Unix password algorithm (default)
-1 MD5-based password algorithm
-apr1 MD5-based password algorithm, Apache variant
-salt string use provided salt
-in file read passwords from file
-stdin read passwords from stdin
-noverify never verify when reading password from terminal
-quiet no warnings
-table format output as table
-reverse switch table columns
最后看到了其中一个信息
passwd的--stdin参数ubuntu不支持,其实debian就不支持这个,自己后来在centos7中测试了一下,可以,原理问题就出在这里。
因为我的系统是Ubuntu14.04的系统,终于找到问题的原因了。
后来在网上找到了一个方法就是换行,模拟两次输入密码,但是发现还是不行,
root@localhost:/home/test2# echo "test\ntest" | passwd test2
输入新的 UNIX 密码: 重新输入新的 UNIX 密码: passwd: 认证令牌操作错误
passwd: password unchanged
自己直接重置密码可以。
root@localhost:/home/test2# passwd test2
输入新的 UNIX 密码:
重新输入新的 UNIX 密码:
passwd: password updated successfully
root@localhost:/home/test2#
自己想到这里也没有好的办法了,希望高手也可以留言,帮忙解决一下吧
本文出自 “8401410” 博客,请务必保留此出处http://8411410.blog.51cto.com/8401410/1922124
Ubuntu中echo "test" | password --stdin test 错误
原文:http://8411410.blog.51cto.com/8401410/1922124
内容总结
以上是互联网集市为您收集整理的Ubuntu中echo "test" | password --stdin test 错误全部内容,希望文章能够帮你解决Ubuntu中echo "test" | password --stdin test 错误所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。