• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

Linux 使用 Goofys 掛載 S3 儲存空間教學與範例

介紹如何在 Linux 系統上使用 Goofys 掛載 S3 儲存空間,直接取用 S3 上面的資料。

下載 Goofys 執行檔

對於一般的 Linux 發行版,可以直接從 Goofys 的 GibHub 網站上下載最新版的二進位執行檔來使用:

# 下載最新版的 goofys 二進位執行檔
wget https://github.com/kahing/goofys/releases/latest/download/goofys

設定 goofys 的執行權限:

# 設定執行權限
chmod +x goofys

S3 設定檔

建立 ~/.aws 這個放置設定檔的目錄:

# 建立 ~/.aws 目錄
mkdir ~/.aws

然後建立 ~/.aws/credentials 設定檔:

# 建立 ~/.aws/credentials 設定檔
vi ~/.aws/credentials

在 ~/.aws/credentials 設定檔中填入 S3 的 access key 與 secret key,若有多組金鑰則可放在不同的 profile 設定區塊之中,以下是一組預設的 default 設定,以及另外一組 my_profile 設定的內容:

[default]
aws_access_key_id = AKID1234567890
aws_secret_access_key = xCBasoZHLsVMulg10Romt3zY60ApsP9qaniqlUvK

[my_profile]
aws_access_key_id = AIKD1231231230
aws_secret_access_key = xiqlUvK0Romt3zYCRsdfe41dgadfs1psP9qan60A

掛載 S3 Bucket

進行掛載 S3 bucket 之前,先建立掛載點目錄:

# 建立掛載點目錄
mkdir s3_folder

接著使用 goofys 將 S3 的 mybucket bucket 掛載至 s3_folder 目錄下,預設會以 ~/.aws/credentials 設定檔中的 default 設定的金鑰進行掛載:

# 透過 Goofys 掛載 S3 儲存空間
./goofys --endpoint https://my.s3.com mybucket s3_folder/

若要使用 default 設定以外的金鑰,可以使用 --profile 參數來指定設定名稱:

# 使用 my_profile 設定
./goofys --profile my_profile --endpoint https://my.s3.com mybucket s3_folder/

接著就可以直接透過 Linux 標準的檔案系統操作,存取 S3 上面的資料了。

卸載 S3 Bucket

若要卸載透過 goofys 掛載的 S3 bucket,可以使用 fusermount:

# 卸載 S3 儲存空間
fusermount -u s3_folder

常見問題

如果 S3 伺服器的憑證驗證有問題,可能會出現類似以下的錯誤訊息:

Oct 15 08:00:45 vm /home/ubuntu/goofys[23710]: s3.ERROR Unable to access 'mybucket': x509: certificate signed by unknown authority
Oct 15 08:00:45 vm /home/ubuntu/goofys[23710]: s3.ERROR code=RequestError msg=send request failed, err=Head https://my.s3.com/mybucket/wxi5cmr22gjzc0qbne8d74g19vrj5in9: x509: certificate signed by unknown authority#012
Oct 15 08:00:45 vm /home/ubuntu/goofys[23710]: main.ERROR Unable to access 'mybucket': RequestError: send request failed#012caused by: Head https://my.s3.com/mybucket/wxi5cmr22gjzc0qbne8d74g19vrj5in9: x509: certificate signed by unknown authority
Oct 15 08:00:45 vm /home/ubuntu/goofys[23710]: main.FATAL Mounting file system: Mount: initialization failed

一個繞過這個問題的方式是採用未加密的 HTTP 連線:

# 採用未加密的 HTTP 連線
./goofys --endpoint http://my.s3.com mybucket s3_folder/

分類:Linux

讀者互動方式

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

主要資訊欄

搜尋

近期文章

  • Linux 檢查、測試 CPU AES-NI 硬體加速加密指令集教學
  • CentOS Linux 7.9 自行編譯、安裝 OpenSSH 9.0p1 伺服器教學與範例
  • Python 使用 zipfile 模組壓縮、解壓縮 ZIP 檔案教學與範例
  • Python 以 LINE Notify 自動傳送即時訊息、圖片教學與範例
  • Linux 使用 Prometheus 與 Grafana 監控伺服器狀態、發送告警 Email 簡訊教學與範例
  • Linux 設定 pam_tty_audit 記錄 SSH 使用者操作指令教學與範例
  • Linux 封鎖、解鎖登入失敗次數過多的帳號 pam_faillock 教學與範例
  • Python 使用 pytube 自動下載 YouTube 影片教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide