Во-первых, надо явно указывать пути к ПО, которое запускаешь.
Во-вторых, желательно запускать их, находясь в соответствующих папках, а не абы откуда.
В-третьих, я бы не советовал обновлять штатный Python в Linux, т.к. на него там завязаны некоторые внутренние процессы. Пусть сам linux обновляет свои встроенные python как ему надо. После обновлений не исключены разнообразные неприятности.
Вы ставьте себе свои python-ы в отдельные папки, в разных случаях могут понадобиться разные версии, и явно их вызывайте оттуда, не трогая системный python. И для этого лучше работать в виртуальных окружениях, подгоняя каждое под свою задачу.