我有几个问题。 这是第一个
我们正在尝试在solaris 8中自动创build用户。我们提供一个默认密码,然后强制用户在第一次login时使用命令更改密码
passwd -f $user
但问题是我们必须input密码两次才能确认。 我已经尝试使用以下命令自动化它
echo $password | password -f $user
这个命令没有任何反应。 请问还有其他方法吗?
我不认为你能在这样一个古老的系统上轻松地做你想做的事情。
我不认为这会工作,但你可以尝试
echo "password\npassword" | passwd user
你可以尝试使用expect工具。 这将做你想做的事情,有很多关于如何使用它更改密码的示例脚本。 麻烦的是,它可能不是Solaris 8的本地组成部分。
另一种select是使用计算crypt (newpass,salt) 2的程序生成密码哈希值,然后在适当的文件中更改密码字段。
1你在这里和你的其他问题的大问题是,Solaris 8是如此古老,甚至连互联网都忘记了。 它在2003年已经被Solaris 9所取代,Oracle在2012年将其扩展到了更广泛的支持。实际上,除非您有扩展的支持,否则您不受支持,不应在商业环境中使用它。
如果你真的需要Solaris,因为你有古老的应用程序,那么你应该至less升级到Solaris 10.我猜你正在运行这个Solaris 8安装的硬件是SPARC。 好消息是,SPARC系统与您的二进制兼容,应该能够在较新的SPARC硬件和支持的操作系统上运行Solaris 8二进制文件。
2不,我不知道在Solaris 8上执行此操作的程序。如果你有perl的话
perl -e 'print crypt("YourPasswd", "salt"),"\n"'
可能工作。