網(wǎng)站建設(shè)流行技術(shù)精準(zhǔn)客戶截流軟件
OSSFs掛載工具簡介
? ossfs允許您在Linux系統(tǒng)中將對(duì)象存儲(chǔ)OSS的存儲(chǔ)空間(Bucket)掛載到本地文件系統(tǒng)。掛載完成后,您能夠像操作本地文件一樣操作OSS的對(duì)象(Object),從而實(shí)現(xiàn)數(shù)據(jù)共享。
? 使用起來,可以把存儲(chǔ)桶Bucket理解成一個(gè)文件夾,進(jìn)入到文件夾后增刪改查目錄中的文件,即相當(dāng)于在操作Bucket。
演示體驗(yàn):
這里已經(jīng)創(chuàng)建了一個(gè)Bucket :longgovv
在存儲(chǔ)桶中創(chuàng)建2個(gè)文件夾
如果Linux服務(wù)器已經(jīng)部署了OSSFs系統(tǒng)并配置,則效果如下:
[root@wangting ~]# cd /oss/longgovv/
[root@wangting longgovv]# ll
total 1
drwxrwxrwx 1 root root 0 Mar 2 16:20 FypA9M
drwxr-xr-x 1 root root 0 Mar 3 09:55 wangt
可以在服務(wù)器上查看到與longgovv同步的目錄,以上就是直觀的使用感受
OSSFs運(yùn)行環(huán)境
Linux系統(tǒng):
- CentOS 7.0及以上版本
- Ubuntu 14.04及以上版本
- Anolis7及以上版本
- fuse 2.8.4以上版本
? ossfs基于fuse用戶態(tài)文件系統(tǒng)開發(fā),只能運(yùn)行在支持fuse的機(jī)器上。OSS提供了Ubuntu和CentOS系統(tǒng)的安裝包,如果需要在其它環(huán)境下運(yùn)行,可以通過源碼方式構(gòu)建目標(biāo)程序。
? ossfs支持在阿里云內(nèi)網(wǎng)以及互聯(lián)網(wǎng)環(huán)境下使用。在內(nèi)網(wǎng)環(huán)境下時(shí),建議使用內(nèi)網(wǎng)訪問域名,以提升訪問速度和穩(wěn)定性
OSSFs主要功能
ossfs基于s3fs構(gòu)建,具有s3fs的全部功能。其中包括:
- 支持POSIX文件系統(tǒng)的大部分功能,例如上傳下載文件、目錄,設(shè)置用戶權(quán)限等
- 默認(rèn)使用OSS的分片上傳和斷點(diǎn)續(xù)傳功能上傳文件
- 支持MD5校驗(yàn),保證數(shù)據(jù)完整性
OSSFs使用限制
- 不支持掛載歸檔型Bucket
- 不適合高并發(fā)讀寫的場景
- 編輯OSS內(nèi)文件會(huì)導(dǎo)致文件被重新上傳
- 元數(shù)據(jù)操作(例如list directory)需要遠(yuǎn)程訪問OSS服務(wù)器,所以性能較差
- 重命名文件或文件夾可能會(huì)出錯(cuò)。若操作失敗,可能會(huì)導(dǎo)致OSS和本地?cái)?shù)據(jù)不一致
- 多個(gè)客戶端掛載同一個(gè)OSS Bucket時(shí),數(shù)據(jù)一致性由您自行維護(hù)。建議您合理規(guī)劃文件使用時(shí)間,避免出現(xiàn)多個(gè)客戶端寫同一個(gè)文件的情況
- 不支持hard link
- 如果您因意外中斷了文件上傳的過程,且未繼續(xù)完成該文件的上傳,則已上傳的部分會(huì)以碎片(Part)的形式存儲(chǔ)在OSS的存儲(chǔ)空間(Bucket)中。如果您不再需要這些Part,建議您通過以下方式刪除,以免產(chǎn)生額外的存儲(chǔ)費(fèi)用
安裝ossfs
1.下載安裝包
# CentOS 7.0 (x64)
[root@wangting ~]# wget https://gosspublic.alicdn.com/ossfs/ossfs_1.80.7_centos8.0_x86_64.rpm# CentOS 8.0 (x64)
[root@wangting ~]# wget https://gosspublic.alicdn.com/ossfs/ossfs_1.80.7_centos8.0_x86_64.rpm
其它版本可到官方查找下載連接
2.安裝rpm包
[root@wangting ~]# yum install -y ossfs_1.80.7_centos8.0_x86_64.rpm
【注意】
yum安裝ossfs的rpm包時(shí),-y會(huì)自動(dòng)安裝一些附帶的依賴,如果純離線環(huán)境需要考慮yum安裝環(huán)境
無法直接使用yum下載依賴包。您可以在網(wǎng)絡(luò)正常的、相同版本操作系統(tǒng)的節(jié)點(diǎn)上,使用yum下載依賴包并拷貝到網(wǎng)絡(luò)特殊的節(jié)點(diǎn)。例如,ossfs需要依賴fuse 2.8.4以上版本,可使用如下命令,下載yum源中最新的fuse到本地
yum install --downloadonly --downloaddir=./ fuse # 如果需要下載其他依賴包,請將fuse換成對(duì)應(yīng)包的名稱
3.配置賬號(hào)訪問信息
- 配置賬號(hào)
echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs
[root@wangting ~]# echo longgovv:LT6qNAI5txgaUaUtEo4zF:AqJFq9jP6q0rzzeHITNNMCFRtCqKlL > /etc/passwd-ossfs
[root@wangting ~]# chmod 640 /etc/passwd-ossfs
將Bucket名稱以及具有該Bucket訪問權(quán)限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs文件中。文件的權(quán)限建議設(shè)置為640。
- 配置掛載信息
ossfs BucketName mountfolder -o url=Endpoint
[root@wangting ~]# mkdir -p /oss/longgovv
[root@wangting ~]# ossfs longgovv /oss/longgovv -o url=http://oss-cn-shanghai.aliyuncs.com
Endpoint為訪問端口,在Bucket的概覽首頁即可查找到
OSSFs驗(yàn)證與使用
Linux端寫文件操作
配置完掛載信息,則直接可以在命令行查看使用Bucket了
[root@wangting longgovv]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 899M 0 899M 0% /dev
tmpfs tmpfs 914M 0 914M 0% /dev/shm
tmpfs tmpfs 914M 520K 913M 1% /run
tmpfs tmpfs 914M 0 914M 0% /sys/fs/cgroup
/dev/vda1 xfs 40G 21G 20G 51% /
tmpfs tmpfs 183M 0 183M 0% /run/user/0
ossfs fuse.ossfs 256T 0 256T 0% /oss/longgovv
使用體驗(yàn):
[root@wangting longgovv]# cd /oss/longgovv/
[root@wangting longgovv]# mkdir 20230303
[root@wangting longgovv]# ll
total 2
drwxr-xr-x 1 root root 0 Mar 3 10:24 20230303
drwxrwxrwx 1 root root 0 Mar 2 16:20 FypA9M
drwxr-xr-x 1 root root 0 Mar 3 09:55 wangt
[root@wangting longgovv]# cd 20230303
[root@wangting 20230303]# date >> test.log
[root@wangting 20230303]# date >> test.log
[root@wangting 20230303]# date >> test.log
[root@wangting 20230303]# cat test.log
Fri Mar 3 10:26:36 CST 2023
Fri Mar 3 10:26:37 CST 2023
Fri Mar 3 10:26:37 CST 2023
查看oss的對(duì)象API
[root@wangting 20230303]# curl https://longgovv.oss-cn-shanghai.aliyuncs.com/20230303/test.log
Fri Mar 3 10:26:36 CST 2023
Fri Mar 3 10:26:37 CST 2023
Fri Mar 3 10:26:37 CST 2023
下載test.log
Linux端讀取文件操作
掛起目錄監(jiān)控
[root@wangting 20230303]# while true;do date && sleep 1 && ls -l;done
Bucket上傳文件:
[root@wangting 20230303]# while true;do date && sleep 1 && ls -l;done
Fri Mar 3 10:34:59 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar 3 10:26 test.log
Fri Mar 3 10:35:00 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar 3 10:26 test.log
Fri Mar 3 10:35:01 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar 3 10:26 test.log
Fri Mar 3 10:35:02 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar 3 10:26 test.log
Fri Mar 3 10:35:03 CST 2023
total 19165
-rwxrwxrwx 1 root root 19623936 Mar 3 10:35 mariadb-connector-c-3.3.3-win64.msi
-rw-r--r-- 1 root root 87 Mar 3 10:26 test.log
Fri Mar 3 10:35:04 CST 2023
total 19165
-rwxrwxrwx 1 root root 19623936 Mar 3 10:35 mariadb-connector-c-3.3.3-win64.msi
-rw-r--r-- 1 root root 87 Mar 3 10:26 test.log
Fri Mar 3 10:35:05 CST 2023
total 19165
-rwxrwxrwx 1 root root 19623936 Mar 3 10:35 mariadb-connector-c-3.3.3-win64.msi
-rw-r--r-- 1 root root 87 Mar 3 10:26 test.log