Bash 如何将密码从文件传递到";苏";命令
如何从另一个文本文件向shell脚本中的su命令传递密码 password.txt类似于Bash 如何将密码从文件传递到";苏";命令,bash,shell,su,switch-user,Bash,Shell,Su,Switch User,如何从另一个文本文件向shell脚本中的su命令传递密码 password.txt类似于 password=tryme shell脚本需要由用户gucq1运行 shell脚本类似于 #!/bin/bash cd /pstools/85419/jre/bin java -Xms1024M -Xmx1024M -Dhttps.protocols=TLSv1.2 -Djdk.tls.client.protocols=TLSv1.2 -jar /app1/nohr/soft/85419/gucq1/
password=tryme
shell脚本需要由用户gucq1运行
shell脚本类似于
#!/bin/bash
cd /pstools/85419/jre/bin
java -Xms1024M -Xmx1024M -Dhttps.protocols=TLSv1.2 -Djdk.tls.client.protocols=TLSv1.2 -jar /app1/nohr/soft/85419/gucq1/cust/classes/SVC_TestS.jar
我需要使用不同的id(gucq1)运行此脚本,而不是使用(autoid)登录
我不想使用SUDO,因为我没有访问它的权限。
如果更改/etc/pam.d/su
,则可以使用
su gucq1 -c <command>
su gucq1-c
无需提示输入密码。虽然我不推荐使用SUDO,但您可以这样使用SUDO
echo "mypassword" | sudo -S ./somescript ;
问候 如果OP没有sudo访问权限,那么期望他们写入PAM配置是否合理?我假设他没有安装sudo实用程序,而不是没有root访问权限。是这个问题的超集。那里的OP接受了一个答案,这个答案没有明确涵盖你的方面,但其他答案确实满足了你的需求。也就是说,从安全角度来看,您永远不应该这样做。更安全的做法是生成一个SSH密钥对,并在
gucq1/.SSH
中安装一个authorized_keys
条目,允许该密钥只运行一个特定脚本——这样,如果密钥被盗,用户只能以gucq1
的身份运行该脚本,无法完全控制该帐户。如果您拥有password.txt
和访问su
,您可以访问sudo
。利用它。@chepner,只有当OP可以su-to-root时才可以;他们在向另一个用户提供信息。但这确实让他们可以设置授权密钥
。显然,我忘记了su
是如何工作的