联合挂载一个
tmpfs
,和你的文件系统。写入数据指定为
tmpfs
。这样所有的写入数据,都会写到
tmpfs
里,而读取时,如果
tmpfs
没有数据,aufs
会去真正的文件系统找数据读取。tmpfs
在内存里,重启就没了,不过
tmpfs
占用内存,所以要限制他的容量,不然他存的数据太多,占用内存大了。系统正常运行就会受影响。不过整个系统的文件系统都要
aufs
,可能需要在
initrd
或者启动脚本里面做 *** 作后
chroot
继续启动。如果你非要想实现不写回,而不是用
aufs
联合挂载,必须
hack
内核的写入数据模块,截获所有写入数据到自己的缓存里。这个难度很大,而且兼容性也是问题。除了
aufs
,老系统可以用
unionfs
。另外,Linux
除非安装程序,不然大部分数据其实都是放在个人目录里面,你把个人目录挂载成
tmpfs
其实就能实现不写入硬盘的功能。只有很少量的数据会写入特殊的目录里,但这些都是服务器或者系统的系统管理、配置什么的数据。还原精灵的某些功能目的,其实
Linux
本身就自己已经提供了。不需要要在折腾什么。
追问
请问具体怎么使用aufs+tmpfs来实现?可否给个相关文档呢?谢谢!!
回答
这个我真没文档。aufs
+
tmpfs
你可以看一些
liveCD
liveUSB
的相关系统,他们的写入都是这样实现的。单独说
aufs
网上相关的资料还是很多的。chroot
继续启动的内容,你可以看看一些
initrd
的相关资料。有些
initrd
的文章会写如何继续启动到硬盘的分区。你吧启动到分区改成启动到
aufs
挂载点就行了。有些资料一起找很难,拆开就好说了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)