運行平台:CentOS
需求:類似
/opt/virtual.file
指向:/opt/1.file
/opt/2.file
/opt/3.file
首先,我知道合併的命令,但是這樣會新建一個文件,並佔用空間
我希望的是存取 /opt/virtual.file
,相當於系統動態把這三個檔案合併成一個當成一個來存取
這個需求並不是使用nginx_http_concat中合併js/css的請求
因為上傳文件的時候為了確保穩定性,按照5M/塊的情況下分隔上傳,雖然也可以使用程序合併這些塊,但是有沒軟體可以讓系統做虛擬文件,指向到這些分塊,這樣就可以不用合併了
運行平台:CentOS
需求:類似
/opt/virtual.file
指向:/opt/1.file
/opt/2.file
/opt/3.file
首先,我知道合併的命令,但是這樣會新建一個文件,並佔用空間
我希望的是存取 /opt/virtual.file
,相當於系統動態把這三個檔案合併成一個當成一個來存取
這個需求並不是使用nginx_http_concat中合併js/css的請求
因為上傳文件的時候為了確保穩定性,按照5M/塊的情況下分隔上傳,雖然也可以使用程序合併這些塊,但是有沒軟體可以讓系統做虛擬文件,指向到這些分塊,這樣就可以不用合併了
這個必須使用fuse來實現,以及大神寫的:https://github.com/schlaile/c...
安裝編譯concatfs
<code>yum install fuse fuse-devel git clone https://github.com/schlaile/concatfs.git cd concatfs/src gcc -Wall concatfs.c `pkg-config fuse --cflags --libs` -o concatfs cp ./concatfs /bin</code>
使用掛載的方式啟動一個目錄
原始目錄:/opt/www/website/
裡麵包含檔案index.html
test.html /opt/www/website_mnt
執行concatfs /opt/www/website/ /opt/www/website_mnt
沒報錯就已經在後台運作
建立一個特殊的檔案名稱 包含
只要包含 -concat- 將會被concatfs特殊解析
<code>vim /opt/www/website/1-concat-.txt</code>
內容注意結尾列也需要有回車符 LF,不然最後那個檔案不會載入
<code>index.html test.html</code>登入後複製
現在訪問/opt/www/website_mnt/1-concat-.txt
注意是website_mnt/1-concat-.txt
目錄
訪問原目錄的
website/1-concat-.txt 仍然是原始檔案
PS: 並沒有測試寫入