我想在 RAM 中复制一个目录及其内容,执行我的例程并定期在我的原始目录上进行一些备份/同步。
所以如果我有一个mydir/
包含 2 个文件的目录:
$ ls mydir/
file1.tex file2.tex
我可以用以下命令安装它:
sudo mount -t tmpfs -o size=100m tmpfs ~/mydir
但安装后的它是空的(如预期的那样):
$ ls mydir/
$
1 - 是否可以将原始mydir
内容保留在我的安装中mydir
?
2 - 是否可以同步(假设每 5 分钟)硬盘上mydir
安装的内容?mydir
我对绑定选项很感兴趣,但我不确定它是如何工作的。
答案1
是的,您可以保留当前的 mydir 内容。探索mount --bind
是的,可以每 5 分钟与喜欢rsync
和mount --bind
命令同步一次。
但是,我会创建一个单独的目录来安装:
比如说,mkdir /home/user/memdrive
.
你应该制作一个脚本:
#!/bin/bash
if mount | grep /home/user/memdrive > /dev/null; then
cp /home/user/memdrive /mydir
else
mount -t tmpfs -o size=100M tmpfs /home/user/memdrive
cp /mydir /home/user/memdrive
umount /home/user/memdrive
fi
如果内存驱动器未安装,它将安装它并将 /mydir 的内容复制到其中。
如果内存驱动器已安装,它将cp
/home/user/memdrive 返回到 /mydir 然后卸载。
修改以满足您的需要。
您还可以手动执行所有这些操作或在不同的脚本中执行这些操作。