Articles of freebsd

我将把FreeBSD的自动加载器切成小块,然后用油烧开

我正在尝试将主目录的层次结构展示给一些FreeBSD jail。 主目录configuration为每个都是唯一的ZFS数据集。 监狱是用于开发工作,因此定期创build和销毁。 我的第一个想法是简单地使用nullfs在jail中挂载/home ,但是nullfs不提供任何方式来访问下级文件系统。 我的第二个想法是通过NFS导出目录,然后在每个监狱内运行automounter守护进程(amd)。 这将有Just Worked …如果有可能在监狱内执行NFS挂载。 但事实并非如此。 我的第三个想法是在主机上运行amd,并将nullfs挂载到jail中,但是对nullfs的支持不存在。 我的第四个想法是回到导出目录使用NFS,因为当然amd与NFS的工作,对不对? 不幸的是,amd并不是在目标挂载点上挂载一个目录,而是喜欢在临时位置( /.amd_mnt/… )挂载东西,然后创build一个符号链接,当然这在监狱环境中是没用的。 那么也许你可以使用nullfs将/.amd_mnt的子目录暴露给jail? 没有! 这使我们回到了第一次尝试,我们发现使用nullfs无法访问下级文件系统。 然后我的头爆炸了。 有什么我想要做的很好的解决scheme? 一个不好的解决办法是在引导jail后运行一个脚本,为每个home目录创build多个nullfs挂载点,但这非常笨重 – 需要定期运行以考虑新目录或删除的目录。 所以基本上我不得不写一个坏的自动加载器。 一定有更好的办法。 帮助我,Serverfault,你是我唯一的希望! 更新1 :在我看来,我可能能够用pam_mount解决部分问题,尽pipe这至多是不完整的。 另外,从文档中不清楚pam_mount是否可以自动创build目标挂载点。 如果它要求挂载点事先存在,这个解决scheme就不会比我已经提出的坏自动挂载程序更好。 更新2 :正如在下面的答案中所讨论的,在NFS文件系统上设置VFCF_JAIL确实允许jail执行NFS挂载。 不幸的是,自动加载程序仍然performance得毫无帮助,而且在监狱中运行似乎非常适合以这种方式重新启动系统以删除进程条目。

FreeBSD上的ZFS:从数据损坏中恢复

我在zpool中有几个非常有价值的个人数据的TB,由于数据损坏而无法访问。 该池最初是在2009年左右在Ubuntu 8.04系统之上的VMWare虚拟机内部运行的FreeBSD 7.2系统中build立起来的。 FreeBSD VM仍然可用并且运行正常,只有主机操作系统已经变成Debian 6.通过VMWare通用SCSI设备可以访问guest虚拟机,总共12个硬盘。 有2个游泳池: zpool01:2x 4x 500GB zpool02:1x 4x 160GB 工作的人是空的,破碎的人掌握着所有的重要资料: [user@host~]$ uname -a FreeBSD host.domain 7.2-RELEASE FreeBSD 7.2-RELEASE #0: \ Fri May 1 07:18:07 UTC 2009 \ [email protected]:/usr/obj/usr/src/sys/GENERIC amd64 [user@host ~]$ dmesg | grep ZFS WARNING: ZFS is considered to be an experimental feature in FreeBSD. ZFS filesystem version 6 […]

FreeBSD性能调优:Sysctl参数,loader.conf,内核

我想通过sysctl.conf / loader.conf / KENCONF /等来分享有关FreeBSD调优的知识。它最初是基于Igor Sysoev(nginx的作者)关于FreeBSD调优高达100,000到200,000个活动连接的介绍。 较新版本的FreeBSD可以处理更多。 调优适用于FreeBSD7 – FreeBSD-CURRENT。 自7.2和64以来,其中一些默认情况下调整良好。 以前的7.0有一些只是启动(通过/boot/loader.conf设置)或根本不存在。 sysctl.conf : # No zero mapping feature # May break wine # (There are also reports about broken samba3) #security.bsd.map_at_zero=0 # Servers with threading software apache2 / Pound may want to rise following sysctl #kern.threads.max_threads_per_proc=4096 # Max backlog size # Note Application […]