以root身份从Python执行脚本

时间:2013-11-30 16:53:11

标签: python unix root

我正在编写一个Python实用程序,它是我为我们的软件产品编写的自动化框架的一部分。此实用程序的目标是随意安装/卸载产品...所以我有以下功能:

def uninstall(self):
    # self.root is where the software is installed.
    if os.path.exists(self.root):
        if os.path.exists(self.uninstaller):
            os.chmod(self.uninstaller, 0777)
            # remove the product installation
            retval = subprocess.call(self.uninstaller, stdin=None,
                            stdout=None, stderr=None, shell=False)
            if retval is not 0:
                "There was an error removing product"
                sys.exit(2)
        # remove the entire product directory
        shutil.rmtree(self.root)

    else:
        print "Product has already been removed"
        sys.exit(2)

软件产品本身有一个卸载程序(self.uninstaller),需要在其他工作中以root执行。对于我的linux环境,root没有密码,所以

sudo ./Uninstall.sh

这就是我所需要的一切。但是,在这种情况下,我需要从python脚本执行它...我能做些什么来实现这个目标?

0 个答案:

没有答案