page icon

Linux環境で最新のGoを簡単にインストールするスクリプト


はじめに

Go言語の最新版を効率的にインストールするための2種類のスクリプトを作成しました。一つ目のスクリプトは、Goの最新版を新規にインストールし、必要な環境設定を自動化するためのものです。このスクリプトは、Intelのx86_64アーキテクチャ(Linuxでは「linux-amd64」として知られる)とApple Siliconのarm64アーキテクチャの両方に対応しており、さまざまなプラットフォームで最新のGo言語を容易に利用できるようにします。
二つ目のスクリプトは、Go 1.16以降が既にインストールされているシステム向けです。このスクリプトは、システム上のGo環境を検出し、最新版に更新するための最適化された手順を実行します。これにより、既存のGo開発環境を最新状態に保つことが容易になります。

Go言語の最新版を新規にインストールまたは更新する

Go言語の最新版を新規にインストールするために作成したスクリプトは、Linux環境でのGoのセットアッププロセスを大幅に簡素化し、迅速化します。このスクリプトは、新規インストールだけでなく、既存のGo環境を最新版に更新する際にも使用できます。スクリプトはIntelのx86_64アーキテクチャ(linux-amd64)とApple Siliconのarm64アーキテクチャに対応しています。

スクリプトの動作概要

このスクリプトは、Go言語の最新版を自動的にダウンロードし、適切なアーキテクチャ(Intel x86_64またはApple Silicon arm64)に基づいてインストールします。スクリプトは以下のステップを実行します:
  1. 最新バージョンの自動取得: スクリプトは、Goの公式サイトから最新のバージョン番号を自動的に取得します。これにより、ユーザーは手動でバージョン番号を調べる必要がなく、常に最新版をインストールできます。
  1. アーキテクチャの自動判定: スクリプトは実行中のシステムのアーキテクチャを自動的に判定し、Intelのx86_64またはApple Siliconのarm64に適したバイナリをダウンロードします。
  1. 既存のGo環境の削除: もし既にディレクトリが存在する場合、スクリプトはそれを削除してから新しいバージョンをインストールします。これにより、古いバージョンとの衝突を防ぎます。
  1. 新規インストール: ダウンロードしたGoのアーカイブを解凍し、システムの適切な場所に配置します。
  1. 環境変数の設定: Goの実行ファイルへのパスをシステムの環境変数に追加します。これにより、任意の場所からコマンドを実行できるようになります。
 
このスクリプトは、Go言語の最新版をLinuxシステムに効率的にインストールするための強力なツールです。しかし、最適な動作を保証するためには、いくつかの重要な改善点を考慮する必要があります。
  1. 変数のクォーティング: シェルスクリプトでは変数をダブルクォートで囲むことで、意図しない単語分割やパターン展開(globbing)を防ぎます。これは特にのような変数に対して重要で、空白や特殊文字が含まれている場合に予期せぬ挙動を避けるために役立ちます。例えば、ではなくとすることで、安全かつ予測可能な挙動を確保できます。
  1. 部分一致のリスク: の使用方法において、特定のパスが既にに含まれているかを確認する際には、正確なマッチングが必要です。デリミターを使用しないと、部分一致により誤った結果が返される可能性があります。例えば、の代わりにに含まれている場合、部分一致として誤っても含まれていると判断されてしまう可能性があります。これを防ぐためには、コマンドにコロン()をデリミターとして使用することが推奨されます。
  1. セッション間での持続性: 現在のスクリプトでは、の変更を現在のシェルセッションだけでなく、将来のセッションにも持続させるように設計されています。これは、に新しいパスを追加することで実現されています。この点を明確に理解し、必要に応じてユーザーの環境に合わせて、またはの編集を検討することが重要です。

Go 1.16以降をインストール済みの場合

すでにGo 1.16以降がインストールされている場合コマンドを使用して、指定されたバージョンのGoをインストールすることができます。この方法は、Go言語の公式ツールチェーンを使用して最新版または特定のバージョンのGoを簡単かつ迅速にインストールすることを可能にします。
 
以下に紹介するスクリプトは、このコマンドを利用したインストール手順を実装しています。
 
  1. 最新バージョンの取得: スクリプトはまず、コマンドを使用してGoの公式サイトから最新のバージョン番号を取得します。これにより、常に最新のGoバージョンがインストールされることを保証します。
  1. Goのインストール: 次に、コマンドを用いて、取得した最新バージョンのGoをインストールします。ここでの重要な点は、コマンドを使用することで、Go自身のバージョン管理機能を活用し、指定されたバージョンのインストールが行われることです。
  1. バージョンの確認: インストールが完了した後、コマンドを実行して、インストールされたGoのバージョンを確認します。これにより、インストールが正常に完了したことをユーザーに確認させます。