我制作了这个小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"
答案 0 :(得分:2)
我怀疑是su
的电话问题。在退出子shell之前,调用不会退出(在这种情况下,将您从root用户注销)。这意味着任何后续调用都会再次作为(推测)普通用户执行。
尝试以下方法:
import os
print "\t Entering Upgrade Mode "
os.system("sudo apt-get update")
或者su
需要-c
标志来处理后续命令,例如
su -c "echo Hello"
你可能应该使用subprocess
;不推荐使用os.system
。