0

我制作了这个用于更新系统的小 Python 脚本(但还没有输入所有命令,只是想尝试一个更新命令)我的系统,但是在进入 root/超级用户模式后它行为异常。

我想知道是否有人可以指出问题/错误。

import os

print "\t Entering Upgrade Mode "

if os.system("su")==1:
      print "passed"
      os.system("apt-get update")
      os.system(exit)
else:
      print "failed"
4

1 回答 1

2

我怀疑调用su是问题所在。直到您退出子外壳(在这种情况下将您从根目录中注销),调用才会退出。这意味着任何后续调用都会再次以(可能)普通用户的身份执行。

尝试以下操作:

import os

print "\t Entering Upgrade Mode "

os.system("sudo apt-get update")

或者su需要-c标志来处理后续命令,例如

su -c "echo Hello" 

您可能应该使用subprocessos.system已弃用。

于 2013-04-24T18:08:05.777 回答