• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
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

讀者互動方式

發佈留言 取消回覆

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

主要資訊欄

搜尋

近期文章

  • C++ 語言使用 Crypto++ 實作 RSA 數位簽章教學與範例
  • C++ 語言使用 Crypto++ 實作 RSA-OAEP 搭配 SHA256 加密教學與範例
  • C++ 語言使用 Crypto++ 實作 AES 加密、解密、認證加密教學與範例
  • C++ 語言使用 Crypto++ 實作 MD5、SHA1、SHA2、BLAKE2 雜湊教學與範例
  • Ubuntu Linux 安裝、使用 Crypto++ 加密函式庫教學與範例
  • C 語言使用 OpenSSL 實作橢圓曲線 ECDH 金鑰交換教學與範例
  • Python 以 eciespy 實作 ECC 非對稱式加密方法教學與範例
  • C 語言使用 OpenSSL 實作 PBKDF2 教學與範例

推薦網站

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

關注本站

  • 電子郵件
  • Facebook

公益

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

Copyright © 2021 · Office Guide