本文為您介紹如何在Linux系統上使用ossfs 1.0將OSSBucket掛載為本地檔案系統。
前提條件
掛載命令格式
命令格式:
ossfs bucket_name /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou參數說明
ossfs:ossfs啟動程式。bucket_name:被掛載的目標Bucket名稱。/tmp/ossfs:本地檔案系統掛載目標Bucket的目錄。-o:掛載選項首碼參數,此參數在掛載命令中為必填項。url=http://oss-cn-hangzhou.aliyuncs.com:url掛載選項指定目標Bucket的Endpoint,選項值格式為http://Endpoint。查看目標Bucket的Endpoint請進入Bucket列表頁面,選擇目標Bucket並進入,接著單擊左側導覽列的概覽選項,在概覽頁的訪問連接埠欄中即可查看目標Bucket所處的地區節點。如圖所示,以杭州地區Bucket為例。

sigv4:控制是否使用V4簽名。掛載時添加-osigv4。ossfs預設使用OSS V1簽名,添加該掛載選項後,ossfs將使用OSS V4簽名流程向OSS發起相關請求。region=cn-hangzhou:OSS Bucket請求地區標識符,掛載時添加-oregion=<region_id>,預設為空白。在使用V4簽名時必須添加該選項來作為發起請求地區的標識符。
基礎掛載
設定檔掛載
建立掛載目錄。
執行以下命令,自訂建立
/tmp/ossfs-1和/tmp/ossfs-2空目錄作為目標Bucket的掛載目錄。mkdir /tmp/ossfs-1 /tmp/ossfs-2掛載命令樣本。
執行以下兩條命令,將預設設定檔中配置的
bucket-test-1和bucket-test-2分別掛載到本地/tmp/ossfs-1以及/tmp/ossfs-2目錄下。ossfs bucket-test-1 /tmp/ossfs-1/ -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou ossfs bucket-test-2 /tmp/ossfs-2/ -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou掛載結果如圖所示。

ECSRAMRole掛載
建立掛載目錄。
執行以下命令,建立
/tmp/ossfs空目錄作為目標Bucket的掛載目錄。mkdir /tmp/ossfs掛載命令樣本。
說明使用執行個體中繼資料URL掛載ossfs,目前僅支援普通模式訪問。有關中繼資料訪問模式介紹,請參見中繼資料訪問模式說明。
執行以下命令,將名為
bucket1的Bucket掛載到本地/tmp/ossfs目錄下。請注意:使用ECSRAMRole掛載方式掛載Bucket時,需配合
ram_role參數指定執行個體中繼資料URL,100.100.100.200為阿里雲ECS執行個體中繼資料服務的預設IP地址無需更改。EcsRamRoleOssTest為ECS執行個體所綁定的角色名稱,請替換為您的目標角色名稱,其餘資訊無需更改。ossfs bucket1 /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com -o ram_role=http://100.100.100.200/latest/meta-data/ram/security-credentials/EcsRamRoleOssTest -o sigv4 -o region=cn-hangzhou掛載結果如圖所示。

情境化掛載
您可以在掛載時只掛載特定的目錄,或者通過添加掛載選項的方式,根據不同的使用情境選擇合適的掛載選項完成Bucket的掛載。請注意:在掛載命令執行前必須保證本地目標掛載目錄為空白。
指定檔案目錄掛載
執行以下命令,將bucket-ossfs-test中的folder目錄掛載到本地/tmp/ossfs-folder目錄下。
ossfs bucket-ossfs-test:/folder /tmp/ossfs-folder -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou指定設定檔掛載
掛載選項:passwd_file掛載選項用於在掛載時指定非預設ossfs 1.0設定檔的路徑,且指定設定檔許可權需設定為600。
掛載樣本
執行以下命令,將指定設定檔中配置的
bucket-test-3掛載到本地/tmp/ossfs-3目錄下。ossfs bucket-test-3 /tmp/ossfs-3 -o url=http://oss-cn-hangzhou.aliyuncs.com -o passwd_file=/etc/passwd-ossfs-3 -o sigv4 -o region=cn-hangzhou
掛載時開啟調試日誌
掛載選項:dbglevel掛載選項用於設定日誌資訊的層級,支援日誌資訊層級為
critical、error、warn、info和debug,預設值為critical。預設日誌儲存路徑:CentOS系統儲存在/var/log/messages中,Ubuntu系統則儲存在/var/log/syslog中。您也可以通過logfile掛載選項指定目標記錄檔路徑。掛載樣本1
執行以下命令,將
bucket-ossfs-test-1掛載到本地/tmp/ossfs-1下,並通過-d開啟libfuse調試日誌,通過dbglevel掛載選項設定日誌資訊層級為debug。ossfs bucket-ossfs-test-1 /tmp/ossfs-1 -d -o dbglevel=debug -o sigv4 -o region=cn-hangzhou掛載樣本2
執行以下命令,將
bucket-ossfs-test-2掛載到本地/tmp/ossfs-2下,日誌資訊層級設定為debug並開啟libfuse調試日誌,日誌資訊通過-f掛載選項設定為在前台終端輸出。ossfs bucket-ossfs-test-2 /tmp/ossfs-2 -d -o dbglevel=debug -f -o sigv4 -o region=cn-hangzhou
掛載時配置存取權限
ossfs掛載的目錄存取權限預設為掛載點的所有者,即執行掛載命令的使用者,其他使用者無法訪問。如果要修改預設的使用權限設定,例如允許其他使用者或使用者組訪問掛載點,您則可以在使用ossfs掛載OSS儲存空間時根據要求的權限配置相應參數,做到期望的使用權限設定。
掛載選項 | 說明 |
allow_other | 修改掛載點的許可權,允許所有的使用者訪問掛載目錄,但不包括目錄中的檔案。目錄中檔案許可權需單獨設定,個別檔案的許可權修改請用 |
uid | 設定檔案夾屬於某個使用者時填寫的使用者uid。 |
gid | 設定檔案夾屬於某個使用者時填寫的使用者gid。 |
umask | 用來設定掛載點下檔案和目錄的許可權掩碼。例如需要設定掛載點下檔案的許可權為770,則增加-o umask=007;需要設定掛載點下檔案的許可權700,則增加-o umask=077。 |
掛載樣本1
執行以下命令,將
bucket_name掛載至本地mount_point目錄下,並通過allow_other掛載選項設定掛載目錄許可權為777,所有使用者均可訪問。ossfs bucket_name mount_point -o url=endpoint -o allow_other -o sigv4 -o region=cn-hangzhou掛載樣本2
執行以下命令,將
bucket_name掛載至本地mount_point目錄下,並通過umask掛載選項設定掛載目錄及目錄中檔案許可權為770,即只允許同組使用者訪問。ossfs bucket_name mount_point -o url=endpoint -o umask=007 -o sigv4 -o region=cn-hangzhou掛載樣本3
執行以下命令擷取指定使用者的uid、gid和groups。以www使用者為例。
id www運行結果如圖所示。

執行以下命令,將
bucket_name掛載至本地mount_point目錄下,並通過uid和gid掛載選項指定使用者和組,只允許同組的使用者訪問,許可權為770。uid和gid資訊以1000為例,請在掛載命令執行前替換為目標使用者的uid和gid資訊。ossfs bucket_name mount_point -o url=endpoint -o allow_other -o uid=1000 -o gid=1000 -o umask=007 -o sigv4 -o region=cn-hangzhou
實用技巧
卸載已掛載的Bucket
您可以使用以下命令,卸載已掛載到本地的OSS檔案系統。例如,卸載掛載在/tmp/ossfs路徑下的檔案系統。
umount /tmp/ossfs常見問題
Windows系統掛載OSSBucket請使用Cloud Storage GatewayCSG。詳情請參見在雲控制台上使用檔案網關和訪問SMB共用目錄。
ECS通過內網Endpoint掛載OSS不產生流量費用。更多關於流量費用資訊,請參見流量費用。
如果您的ECS和OSS不在同一地區且需要進行跨地區掛載,請確保網路暢通,您可以直接使用外網Endpoint進行掛載。此外,您還可以ECS私網訪問跨地區的OSS服務。
如果您需要通過Cloud Storage Gateway搭建IIS網站並將OSS作為資料存放區,請參見如何使用阿里雲Cloud Storage Gateway搭建IIS網站。
如果您需要在Windows作業系統上掛載OSS,請參見Rclone。
更多關於掛載,許可權等相關問題,請參見常見問題。