Python:如何在/ bin /文件夹中复制文件

时间:2012-04-30 15:20:30

标签: python copy system-administration

我想在Ubuntu的/ usr / bin文件夹中放置一个特殊文件。基本上我正在尝试在python中编写一个可以完成这项工作的设置文件。

但是需要管理权限来完成这项工作,如何为我的设置提供这些权限(前提是我有密码并可以在我的程序中使用它)?

2 个答案:

答案 0 :(得分:1)

您需要使用升级的权限运行程序。在Ubuntu下,这通常使用sudo命令完成,该命令将提示用户输入密码。

答案 1 :(得分:0)

你不能只升级alredy运行脚本的权限(好吧,除非你使用一些本地漏洞)。

最好的方法是遵循@ Lattyware的建议,并强制用户使用root priveleges(通过sudo或任何其他方式)运行脚本。这对安装人员来说非常常见。

但是,如果您真的需要中途升级权限(我无法想象为什么),您可以执行以下操作:

import os
cpstr = 'echo %(pass)s | sudo -S cp "%(from)s" "%(to)s"'
os.system(cpstr % {'pass':'userpassword', 'from':'./build/bin/myapp', 'to':'/bin/myapp'})