web-dev-qa-db-ja.com

シンボリックリンク「python」を「python3」に変更すると問題が発生します

Ubuntu 12.04 64ビットにPython 2.7.3および3.2.3がインストールされています(デフォルトでは?)。 「python」と入力すると、2.7ではなくpython 3.2が必要です。

シンボリックリンク「python」をpython3にリンクするように変更すると、大きな問題が発生するようです。なぜですか、それを行う方法はありますか?

lrwxrwxrwx 1 root root       7 Sep 28 19:15 python -> python2
lrwxrwxrwx 1 root root       9 Jun 18 13:26 python2 -> python2.7
-rwxr-xr-x 1 root root 2993592 Apr 10 02:46 python2.7
-rwxr-xr-x 1 root root    1652 Apr 10 02:46 python2.7-config
lrwxrwxrwx 1 root root      16 Jun 18 13:26 python2-config -> python2.7-config
lrwxrwxrwx 1 root root       9 Apr 10 17:12 python3 -> python3.2
lrwxrwxrwx 1 root root      11 Apr 10 02:13 python3.2 -> python3.2mu
-rwxr-xr-x 1 root root 2949952 Apr 10 02:13 python3.2mu
lrwxrwxrwx 1 root root      11 Apr 10 17:12 python3mu -> python3.2mu
lrwxrwxrwx 1 root root      16 Jun 18 13:26 python-config -> python2.7-config

pythonをpython3にリンクしました:

Sudo ln -fs python3 python

Ubuntuはあまり反応が悪く、Variety、Spyder、Okular、Software Centerなどのほとんどのアプリケーションを実行できなくなったため、リンクは元に戻せました。

編集:
はい、マークされた重複質問の2つの答え Python 3.3へのアップグレードとDjangoのセットアップの問題 対処half私の質問の質問であり、回答を検索しようとしても質問自体は私の質問に関連していないようです。答えがその質問の下にあることに気付く人はいないでしょう。

2
hxin

yo手動でpythonアプリケーションを実行するときにpython2.7ではなくpython3を使用する場合は、次を追加します。

alias python='python3'

~/.bash_aliasesファイルに。 (過去にエイリアスを追加したかどうかによっては、ファイルが空になる場合があります。)

手動で起動したもの以外のアプリケーションは、以前と同様にpython2.7またはpython3を使用し続けます。

4
jobin

システムにPythonの2つの異なるバージョンが存在することは、ずさんなことでも偶然でもありません。

UbuntuおよびUbuntuベースのディストリビューションのアプリの多くは、Python 2.7で動作します。また、Python 3で動作するアプリケーションもあります。

Python 3は後方互換性がないため、pythonpython3にシンボリックリンクすると、多くの依存関係が解除され、多くのアプリケーションが機能しなくなります。

1
Dumitru