AWSのS3ストレージは主にアーカイブ向け外レージとして使用できます。ログファイルを保存しておく場合や、不要になった画像や動画ファイルなど大きな容量を要する場合にS3は保存先として最適です。今回はそのS3ストレージの作成方法とEC2インスタンスへのマウント方法を解説していきます。
AWSのストレージの詳細については「AWSが提供する3つのストレージサービス|EFS、EBS、S3」の記事を参考にしてください。

EC2インスタンスの準備
S3をマウントする場合EC2には特にS3用のセキュリティーグループを設定する必要はありません。作業用にEC2インスタンスすSSH接続するためにSSHポートのセキュリティーグループのみ付与しておけば十分です。
S3ストーレジ(バケット)の作成方法
AWS管理画面最上部の検索欄に「S3」と入力してS3のサービスページに移動します。
バケットの作成
「バケットを作成」ボタンを押下してバケットの作成画面に進みます。
- バケットタイプ
-
「汎用」を選択。
- バケット名
-
ここでは、「my-bucket」とします。
- オブジェクト所有者
-
「ACL無効(推奨)」を選択。
- このバケットのブロックパブリックアクセス設定
-
「パブリックアクセスをすべてブロック」にチェックチェックが入ったままの状態(デフォルト)を選択。
- バケットのバージョニング
-
「無効にする」(デフォルト)を選択。
- 暗号化タイプ
-
「Amazon S3 マネージドキーを使用したサーバー側の暗号化 (SSE-S3)」(デフォルト)を選択。
- バケットキー
-
「無効にする」を選択します。
これでS3のバケットストレージが作成されます。
S3ストーレージのマウント方法
マウンドディレクトリ(マウントポイント)の作成
cd /mnt/
sudo mkdir s3
AWS CLIのインストール
次項のマウントツールを使用する際は、AWS CLI(Command Line Interface)ツールがインストールされていることが前提です。次の「AWS CLIの設定方法」の記事からインストールを完了しておいてください。

マウントツール(mount-s3)のインストール
マウントツールの最新のバージョンをチェックします。
https://github.com/awslabs/mountpoint-s3/releases
x86_64のRPMのリンクを使います。2025/03/05時点での最新のバージョンは 1.15.0 となっています。
【ec2-userのホームディレクトリに移動】
cd /home/ec2-user
【rpmパッケージをダウンロード】
wget https://s3.amazonaws.com/mountpoint-s3-release/1.15.0/x86_64/mount-s3-1.15.0-x86_64.rpm
【rpmパッケージをインストール】
sudo dnf install mount-s3-1.15.0-x86_64.rpm -y
【バージョンを確認】
mount-s3 --version
->mount-s3 1.15.0と表示されればインストール成功です。
【ダウンロードしたパッケージファイルの削除】
rm -f mount-s3-1.15.0-x86_64.rpm
マウントの実行
以下のコマンドでEC2インスタンスにS3ストレージを書き込みや削除ができる設定でマウントします。
sudo mount-s3 my-bucket /mnt/s3 --allow-other --allow-delete --allow-overwrite
読み取り専用としてマウントする場合は –allow-other –read-only オプションを指定します。
S3ストレージ上にファイルを作成する
作成したバケット上にファイルを作成してみましょう。
sudo touch /mnt/s3/s3-test.txt
ls /mnt/s3/s3-test.txt
AWS管理画面のS3サービスべーじ上からファイルの作成を確認してみましょう。作成したバケット内にファイルがあればマウント成功です。
アンマウント(マウント解除)の方法
sudo umount /mnt/s3/
マウントポイント含む以下のディレクトリにいる場合はアンマウントできないので、/mntディレクトリに移動してから/mnt/s3/のマウントを解除しましょう。
システムブート時のマウントの自動化
マウントしただけの状態ではデフォルトではシステムリブート時には再マウントはされません。ここではシステムブート時に自動的にS3ストレージがマウントされるように設定をしていきます。
Systemdを使って自動マウント設定
「Linux | systemdのサービス管理とユニットファイルの設定」の記事を参考にしてS3ストレージのユニットファイルを作成しましょう。

システム起動時の自動マウントの確認
S3ストレージ自動マウントのサービスの準備ができたらEC2インスタンスの再起動をして、起動後にS3ストレージがマウントされていることを確認しましょう。
sudo ls -l /mnt/s3/
まとめ
今回はS3ストレージ(バケット)を作成してからEC2インスタンスにマウントする手順を学習しました。EC2インスタンスにはマウントポイントを作成し、AWS CLIのインストールも必須でしたね。mount-s3コマンドを使用して実際にマウントを試しました。システムブート時にS3をマウントするには systemd を使用しました。一連の手順を確認してスムースにマウントできるようになっておきましょう。
コメント