關於mfs的回收站中文件的查看方法以及mfs回收站中文件恢復

mfs的原理請看總結連接:MFS原理node

mfsgettrashtime 用來查看已刪除文件可以在回收站存放的時間,超過這個時間後完全刪除。用例爲一天後清空回收站。
格式:mfsgettrashtime 文件名/目錄名ide

tmp]# mfsgettrashtime /data
/data: 86400

若是部署MooseFS 文件系統時沒有指定文件回收站位置,默認是不自動建立的,可是被刪除的文件時間沒超過一天的仍然存在。解決這個問題只須要建立或選擇一個目錄,將mfs掛載到回收站所用目錄便可。mount檢查是否掛載成功。ui

]# mkdir /mfs_recycle
]# mfsmount -H 172.30.16.23 -m /mfs_recycle

trash]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
/dev/sdj on /data9 type xfs (rw,relatime,attr2,inode64,noquota)
/mfs_recycle/trash/172.30.16.23:9421 on /data type fuse.mfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
/mfs_recycle/trash/172.30.16.23:9421 on /mfs_recycle type fuse.mfsmeta (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)

進入回收站所在目錄,便可看到mfs存儲上刪除的數據(目錄undel除外)。
du -sh ./ 統計當前目錄(回收站)中全部文件所佔空間。操作系統

]# cd /mfs_recycle/
mfs_recycle]# ls
sustained  trash
mfs_recycle]# cd trash/
trash]# ls
000  085  10A  18F  214  299   AE9  B6E  BF3   FFF
001  086  10B  190  215  29A  31FB EF6  F7B  undel
trash]# du -sh ./
474G    ./

MFS回收站中的數據恢復:
進入/mfs_recycle/ trash目錄,將要進行回覆的數據移動到/mfs_recycle/ trash/undel/目錄中,數據會自動恢復至刪除前的位置。code

被刪文件的文件名在「垃圾箱」目錄裏還可見,文件名由一個八位十六進制的數i-node 和被刪文件的文件名組成,在文件名和i-node 之間不是用「/」,而是用了「|」替代。若是一個文件名的長度超過操做系統的限制(一般是255 個字符),那麼部分將被刪除。經過從掛載點起全路徑的文件名被刪除的文件任然能夠被讀寫。須要注意的是被刪除的文件在用全路徑文件名(注意文件名是兩部分)時必定要用單引號引發來。例如:blog

*部署

trash]# cd 084\|005CC084\|hehe\|abc\|8\|94\|7A\|00000417057\|1000\|
084|005CC084|hehe|abc|005CC084|otv|guangshi|8|94|7A|00000417057|1000|

trash]# mfsgettrashtime "000/005BD000|hehe|abc|4|16|D2|00000417253|1000|4873361000237.ts"
000/005BD000|hehe|abc|4|16|D2|00000417253|1000|4873361000237.ts: 86400

trash]# mfsgettrashtime "/mfsrecycle/trash/000/005BD000|hehe|abc|4|16|D2|00000417253|1000|4873361000237.ts"
/mfsrecycle/trash/000/005BD000|hehe|abc|4|16|D2|00000417253|1000|4873361000237.ts: 86400

*get

相關文章
相關標籤/搜索