972850889 发表于 2016-01-20 15:57

再一次弱弱的问下,怎么制作freebsd镜像文件?

如题!!!

lsstarboy 发表于 2016-01-20 19:17

要看你做哪种镜像,mfsbsd源代码里面有示例。
如果你想做的是ghost那种,目前还没有,也没有必须,自己用tar 打包一个就行了。

972850889 发表于 2016-01-20 20:00

回复 2# lsstarboy
我是要做和官方一样的镜像!!!

   

lsstarboy 发表于 2016-01-20 21:15

这就简单多了,分析一下mfsBSD的代码吧,也就几百行,还是shell写的。

972850889 发表于 2016-01-20 21:44

回复 4# lsstarboy


    Thank you!!!

lsstarboy 发表于 2016-01-24 19:52

找到了吗?关键是这几句,实在看不懂可以再问:dofs_md () {
      if [ "x${MDDEVICE}" != "x" ] ; then
                umount /dev/${MDDEVICE} 2>/dev/null || true
                umount ${MNT} 2>/dev/null || true
                mdconfig -d -u ${MDDEVICE} 2>/dev/null || true
      fi

      MDDEVICE=`mdconfig -a -t vnode -f ${FSIMG}`
      if [ ! -c /dev/${MDDEVICE} ] ; then
                echo "No /dev/$MDDEVICE" 1>&2
                exit 1
      fi

      trap "umount ${MNT}; mdconfig -d -u ${MDDEVICE}" EXIT

      if [ "x${DISKLABEL}" != "x" ] ; then
                ${DISKLABEL} ${MACHINE} -w ${BOOT} ${MDDEVICE} ${FSLABEL}
                newfs -O2 -i ${FSINODE} -o space -m 0 /dev/${MDDEVICE}a
                mount -o async /dev/${MDDEVICE}a ${MNT}
      else
                newfs -O2 -i ${FSINODE} -o space -m 0 /dev/${MDDEVICE}
                mount -o async /dev/${MDDEVICE} ${MNT}
      fi
}

lsstarboy 发表于 2016-01-24 19:53

关键就是用mdconfig以vnode方式打开一个img文件,然后像正常的磁盘一样对它进行分区、格式化、存放文件,最后不要忘了处理内核。
页: [1]
查看完整版本: 再一次弱弱的问下,怎么制作freebsd镜像文件?