刚开始测试http://opendup.org/
所以我这样做了:
# mkfs.sdfs /dev/vdb --volume-name=pool1 --volume-capacity=100GB
# mkdir /mnt/pool1
# mount.sdfs pool1 /mnt/pool1/
此行的结果为空:
# ls /dev | grep pool1
如何在启动时(fstab)而不是mount devicename /mount/path
每次启动时自动挂载?
还有一个问题:如何将 sdfs 数据放在另一个位置?我注意到
# mkfs.sdfs /dev/vdb --volume-name=pool1 --volume-capacity=100GB
没有得到任何结果 - 所有数据都存储在某处\
。例如,如何将它们放在/mnt/vdb
?
答案1
SDFS 似乎不像是 Linux 内核支持的文件系统。OpenDedup 项目是用 Java 编写的,而 Linux 内核是用 C 编写的……两者之间可能存在一点差距。
因此,SDFS 未使用 挂载mount
,也无法使用 自动挂载fstab
,但有自己的mount.sdfs
命令。例如,您可以将 添加mount.sdfs MOUNTOPTIONS &> /var/log/sdfs.log &
到/etc/rc.local
。
怎么了ls /dev | grep pool1
?如果你安装到/mnt
, 中应该没有什么新东西/dev
。
答案2
/opt/sdfs/volumes/volumename
对于本地存储,当 mkfs.sdfs 创建具有重复数据删除路径的卷时,所有 sdfs 数据都存储在其中。空卷大约需要 300-400Mb。卷配置存储在中/etc/sfds/
。因此您可以稍后编辑它们(大小等...)
要将数据重定向到另一个路径:
- 挂载分区以重定向 sdfs 数据:
# mkfs.ext4 /dev/sda3
在这种情况下,我不想对 ext4 是否更好进行基准测试,我只是使用 ext4 作为示例。
# mkdir -p /opt/sdfs/volumes/volume1
# mount /dev/sda3 /opt/sdfs/volumes/volume1
# mkdir /mnt/disk1
/mnt/disk1
将是/path/for/deduplication
。
- 创建并挂载 sdfs 卷:
# mkfs.sdfs /mnt/disk1 --volume-name=volume1 --volume-capacity=856GB && mount.sdfs volume1 /mnt/disk1/
- 然后(是的,正如 Esa Jokinen 上面所写的)将 sdfs automount 放置在
/etc/rc.local
mount.sdfs
命令之前exit 0
。