🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Ansible

Ansibleは、Python で書かれたサーバーの設定を管理するための 構成管理ツールです。

pip

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

Q&A

1回答

3667閲覧

ansible でpipのシンボリックリンクが突如作れなくなった

tob

総合スコア16

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Ansible

Ansibleは、Python で書かれたサーバーの設定を管理するための 構成管理ツールです。

pip

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

0グッド

1クリップ

投稿2019/11/07 08:39

以前からデプロイ作業の一部としてpython3.6とpipのインストールを
ansibleのプレイブックで以下のようにタスク定義して実行していたのですが、
その後pip3のシンボリックリンクを作るところでエラーが突如出るようになってしまいました。

"src file does not exist, use "force=yes" if you really want to create the link: /usr/local/bin/pip3"

原因がわかる方いらっしゃいましたらご教示願えますでしょうか?

yml

1# tasks file for python3 2- name: install python3.6 3 package: 4 name: python36 5 state: present 6 7- name: install pip3.6 8 command: python3.6 -m ensurepip 9 become: True 10 become_method: sudo 11 12- name: install python3 development library (need Python.h) 13 package: 14 name: "python36-devel" 15 state: present 16 17- name: symbolic link python3 18 file: src=/usr/bin/python3.6 dest=/usr/bin/python3 owner=root group=root state=link 19 20- name: symbolic link pip3 21 file: src=/usr/local/bin/pip3 dest=/usr/bin/pip3 owner=root group=root state=link

Log

1 2PLAY [node] ********************************************************************************************************************************************* 3 4TASK [Gathering Facts] ********************************************************************************************************************************** 5ok: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 6 7TASK [infrastructure/instance/ntp : set the timezone] *************************************************************************************************** 8changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 9 10TASK [infrastructure/instance/ntp : install ntp] ******************************************************************************************************** 11changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 12 13TASK [infrastructure/instance/ntp : start and enable ntp server] **************************************************************************************** 14changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 15 16TASK [infrastructure/instance/httpd : install httpd] **************************************************************************************************** 17changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 18 19TASK [infrastructure/instance/httpd : start and enable httpd] ******************************************************************************************* 20changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 21 22TASK [epel : enable epel] ******************************************************************************************************************************* 23changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 24 25TASK [python3 : install python3.6] ********************************************************************************************************************** 26changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 27 28TASK [python3 : install pip3.6] ************************************************************************************************************************* 29changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 30 31TASK [python3 : install python3 development library (need Python.h)] ************************************************************************************ 32changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 33 34TASK [python3 : symbolic link python3] ****************************************************************************************************************** 35changed: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com] 36 37TASK [python3 : symbolic link pip3] ********************************************************************************************************************* 38fatal: [ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com]: FAILED! => {"changed": false, "gid": 0, "group": "root", "mode": "0755", "msg": "src file does not exist, use \"force=yes\" if you really want to create the link: /usr/local/bin/pip3", "owner": "root", "path": "/usr/bin/pip3", "secontext": "system_u:object_r:bin_t:s0", "size": 407, "src": "/usr/local/bin/pip3", "state": "file", "uid": 0} 39 to retry, use: --limit @/home/ec2-user/environment/hon_pro_191107/SimilarChartSearch/SimilarChartSearch/Env/infra/scs_ansible.retry 40 41PLAY RECAP ********************************************************************************************************************************************** 42ec2-xx-xx-xx-xx.ap-northeast-1.compute.amazonaws.com : ok=11 changed=10 unreachable=0 failed=1

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

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

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

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

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

guest

回答1

0

/usr/local/bin/pip3 が削除されてしまったのではないでしょうか。ls /usr/local/bin/pip3 とした結果はどうなりますか?

投稿2019/11/07 14:08

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

tob

2019/11/07 23:34

たしかに /usr/local/bin/pip3 がありませんでした… pip3のデフォルトインストール先が以前と変わってしまったのでしょうか
退会済みユーザー

退会済みユーザー

2019/11/08 01:17

`which pip3` とすると結果はどうなりますでしょうか。
tob

2019/11/08 06:20

/usr/bin/pip3でした・・・。 verも古いので、今回のエラー箇所の後に実行される予定の 「python3.6 -m ensurepip」コマンドによるアップグレードを先に行なってから 再度whichすると、/usr/local/bin/pip3になりました。 しかしその後、再度、 - name: symbolic link pip3 file: src=/usr/local/bin/pip3 dest=/usr/bin/pip3 owner=root group=root state=link を走らせると、今度は、 "refusing to convert from file to symlink for /usr/bin/pip3" というエラーに。 きっとアップグレード前にwhichでヒットした/usr/bin/pip3がいるからだと思い、 file: path=/usr/bin/pip3 state=absent で削除してから再度シンボリックリンクを試したところ、成功しました。 ひとまず問題は解消しました。ありがとうございました。 これまで存在していなかった/usr/bin/pip3がいつ現れたのか。。疑問です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問