AIX上にawscliをインストールする記事を見つけ、もしやpase環境にもインストールできるのは?と思い実施してみました。
検証した環境
バージョン | 備考 | |
---|---|---|
OS | 7.3 | |
Python | 2.7.13 | |
pip | 20.1.1 | |
groff | 1.22.2 | helpが見たい時に必要です。 |
SSH接続で作業をしています。なお、環境についてアップグレードが必要になる場合がありますが自己責任でお願いします。
pipのアップグレード
もともとのバージョンが9.0.1で、yum infoで確認しても9.0.1です。(2020年6月現在)
このバージョンのままで作業するとcliのインストールに失敗したため、アップグレードをしました。
> pip install --upgrade pip
> pip -V
pip 20.1.1 from /QOpenSys/QIBM/ProdData/OPS/Python2.7/lib/python2.7/site-packages/pip (python 2.7)
指定のフォルダにaws cliをインストールする
ここでは /home/ymurata/awscli にインストールしてみます。
> pwd
/home/ymurata
> mkdir awscli
> export PYTHONUSERBASE=/home/ymurata/awscli
> pip install --user awscli
pip showで確認した、Locationを控えておいてください。
> pip show awscli
Name: awscli
Version: 1.18.81
Summary: Universal Command Line Environment for AWS.
Home-page: http://aws.amazon.com/cli/
Author: Amazon Web Services
Author-email: UNKNOWN
License: Apache License 2.0
Location: /home/ymurata/awscli/lib/python2.7/site-packages
Requires: botocore, PyYAML, docutils, rsa, colorama, s3transfer
Required-by:
動かす
環境変数PYTHONPATHが必要です。
> export PYTHONPATH="/home/ymurata/awscli/lib/python2.7/site-packages"
> awscli/bin/aws --version
aws-cli/1.18.81 Python/2.7.13 OS400/3 botocore/1.17.4
>awscli/bin/aws help
Could not find executable named "groff"
s3にアップロードをしてみましたが、上手く動きました!
groffをインストールする
/opt/freeware/bin/に存在しているかもしれません。無ければ、以下の手順で。RPMでインストールしました。
このページから groff-1.22.2-1.aix5.1.ppc.rpm をダウンロードし、適当なifsのフォルダにアップロードします。(ここでは/home/ymurata/download)
環境変数のセットは、各環境に合わせてください。LIBPATHは必要かどうか微妙ですが念のためセットしました。
> export PATH=$PATH:/QOpenSys/usr/bin:/QOpenSys/usr/sbin:/opt/freeware/bin
> export LIBPATH=/QOpenSys/usr/lib:/opt/freeware/lib
> cd download
> rpm --ignoreos --ignorearch --nodeps --replacepkgs -hUv groff-1.22.2-1.aix5.1.ppc.rpm
> groff -version
GNU groff version 1.22.2
Copyright (C) 2013 Free Software Foundation, Inc.
GNU groff comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of groff and its subprograms
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.
called subprograms:
GNU eqn (groff) version 1.22.2
GNU troff (groff) version 1.22.2
> cd ..
> awscli/bin/aws help
AWS() AWS()
NAME
aws -
DESCRIPTION
The AWS Command Line Interface is a unified tool to manage your AWS
services.
:
:
遭遇したエラー
> aws help
Traceback (most recent call last):
File "./aws", line 19, in <module>
import awscli.clidriver
ImportError: No module named awscli.clidriver
このエラーが出ましたが、PYTHONPATHを設定することで解決しました。
実行についてまとめると
- 実行するのに必要な環境変数は、PYTHONPATH・PYTHONUSERBASEが必要
- helpが見たい場合はgroffが存在しているフォルダのPATHを通す