問題描述
使用ossfs上傳檔案到阿里雲Object Storage Service時,是通過分區進行上傳,分區大小預設為10 MB,分區最大數量為1000個,上傳小檔案正常,當上傳大檔案時,提示以下錯誤:
There is no enough disk space for used as cache(or temporary) directory by s3fs問題原因
ossfs在上傳檔案時會寫一些臨時快取檔案到/tmp目錄下,在寫這些檔案之前需要先判斷/tmp目錄所在的磁碟可用空間是否小於您上傳的檔案總量,若判斷磁碟可用空間小於您上傳檔案總量,就會出現本地磁碟可用空間不足的報錯。以下情境會導致磁碟可用空間不足的報錯:
情境一:磁碟可用空間本身小於您上傳檔案總量。例如磁碟可用空間是200 GB,上傳的檔案是300 GB。
情境二:分區大小和上傳線程數量的參數設定錯誤。例如磁碟可用空間是300 GB,需上傳的檔案是100 GB。因操作錯誤,multipart_size被設定成了100 GB,上傳線程數量是5。此時ossfs判斷上傳的檔案就是
100 GB*5=500 GB,超過了磁碟安全空間。
解決方案
當您使用ossfs上傳檔案出現本地磁碟可用空間不足的報錯時,請根據問題原因進行以下處理:
情境一:增大磁碟可用空間。
情境二:分區大小正常單位是MB,最大數量是1000,不要將分區大小設定過大。
相關文檔
適用於
Object Storage Service