如果未開啟歸檔直讀,歸檔類型的Object需要解凍后才能讀取。冷歸檔、深度冷歸檔不支持開啟直讀,冷歸檔、深度冷歸檔類型的Object需要解凍后才能讀取。歸檔類型Object完成解凍通常需要數分鐘。冷歸檔類型Object完成解凍通常需要數小時。深度冷歸檔類型Object完成解凍通常需要12~48小時。解凍時間請以實際為準。本文為您介紹如何通過restore命令解凍文件。
注意事項
要解凍單個文件,您必須具有
oss:RestoreObject
權限;要按目錄解凍文件,您必須具有oss:RestoreObject
和oss:ListObjects
權限。具體操作,請參見為RAM用戶授權自定義的權限策略。關于歸檔存儲、冷歸檔存儲或者深度冷歸檔存儲類型文件的解凍狀態以及費用說明,請參見解凍文件。
命令格式
ossutil restore oss://bucket/object [flags]
參數 | 類型 | 說明 |
--days | int | 解凍天數。取值范圍1~365。 當批量操作時,如果對象的存儲類型存在混合情況,且days值超過該類型支持的最大值,則自動調整為該類型支持的最大值。例如:歸檔存儲類型支持的最大天數為7天,深度冷歸檔存儲類型支持365天,當--days設置為100時,對于歸檔存儲類型的對象,自動調整為7;對于深度冷歸檔存儲類型的對象,使用100。 |
--tier | string | 解凍優先級。歸檔類型對象無需指定此參數,解凍時間為1分鐘。
當批量操作時,如果對象的存儲類型存在混合情況,且tier值超過該類型支持的優先級,則自動調整為該類型支持的最低優先級。例如ColdArchive支持Bulk,DeepColdArchive僅支持Standard,當--tier設置為Bulk時,對于DeepColdArchive類型的對象,自動調整為Standard。 |
--dirs | / | 返回當前目錄下的文件和子目錄,而非遞歸顯示所有子目錄下的所有文件。 |
--encoding-type | string | 輸入的對象名或文件名的編碼方式。取值:url。 |
--end-with | string | 按字母排序,返回設定值之前的對象,包含設定值。 |
--exclude | stringArray | 路徑或文件名的排除規則。 |
--exclude-from | stringArray | 從規則文件里讀取排除規則。 |
--files-from | stringArray | 從文件中讀取源文件名列表,忽略空行或注釋行。 |
--files-from-raw | stringArray | 從文件中讀取源文件名列表。 |
--filter | stringArray | 路徑或文件名過濾規則。 |
--filter-from | stringArray | 從規則文件讀取過濾規則。 |
-f, --force | / | 強制操作,不進行詢問提示。 |
--include | stringArray | 路徑或文件名的包含規則。 |
--include-from | stringArray | 從規則文件里讀取包含規則。 |
--limited-num | int | 返回結果的最大個數。 |
--list-objects | / | 使用ListObjects接口列舉對象。 |
--max-age | Duration | 不傳輸任何比此更早的文件,默認是秒,或單位后綴形式 ms|s|m|h|d|w|M|y(默認值off)。 |
--max-mtime | Time | 不傳輸任何比此更新的文件,UTC時間格式(默認值off)。 |
--max-size | SizeSuffix | 限制傳輸的最大文件大小,默認是字節,或單位后綴形式B|K|M|G|T|P,1K(KiB)=1024B。 |
--metadata-exclude | stringArray | 對象元數據的排除規則。 |
--metadata-filter | stringArray | 對象元數據過濾規則。 |
--metadata-filter-from | stringArray | 從規則文件讀取對象元數據過濾規則。 |
--metadata-include | stringArray | 對象元數據的包含規則。 |
--min-age | Duration | 不傳輸任何比此更新的文件,默認是秒,或單位后綴形式 ms|s|m|h|d|w|M|y(默認值off)。 |
--min-mtime | Time | 不傳輸任何比此更早的文件,UTC時間格式(默認值off)。 |
--min-size | SizeSuffix | 限制傳輸的最小文件大小,默認是字節,或單位后綴形式B|K|M|G|T|P,1K(KiB)=1024B。 |
--page-size | int | 返回對象或文件的最大數(默認值1000),取值范圍1~1000。 |
-r, --recursive | / | 遞歸進行操作。當指定該選項時,命令會對存儲空間下所有符合條件的對象進行操作,否則只對路徑指定的對象進行操作。 |
--request-payer | string | 請求的支付方式,如果為請求者付費模式,請設置該值。取值:requester。 |
--start-after | string | 按字母排序,返回設定值之后的對象,不包含設定值。 |
--version-id | string | 對象的版本標識。 |
--list-format | string | 列表文件的格式,取值:plain、inventory。 |
--list-manifest-from | string | 從文件中讀取列表文件格式的描述信息,當列表文件格式為inventory時,需要設置該參數。 |
關于支持的全局命令行選項,請參見支持的全局命令行選項。
使用示例
解凍歸檔類型Object
以下示例用于解凍目標存儲空間examplebucket下歸檔類型文件exampleobject.txt。
ossutil restore oss://examplebucket/exampleobject.txt
以下示例用于解凍目標存儲空間examplebucket下歸檔類型文件exampleobject.txt,并將解凍天數設置為3天。
ossutil restore oss://examplebucket/exampleobject.txt --days 3
以下示例用于從列表里解凍對象。
說明list列表文件里的一行表示一個對象,且采用OSS路徑格式,即oss://{bucket}/{key},如list.txt文件:
oss://examplebucket/key1 oss://examplebucket/key2
ossutil restore list://list.txt
以下示例用于從列表里直接解凍對象,不會檢查 object 的狀態。
ossutil restore list://list.txt --no-check-status
以下示例用于從清單文件里解凍對象。
說明執行清單任務后,會在清單結果中生成一個 csv.gz 和 manifest.json 文件。從清單文件里解凍對象需要用到這兩個文件。
ossutil restore list://ca8007fc-4123-493e-9a01-dd1511fbac54.csv.gz --list-format inventory --list-manifest-from manifest.json
以下示例用于從清單文件里直接解凍對象,不會檢查 object 的狀態。
ossutil restore list://ca8007fc-4123-493e-9a01-dd1511fbac54.csv.gz --list-format inventory --list-manifest-from manifest.json --no-check-status
解凍冷歸檔類型Object
以下示例用于解凍目標存儲空間examplebucket下冷歸檔類型文件exampleobject.txt,并將解凍天數設置為5天。
ossutil restore oss://examplebucket/exampleobject.txt --tier Bulk --days 5
解凍深度冷歸檔類型Object
以下示例用于解凍目標存儲空間examplebucket下深度冷歸檔類型文件exampleobject.txt,并將解凍天數設置為10天。
ossutil restore oss://examplebucket/exampleobject.txt --tier Standard --days 10
計費說明
解凍歸檔、冷歸檔、深度冷歸檔類型的Object會產生數據取回容量費用。更多信息,請參見數據處理費用。
解凍歸檔類型的Object會產生Put類型請求次數費用。更多信息,請參見請求費用。
解凍冷歸檔、深度冷歸檔類型的Object會產生取回請求次數費用。更多信息,請參見請求費用。
歸檔類型、冷歸檔、深度冷歸檔類型的Object在解凍過程中以及解凍完成后,均按照相應的存儲類型計算存儲費用。更多信息,請參見存儲費用。
冷歸檔、深度冷歸檔類型的Object在解凍時,會生成一份標準存儲類型的文件副本用于訪問,該文件在解凍時間結束前會以標準存儲的存儲費率計算臨時存儲費用。更多信息,請參見臨時存儲費用。
歸檔類型的Object可達到最長7天的解凍持續時間,冷歸檔、深度冷歸檔類型的Object可達到最長365天的解凍持續時間,在此期間不再重復收取數據取回費用。
解凍狀態結束后,Object又回到冷凍狀態,再次執行解凍操作會收取數據取回費用。