Come aggiornare Python 2.7 a 3.6 nel mio Red Hat Linux Server
Non è possibile aggiornare da python-2.7 a python -3.6 direttamente in RHEL 7.
Tuttavia, presumo che abbiate un abbonamento valido e che abbiate registrato il vostro sistema nel portale clienti Red Hat. Se sì, potete abilitare il repository Red Hat Software Collections e installare rh-python36 per i requisiti della vostra applicazione/progetto.
Il sistema base python 2.7 è presente con /usr/bin/python tuttavia i pacchetti con Software Collections sono presenti in /opt. Here, let me give you a small demo:
- -sh-4.2# which python
- /usr/bin/python
- -sh-4.2# rpm -qf /usr/bin/python
- python-2.7.5-68.el7.x86_64
- -sh-4.2# yum install rh-python36
- …. [Truncated]
- Loaded plugins: product-id, search-disabled-repos, subscription-manager, tsflags
- Resolving Dependencies
- --> Running transaction check
- ---> Package rh-python36.x86_64 0:2.0-1.el7 will be installed
- …….
- Complete!
- -sh-4.2# scl enable rh-python36 bash
- [root@example ~]# python
- Python 3.6.3 (default, Jan 9 2018, 10:19:07)
- [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux
- Type "help", "copyright", "credits" or "license" for more information.
- >>>
Lets recap on the above.
When I used scl enable command, I made a permanent entry for the software collection to persist even after a system reboot.
If you check the system, both the python2.7 and python 3.6 are present in the system:
- [root@example ~]# python
- python python2.7 python3.6 python3.6m python3.6m-x86_64-config python-config
- python2 python3 python3.6-config python3.6m-config python3-config
The only difference now being that default will be python-3.6 instead of python2.7
It is recommended to leave python2.7 untouched as all base system libraries point to this one. Tuttavia, puoi andare avanti e usare python3.6 per ulteriori procedure.
Se hai altre domande, ti raccomando di metterti in contatto con il supporto Red Hat :)
Si prega di ignorare eventuali errori grammaticali e perdonarmi perché questa è la mia prima risposta :)
Pace!