Python Fabric 和 Amazon EC2:询问 Sudo 密码
您知道,在 EC2 上,没有与“ubuntu”用户关联的密码。使用以下几行,如果我尝试运行:
fabdevelopment install_dir
我得到:
[ec2-46-51-132-252.eu-west-1.compute.amazonaws.com] sudo: chown -R webadmin:webadmin /var /万维网 [ec2-46-51-132-252.eu-west-1.compute.amazonaws.com] 登录密码:
我尝试将 shell=False 添加到 sudo 方法(根据 我可以阻止 Fabric 提示我输入密码吗? sudo 密码?),但它不会改变任何东西
有什么想法吗?多谢 !
def development():
env.envname = 'development'
env.user = 'ubuntu'
env.group = 'ubuntu'
env.chuser = 'webadmin'
env.chgroup = 'webadmin'
env.hosts = ['ec2-***.eu-west-1.compute.amazonaws.com']
env.envname_abriev = 'dev'
env.key_filename = '/home/xx/.ssh/xx.pem'
env.postgresql_version = '9.0'
def install_dir():
if not exists('/var/www'):
sudo('mkdir /var/www')
sudo('chown -R %s:%s /var/www' % (env.chuser, env.chgroup))
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
从 aws 下载(或创建)密钥对文件,如下所示
创建一个名为 fabfile.py 的文件
并按如下方式设置其内容:
要运行该文件,请在终端中键入 fab update。
Download (or create) a keypair file from aws as shown below
Create a file called fabfile.py
and set its contents as follows:
To run the file, type fab update in the terminal.
您需要在运行 fab 命令时指定与您的 EC2 实例关联的密钥对文件名。
用法: fab [options][:arg1,arg2=val2,host=foo,hosts='h1;h2',...] ...
选项:
You need to specify keypair file name associated with your EC2 instance while running fab command.
Usage:
fab [options] <command>[:arg1,arg2=val2,host=foo,hosts='h1;h2',...] ...
Options: