3.3. curl で ISO イメージのダウンロード

curl ツールを使用すると、コマンドラインを使用して Web から必要なファイルを取得し、ローカルに保存するか、必要に応じて別のプログラムにパイプできます。本セクションでは、curl コマンドを使用してインストールイメージをダウンロードする方法を説明します。

前提条件

  • curl パッケージおよび jq パッケージがインストールされている。

    Linux ディストリビューションで yum または apt を使用していない場合、もしくは Linux を使用していない場合は、curl の Web サイト から、最適なソフトウェアパッケージをダウンロードします。

  • Red Hat API トークン から生成したオフライントークンがある。
  • 製品のダウンロード からダウンロードするファイルのチェックサムがある。

手順

  1. 以下の内容で bash ファイルを作成します。

    #!/bin/bash
    # set the offline token and checksum parameters
    offline_token="<offline_token>"
    checksum=<checksum>
    
    # get an access token
    access_token=$(curl https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token -d grant_type=refresh_token -d client_id=rhsm-api -d refresh_token=$offline_token | jq -r '.access_token')
    
    # get the filename and download url
    image=$(curl -H "Authorization: Bearer $access_token" "https://api.access.redhat.com/management/v1/images/$checksum/download")
    filename=$(echo $image | jq -r .body.filename)
    url=$(echo $image | jq -r .body.href)
    
    # download the file
    curl $url -o $filename

    上記のテキストで、<offline_token> を Red Hat API ポータルから収集したトークンに置き換え、<checksum>製品ダウンロード ページから取得したチェックサム値に置き換えます。

  2. このファイルを実行可能な状態にします。

    $ chmod u+x FILEPATH/FILENAME.sh
  3. ターミナルウィンドウを開き、bash ファイルを実行します。

    $ ./FILEPATH/FILENAME.sh
警告

ネットワークのベストプラクティスと一貫性のあるパスワード管理を使用します。

  • パスワードや認証情報をプレーンテキストに保存しないでください。
  • トークンを不正使用から安全に保護してください。