垃圾回收站
被删除的文件能够存放在“ 垃圾箱”的时间就是一个隔离时间,用mfsgettrashtime 命令查看,用mfssettrashtime 命令来设置
对客户端删除的文件进行恢复
1.在客户端删除客户端mfs目录中的文件
[root@git1 data1]# rm -fr passwd
[root@git1 data1]# mfsgettrashtime .
.: 86400
86400秒后将此文件在垃圾箱中删除,将容量提供给其他数据存储。
2.创建元数据目录
删除文件可以通过一个单独安装MFSMETA 文件系统。特别是它包含目录/ trash (包含任然可以被还原的被删除文件的信息)和/ trash/undel (用于获取文件)。只有管理员有权限访问MFSMETA(用户的uid 0,通常是root)
[root@git1 ~]# mkdir /mnt/mfsmeta
[root@git1 ~]# mfsmount -m /mnt/mfsmeta/
mfsmaster accepted connection with parameters: read-write,restricted_ip
[root@git1 ~]# cd /mnt/mfsmeta/
[root@git1 mfsmeta]# ls
sustained trash
3.进入回收站
4.找到之前删除的文件
[root@git1 trash]# find -name *passwd*
./004/00000004|data1|passwd
5.对数据进行恢复
[root@git1 trash]# cd 004/
[root@git1 004]# ls
00000004|data1|passwd undel
[root@git1 004]# mv '00000004|data1|passwd' undel/
[root@git1 004]# ls
undel
5.恢复成功
[root@git1 ~]# cd /mnt/mfs
[root@git1 mfs]# cd data1/
[root@git1 data1]# ls
bigoff passwd
master内存的设置
master对cpu要求不高,cpu的负载主要在对分布式文件系统的操作频率。
内存的大小决定了系统存储的文件数量。
[root@mfs1 mfs]# cat /proc/sys/vm/overcommit_memory
0
值为0,程序需要的内存量超出了物理内存量,是不被允许的
值为1,不管请求多少都会允许。
值为2,判断物理内存和swap分区决定给不给分配
恢复意外挂掉的mfsmaster服务
在正常关闭的时候,/var/lib/mfs目录中会产生metadata.mfs这个文件,这个文件是开启mfsmaster服务时必备的文件。如果没有该文件,那么mfsmaster服务也就起不来。
在正常开启的时候,/var/lib/mfs目录中就会产生metadata.mfs.back这个文件。
当系统出现意料之外的终止
ps ax
[root@mfs1 mfs]# kill -9 2770
[root@mfs1 mfs]# systemctl start moosefs-master
Job for moosefs-master.service failed because the control process exited with error code. See "systemctl status moosefs-master.service" and "journalctl -xe" for details.
解决方法1:
-a 自动读取/var/lib/mfs 目录底下的元数据信息,帮我们进行恢复
mfsmaster已经开启,可以使用mfsmaster status 来查看,可以使用mfsmaster stop 来关闭mfsmaster
解决方法2:
用systemed的方式来解决这种这种问题。
[root@mfs1 ~]# vim /usr/lib/systemd/system/moosefs-master.service
[root@mfs1 ~]# systemctl daemon-reload
[root@mfs1 ~]# systemctl start moosefs-master
[root@mfs1 ~]# systemctl status moosefs-master
修改mfs的启动方式为-a形式
在完成上述操作之后我的服务还是没有起来,于是重启了一下虚拟机然后好了。