Ваша оболочка (вероятно, bash) имеет псевдоним, назначенный таким образом, что всякий раз, когда вы вводите python
в начале команды, он меняет его на /usr/bin/python3
. Мне трудно сказать, почему у вас есть этот псевдоним. Возможно, ваш системный администратор хочет, чтобы все использовали Python 3 вместо Python 2 по умолчанию, и это была попытка сделать это.
Ваш /usr/bin/python
является символической ссылкой на двоичный файл Python 2. Это кажется вполне нормальным; она часто встречается на многих дистрибутивах Linux (например, Debian) для python
ссылаться на Python 2, потому что Python 3 не является популярным еще недостаточно. Это не всегда так; в Arch Linux python
ссылается на Python 3.
Итак, если бы мне пришлось угадывать, я бы сказал, что менеджер пакетов вашей системы установил символическую ссылку с /usr/bin/python
на /usr/bin/python2.7
потому что его политика заключается в том, чтобы люди использовали Python 2 по умолчанию , Но кто-то еще, кто высказался по поводу настройки вашей системы, решил, что они хотят использовать Python 3 по умолчанию, поэтому они установили этот псевдоним.
Как видите, псевдоним не работает все время. Когда вы nohup python
, оболочка не раскрывает ваш псевдоним, а просто передает строку python
в качестве аргумента в команду nohup
. Затем команда nohup
должна выяснить, что означает python
, и все, что она делает, это посмотреть ваш PATH; он не знает о ваших псевдонимах оболочки. Он найдет /usr/bin/python
и запустит Python 2 для вас.
Вы можете прочитать руководство по вашей оболочке, чтобы узнать, какие файлы она запускает при запуске (например, .bashrc и тому подобное). Это поможет вам выяснить, почему ваша оболочка имеет этот псевдоним для Python 3. Посмотрите на строку, как это:
alias python=python3
Вы можете прочитать о менеджере пакетов системы, чтобы выяснить, как посмотреть, какие файлы принадлежат каким пакетам, и это может помочь вам выяснить, почему существует символическая ссылка для Python 2. Просто спросите менеджера пакетов, какому пакету принадлежит ссылка /usr/bin/python
.