[LINUX] Installationsverfahren für Python und Ansible mit einer bestimmten Version

Überblick

In diesem Artikel werden die Schritte zum Installieren von Python und Ansible unter Linux unter Linux erläutert. Geben Sie eine bestimmte Version an, installieren Sie Python und installieren Sie Ansible in Verbindung mit diesem Python.

Verfahren

Verwenden Sie Amazon EC2 von AWS. Das verwendete Betriebssystem ist "Red Hat Enterprise Linux 8".

① Installation der erforderlichen Pakete
sudo yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel libffi-devel perl-ExtUtils-MakeMaker wget gcc automake autoconf libtool make

Wenn "Vollständig!" Im Standardausgabeergebnis wie unten gezeigt angezeigt wird, ist dies erfolgreich.

Last metadata expiration check: 0:00:06 ago on Thu 14 May 2020 01:21:43 AM UTC.
Dependencies resolved.
========================================================================================================================================================================
 Package                                        Architecture              Version                                   Repository                                     Size
========================================================================================================================================================================
Installing:
 autoconf                                       noarch                    2.69-27.el8                               rhel-8-appstream-rhui-rpms                    710 k
~ Ausgelassen ~
Complete!
② Verzeichnis verschieben
cd /usr/local/src/
③ Git herunterladen
sudo wget https://www.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz

Wenn die Standardausgabeergebnisse wie folgt sind, ist der Git-Download erfolgreich.

--2020-05-14 02:40:01--  https://www.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz
Resolving www.kernel.org (www.kernel.org)... 147.75.46.191, 2604:1380:4080:c00::1
Connecting to www.kernel.org (www.kernel.org)|147.75.46.191|:443... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz [following]
--2020-05-14 02:40:01--  https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.26.2.tar.gz
Resolving mirrors.edge.kernel.org (mirrors.edge.kernel.org)... 147.75.95.133, 2604:1380:3000:1500::1
Connecting to mirrors.edge.kernel.org (mirrors.edge.kernel.org)|147.75.95.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9282064 (8.9M) [application/x-gzip]
Saving to: ‘git-2.26.2.tar.gz’

git-2.26.2.tar.gz                         100%[=====================================================================================>]   8.85M  10.9MB/s    in 0.8s

2020-05-14 02:40:02 (10.9 MB/s) - ‘git-2.26.2.tar.gz’ saved [9282064/9282064]

④ Abtauen
sudo tar xzvf git-2.26.2.tar.gz

Wenn das erweiterte Verzeichnis oder die erweiterte Datei wie unten gezeigt im Standardausgabeergebnis angezeigt wird, ist die Extraktion erfolgreich.

git-2.26.2/
git-2.26.2/.cirrus.yml
git-2.26.2/.clang-format
git-2.26.2/.editorconfig
git-2.26.2/.gitattributes
git-2.26.2/.github/
git-2.26.2/.github/CONTRIBUTING.md
git-2.26.2/.github/PULL_REQUEST_TEMPLATE.md
~ Ausgelassen ~
⑤ Verzeichnis verschieben
cd git-2.26.2
⑥ Kompilieren
sudo make prefix=/usr/local all

Wenn die folgende Anzeige dem Standardausgabeergebnis folgt, ist die Kompilierung erfolgreich.

GIT_VERSION = 2.26.2
    * new build flags
    CC fuzz-commit-graph.o
    CC fuzz-pack-headers.o
    CC fuzz-pack-idx.o
    CC credential-store.o
    * new link flags
    CC common-main.o
~ Ausgelassen ~
⑦ Installieren Sie die kompilierte Version
sudo make prefix=/usr/local install

Wenn die folgende Anzeige der Standardausgabe folgt, wurde die kompilierte Version erfolgreich installiert.

    SUBDIR git-gui
    SUBDIR gitk-git
    SUBDIR templates
install -d -m 755 '/usr/local/bin'
install -d -m 755 '/usr/local/libexec/git-core'
install   git-credential-store git-daemon git-fast-import git-http-backend git-imap-send git-sh-i18n--envsubst git-shell git-remote-testsvn git-http-fetch git-http-push git-credential-cache git-credential-cache--daemon git-remote-http git-remote-https git-remote-ftp git-remote-ftps git-bisect git-difftool--helper git-filter-branch git-merge-octopus git-merge-one-file git-merge-resolve git-mergetool git-quiltimport git-legacy-stash git-request-pull git-submodule git-web--browse git-add--interactive git-archimport git-cvsexportcommit git-cvsimport git-cvsserver git-send-email git-svn git-p4 git-instaweb '/usr/local/libexec/git-core'
install -m 644  git-mergetool--lib git-parse-remote git-rebase--preserve-merges git-sh-setup git-sh-i18n '/usr/local/libexec/git-core'
install git git-upload-pack git-receive-pack git-upload-archive git-shell git-cvsserver '/usr/local/bin'
~ Ausgelassen ~
⑧ Reflektieren Sie die Einstellungen in / etc / profile
source /etc/profile
⑨ Replik des Repositorys
git clone https://github.com/pyenv/pyenv.git ~/.pyenv

Wenn die folgende Standardausgabe angezeigt wird, ist die Repository-Replikation erfolgreich.

Cloning into '/home/ec2-user/.pyenv'...
remote: Enumerating objects: 6, done.
remote: Counting objects: 100% (6/6), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 18005 (delta 0), reused 2 (delta 0), pack-reused 17999
Receiving objects: 100% (18005/18005), 3.57 MiB | 2.21 MiB/s, done.
Resolving deltas: 100% (12255/12255), done.
⑩ Bearbeiten Sie ~ / .bash_profile
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
⑪ Neustart
⑫ Python-Installation (spezifische Version angegeben)
pyenv install 3.8.2

Wenn Sie die folgende Standardausgabe sehen, ist die Python-Installation erfolgreich.

Downloading Python-3.8.2.tar.xz...
-> https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tar.xz
Installing Python-3.8.2...
WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib?
WARNING: The Python readline extension was not compiled. Missing the GNU readline lib?
WARNING: The Python sqlite3 extension was not compiled. Missing the SQLite3 lib?
Installed Python-3.8.2 to /home/ec2-user/.pyenv/versions/3.8.2

Wenn "Installiertes Python-3.8.2 unter /home/ec2-user/.pyenv/versions/3.8.2" angezeigt wird, ist dies erfolgreich.

⑬ Wechseln Sie die Python-Umgebung zu einer bestimmten Version
pyenv global 3.8.2
⑭ Ansible Installation
pip3 install ansible

Wie unten gezeigt, "MarkupSafe-1.1.1 PyYAML-5.3.1 ansible-2.9.9 cffi-1.14.0 cryptography-2.9.2 jinja2-2.11.2 pycparser-2.20 six-1.14" in der dritten Zeile von unten erfolgreich installiert. Wenn ".0" angezeigt wird, ist dies erfolgreich.

Collecting ansible
  Downloading https://files.pythonhosted.org/packages/00/5d/e10b83e0e6056dbd5b4809b451a191395175a57e3175ce04e35d9c5fc2a0/ansible-2.9.9.tar.gz (14.2MB)
     |????????????????????????????????| 14.2MB 14.9MB/s
Collecting jinja2 (from ansible)
  Downloading https://files.pythonhosted.org/packages/30/9e/f663a2aa66a09d838042ae1a2c5659828bb9b41ea3a6efa20a20fd92b121/Jinja2-2.11.2-py2.py3-none-any.whl (125kB)
     |????????????????????????????????| 133kB 56.9MB/s
Collecting PyYAML (from ansible)
  Downloading https://files.pythonhosted.org/packages/64/c2/b80047c7ac2478f9501676c988a5411ed5572f35d1beff9cae07d321512c/PyYAML-5.3.1.tar.gz (269kB)
     |????????????????????????????????| 276kB 58.8MB/s
Collecting cryptography (from ansible)
  Downloading https://files.pythonhosted.org/packages/3c/04/686efee2dcdd25aecf357992e7d9362f443eb182ecd623f882bc9f7a6bba/cryptography-2.9.2-cp35-abi3-manylinux2010_x86_64.whl (2.7MB)
     |????????????????????????????????| 2.7MB 49.3MB/s
Collecting MarkupSafe>=0.23 (from jinja2->ansible)
  Downloading https://files.pythonhosted.org/packages/4b/20/f6d7648c81cb84815d0be935d5c74cd1cc0239e43eadb1a61062d34b6543/MarkupSafe-1.1.1-cp38-cp38-manylinux1_x86_64.whl
Collecting six>=1.4.1 (from cryptography->ansible)
  Downloading https://files.pythonhosted.org/packages/65/eb/1f97cb97bfc2390a276969c6fae16075da282f5058082d4cb10c6c5c1dba/six-1.14.0-py2.py3-none-any.whl
Collecting cffi!=1.11.3,>=1.8 (from cryptography->ansible)
  Downloading https://files.pythonhosted.org/packages/49/de/1ab40dd857172da4accad610c25badfdfc23ec7e1bbcc6f9212cfcb3419d/cffi-1.14.0-cp38-cp38-manylinux1_x86_64.whl (409kB)
     |????????????????????????????????| 409kB 55.1MB/s
Collecting pycparser (from cffi!=1.11.3,>=1.8->cryptography->ansible)
  Downloading https://files.pythonhosted.org/packages/ae/e7/d9c3a176ca4b02024debf82342dab36efadfc5776f9c8db077e8f6e71821/pycparser-2.20-py2.py3-none-any.whl (112kB)
     |????????????????????????????????| 112kB 59.4MB/s
Installing collected packages: MarkupSafe, jinja2, PyYAML, six, pycparser, cffi, cryptography, ansible
  Running setup.py install for PyYAML ... done
  Running setup.py install for ansible ... done
Successfully installed MarkupSafe-1.1.1 PyYAML-5.3.1 ansible-2.9.9 cffi-1.14.0 cryptography-2.9.2 jinja2-2.11.2 pycparser-2.20 six-1.14.0
WARNING: You are using pip version 19.2.3, however version 20.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

Das obige Verfahren ist die Installation von Ansible in Verbindung mit Python nach der Installation einer bestimmten Version von Python. Wenn Sie eine andere Version von Python installieren und Ansible in Verbindung mit diesem Python installieren möchten, führen Sie ⑫ bis ⑭ erneut aus.

Recommended Posts

Installationsverfahren für Python und Ansible mit einer bestimmten Version
Vorgehensweise zum Erstellen eines mit Python erstellten LineBot
Installationsverfahren für Python 3.6 [für Windows]
Erkennen Sie mit Python Objekte einer bestimmten Farbe und Größe
Bibliothek zur Angabe eines Nameservers in Python und Dig
Erstellen Sie eine gestreifte Illusion mit Gammakorrektur für Python3 und openCV3
Batch-Download-Bilder von einer bestimmten URL mit Python Modified-Version
Python-Installation und Paketverwaltung mit pip
Ein Memo mit Python2.7 und Python3 in CentOS
[GCP] Verfahren zum Erstellen einer Webanwendung mit Cloud-Funktionen (Python + Flask)
Holen Sie sich ein Ticket für einen Themenpark mit Python
Erstellen einer Python-Umgebung mit virtualenv und direnv
Erstellen Sie mit Minette für Python einen LINE BOT
Erstellen Sie eine Python-Umgebung mit ansible auf centos6
Starten Sie einen Webserver mit Python und Flask
[Version 2020] Entwicklungsverfahren für Personal Crawler und seine Vorsichtsmaßnahmen
Befehle zum Erstellen einer Python3-Umgebung mit virtualenv
Verfahren zum Erstellen einer Python-Isolationsumgebung (venv-Umgebung)
Überprüfen Sie die Version mit Python
Prozedur zum Laden von MNIST mit Python und zur Ausgabe an png
Ich habe pipenv und asdf für die Python-Versionskontrolle ausprobiert
Erstellen einer R- und Python Docker-Arbeitsumgebung
Erstellen Sie eine virtuelle Python-Umgebung mit virtualenv und virtualenvwrapper
Spezifischer Beispielcode für die Arbeit mit SQLite3 in Python
C-Sprache, Java, Python-Benchmarks mit Primfaktorisierung
Erstellen Sie eine Python-Entwicklungsumgebung mit Vagrant + Ansible + Fabric
Versuchen Sie, ein einfaches Spiel mit Python 3 und iPhone zu erstellen
LiNGAM (ICA-Version) mit mathematischen Formeln und Python zu verstehen
Ich habe versucht, LINE BOT mit Python und Heroku zu machen
Vorgehensweise zum Erstellen einer CDK-Umgebung unter Windows (Python)
Erstellen Sie eine virtuelle Python-Umgebung mit virtualenv und virtualenvwrapper
Erstellen Sie in Docker eine Ebene für AWS Lambda Python
Versionsverwaltung von Node, Ruby und Python mit anyenv
Automatisieren Sie das Entfernen des Hintergrunds für die neuesten Porträts in einem Verzeichnis mit Python und API
[Erstellen einer CI-Umgebung in 2 Stunden] Verfahren zum Erstellen eines Python-Webservers mit CircleCI und zum Bestehen eines HTTP-Kommunikationstests
Ver- und Entschlüsselung mit Python
Offline-Installationsverfahren für openpyxl
Installationsverfahren für Python CMS Mezzanine
Python und Hardware-Verwenden von RS232C mit Python-
Installationsverfahren für CentOS 8 (neueste Version)
Empfehlung von Django, Bachstelze ~ Warum eine Website mit Python entwickeln ~
Verknüpfen Sie Python Enum mit einer Funktion, um es aufrufbar zu machen
Erstellen Sie ein untergeordnetes Konto für die Verbindung mit Stripe in Python
[Python] Erstellen Sie eine Datums- und Zeitliste für einen bestimmten Zeitraum
Experimentieren Sie mit Python, um ein PDF für Selbstversorger für Kindle zu erstellen
Lassen Sie uns ein PRML-Diagramm mit Python, Numpy und matplotlib erstellen.
Python-Installation und grundlegende Grammatik
OpenCV3-Installation für Python3 @macOS
Verfahren zur Erstellung der Umgebung für diejenigen, die mit dem Python-Versionsverwaltungssystem nicht vertraut sind
Rufen Sie die Excel-Liste rekursiv in einem bestimmten Ordner mit Python ab und schreiben Sie sie in Excel.
Analysieren Sie Aktien mit Python und suchen Sie nach günstigen Handelsphasen
Lösen mit Ruby, Perl, Java und Python AtCoder ATC 002 A.
Versuchen Sie, ein Unterfenster mit PyQt5 und Python zu öffnen
Ein Beispiel zum Zeichnen von Punkten mit PIL (Python Imaging Library).
Erstellen Sie einen Twitter-BOT mit dem GoogleAppEngine SDK für Python
Installation der Python 3-Serie für Mac
Machen Sie eine Lotterie mit Python
Hasch mit Python und entkomme dem Ego eines bestimmten Ministers
Python mit Pyenv und Venv
Holen Sie sich eine Liste der CloudWatch-Metriken und eine Entsprechungstabelle der Einheiteneinheiten mit Python boto