Как установить Terraform в Ubuntu


41

Я попытался установить terraform на рабочий стол Ubuntu, но получаю сообщение об ошибке:

bash: /usr/local/bin/terraform: cannot execute binary file: Exec format error"

Те же шаги работают для облачных серверов.

Ответы:


98

Шаги для установки terraform на облачный сервер Ubuntu / Ubuntu:

  1. Установить распаковать

    sudo apt-get install unzip
    
  2. Подтвердите номер последней версии на веб-сайте terraform:

    https://www.terraform.io/downloads.html
    
  3. Загрузите последнюю версию terraform (при необходимости замените номер новой версии)

    wget https://releases.hashicorp.com/terraform/0.12.7/terraform_0.12.7_linux_amd64.zip
    
  4. Распакуйте скачанный файловый архив

    unzip terraform_0.12.7_linux_amd64.zip
    
  5. Переместить исполняемый файл в каталог для поиска исполняемых файлов

    sudo mv terraform /usr/local/bin/
    
  6. Запустить его

    terraform --version 
    

4
Номер версии устарел.
Себастьян Вагнер

Обновлен URL
GNK

9
sudo install terraform /usr/local/bin/является более надежным, это обеспечивает правильность владения и прав доступа.
sj26

Что на sudo installсамом деле добавить сюда? Я спрашиваю об этом, потому что я получаю "install: not stat 'terraform': нет такого файла или каталога" при попытке запустить его, и не могу заставить его работать как задумано. Чувствуя неловкость , не используя эту команду когда - либо прежде ...
матовую

Оставьте это, просто переместите файлы, которые все. а позже проверь версию.
ГНК

9

Если вы используете Ubuntu plus snap, просто позвоните:

sudo snap install terraform

Что-то в том, как snap устанавливает интеграцию бинарных разрывов с ssh-agent. terraform работает нормально, если я устанавливаю его с привязкой, а затем вызываю двоичный файл по его полному пути /snap/terraform/216/bin/terraform apply. Но я просто использую terraform applyи позволяю PATH найти /snap/bin/terraform, двоичный файл не может использовать мой ssh-agent.
Драгхен

3
обратите внимание, что snap не всегда устанавливает последнюю версию (в настоящее время она может установить v0.11.11, тогда как последняя основная версия v0.12.5
RELW

1

Эта ошибка произошла при попытке запустить 64-битный файл exec в 32-битной системе. Проверьте свою систему:

uname -a

x86_64 или i686 означают 64- или 32-битные обычные.


1

Мой однострочник для установки последней версии:

sudo echo ; zcat <( CURRR_VER=$(curl -s https://checkpoint-api.hashicorp.com/v1/check/terraform | jq -r -M '.current_version') ; curl -q "https://releases.hashicorp.com/terraform/${CURRR_VER#?}/terraform_${CURRR_VER#?}_linux_amd64.zip" ) | sudo tee /usr/local/bin/terraform > /dev/null ; sudo chmod +x /usr/local/bin/terraform

Используя строку из https://github.com/hashicorp/terraform/issues/9803#issuecomment-257903082


0

Что касается использования Debian репозитория Terraform, вы можете установить и обновить Terraform, используя apt.

https://tjend.github.io/repo_terraform/

Так:

wget -q -O - https://tjend.github.io/repo_terraform/repo_terraform.key | sudo apt-key add -
sudo echo 'deb [arch=amd64] https://tjend.github.io/repo_terraform stable main' >> /etc/apt/sources.list.d/terraform.list
sudo apt-get update
sudo apt-get install terraform

-6
sudo apt-get install terraform

затем выполнить команду , sudo apt-get updateтоsudo apt-get upgrade

поможет вам получить подходящую версию teraform для смоделированного оборудования, которое было загружено из установки Ubuntu или любой версии Linux, установленной в вашей системе.


7
нет пакета terraform apt ....
3z33etm

2
Этот ответ неверен во многих отношениях, его следует удалить.
Маркус
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.