1

AmazonのEC2サービスをセットアップしようとしていますが、問題が発生しています。

Amazon EC2 APIツールをダウンロードしました。これは、ファイル~/.ec2と一緒にフォルダーに入れました。.cert.pem

からコマンドを実行しようとすると~/.ec2/bin、エラーが発生します/Users/zmjones/.ec2/bin/ec2-cmd: /usr/bin/env: bad interpreter: Operation not permitted。これについては「/usr/ bin/envbadinterpreter」で聞いた。

これの変形を使用してDOSの行末を削除したのでmv /users/zmjones/.ec2/bin/ec2-add-keypair /users/zmjones/.ec2/bin/ec2-add-keypair.bak tr -d '\r' < /users/zmjones/.ec2/bin/ec2-add-keypair.bak > /users/zmjones/.ec2/bin/ec2-add-keypair、でいくつかのコマンドを実行しようとしましたが、~/.ec2/bin動作させることができませんでした。

パーミッション拒否エラーが発生しました。sudoを使用すると、環境変数EC2_HOMEが存在しないことを示していますが、存在することをecho $EC2_HOME示しています。これが私の~/.bash_profileです。

PATH=/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/bin:$PATH
PATH=/opt/local/sbin:/usr/local/bin:/usr/x11/bin:/usr/texbin:$PATH
PATH=/usr/local/texlive/2011/bin/x86_64-darwin:$PATH
PATH=/Library/Frameworks/EPD64.framework/Versions/Current/bin:$PATH
EC2_HOME=~/.ec2
PATH=$EC2_HOME/bin:$PATH
EC2_PRIVATE_KEY=`ls $EC2_HOME/pk-*.pem`
EC2_CERT=`ls $EC2_HOME/cert-*.pem`
JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home/

export PATH
4

2 に答える 2

2

変更したスクリプトに実行 (+x) ビットが設定されていないため、「許可が拒否されました」というエラーが発生します。

sudoこれを修正するために使用しないでください。

+x ビットを設定するだけです。

chmod +x /users/zmjones/.ec2/bin/ec2-add-keypair

(および固定行末を持つ他のスクリプトについても同じです)。

sudoうまくいかなかった理由は、デフォルトでは、あなたEC2_HOMEや他の環境変数なしで、クリーンな環境で開始されるためです。

sudoとにかく問題を修正するために使用したくない理由は、 with をsudo実行するとプログラム全体が root として実行され、システムに悪いことをする可能性があるからです。少なくとも、ローカル ディレクトリに が所有するファイルまたはサブディレクトリが作成される可能性がrootあります。後でこれらを変更または削除するには、追加の手順を実行する必要があります。最悪の場合、プログラムのバグにより、システム全体または重要な部分が失われる可能性があります。

于 2012-05-10T01:22:20.640 に答える
0

ls -al@が表示されている場合com.apple.quarantine extended attrib、ファイルは実行されません。あなたは必要になるでしょう

xattr -d com.apple.quarantine filename
于 2012-06-10T19:19:53.880 に答える