質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pip

pipとは、Pythonを用いて書かれているパッケージソフトのインストールや管理を行うためのパッケージマネジメントシステムです。pipを使う主なメリットは、コマンドラインインターフェースにて容易にPythonパッケージソフトをインストール可能だという点です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

5134閲覧

Ubuntuでpipを実行するとエラーになる

nok123

総合スコア11

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

pip

pipとは、Pythonを用いて書かれているパッケージソフトのインストールや管理を行うためのパッケージマネジメントシステムです。pipを使う主なメリットは、コマンドラインインターフェースにて容易にPythonパッケージソフトをインストール可能だという点です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2021/02/06 09:53

編集2021/02/06 10:42
概要

Ubuntuにてaptでインストールしたpython-pipをpipコマンドでアップグレードしたら環境が壊れました。
aptのremoveでpipをアンインストールしても、pipコマンドが実行できてしまうため、
いったんpipを完全にアンインストールしたいです。何か方法はないでしょうか。

きっかけ

awsコマンドでエラーが出るようになり、バックアップのコマンドが失敗していることに気づきました。
(いつからエラーが出るようになったかは不明)

aws --version Traceback (most recent call last): File "/usr/local/bin/aws", line 19, in <module> import awscli.clidriver File "/usr/local/lib/python2.7/dist-packages/awscli/clidriver.py", line 26, in <module> from awscli.formatter import get_formatter File "/usr/local/lib/python2.7/dist-packages/awscli/formatter.py", line 19, in <module> from awscli.table import MultiTable, Styler, ColorizedStyler File "/usr/local/lib/python2.7/dist-packages/awscli/table.py", line 18, in <module> import colorama ImportError: No module named colorama
awscliのアップグレード

そこでpipでアップグレードを行いました。

>sudo pip install awscli --upgrade --user =省略= Successfully installed PyYAML-3.11 awscli-1.11.34 botocore-1.4.91 colorama docutils-0.13.1 futures-3.0.5 jmespath-0.9.0 pyasn1-0.1.9 python-dateutil-2.6.0 rsa-3.4.2 s3transfer-0.1.10 six-1.10.0 urllib3-1.13.1 You are using pip version 8.1.1, however version 21.0.1 is available. You should consider upgrading via the 'pip install --upgrade pip' command.
pipのアップグレード

awsコマンドのエラーは変わらなかったため、アップグレードのメッセージの通りpipのアップグレードを行いました。

>pip install --upgrade pip =省略= Successfully built pip

コマンド実行は成功したものの、これを行ったことによりpipコマンドで下記のエラーが出るようになってしまいました。

>pip Traceback (most recent call last): File "/usr/local/bin/pip", line 7, in <module> from pip._internal.cli.main import main File "/usr/local/lib/python2.7/dist-packages/pip/_internal/cli/main.py", line 60 sys.stderr.write(f"ERROR: {exc}") ^ SyntaxError: invalid syntax
試したこと

python-pipのアンインストールのため下記コマンドを実行した。
この結果/usr/bin/pipは削除されたものの、/usr/local/bin/pipは残っている。

>sudo apt --purge remove python-pip >sudo apt autoremove

完全に削除したいので、下記コマンドを実行したが、pipコマンドが通らない。

>python -m pip uninstall pip Traceback (most recent call last): File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main "__main__", fname, loader, pkg_name) File "/usr/lib/python2.7/runpy.py", line 72, in _run_code exec code in run_globals File "/usr/local/lib/python2.7/dist-packages/pip/__main__.py", line 21, in <module> from pip._internal.cli.main import main as _main File "/usr/local/lib/python2.7/dist-packages/pip/_internal/cli/main.py", line 60 sys.stderr.write(f"ERROR: {exc}") ^ SyntaxError: invalid syntax
環境

Ubuntu 16.04.7 LTS
Python 2.7.12

参考にしたサイト

https://oji-cloud.net/2019/12/11/post-3734/
https://mem-archive.com/2018/10/28/post-996/
https://laboradian.com/cannot-import-name-main-when-upgrading-pip/

少しでも分かることがあれば教えてください。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

meg_

2021/02/06 10:30

python2.7をお使いなのですか?
ppaul

2021/02/06 10:33

python -Vで表示されるバージョンを示してください。
nok123

2021/02/06 10:50

はい、python2.7を使用しています。 環境にバージョン(Python 2.7.12)を追記しました。
nok123

2021/02/06 11:34

コメントありがとうございます。 「apt で pip を導入」した後で、「pip自身 で pip を更新」するということをしているので、 https://laboradian.com/cannot-import-name-main-when-upgrading-pip/ こちらと同じ原因かと思われます。 ただ、「pip自身 で pip を更新」をしてしまって発生しているエラーを解消する術が上記を読んでもわかりませんでした。。
meg_

2021/02/06 12:12

> この結果/usr/bin/pipは削除されたものの、/usr/local/bin/pipは残っている。 pip -Vとかwhich pipで「pip install --upgrade pip」でインストールしたpipが表示される状態でしょうか? そうであればpathから削除するのはどうでしょうか? 不要でありどうしても削除したいなら直接コマンドで消せば良いかと思いますし、あっても問題ないのであればそのまま残しておいても良いかと思います。(python2.7のことは詳しくないですし、質問者さんがどのコマンドを実行して、どのパスに何をインストール&アンインストールしたのか詳細が分からないので自己責任でお願いします。)
nok123

2021/02/07 10:12

meg様 助言ありがとうございます。 確かに、不要なファイルを削除してしまえば良いですね。 いったんすべてのpip関連のファイルを削除してみました。 その後、aptでインストールしたpipは今後もpipでアップグレードしないよう、気を付けます。 awscliもインストールし直し、エラーが出なくなったので実行したコマンド等は解決方法に記載しておきます。
nok123

2021/02/07 10:13

ppaul様 コメントありがとうございました。 今後このような質問をする際はバージョン情報に漏れがないよう気を付けます。
guest

回答1

0

自己解決

いったんpip、awscliを削除し、入れなおしたところエラーが発生しなくなりました。
実行したコマンドは下記の通りです。


●aptインストールしたpipのアンインストール

sudo apt --purge remove python-pip
sudo apt autoremove

●不要なpip関連のライブラリと実行ファイル削除

sudo rm -rf /usr/local/lib/python2.7/
sudo rm -rf /usr/local/bin/pip
sudo rm -rf /usr/local/bin/pip2
sudo rm -rf /usr/local/bin/pip2.7

●pip再インストール

sudo apt install python-pip

●pipコマンド確認

pip list


●awscliアンインストール

sudo rm /usr/local/bin/aws
sudo rm /usr/local/bin/aws_completer
sudo rm -rf /usr/local/aws-cli

●awscli再インストール

curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip"
unzip awscli-bundle.zip
sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

●awsコマンド確認

aws --version

aws-cli/1.19.3 Python/2.7.12 Linux/3.13.0-61-generic botocore/1.20.3

投稿2021/02/07 10:14

nok123

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問