以下3行是我的shell脚本的一部分,但它正在执行第一行并正确复制文件。按顺序执行此rpm文件,我需要提示root用户。因此,我写了第二步。但它没有执行,因此我无法安装rpm文件。
aws s3 cp s3://mybucket/oracle-instantclient12.2-basiclite.rpm / home / user1 / sudo su yum -y install /home/user1/oracle-instantclient12.2-basiclite.rpm
所以,任何替代解决方案(sudo su)或告诉我如何提示root用户按顺序安装提到的rpm文件。
谢谢
您可以尝试使用sudo -s
或
sudo yum -y install /home/user1/oracle-instantclient12.2-basiclite-12.2.0.1.0-1.x86_64.rpm
第一个选项将您切换到root用户,而第二个选项允许您以root身份运行命令。
aws s3 cp s3://mybucket/oracle-instantclient12.2-basiclite.rpm / home / user1 / && sudo -i yum -y install /home/user1/oracle-instantclient12.2-basiclite.rpm
你必须在两个命令之间添加&&
(请参阅此answer)并使用sudo yum
安装:
aws s3 cp s3://mybucket/oracle-instantclient12.2-basiclite.rpm /home/user1/ && sudo yum -y install /home/user1/oracle-instantclient12.2-basiclite.rpm
sudo rpm -i /home/user1/oracle-instantclient12.2-basiclite.rpm
也应该工作。
没有其他方法可以从一个命令行运行两个命令...
你确定命令行的秒半甚至可以在远程主机上运行吗?因为我宁愿期望它以send-command为前缀(如果从本地shell而不是远程主机上运行它)。也没有指出您尝试运行命令的Linux发行版;添加相关的RPM
存储库,然后从那里安装,可能是最可靠的方法。