我发现 moosefs 垃圾占用了我太多的磁盘空间。根据 moosef 的文档,它会保留一段时间以防用户想要它回来。但是如何手动清理以节省空间?
1 回答
为了清除 MooseFS 的垃圾,您需要挂载名为“MooseFS Meta”的特殊目录。
首先为 MooseFS Meta 目录创建 mountdir:
mkdir /mnt/mfsmeta
并安装mfsmeta:
mfsmount -o mfsmeta /mnt/mfsmeta
如果您的 Master Server Host Name 与 default 不同mfsmaster和/或 port 与 default 不同9421,请使用适当的开关,例如:
mfsmount -H master.host.name -P PORT -o mfsmeta /mnt/mfsmeta
然后你可以在目录中找到你删除的文件/mnt/mfsmeta/trash/SUBTRASH。Subtrash 是一个/mnt/mfsmeta名为000..FFF. 如果您在垃圾箱中有许多(例如数百万)文件,则 Subtrash 很有帮助,因为您可以使用 Unix 工具轻松地对它们进行操作find,而如果您将所有文件放在一个目录中,则此类工具可能会失败。
如果垃圾箱中的文件不多,请使用mfsflattrash参数挂载 Meta:
mfsmount -o mfsmeta,mfsflattrash /mnt/mfsmeta
或者,如果您使用默认以外的主主机名或端口:
mfsmount -H master.host.name -P PORT -o mfsmeta,mfsflattrash /mnt/mfsmeta
在这种情况下,您删除的文件将直接可用/mnt/mfsmeta/trash(没有 subtrash)。
在这两种情况下,您都可以通过简单地使用文件来删除文件,rm file或者通过将它们移动到undel垃圾箱或子垃圾箱 ( mv file undel) 中可用的目录来取消删除它们。
请记住,如果您根本不想将某些文件移至垃圾箱,请将这些文件的“垃圾箱时间”(以秒为单位)设置为0删除之前。如果您为目录设置了特定的垃圾时间,则在该目录中创建的所有文件都从父目录继承垃圾时间,例如:
mfssettrashtime 0 /mnt/mfs/directory
您还可以将垃圾时间设置为其他值,例如 1 小时:
mfssettrashtime 3600 /mnt/mfs/directory
有关传递给mfsmountor的特定参数的更多信息mfssettrashtime,请参阅man mfsmountand man mfstrashtime。
希望能帮助到你!
彼得