Offset 538, 30 lines modified | Offset 538, 30 lines modified | ||
538 | -r--r--r--···0·root·········(0)·wheel········(0)·····6651·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-sdl.html | 538 | -r--r--r--···0·root·········(0)·wheel········(0)·····6651·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-sdl.html |
539 | -r--r--r--···0·root·········(0)·wheel········(0)·····5649·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-sub-files.html | 539 | -r--r--r--···0·root·········(0)·wheel········(0)·····5649·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-sub-files.html |
540 | -r--r--r--···0·root·········(0)·wheel········(0)·····5999·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-tcl.html | 540 | -r--r--r--···0·root·········(0)·wheel········(0)·····5999·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-tcl.html |
541 | -r--r--r--···0·root·········(0)·wheel········(0)····20897·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-wx.html | 541 | -r--r--r--···0·root·········(0)·wheel········(0)····20897·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-wx.html |
542 | -r--r--r--···0·root·········(0)·wheel········(0)····13364·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-x11.html | 542 | -r--r--r--···0·root·········(0)·wheel········(0)····13364·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-x11.html |
543 | -r--r--r--···0·root·········(0)·wheel········(0)·····5753·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-xfce.html | 543 | -r--r--r--···0·root·········(0)·wheel········(0)·····5753·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/using-xfce.html |
544 | -r--r--r--···0·root·········(0)·wheel········(0)·····3177·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/why-port.html | 544 | -r--r--r--···0·root·········(0)·wheel········(0)·····3177·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/why-port.html |
545 | -r--r--r--···0·root·········(0)·wheel········(0)···32284 | 545 | -r--r--r--···0·root·········(0)·wheel········(0)···322841·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/contributing/article.pdf |
546 | -r--r--r--···0·root·········(0)·wheel········(0)···2857 | 546 | -r--r--r--···0·root·········(0)·wheel········(0)···285745·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/linux-users/article.pdf |
547 | -r--r--r--···0·root·········(0)·wheel········(0)···22625 | 547 | -r--r--r--···0·root·········(0)·wheel········(0)···226254·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/nanobsd/article.pdf |
548 | -r--r--r--···0·root·········(0)·wheel········(0)···4195 | 548 | -r--r--r--···0·root·········(0)·wheel········(0)···419586·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/rc-scripting/article.pdf |
549 | -r--r--r--···0·root·········(0)·wheel········(0)···2712 | 549 | -r--r--r--···0·root·········(0)·wheel········(0)···271276·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/remote-install/article.pdf |
550 | -r--r--r--···0·root·········(0)·wheel········(0)··1709 | 550 | -r--r--r--···0·root·········(0)·wheel········(0)··1709697·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/arch-handbook/book.pdf |
551 | -r--r--r--···0·root·········(0)·wheel········(0)·14163 | 551 | -r--r--r--···0·root·········(0)·wheel········(0)·14163834·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/handbook/book.pdf |
552 | -r--r--r--···0·root·········(0)·wheel········(0)··14628 | 552 | -r--r--r--···0·root·········(0)·wheel········(0)··1462878·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/book.pdf |
553 | -r--r--r--···0·root·········(0)·wheel········(0)···32284 | 553 | -r--r--r--···0·root·········(0)·wheel········(0)···322841·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/contributing/article.ps |
554 | -r--r--r--···0·root·········(0)·wheel········(0)···2857 | 554 | -r--r--r--···0·root·········(0)·wheel········(0)···285745·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/linux-users/article.ps |
555 | -r--r--r--···0·root·········(0)·wheel········(0)···22625 | 555 | -r--r--r--···0·root·········(0)·wheel········(0)···226254·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/nanobsd/article.ps |
556 | -r--r--r--···0·root·········(0)·wheel········(0)···4195 | 556 | -r--r--r--···0·root·········(0)·wheel········(0)···419586·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/rc-scripting/article.ps |
557 | -r--r--r--···0·root·········(0)·wheel········(0)···2712 | 557 | -r--r--r--···0·root·········(0)·wheel········(0)···271276·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/remote-install/article.ps |
558 | -r--r--r--···0·root·········(0)·wheel········(0)··1709 | 558 | -r--r--r--···0·root·········(0)·wheel········(0)··1709697·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/arch-handbook/book.ps |
559 | -r--r--r--···0·root·········(0)·wheel········(0)·14163 | 559 | -r--r--r--···0·root·········(0)·wheel········(0)·14163834·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/handbook/book.ps |
560 | -r--r--r--···0·root·········(0)·wheel········(0)··14628 | 560 | -r--r--r--···0·root·········(0)·wheel········(0)··1462878·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/porters-handbook/book.ps |
561 | -r--r--r--···0·root·········(0)·wheel········(0)····18408·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/contributing/article.txt | 561 | -r--r--r--···0·root·········(0)·wheel········(0)····18408·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/contributing/article.txt |
562 | -r--r--r--···0·root·········(0)·wheel········(0)····15766·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/linux-users/article.txt | 562 | -r--r--r--···0·root·········(0)·wheel········(0)····15766·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/linux-users/article.txt |
563 | -r--r--r--···0·root·········(0)·wheel········(0)·····9674·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/nanobsd/article.txt | 563 | -r--r--r--···0·root·········(0)·wheel········(0)·····9674·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/nanobsd/article.txt |
564 | -r--r--r--···0·root·········(0)·wheel········(0)····39855·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/rc-scripting/article.txt | 564 | -r--r--r--···0·root·········(0)·wheel········(0)····39855·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/rc-scripting/article.txt |
565 | -r--r--r--···0·root·········(0)·wheel········(0)····14331·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/remote-install/article.txt | 565 | -r--r--r--···0·root·········(0)·wheel········(0)····14331·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/articles/remote-install/article.txt |
566 | -r--r--r--···0·root·········(0)·wheel········(0)···491729·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/arch-handbook/book.txt | 566 | -r--r--r--···0·root·········(0)·wheel········(0)···491729·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/arch-handbook/book.txt |
567 | -r--r--r--···0·root·········(0)·wheel········(0)··5428920·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/handbook/book.txt | 567 | -r--r--r--···0·root·········(0)·wheel········(0)··5428920·2016-04-21·19:48:20.000000·/usr/local/share/doc/freebsd/zh_CN.UTF-8/books/handbook/book.txt |
Offset 1, 1 lines modified | Offset 1, 1 lines modified | ||
1 | {"name":"zh_cn-freebsd-doc","origin":"misc/freebsd-doc-zh_cn","version":"48633,1","comment":"Simplified·Chinese·translation·of·the·FreeBSD·Documentation·Project","maintainer":"doceng@FreeBSD.org","www":"UNKNOWN","abi":"FreeBSD:11:*","arch":"freebsd:11:*","prefix":"/usr/local","flatsize":6660 | 1 | {"name":"zh_cn-freebsd-doc","origin":"misc/freebsd-doc-zh_cn","version":"48633,1","comment":"Simplified·Chinese·translation·of·the·FreeBSD·Documentation·Project","maintainer":"doceng@FreeBSD.org","www":"UNKNOWN","abi":"FreeBSD:11:*","arch":"freebsd:11:*","prefix":"/usr/local","flatsize":66603868,"licenselogic":"single","desc":"The·whole·documentation·set·from·the·FreeBSD·Documentation·Project:\nHandbook,·FAQ,·articles·and·more.","categories":["misc","docs"],"options":{"HTML":"on","HTML_SPLIT":"on","PDF":"on","PS":"on","TXT":"on"}} |
Offset 1, 21 lines modified | Offset 1, 21 lines modified | ||
1 | <?xml·version="1.0"·encoding="utf-8"?> | 1 | <?xml·version="1.0"·encoding="utf-8"?> |
2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>为·FreeBSD·提供帮助</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="无论是作为个人还是组织机构,如果您希望为FreeBSD项目提供帮助,·都可以在本文中找到合适的方法。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp608 | 2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>为·FreeBSD·提供帮助</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="无论是作为个人还是组织机构,如果您希望为FreeBSD项目提供帮助,·都可以在本文中找到合适的方法。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp60869304"></a>为·FreeBSD·提供帮助</h1></div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="authorgroup"><div·class="author"><h3·class="author"><span·class="firstname">Jordan</span>·<span·class="surname">Hubbard</span></h3><span·class="contrib"·✂ |
3 | ··Inc.·在美国的注册商标。</p><p>许多制造商和经销商使用一些称为商标的图案或文字设计来彰显自己的产品。 | 3 | ··Inc.·在美国的注册商标。</p><p>许多制造商和经销商使用一些称为商标的图案或文字设计来彰显自己的产品。 |
4 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 | 4 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 |
5 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>无论是作为个人还是组织机构,如果您希望为FreeBSD项目提供帮助, | 5 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>无论是作为个人还是组织机构,如果您希望为FreeBSD项目提供帮助, |
6 | ········都可以在本文中找到合适的方法。</p></div></div></div><div·class="docformatnavi"> | 6 | ········都可以在本文中找到合适的方法。</p></div></div></div><div·class="docformatnavi"> |
7 | ······[ | 7 | ······[ |
8 | ······<a·href="index.html">章节模式</a> | 8 | ······<a·href="index.html">章节模式</a> |
9 | ······/ | 9 | ······/ |
10 | ······ | 10 | ······ |
11 | » ··完整模式 | 11 | » ··完整模式 |
12 | » | 12 | » |
13 | ······] | 13 | ······] |
14 | ····</div><hr·/></div><div·class="toc"><div·class="toc-title">目录</div><dl·class="toc"><dt><span·class="sect1"><a·href="#contrib-what">1.·我们的需求</a></span></dt><dt><span·class="sect1"><a·href="#contrib-how">2.·如何提供帮助</a></span></dt><dt><span·class="index"><a·href="#idp59 | 14 | ····</div><hr·/></div><div·class="toc"><div·class="toc-title">目录</div><dl·class="toc"><dt><span·class="sect1"><a·href="#contrib-what">1.·我们的需求</a></span></dt><dt><span·class="sect1"><a·href="#contrib-how">2.·如何提供帮助</a></span></dt><dt><span·class="index"><a·href="#idp59618104">索引</a></span></dt></dl></div><a·id="idp58096824"·class="indexterm"></a><p>您希望给·FreeBSD·项目做点什么吗?·太好了,·我们欢迎您。·FreeBSD·正是 |
15 | ····<span·class="emphasis"><em>依靠</em></span>·广大用户的贡献才得以发展壮大的。 | 15 | ····<span·class="emphasis"><em>依靠</em></span>·广大用户的贡献才得以发展壮大的。 |
16 | ····我们不仅非常感谢您所做的贡献,而且,这些工作对于·FreeBSD·的持续发展也至关重要。</p><p>也许与您想象的不同,·您既不必是一名出色的程序员,·也无须和 | 16 | ····我们不仅非常感谢您所做的贡献,而且,这些工作对于·FreeBSD·的持续发展也至关重要。</p><p>也许与您想象的不同,·您既不必是一名出色的程序员,·也无须和 |
17 | ····FreeBSD·核心团队成员有很好的私交,·我们会一视同仁的对待您的工作。 | 17 | ····FreeBSD·核心团队成员有很好的私交,·我们会一视同仁的对待您的工作。 |
18 | ····FreeBSD·的开发人员遍布全球,·大家技术专长各异,·年龄分布也非常广泛。 | 18 | ····FreeBSD·的开发人员遍布全球,·大家技术专长各异,·年龄分布也非常广泛。 |
19 | ····每天,·我们都在面对持续增长的工作而苦于没有足够的人手, | 19 | ····每天,·我们都在面对持续增长的工作而苦于没有足够的人手, |
20 | ····因此我们随时欢迎您的帮助。</p><p>FreeBSD·项目处理的是一个完整的操作系统环境, | 20 | ····因此我们随时欢迎您的帮助。</p><p>FreeBSD·项目处理的是一个完整的操作系统环境, |
21 | ····而不只是一个内核或是一些零散的工具包。·因此,·我们的 | 21 | ····而不只是一个内核或是一些零散的工具包。·因此,·我们的 |
Offset 71, 25 lines modified | Offset 71, 25 lines modified | ||
71 | » ····(这样下次升级时您的工作会变得轻松一些)。</p></li><li·class="listitem"><p>获取一份正式的标准,·如·<span·class="trademark">POSIX</span>®·的副本。 | 71 | » ····(这样下次升级时您的工作会变得轻松一些)。</p></li><li·class="listitem"><p>获取一份正式的标准,·如·<span·class="trademark">POSIX</span>®·的副本。 |
72 | » ····您可以在·<a·class="link"·href="../../../../projects/c99/index.html"·target="_top">FreeBSD | 72 | » ····您可以在·<a·class="link"·href="../../../../projects/c99/index.html"·target="_top">FreeBSD |
73 | » ····C99·&·POSIX·标准顺应项目</a>·网站上得到相关的链接。 | 73 | » ····C99·&·POSIX·标准顺应项目</a>·网站上得到相关的链接。 |
74 | » ····将·FreeBSD·的行为同标准进行比较。·如果与标准不同, | 74 | » ····将·FreeBSD·的行为同标准进行比较。·如果与标准不同, |
75 | » ····特别是那些细节地方的微小差异,·请发送一个关于它的·PR·(问题报告)。 | 75 | » ····特别是那些细节地方的微小差异,·请发送一个关于它的·PR·(问题报告)。 |
76 | » ····如果可能,·请指出如何修正它,·并随·PR·提交补丁。 | 76 | » ····如果可能,·请指出如何修正它,·并随·PR·提交补丁。 |
77 | » ····如果您认为标准有问题, | 77 | » ····如果您认为标准有问题, |
78 | » ····请向标准化团体要求对其进行重新的考虑。</p></li><li·class="listitem"><p>为这份列表建议更多的内容!</p></li></ol></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 78 | » ····请向标准化团体要求对其进行重新的考虑。</p></li><li·class="listitem"><p>为这份列表建议更多的内容!</p></li></ol></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59366072"></a>1.3. 查看整个·PR·数据库</h3></div></div></div><a·id="idp59367608"·class="indexterm"></a><p><a·class="link"·href="http://www.FreeBSD.org/cgi/query-pr-summary.cgi"·target="_top">FreeBSD |
79 | » PR·列表</a>·展示了所有当前处于活跃状态的问题报告,·以及由 | 79 | » PR·列表</a>·展示了所有当前处于活跃状态的问题报告,·以及由 |
80 | » FreeBSD·用户提交的改进建议。·PR | 80 | » FreeBSD·用户提交的改进建议。·PR |
81 | » 数据库同时包括了开发人员和非开发人员的任务。 | 81 | » 数据库同时包括了开发人员和非开发人员的任务。 |
82 | » 查看那些尚未解决的·PR,·并看看是否有您感兴趣的任务。 | 82 | » 查看那些尚未解决的·PR,·并看看是否有您感兴趣的任务。 |
83 | » 这其中可能有一些是非常简单的问题, | 83 | » 这其中可能有一些是非常简单的问题, |
84 | » 只需要看一看并确认·PR·是正确的。·另外一些可能会非常复杂, | 84 | » 只需要看一看并确认·PR·是正确的。·另外一些可能会非常复杂, |
85 | » 或者完全没有包括任何修正。</p><p>首先看一看那些还没有人接手的·PR。 | 85 | » 或者完全没有包括任何修正。</p><p>首先看一看那些还没有人接手的·PR。 |
86 | » 如果·PR·已经分配给了其它人,·但看起来是您能够处理的, | 86 | » 如果·PR·已经分配给了其它人,·但看起来是您能够处理的, |
87 | » 您可以给那个人发信,·并询问您是否可以提供帮助·── | 87 | » 您可以给那个人发信,·并询问您是否可以提供帮助·── |
88 | » 他们可能已经有了可供测试的补丁,·或有一些可供讨论的意见。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 88 | » 他们可能已经有了可供测试的补丁,·或有一些可供讨论的意见。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59372088"></a>1.4. 从·<span·class="quote">“<span·class="quote">点子</span>”</span>·网页上认领项目</h3></div></div></div><p><a·class="link"·href="../../../../projects/ideas/"·target="_top">FreeBSD |
89 | » 志愿者项目和点子清单</a>·也是提供给愿意为 | 89 | » 志愿者项目和点子清单</a>·也是提供给愿意为 |
90 | » FreeBSD·项目做出贡献的人们的。 | 90 | » FreeBSD·项目做出贡献的人们的。 |
91 | » 这张清单一直在被定期更新着, | 91 | » 这张清单一直在被定期更新着, |
92 | » 包含了对程序员和非程序员有用的每个项目的信息。</p></div></div><div·class="sect1"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"·style="clear:·both"><a·id="contrib-how"></a>2. 如何提供帮助</h2></div></div></div><p>帮助改进系统基本上可以分为·5·类:</p><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="contrib-general"></a>2.1. 错误报告和一般的注解</h3></div></div></div><p>通常,·<span·class="emphasis"><em>一般意义上的</em></span> | 92 | » 包含了对程序员和非程序员有用的每个项目的信息。</p></div></div><div·class="sect1"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"·style="clear:·both"><a·id="contrib-how"></a>2. 如何提供帮助</h2></div></div></div><p>帮助改进系统基本上可以分为·5·类:</p><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="contrib-general"></a>2.1. 错误报告和一般的注解</h3></div></div></div><p>通常,·<span·class="emphasis"><em>一般意义上的</em></span> |
93 | » 技术想法和建议应该发到·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers"·target="_top">FreeBSD·技术讨论邮件列表</a>。 | 93 | » 技术想法和建议应该发到·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers"·target="_top">FreeBSD·技术讨论邮件列表</a>。 |
94 | » 同样地,·对于这些东西有兴趣的人·(当然, | 94 | » 同样地,·对于这些东西有兴趣的人·(当然, |
95 | » 他们同时还要能够容忍·<span·class="emphasis"><em>大量的</em></span>·邮件!) | 95 | » 他们同时还要能够容忍·<span·class="emphasis"><em>大量的</em></span>·邮件!) |
Offset 113, 63 lines modified | Offset 113, 63 lines modified | ||
113 | » 来提供关于该事件的进一步信息。·您需要做的是将编号放到邮件的标题中, | 113 | » 来提供关于该事件的进一步信息。·您需要做的是将编号放到邮件的标题中, |
114 | » 例如··<code·class="literal">"Re: | 114 | » 例如··<code·class="literal">"Re: |
115 | » kern/3377"</code>。 | 115 | » kern/3377"</code>。 |
116 | » 关于同一问题更进一步的情况应该通过这种方式来提交。</p><p>如果您在一段时间之后仍然没有收到确认信·(超过·3 | 116 | » 关于同一问题更进一步的情况应该通过这种方式来提交。</p><p>如果您在一段时间之后仍然没有收到确认信·(超过·3 |
117 | » 天甚至·1·周,·这取决于您的邮件服务) | 117 | » 天甚至·1·周,·这取决于您的邮件服务) |
118 | » 或者由于某种原因无法使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a>·命令, | 118 | » 或者由于某种原因无法使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a>·命令, |
119 | » 则可以发信给·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-bugs"·target="_top">FreeBSD·问题报告邮件列表</a>·要求别人代您发送它。</p><p>请参见·<a·class="link"·href="../../../../doc/en_US.ISO8859-1/articles/problem-reports/article.html"·target="_top">这篇文章</a> | 119 | » 则可以发信给·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-bugs"·target="_top">FreeBSD·问题报告邮件列表</a>·要求别人代您发送它。</p><p>请参见·<a·class="link"·href="../../../../doc/en_US.ISO8859-1/articles/problem-reports/article.html"·target="_top">这篇文章</a> |
120 | ··» 了解如何撰写好的问题报告。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 120 | ··» 了解如何撰写好的问题报告。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59429560"></a>2.2. 对于文档的修订</h3></div></div></div><a·id="idp59432120"·class="indexterm"></a><p>对于文档的修改由·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc"·target="_top">FreeBSD·文档计划邮件列表</a>·来审查。 |
121 | » 请参见·<a·class="link"·href="../../../../doc/en_US.ISO8859-1/books/fdp-primer/index.html"·target="_top">FreeBSD | 121 | » 请参见·<a·class="link"·href="../../../../doc/en_US.ISO8859-1/books/fdp-primer/index.html"·target="_top">FreeBSD |
122 | » 文档计划初级读本</a>·来获得完整的指导。 | 122 | » 文档计划初级读本</a>·来获得完整的指导。 |
123 | » 请按照·<a·class="xref"·href="#contrib-general"·title="2.1. 错误报告和一般的注解">第 2.1 节·“错误报告和一般的注解”</a>·中介绍的方法使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a> | 123 | » 请按照·<a·class="xref"·href="#contrib-general"·title="2.1. 错误报告和一般的注解">第 2.1 节·“错误报告和一般的注解”</a>·中介绍的方法使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a> |
124 | » 来发送新的文档或者对于现有文档的完善·(哪怕是很小的改进也是欢迎的!)。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 124 | » 来发送新的文档或者对于现有文档的完善·(哪怕是很小的改进也是欢迎的!)。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59443256"></a>2.3. 对于现有源代码的修改</h3></div></div></div><a·id="idp59448888"·class="indexterm"></a><p>在现有代码上进行修改或增加功能在某种程度上是需要更多技巧的事情, |
125 | » 并且还和您对于目前·FreeBSD·的开发现状的了解有关。 | 125 | » 并且还和您对于目前·FreeBSD·的开发现状的了解有关。 |
126 | » 有多种方式可以得到被称作·<span·class="quote">“<span·class="quote">FreeBSD-CURRENT</span>”</span> | 126 | » 有多种方式可以得到被称作·<span·class="quote">“<span·class="quote">FreeBSD-CURRENT</span>”</span> |
127 | » 的·FreeBSD·开发版本,·您可以通过它来了解最近的开发情况。 | 127 | » 的·FreeBSD·开发版本,·您可以通过它来了解最近的开发情况。 |
128 | » 请参见·<a·class="link"·href="··../../../../doc/en_US.ISO8859-1/books/handbook/current-stable.html"·target="_top">FreeBSD | 128 | » 请参见·<a·class="link"·href="··../../../../doc/en_US.ISO8859-1/books/handbook/current-stable.html"·target="_top">FreeBSD |
129 | » 使用手册</a>·来了解使用·FreeBSD-CURRENT·的进一步详情。</p><p>在旧的代码上进行修改,·则通常可能由于代码已经过时, | 129 | » 使用手册</a>·来了解使用·FreeBSD-CURRENT·的进一步详情。</p><p>在旧的代码上进行修改,·则通常可能由于代码已经过时, |
130 | » 或与新的开发版本差异太大而无法被重新集成到·FreeBSD·中。 | 130 | » 或与新的开发版本差异太大而无法被重新集成到·FreeBSD·中。 |
131 | » 如果您订阅了·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-announce"·target="_top">FreeBSD·公告邮件列表</a>·以及·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-current"·target="_top">FreeBSD-CURRENT·邮件列表</a>·邮件列表, | 131 | » 如果您订阅了·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-announce"·target="_top">FreeBSD·公告邮件列表</a>·以及·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-current"·target="_top">FreeBSD-CURRENT·邮件列表</a>·邮件列表, |
132 | » 则可以通过它们来大体了解目前的开发状态。</p><p>假如说您能够基于尽可能新的代码来完成您的修改, | 132 | » 则可以通过它们来大体了解目前的开发状态。</p><p>假如说您能够基于尽可能新的代码来完成您的修改, |
133 | » 则下一步要做的事情就是生成您所进行的修改的差异文件, | 133 | » 则下一步要做的事情就是生成您所进行的修改的差异文件, |
134 | » 并将它发给·FreeBSD·的维护人员。·这项工作可以通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=diff&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">diff</span>(1)</span></a> | 134 | » 并将它发给·FreeBSD·的维护人员。·这项工作可以通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=diff&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">diff</span>(1)</span></a> |
135 | » 命令来完成。</p><p>提交补丁时推荐的·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=diff&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">diff</span>(1)</span></a>·格式是一致差异·(unified·diff), | 135 | » 命令来完成。</p><p>提交补丁时推荐的·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=diff&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">diff</span>(1)</span></a>·格式是一致差异·(unified·diff), |
136 | ········它可以通过·<code·class="command">diff | 136 | ········它可以通过·<code·class="command">diff |
137 | ········-u</code>·来生成。·不过,·如果您修改了大量的代码, | 137 | ········-u</code>·来生成。·不过,·如果您修改了大量的代码, |
138 | ········则使用·<code·class="command">diff·-c</code>·来生成的上下文格式·(context·diff) | 138 | ········则使用·<code·class="command">diff·-c</code>·来生成的上下文格式·(context·diff) |
139 | ········的差异可能更容易阅读,·因而推荐使用。</p><a·id="idp5940 | 139 | ········的差异可能更容易阅读,·因而推荐使用。</p><a·id="idp59470264"·class="indexterm"></a><p>例如:</p><pre·class="screen"><code·class="prompt">%</code>·<strong·class="userinput"><code>diff·-c·oldfile·newfile</code></strong></pre><p>或者</p><pre·class="screen"><code·class="prompt">%</code>·<strong·class="userinput"><code>diff·-c·-r·olddir·newdir</code></strong></pre><p>将分别生成给定文件或目录结构的·context·diff。</p><p>类似地,</p><pre·class="screen"><code·class="prompt">%</code>·<strong·class="userinput"><code>diff·-u·oldfile·newfile</code></strong></pre><p>或</p><pre·class="screen"><code·class="prompt">%</code>·<strong·class="userinput"><code>diff·-u·-r·olddir·newdir</code></strong></pre><p>的作用与前面的类似,·但采用的格式是·unified·diff。</p><p>请参见·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=diff&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">diff</span>(1)</span></a>·联机手册了解更多细节。</p><p>一旦您使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=diff&sektion=1&a·✂ |
140 | » <a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=patch&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">patch</span>(1)</span></a>·命令来测试一下),·就可以提交它们, | 140 | » <a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=patch&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">patch</span>(1)</span></a>·命令来测试一下),·就可以提交它们, |
141 | » 以便被·FreeBSD·收录。·通过使用·<a·class="xref"·href="#contrib-general"·title="2.1. 错误报告和一般的注解">第 2.1 节·“错误报告和一般的注解”</a> | 141 | » 以便被·FreeBSD·收录。·通过使用·<a·class="xref"·href="#contrib-general"·title="2.1. 错误报告和一般的注解">第 2.1 节·“错误报告和一般的注解”</a> |
142 | » 中所介绍的·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a>·程序就可以完成这项工作。 | 142 | » 中所介绍的·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a>·程序就可以完成这项工作。 |
143 | » <span·class="emphasis"><em>不要</em></span>·只是把差异集发到·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers"·target="_top">FreeBSD·技术讨论邮件列表</a>, | 143 | » <span·class="emphasis"><em>不要</em></span>·只是把差异集发到·<a·class="link"·href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-hackers"·target="_top">FreeBSD·技术讨论邮件列表</a>, |
144 | » 否则它们可能会被丢掉!·我们会非常感激您提交的修改 | 144 | » 否则它们可能会被丢掉!·我们会非常感激您提交的修改 |
145 | » (这是一个志愿者项目!);·因为我们都很忙, | 145 | » (这是一个志愿者项目!);·因为我们都很忙, |
146 | » 因此有时不一定能够立即修正问题,·但·PR | 146 | » 因此有时不一定能够立即修正问题,·但·PR |
147 | » 数据库将一直保持着这些记录, | 147 | » 数据库将一直保持着这些记录, |
148 | » 因此只要有人有了时间它们就能被改正了。 | 148 | » 因此只要有人有了时间它们就能被改正了。 |
149 | » 如果您的问题报告中包括补丁,·一定不要忘了在标题上用 | 149 | » 如果您的问题报告中包括补丁,·一定不要忘了在标题上用 |
150 | » <code·class="literal">[PATCH]</code>·来强调一下。</p><a·id="idp59 | 150 | » <code·class="literal">[PATCH]</code>·来强调一下。</p><a·id="idp59509944"·class="indexterm"></a><p>如果您认为合适·(例如您添加、·删除或重命名了文件), |
151 | » 还可以考虑使用 | 151 | » 还可以考虑使用 |
152 | » <code·class="command">tar</code>·来将文件打包,·然后用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=uuencode&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">uuencode</span>(1)</span></a> | 152 | » <code·class="command">tar</code>·来将文件打包,·然后用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=uuencode&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">uuencode</span>(1)</span></a> |
153 | » 来编码。·我们也欢迎用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=shar&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">shar</span>(1)</span></a>·创建的包。</p><p>如果您的修改可能存在潜在的争议,·例如, | 153 | » 来编码。·我们也欢迎用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=shar&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">shar</span>(1)</span></a>·创建的包。</p><p>如果您的修改可能存在潜在的争议,·例如, |
154 | » 您不确定与之相关的版权问题,·或者感觉需要经过更严格的复审才可以发布它们, | 154 | » 您不确定与之相关的版权问题,·或者感觉需要经过更严格的复审才可以发布它们, |
155 | » 则应直接发给·FreeBSD·核心团队,·而不是通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a>·来发送。 | 155 | » 则应直接发给·FreeBSD·核心团队,·而不是通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=send-pr&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">send-pr</span>(1)</span></a>·来发送。 |
156 | » FreeBSD·核心团队·是一个小组,·其成员更多的从事·FreeBSD·的日常工作。 | 156 | » FreeBSD·核心团队·是一个小组,·其成员更多的从事·FreeBSD·的日常工作。 |
157 | » 需要注意的是,·这个小组也因此·<span·class="emphasis"><em>很忙</em></span>, | 157 | » 需要注意的是,·这个小组也因此·<span·class="emphasis"><em>很忙</em></span>, |
158 | » 因此只有在非常必要的时候才应给他们写信。</p><p>请参考·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=intro&sektion=9&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">intro</span>(9)</span></a>·和·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=style&sektion=9&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">style</span>(9)</span></a>·以了解关于编码习惯和约定的详情。 | 158 | » 因此只有在非常必要的时候才应给他们写信。</p><p>请参考·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=intro&sektion=9&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">intro</span>(9)</span></a>·和·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=style&sektion=9&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">style</span>(9)</span></a>·以了解关于编码习惯和约定的详情。 |
159 | » 如果您了解这些约定,·则对我们来说将是极大的帮助。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp594 | 159 | » 如果您了解这些约定,·则对我们来说将是极大的帮助。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59540792"></a>2.4. 新代码或重要的增值软件包</h3></div></div></div><p>如果您打算提供规模较大的代码,·或者为·FreeBSD·增加重要的新功能, |
160 | » 则可能必须将它们通过·uuencode·进行编码,·或传到某个·Web·或 | 160 | » 则可能必须将它们通过·uuencode·进行编码,·或传到某个·Web·或 |
161 | » FTP·站点,·以便更多的人能够得到它。·如果您没有这样的服务器, | 161 | » FTP·站点,·以便更多的人能够得到它。·如果您没有这样的服务器, |
162 | » 请到相关的·FreeBSD·邮件列表提出,·看看是否有人愿意帮您放置它们。</p><p>对于大量的代码而言,·关于版权的问题肯定会被提出。 | 162 | » 请到相关的·FreeBSD·邮件列表提出,·看看是否有人愿意帮您放置它们。</p><p>对于大量的代码而言,·关于版权的问题肯定会被提出。 |
163 | » FreeBSD·基本系统中能够使用的版权声明包括:</p><div·class="orderedlist"><ol·class="orderedlist"·type="1"><li·class="listitem"><p>BSD<a·id="idp59 | 163 | » FreeBSD·基本系统中能够使用的版权声明包括:</p><div·class="orderedlist"><ol·class="orderedlist"·type="1"><li·class="listitem"><p>BSD<a·id="idp59546808"·class="indexterm"></a>·版权。·我们倾向于使用这类授权的代码, |
164 | » ····因为它·<span·class="quote">“<span·class="quote">不附加多余的条件</span>”</span>,·因而更能够吸引商业企业使用。 | 164 | » ····因为它·<span·class="quote">“<span·class="quote">不附加多余的条件</span>”</span>,·因而更能够吸引商业企业使用。 |
165 | » ····FreeBSD·并不反对商业公司使用它的代码,·相反, | 165 | » ····FreeBSD·并不反对商业公司使用它的代码,·相反, |
166 | » ····我们积极地鼓励商业公司使用我们的代码, | 166 | » ····我们积极地鼓励商业公司使用我们的代码, |
167 | » ····当然,·如果它们最终把一部分代码重新捐赠给·FreeBSD | 167 | » ····当然,·如果它们最终把一部分代码重新捐赠给·FreeBSD |
168 | » ····就更好了。</p></li><li·class="listitem"><p>GNU·General·Public·License,<a·id="idp59 | 168 | » ····就更好了。</p></li><li·class="listitem"><p>GNU·General·Public·License,<a·id="idp59551416"·class="indexterm"></a><a·id="idp59553336"·class="indexterm"></a>·或简称·<span·class="quote">“<span·class="quote">GPL</span>”</span>。 |
169 | » ····我们并不很欢迎使用这样授权的代码, | 169 | » ····我们并不很欢迎使用这样授权的代码, |
170 | » ····因为商业公司使用它需要做更多的工作。·不过,·由于很多使用 | 170 | » ····因为商业公司使用它需要做更多的工作。·不过,·由于很多使用 |
171 | » ····GPL·授权的代码目前是无法避免的·(编译器、·汇编器, | 171 | » ····GPL·授权的代码目前是无法避免的·(编译器、·汇编器, |
172 | » ····文本排版程序等等),·拒绝使用所有采用这样授权的软件是很不明智的。 | 172 | » ····文本排版程序等等),·拒绝使用所有采用这样授权的软件是很不明智的。 |
173 | » ····采用·GPL·授权的代码会被放到源代码的一些专门的位置,·例如 | 173 | » ····采用·GPL·授权的代码会被放到源代码的一些专门的位置,·例如 |
174 | » ····<code·class="filename">/sys/gnu</code>·或 | 174 | » ····<code·class="filename">/sys/gnu</code>·或 |
175 | » ····<code·class="filename">/usr/src/gnu</code>, | 175 | » ····<code·class="filename">/usr/src/gnu</code>, |
Offset 200, 15 lines modified | Offset 200, 15 lines modified | ||
200 | DATA,·OR·PROFITS;·OR·BUSINESS·INTERRUPTION)·HOWEVER·CAUSED·AND·ON·ANY | 200 | DATA,·OR·PROFITS;·OR·BUSINESS·INTERRUPTION)·HOWEVER·CAUSED·AND·ON·ANY |
201 | THEORY·OF·LIABILITY,·WHETHER·IN·CONTRACT,·STRICT·LIABILITY,·OR·TORT | 201 | THEORY·OF·LIABILITY,·WHETHER·IN·CONTRACT,·STRICT·LIABILITY,·OR·TORT |
202 | (INCLUDING·NEGLIGENCE·OR·OTHERWISE)·ARISING·IN·ANY·WAY·OUT·OF·THE·USE·OF | 202 | (INCLUDING·NEGLIGENCE·OR·OTHERWISE)·ARISING·IN·ANY·WAY·OUT·OF·THE·USE·OF |
203 | THIS·SOFTWARE,·EVEN·IF·ADVISED·OF·THE·POSSIBILITY·OF·SUCH·DAMAGE. | 203 | THIS·SOFTWARE,·EVEN·IF·ADVISED·OF·THE·POSSIBILITY·OF·SUCH·DAMAGE. |
204 | ········$Id$</pre><p>为了方便您的使用,·在 | 204 | ········$Id$</pre><p>为了方便您的使用,·在 |
205 | » <code·class="filename">/usr/share/examples/etc/bsd-style-copyright</code> | 205 | » <code·class="filename">/usr/share/examples/etc/bsd-style-copyright</code> |
206 | » 也可以找到此授权的副本。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp595 | 206 | » 也可以找到此授权的副本。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59573688"></a>2.5. 资金、·硬件或·Internet·接入</h3></div></div></div><p>我们非常愿意接受各种形式的捐赠,·以进一步拓展·FreeBSD |
207 | » Project·的事业,·因为有您的支持, | 207 | » Project·的事业,·因为有您的支持, |
208 | » 像我们这样的志愿者努力才能够有更大的成就! | 208 | » 像我们这样的志愿者努力才能够有更大的成就! |
209 | » 捐赠硬件也非常重要,·因为这样能够帮助我们增加可以支持的硬件种类, | 209 | » 捐赠硬件也非常重要,·因为这样能够帮助我们增加可以支持的硬件种类, |
210 | » 而我们中的很多人并没有足够的资金来购置这些硬件。</p><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="donations"></a>2.5.1. 捐款</h4></div></div></div><p>FreeBSD·基金会是一个非营利的、·有课税豁免权的基金会, | 210 | » 而我们中的很多人并没有足够的资金来购置这些硬件。</p><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="donations"></a>2.5.1. 捐款</h4></div></div></div><p>FreeBSD·基金会是一个非营利的、·有课税豁免权的基金会, |
211 | » ··建立这个基金会的目标是为了让·FreeBSD·Project·能够达成更加长远的目标。 | 211 | » ··建立这个基金会的目标是为了让·FreeBSD·Project·能够达成更加长远的目标。 |
212 | » ··作为·501(c)3·实体,·一般而言基金会可以免予上缴美国联邦收入税, | 212 | » ··作为·501(c)3·实体,·一般而言基金会可以免予上缴美国联邦收入税, |
213 | » ··以及科罗拉多州收入税。·通常对于课税豁免的实体进行捐赠, | 213 | » ··以及科罗拉多州收入税。·通常对于课税豁免的实体进行捐赠, |
Offset 220, 12 lines modified | Offset 220, 12 lines modified | ||
220 | » <span·class="country">USA</span><br·/> | 220 | » <span·class="country">USA</span><br·/> |
221 | » </p></div><p> | 221 | » </p></div><p> |
222 | » </p><p>FreeBSD·基金会现在可以通过·PayPal·从网上接受捐款。 | 222 | » </p><p>FreeBSD·基金会现在可以通过·PayPal·从网上接受捐款。 |
223 | » ··如果您想向基金会捐款,·请访问它的·<a·class="link"·href="http://www.freebsdfoundation.org"·target="_top">web | 223 | » ··如果您想向基金会捐款,·请访问它的·<a·class="link"·href="http://www.freebsdfoundation.org"·target="_top">web |
224 | » ··站点</a>。</p><p>关于·FreeBSD·基金会的更多详情,·可以在·<a·class="link"·href="http://people.FreeBSD.org/~jdp/foundation/announcement.html"·target="_top">FreeBSD | 224 | » ··站点</a>。</p><p>关于·FreeBSD·基金会的更多详情,·可以在·<a·class="link"·href="http://people.FreeBSD.org/~jdp/foundation/announcement.html"·target="_top">FreeBSD |
225 | » ··基金会·--·介绍</a>·找到。·要联络基金会, | 225 | » ··基金会·--·介绍</a>·找到。·要联络基金会, |
226 | » ··请发送电子邮件到 | 226 | » ··请发送电子邮件到 |
227 | » ··<code·class="email"><<a·xmlns=""·class="email"·href="mailto:bod@FreeBSDFoundation.org">bod@FreeBSDFoundation.org</a>></code>。</p></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 227 | » ··<code·class="email"><<a·xmlns=""·class="email"·href="mailto:bod@FreeBSDFoundation.org">bod@FreeBSDFoundation.org</a>></code>。</p></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59605688"></a>2.5.2. 捐赠硬件</h4></div></div></div><a·id="idp59606712"·class="indexterm"></a><p>FreeBSD·计划欢迎任何人捐赠可以使用的硬件。 |
228 | » ··如果您有兴趣捐赠硬件,·请联系·<a·class="link"·href="../../../../donations/"·target="_top">捐赠联络人办公室</a>。</p></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 228 | » ··如果您有兴趣捐赠硬件,·请联系·<a·class="link"·href="../../../../donations/"·target="_top">捐赠联络人办公室</a>。</p></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59610808"></a>2.5.3. 捐赠·Internet·接入</h4></div></div></div><p>我们欢迎新的·FTP、·WWW·或 |
229 | » ··<code·class="command">cvsup</code>·镜像。·如果您希望成为这样的镜像, | 229 | » ··<code·class="command">cvsup</code>·镜像。·如果您希望成为这样的镜像, |
230 | » ··请参见·<a·class="link"·href="../../../../doc/en_US.ISO8859-1/articles/hubs/index.html"·target="_top">如何架设·FreeBSD·镜像</a> | 230 | » ··请参见·<a·class="link"·href="../../../../doc/en_US.ISO8859-1/articles/hubs/index.html"·target="_top">如何架设·FreeBSD·镜像</a> |
231 | » ··一文,·以了解进一步的情况。</p></div></div></div><div·class="index"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 231 | » ··一文,·以了解进一步的情况。</p></div></div></div><div·class="index"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59618104"></a>索引</h2></div></div></div><div·class="index"><div·class="indexdiv"><h3>符号</h3><dl><dt>捐赠,<a·class="indexterm"·href="#idp59605688">捐赠硬件</a></dt><dt>提交文档,<a·class="indexterm"·href="#idp59429560">对于文档的修订</a></dt><dt>贡献·,<a·class="indexterm"·href="#idp60869304">为·FreeBSD·提供帮助</a></dt><dt>问题报告数据库,<a·class="indexterm"·href="#idp59366072">查看整个·PR·数据库</a></dt></dl></div><div·class="indexdiv"><h3>B</h3><dl><dt>BSD·版权声明,<a·class="indexterm"·href="#idp59540792">新代码或重要的增值软件包</a></dt></dl></div><div·class="indexdiv"><h3>D</h3><dl><dt>diff,<a·class="indexterm"·href="#idp59443256">对于现有源代码的修改</a></dt></dl></div><div·class="indexdiv"><h3>F</h3><dl><dt>FreeBSD-CURRENT,<a·class="indexterm"·href="#idp59443256">对于现有源代码的修改</a></dt></dl></div><div·class="indexdiv"><h3>G</h3><dl><dt>GNU·General·Public·License,<a·class="indexterm"·href="#idp59540792">新代码或重要的增·✂ |
Offset 1, 9 lines modified | Offset 1, 9 lines modified | ||
1 | <?xml·version="1.0"·encoding="utf-8"?> | 1 | <?xml·version="1.0"·encoding="utf-8"?> |
2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>Linux®·用户的·FreeBSD·快速入门向导</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="本文档旨在快速使那些高级·Linux·用户熟悉FreeBSD的一些基础知识。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp608 | 2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>Linux®·用户的·FreeBSD·快速入门向导</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="本文档旨在快速使那些高级·Linux·用户熟悉FreeBSD的一些基础知识。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp60803768"></a><span·class="trademark">Linux</span>®·用户的·FreeBSD·快速入门向导</h1></div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="authorgroup"><div·class="author"><h3·class="author"><span·class="firstname">John</span>·<span·class="surname">F·✂ |
3 | ··i486,·Itanium,·Pentium,·和·Xeon·是·Intel·Corporation | 3 | ··i486,·Itanium,·Pentium,·和·Xeon·是·Intel·Corporation |
4 | ··及其分支机构在美国和其他国家的商标或注册商标。</p><p>Red·Hat,·RPM,·是·Red·Hat,·Inc. | 4 | ··及其分支机构在美国和其他国家的商标或注册商标。</p><p>Red·Hat,·RPM,·是·Red·Hat,·Inc. |
5 | ··在美国和其他国家的注册商标。</p><p>UNIX是·Open·Group | 5 | ··在美国和其他国家的注册商标。</p><p>UNIX是·Open·Group |
6 | ··在美国和其它国家的注册商标。</p><p>许多制造商和经销商使用一些称为商标的图案或文字设计来彰显自己的产品。 | 6 | ··在美国和其它国家的注册商标。</p><p>许多制造商和经销商使用一些称为商标的图案或文字设计来彰显自己的产品。 |
7 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 | 7 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 |
8 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>本文档旨在快速使那些高级·<span·class="trademark">Linux</span>® | 8 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>本文档旨在快速使那些高级·<span·class="trademark">Linux</span>® |
9 | ········用户熟悉FreeBSD的一些基础知识。</p></div></div></div><div·class="docformatnavi"> | 9 | ········用户熟悉FreeBSD的一些基础知识。</p></div></div></div><div·class="docformatnavi"> |
Offset 1, 21 lines modified | Offset 1, 21 lines modified | ||
1 | <?xml·version="1.0"·encoding="utf-8"?> | 1 | <?xml·version="1.0"·encoding="utf-8"?> |
2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>NanoBSD·简介</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="这篇文档提供了关于·NanoBSD·工具的介绍信息,·这一工具可以用来创建用于嵌入式应用的·FreeBSD·系统映像,·以适应存放到袖珍闪存·(Compact·Flash)·卡·(或其它大容量存储介质)·上的需要。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp | 2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>NanoBSD·简介</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="这篇文档提供了关于·NanoBSD·工具的介绍信息,·这一工具可以用来创建用于嵌入式应用的·FreeBSD·系统映像,·以适应存放到袖珍闪存·(Compact·Flash)·卡·(或其它大容量存储介质)·上的需要。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp56853560"></a>NanoBSD·简介</h1></div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="authorgroup"><div·class="author"><h3·class="author"><span·class="firstname">Daniel</span>·<span·class="·✂ |
3 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 | 3 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 |
4 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>这篇文档提供了关于·<span·class="application">NanoBSD</span>·工具的介绍信息, | 4 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>这篇文档提供了关于·<span·class="application">NanoBSD</span>·工具的介绍信息, |
5 | » 这一工具可以用来创建用于嵌入式应用的·FreeBSD·系统映像, | 5 | » 这一工具可以用来创建用于嵌入式应用的·FreeBSD·系统映像, |
6 | » 以适应存放到袖珍闪存·(Compact·Flash)·卡·(或其它大容量存储介质)·上的需要。</p></div></div></div><div·class="docformatnavi"> | 6 | » 以适应存放到袖珍闪存·(Compact·Flash)·卡·(或其它大容量存储介质)·上的需要。</p></div></div></div><div·class="docformatnavi"> |
7 | ······[ | 7 | ······[ |
8 | ······<a·href="index.html">章节模式</a> | 8 | ······<a·href="index.html">章节模式</a> |
9 | ······/ | 9 | ······/ |
10 | ······ | 10 | ······ |
11 | » ··完整模式 | 11 | » ··完整模式 |
12 | » | 12 | » |
13 | ······] | 13 | ······] |
14 | ····</div><hr·/></div><div·class="toc"><div·class="toc-title">目录</div><dl·class="toc"><dt><span·class="sect1"><a·href="#intro">1.·NanoBSD·简介</a></span></dt><dt><span·class="sect1"><a·href="#howto">2.·如何使用·NanoBSD</a></span></dt><dt><span·class="index"><a·href="#idp596 | 14 | ····</div><hr·/></div><div·class="toc"><div·class="toc-title">目录</div><dl·class="toc"><dt><span·class="sect1"><a·href="#intro">1.·NanoBSD·简介</a></span></dt><dt><span·class="sect1"><a·href="#howto">2.·如何使用·NanoBSD</a></span></dt><dt><span·class="index"><a·href="#idp59645496">索引</a></span></dt></dl></div><div·class="sect1"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"·style="clear:·both"><a·id="intro"></a>1. NanoBSD·简介</h2></div></div></div><a·id="idp58168760"·class="indexterm"></a><p><span·class="application">NanoBSD</span>·是·Poul-Henning·Kamp·目前正在开发的一项工具。 |
15 | ······它可以用来创建用于嵌入式应用的·FreeBSD·系统映像, | 15 | ······它可以用来创建用于嵌入式应用的·FreeBSD·系统映像, |
16 | ······以便配合袖珍闪存·(Compact·Flash)·卡·(或其他大容量存储介质)·使用。</p><p>这一工具也可以用来构建定制的安装映像, | 16 | ······以便配合袖珍闪存·(Compact·Flash)·卡·(或其他大容量存储介质)·使用。</p><p>这一工具也可以用来构建定制的安装映像, |
17 | ······以简化通常称为·<span·class="quote">“<span·class="quote">计算设备·(computer·appliances)</span>”</span> | 17 | ······以简化通常称为·<span·class="quote">“<span·class="quote">计算设备·(computer·appliances)</span>”</span> |
18 | ······的系统的安装和维护工作。·计算设备通常在产品中将捆绑硬件和软件, | 18 | ······的系统的安装和维护工作。·计算设备通常在产品中将捆绑硬件和软件, |
19 | ······或者换言之,·所有的应用程序都是预先装好的。 | 19 | ······或者换言之,·所有的应用程序都是预先装好的。 |
20 | ······这些设备可以直接插到暨存的网络中, | 20 | ······这些设备可以直接插到暨存的网络中, |
21 | ······并·(几乎是)·立即投入使用。</p><p><span·class="application">NanoBSD</span>·提供的功能包括:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p>可以和·FreeBSD·一样使用·Ports·和预编译包── | 21 | ······并·(几乎是)·立即投入使用。</p><p><span·class="application">NanoBSD</span>·提供的功能包括:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p>可以和·FreeBSD·一样使用·Ports·和预编译包── |
Offset 33, 50 lines modified | Offset 33, 50 lines modified | ||
33 | » <code·class="filename">/var</code>·目录均为 | 33 | » <code·class="filename">/var</code>·目录均为 |
34 | » <a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=md&sektion=4&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">md</span>(4)</span></a>·(malloc)·盘。</p><p>配置文件分区保存在 | 34 | » <a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=md&sektion=4&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">md</span>(4)</span></a>·(malloc)·盘。</p><p>配置文件分区保存在 |
35 | » <code·class="filename">/cfg</code>·目录。 | 35 | » <code·class="filename">/cfg</code>·目录。 |
36 | » 它包含了用于·<code·class="filename">/etc</code> | 36 | » 它包含了用于·<code·class="filename">/etc</code> |
37 | » 目录的文件,·在启动之后暂时以只读方式挂接。·因此, | 37 | » 目录的文件,·在启动之后暂时以只读方式挂接。·因此, |
38 | » 在需要从·<code·class="filename">/etc</code>·向 | 38 | » 在需要从·<code·class="filename">/etc</code>·向 |
39 | » <code·class="filename">/cfg</code>·目录复制所进行的、 | 39 | » <code·class="filename">/cfg</code>·目录复制所进行的、 |
40 | » 希望在重启时保持不变的配置时,·需要进行一些额外的操作。</p><div·class="example"><a·id="idp59 | 40 | » 希望在重启时保持不变的配置时,·需要进行一些额外的操作。</p><div·class="example"><a·id="idp59026104"></a><div·class="example-title">例 1. 在·<code·class="filename">/etc/resolv.conf</code>·中进行需要保持的修改</div><div·class="example-contents"><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>vi·/etc/resolv.conf</code></strong> |
41 | [...] | 41 | [...] |
42 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/cfg</code></strong> | 42 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/cfg</code></strong> |
43 | <code·class="prompt">#</code>·<strong·class="userinput"><code>cp·/etc/resolv.conf·/cfg</code></strong> | 43 | <code·class="prompt">#</code>·<strong·class="userinput"><code>cp·/etc/resolv.conf·/cfg</code></strong> |
44 | <code·class="prompt">#</code>·<strong·class="userinput"><code>umount·/cfg</code></strong></pre></div></div><br·class="example-break"·/><div·xmlns=""·class="note"><h3·class="admontitle">注意:·</h3><p·xmlns="http://www.w3.org/1999/xhtml">只有在系统启动过程中,·以及需要修改配置文件的场合,·才需要挂接包含 | 44 | <code·class="prompt">#</code>·<strong·class="userinput"><code>umount·/cfg</code></strong></pre></div></div><br·class="example-break"·/><div·xmlns=""·class="note"><h3·class="admontitle">注意:·</h3><p·xmlns="http://www.w3.org/1999/xhtml">只有在系统启动过程中,·以及需要修改配置文件的场合,·才需要挂接包含 |
45 | » ··<code·class="filename">/cfg</code>·的那个分区。</p><p·xmlns="http://www.w3.org/1999/xhtml">在任何时候都保持挂接·<code·class="filename">/cfg</code> | 45 | » ··<code·class="filename">/cfg</code>·的那个分区。</p><p·xmlns="http://www.w3.org/1999/xhtml">在任何时候都保持挂接·<code·class="filename">/cfg</code> |
46 | » ··不是一个好主意,·特别是当您把·<span·class="application">NanoBSD</span> | 46 | » ··不是一个好主意,·特别是当您把·<span·class="application">NanoBSD</span> |
47 | » ··放在不适合进行大量写操作的分区时 | 47 | » ··放在不适合进行大量写操作的分区时 |
48 | » ··(由于文件系统的同步进程会定期向系统盘写一些数据)。</p></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp593 | 48 | » ··(由于文件系统的同步进程会定期向系统盘写一些数据)。</p></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59361208"></a>2.2. 构建·NanoBSD·映像</h3></div></div></div><p><span·class="application">NanoBSD</span>·映像是通过使用非常简单的 |
49 | » <code·class="filename">nanobsd.sh</code>·shell·脚本来构建的,·这个脚本可以在 | 49 | » <code·class="filename">nanobsd.sh</code>·shell·脚本来构建的,·这个脚本可以在 |
50 | » <code·class="filename">/usr/src/tools/tools/nanobsd</code> | 50 | » <code·class="filename">/usr/src/tools/tools/nanobsd</code> |
51 | » 目录中找到。·这个脚本建立的映像文件,·可以用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=dd&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">dd</span>(1)</span></a>·工具复制到存储介质上。</p><p>构建 | 51 | » 目录中找到。·这个脚本建立的映像文件,·可以用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=dd&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">dd</span>(1)</span></a>·工具复制到存储介质上。</p><p>构建 |
52 | » <span·class="application">NanoBSD</span>·映像所需的命令是:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>cd·/usr/src/tools/tools/nanobsd</code></strong>·<a·id="nbsd-cd"></a><span><img·src="imagelib/callouts/1.png"·alt="1"·border="0"·/></span> | 52 | » <span·class="application">NanoBSD</span>·映像所需的命令是:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>cd·/usr/src/tools/tools/nanobsd</code></strong>·<a·id="nbsd-cd"></a><span><img·src="imagelib/callouts/1.png"·alt="1"·border="0"·/></span> |
53 | <code·class="prompt">#</code>·<strong·class="userinput"><code>sh·nanobsd.sh</code></strong>·<a·id="nbsd-sh"></a><span><img·src="imagelib/callouts/2.png"·alt="2"·border="0"·/></span> | 53 | <code·class="prompt">#</code>·<strong·class="userinput"><code>sh·nanobsd.sh</code></strong>·<a·id="nbsd-sh"></a><span><img·src="imagelib/callouts/2.png"·alt="2"·border="0"·/></span> |
54 | <code·class="prompt">#</code>·<strong·class="userinput"><code>cd·/usr/obj/nanobsd.full</code></strong>·<a·id="nbsd-cd2"></a><span><img·src="imagelib/callouts/3.png"·alt="3"·border="0"·/></span> | 54 | <code·class="prompt">#</code>·<strong·class="userinput"><code>cd·/usr/obj/nanobsd.full</code></strong>·<a·id="nbsd-cd2"></a><span><img·src="imagelib/callouts/3.png"·alt="3"·border="0"·/></span> |
55 | <code·class="prompt">#</code>·<strong·class="userinput"><code>dd·if=_.disk.full·of=/dev/da0·bs=64k</code></strong>·<a·id="nbsd-dd"></a><span><img·src="imagelib/callouts/4.png"·alt="4"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>在存储介质上安装·<span·class="application">NanoBSD</span>。</p></td></tr></table></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp594 | 55 | <code·class="prompt">#</code>·<strong·class="userinput"><code>dd·if=_.disk.full·of=/dev/da0·bs=64k</code></strong>·<a·id="nbsd-dd"></a><span><img·src="imagelib/callouts/4.png"·alt="4"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>在存储介质上安装·<span·class="application">NanoBSD</span>。</p></td></tr></table></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59413688"></a>2.3. 定制·NanoBSD·映像</h3></div></div></div><p>这可能是·<span·class="application">NanoBSD</span>·最为重要, |
56 | » 同时也是您最感兴趣的功能。·同时,·您在开发 | 56 | » 同时也是您最感兴趣的功能。·同时,·您在开发 |
57 | » <span·class="application">NanoBSD</span>·应用时, | 57 | » <span·class="application">NanoBSD</span>·应用时, |
58 | » 这也是相当耗时的过程。</p><p>执行下面的命令将使 | 58 | » 这也是相当耗时的过程。</p><p>执行下面的命令将使 |
59 | » <code·class="filename">nanobsd.sh</code>·从当前目录中的 | 59 | » <code·class="filename">nanobsd.sh</code>·从当前目录中的 |
60 | » <code·class="filename">myconf.nano</code>·文件读取配置:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>sh·nanobsd.sh·-c·myconf.nano</code></strong></pre><p>定制过程包含两步:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p>配置选项</p></li><li·class="listitem"><p>定制函数</p></li></ul></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp594 | 60 | » <code·class="filename">myconf.nano</code>·文件读取配置:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>sh·nanobsd.sh·-c·myconf.nano</code></strong></pre><p>定制过程包含两步:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p>配置选项</p></li><li·class="listitem"><p>定制函数</p></li></ul></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59444664"></a>2.3.1. 配置选项</h4></div></div></div><p>通过对配置进行设置,·可以配置用以传递给 |
61 | ··········<span·class="application">NanoBSD</span>·构建过程中 | 61 | ··········<span·class="application">NanoBSD</span>·构建过程中 |
62 | » ··<code·class="buildtarget">buildworld</code> | 62 | » ··<code·class="buildtarget">buildworld</code> |
63 | ··········和·<code·class="buildtarget">installworld</code>·阶段的联编和安装选项,·以及 | 63 | ··········和·<code·class="buildtarget">installworld</code>·阶段的联编和安装选项,·以及 |
64 | ··········<span·class="application">NanoBSD</span>·的主构建过程中的选项。 | 64 | ··········<span·class="application">NanoBSD</span>·的主构建过程中的选项。 |
65 | ··········通过使用这些选项可以削减系统的尺寸,·使之能够放入 | 65 | ··········通过使用这些选项可以削减系统的尺寸,·使之能够放入 |
66 | ··········64MB·的存储。·您还可以进一步通过这些选项来削减·FreeBSD, | 66 | ··········64MB·的存储。·您还可以进一步通过这些选项来削减·FreeBSD, |
67 | ··········直到它只包含内核以及两三个用户环境文件为止。</p><p>配置文件中包含用以代替默认值的配置选项。 | 67 | ··········直到它只包含内核以及两三个用户环境文件为止。</p><p>配置文件中包含用以代替默认值的配置选项。 |
68 | » ··最重要的语句包括:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p><code·class="literal">NANO_NAME</code>·──·本次构建的名称 | 68 | » ··最重要的语句包括:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p><code·class="literal">NANO_NAME</code>·──·本次构建的名称 |
69 | » ······(用于创建工作目录的名字)。</p></li><li·class="listitem"><p><code·class="literal">NANO_SRC</code>·──·用以联编和构建映像的源码树的位置。</p></li><li·class="listitem"><p><code·class="literal">NANO_KERNEL</code>·──·用以联编内核的配置文件的名字。</p></li><li·class="listitem"><p><code·class="literal">CONF_BUILD</code>·──·用于传递给 | 69 | » ······(用于创建工作目录的名字)。</p></li><li·class="listitem"><p><code·class="literal">NANO_SRC</code>·──·用以联编和构建映像的源码树的位置。</p></li><li·class="listitem"><p><code·class="literal">NANO_KERNEL</code>·──·用以联编内核的配置文件的名字。</p></li><li·class="listitem"><p><code·class="literal">CONF_BUILD</code>·──·用于传递给 |
70 | » ······<code·class="buildtarget">buildworld</code>·构建阶段的选项。</p></li><li·class="listitem"><p><code·class="literal">CONF_INSTALL</code>·──·用于传递给 | 70 | » ······<code·class="buildtarget">buildworld</code>·构建阶段的选项。</p></li><li·class="listitem"><p><code·class="literal">CONF_INSTALL</code>·──·用于传递给 |
71 | » ······<code·class="buildtarget">installworld</code>·构建阶段的选项。</p></li><li·class="listitem"><p><code·class="literal">CONF_WORLD</code>·──·用以传递给 | 71 | » ······<code·class="buildtarget">installworld</code>·构建阶段的选项。</p></li><li·class="listitem"><p><code·class="literal">CONF_WORLD</code>·──·用以传递给 |
72 | » ······<code·class="buildtarget">buildworld</code>·和 | 72 | » ······<code·class="buildtarget">buildworld</code>·和 |
73 | » ······<code·class="buildtarget">installworld</code>·这两个构建阶段的选项。</p></li><li·class="listitem"><p><code·class="literal">FlashDevice</code>·──·定义所用的介质类型。 | 73 | » ······<code·class="buildtarget">installworld</code>·这两个构建阶段的选项。</p></li><li·class="listitem"><p><code·class="literal">FlashDevice</code>·──·定义所用的介质类型。 |
74 | » ······要了解进一步的细节,·请参考·<code·class="filename">FlashDevice.sub</code> | 74 | » ······要了解进一步的细节,·请参考·<code·class="filename">FlashDevice.sub</code> |
75 | » ······文件。</p></li></ul></div></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 75 | » ······文件。</p></li></ul></div></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59487288"></a>2.3.2. 定制函数</h4></div></div></div><p>通过在配置文件中使用·shell·函数可以进一步微调 |
76 | » ··<span·class="application">NanoBSD</span>。·下面的例子展示了定制函数的基本模式:</p><pre·class="programlisting">cust_foo·()·( | 76 | » ··<span·class="application">NanoBSD</span>。·下面的例子展示了定制函数的基本模式:</p><pre·class="programlisting">cust_foo·()·( |
77 | » echo·"bar=baz"·>·\ | 77 | » echo·"bar=baz"·>·\ |
78 | » » ${NANO_WORLDDIR}/etc/foo | 78 | » » ${NANO_WORLDDIR}/etc/foo |
79 | ) | 79 | ) |
80 | customize_cmd·cust_foo</pre><p>下面是一个更贴近实际的例子,·它将默认的 | 80 | customize_cmd·cust_foo</pre><p>下面是一个更贴近实际的例子,·它将默认的 |
81 | ··········<code·class="filename">/etc</code>·目录尺寸, | 81 | ··········<code·class="filename">/etc</code>·目录尺寸, |
82 | ··········从·5MB·调整为·30MB:</p><pre·class="programlisting">cust_etc_size·()·( | 82 | ··········从·5MB·调整为·30MB:</p><pre·class="programlisting">cust_etc_size·()·( |
Offset 85, 24 lines modified | Offset 85, 24 lines modified | ||
85 | ) | 85 | ) |
86 | customize_cmd·cust_etc_size</pre><p>除此之外,·还有几个默认的预定义定制函数:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p><code·class="literal">cust_comconsole</code>·──·在·VGA·设备上禁止 | 86 | customize_cmd·cust_etc_size</pre><p>除此之外,·还有几个默认的预定义定制函数:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p><code·class="literal">cust_comconsole</code>·──·在·VGA·设备上禁止 |
87 | » ······<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=getty&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">getty</span>(8)</span></a> | 87 | » ······<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=getty&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">getty</span>(8)</span></a> |
88 | » ······(<code·class="filename">/dev/ttyv*</code>·设备节点)·并启用串口·COM1 | 88 | » ······(<code·class="filename">/dev/ttyv*</code>·设备节点)·并启用串口·COM1 |
89 | » ······作为系统控制台。</p></li><li·class="listitem"><p><code·class="literal">cust_allow_ssh_root</code>·──·允许 | 89 | » ······作为系统控制台。</p></li><li·class="listitem"><p><code·class="literal">cust_allow_ssh_root</code>·──·允许 |
90 | » ······<code·class="systemitem">root</code>·通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=sshd&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">sshd</span>(8)</span></a>·登录。</p></li><li·class="listitem"><p><code·class="literal">cust_install_files</code>·── | 90 | » ······<code·class="systemitem">root</code>·通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=sshd&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">sshd</span>(8)</span></a>·登录。</p></li><li·class="listitem"><p><code·class="literal">cust_install_files</code>·── |
91 | » ······从·<code·class="filename">nanobsd/Files</code> | 91 | » ······从·<code·class="filename">nanobsd/Files</code> |
92 | » ······目录中安装文件,·这包含一些实用的系统管理脚本。</p></li></ul></div></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp595 | 92 | » ······目录中安装文件,·这包含一些实用的系统管理脚本。</p></li></ul></div></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59515320"></a>2.3.3. 安装预编译软件包</h4></div></div></div><p>通过增加自定义的函数,·可以在·<span·class="application">NanoBSD</span> |
93 | » ··增加预编译的软件包。·下面的函数会添加位于 | 93 | » ··增加预编译的软件包。·下面的函数会添加位于 |
94 | » ··<code·class="filename">/usr/src/tools/tools/nanobsd/packages</code> | 94 | » ··<code·class="filename">/usr/src/tools/tools/nanobsd/packages</code> |
95 | » ··的全部预编译软件包:</p><pre·class="programlisting">install_packages·()·( | 95 | » ··的全部预编译软件包:</p><pre·class="programlisting">install_packages·()·( |
96 | mkdir·-p·${NANO_WORLDDIR}/packages | 96 | mkdir·-p·${NANO_WORLDDIR}/packages |
97 | cp·/usr/src/tools/tools/nanobsd/packages/*·${NANO_WORLDDIR}/packages | 97 | cp·/usr/src/tools/tools/nanobsd/packages/*·${NANO_WORLDDIR}/packages |
98 | chroot·${NANO_WORLDDIR}·sh·-c·'cd·packages;·pkg_add·-v·*;cd·..;' | 98 | chroot·${NANO_WORLDDIR}·sh·-c·'cd·packages;·pkg_add·-v·*;cd·..;' |
99 | rm·-rf·${NANO_WORLDDIR}/packages | 99 | rm·-rf·${NANO_WORLDDIR}/packages |
100 | ) | 100 | ) |
101 | customize_cmd·install_packages</pre></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp595 | 101 | customize_cmd·install_packages</pre></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59521720"></a>2.3.4. 配置文件举例</h4></div></div></div><p>下面是一个用于构建定制的·<span·class="application">NanoBSD</span>·映像的完整例子:</p><pre·class="programlisting">NANO_NAME=custom |
102 | NANO_SRC=/usr/src | 102 | NANO_SRC=/usr/src |
103 | NANO_KERNEL=MYKERNEL | 103 | NANO_KERNEL=MYKERNEL |
104 | NANO_IMAGES=2 | 104 | NANO_IMAGES=2 |
105 | CONF_BUILD=' | 105 | CONF_BUILD=' |
106 | NO_KLDLOAD=YES | 106 | NO_KLDLOAD=YES |
107 | NO_NETGRAPH=YES | 107 | NO_NETGRAPH=YES |
Offset 143, 27 lines modified | Offset 143, 27 lines modified | ||
143 | » touch·${NANO_WORLDDIR}/boot/loader.conf | 143 | » touch·${NANO_WORLDDIR}/boot/loader.conf |
144 | » echo·"beastie_disable=\"YES\""·>>·${NANO_WORLDDIR}/boot/loader.conf | 144 | » echo·"beastie_disable=\"YES\""·>>·${NANO_WORLDDIR}/boot/loader.conf |
145 | ) | 145 | ) |
146 | customize_cmd·cust_comconsole | 146 | customize_cmd·cust_comconsole |
147 | customize_cmd·cust_install_files | 147 | customize_cmd·cust_install_files |
148 | customize_cmd·cust_allow_ssh_root | 148 | customize_cmd·cust_allow_ssh_root |
149 | customize_cmd·cust_nobeastie</pre></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp595 | 149 | customize_cmd·cust_nobeastie</pre></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59540664"></a>2.4. 更新·NanoBSD</h3></div></div></div><p>更新·<span·class="application">NanoBSD</span>·相对而言较为简单:</p><div·class="procedure"><ol·class="procedure"·type="1"><li·class="step"><p>和之前一样构建新的·<span·class="application">NanoBSD</span>·映像文件。</p></li><li·class="step"><p>将新的映像放入正运行的 |
150 | » ····<span·class="application">NanoBSD</span>·设备中的一个未用的分区。</p><p>与之前最初安装·<span·class="application">NanoBSD</span>·的步骤相比, | 150 | » ····<span·class="application">NanoBSD</span>·设备中的一个未用的分区。</p><p>与之前最初安装·<span·class="application">NanoBSD</span>·的步骤相比, |
151 | » ····这一步骤最重要的区别在于这次不应使用·<code·class="filename">_.disk.full</code>·文件 | 151 | » ····这一步骤最重要的区别在于这次不应使用·<code·class="filename">_.disk.full</code>·文件 |
152 | » ····(它包含整个盘的映像), | 152 | » ····(它包含整个盘的映像), |
153 | » ····而应安装·<code·class="filename">_.disk.image</code>·映像·(这个文件中, | 153 | » ····而应安装·<code·class="filename">_.disk.image</code>·映像·(这个文件中, |
154 | » ····只包含一个系统分区)。</p></li><li·class="step"><p>重新启动,·并从新安装的分区中启动系统。</p></li><li·class="step"><p>如果一切顺利的话,·升级工作就完成了。</p></li><li·class="step"><p>如果发生了任何问题,·则可以从先前的分区启动 | 154 | » ····只包含一个系统分区)。</p></li><li·class="step"><p>重新启动,·并从新安装的分区中启动系统。</p></li><li·class="step"><p>如果一切顺利的话,·升级工作就完成了。</p></li><li·class="step"><p>如果发生了任何问题,·则可以从先前的分区启动 |
155 | » ··(其中包含了旧的、·可用的映像),·来尽可能快地恢复系统功能。 | 155 | » ··(其中包含了旧的、·可用的映像),·来尽可能快地恢复系统功能。 |
156 | » ··接下来可以修正新联编的版本中存在的问题,·并重复前述步骤。</p></li></ol></div><p>要在正在运行的 | 156 | » ··接下来可以修正新联编的版本中存在的问题,·并重复前述步骤。</p></li></ol></div><p>要在正在运行的 |
157 | » <span·class="application">NanoBSD</span>·系统中安装新的映像,·可以使用位于 | 157 | » <span·class="application">NanoBSD</span>·系统中安装新的映像,·可以使用位于 |
158 | » <code·class="filename">/root</code>·目录的 | 158 | » <code·class="filename">/root</code>·目录的 |
159 | » <code·class="filename">updatep1</code>·或 | 159 | » <code·class="filename">updatep1</code>·或 |
160 | » <code·class="filename">updatep2</code>·脚本, | 160 | » <code·class="filename">updatep2</code>·脚本, |
161 | » 具体使用哪一个脚本,·取决于正在运行的系统位于那个分区。</p><p>随时提供新·<span·class="application">NanoBSD</span>·映像所提供的服务, | 161 | » 具体使用哪一个脚本,·取决于正在运行的系统位于那个分区。</p><p>随时提供新·<span·class="application">NanoBSD</span>·映像所提供的服务, |
162 | » 以及采用的传输方法的不同,·您可以参考并使用下列三种方式之一:</p><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 162 | » 以及采用的传输方法的不同,·您可以参考并使用下列三种方式之一:</p><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59594680"></a>2.4.1. 使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ftp&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ftp</span>(1)</span></a></h4></div></div></div><p>如果传输速度是第一要务, |
163 | » ··采用下面的例子:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>ftp·myhost | 163 | » ··采用下面的例子:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>ftp·myhost |
164 | get·_.disk.image·"|·sh·updatep1"</code></strong></pre></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp596 | 164 | get·_.disk.image·"|·sh·updatep1"</code></strong></pre></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59601720"></a>2.4.2. 使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ssh&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ssh</span>(1)</span></a></h4></div></div></div><p>如果更倾向于安全传输,·应参考下面的例子:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>ssh·myhost·cat·_.disk.image.gz·|·zcat·|·sh·updatep1</code></strong></pre></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59608248"></a>2.4.3. 使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=nc&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">nc</span>(1)</span></a></h4></div></div></div><p>如果远程主机既不提供 |
165 | » ··<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ftp&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ftp</span>(1)</span></a>·服务,·也不提供·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=sshd&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">sshd</span>(8)</span></a>·服务:</p><div·class="procedure"><ol·class="procedure"·type="1"><li·class="step"><p>开始时,·在提供映像的主机上开启·TCP·监听, | 165 | » ··<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ftp&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ftp</span>(1)</span></a>·服务,·也不提供·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=sshd&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">sshd</span>(8)</span></a>·服务:</p><div·class="procedure"><ol·class="procedure"·type="1"><li·class="step"><p>开始时,·在提供映像的主机上开启·TCP·监听, |
166 | » ······并令其将映像文件发给客户机:</p><pre·class="screen">myhost<code·class="prompt">#</code>·<strong·class="userinput"><code>nc·-l·2222·<·_.disk.image</code></strong></pre><div·xmlns=""·class="note"><h3·class="admontitle">注意:·</h3><p·xmlns="http://www.w3.org/1999/xhtml">请确认您所使用的端口没有通过防火墙阻止来自 | 166 | » ······并令其将映像文件发给客户机:</p><pre·class="screen">myhost<code·class="prompt">#</code>·<strong·class="userinput"><code>nc·-l·2222·<·_.disk.image</code></strong></pre><div·xmlns=""·class="note"><h3·class="admontitle">注意:·</h3><p·xmlns="http://www.w3.org/1999/xhtml">请确认您所使用的端口没有通过防火墙阻止来自 |
167 | » » <span·class="application">NanoBSD</span>·客户机的联接请求。</p></div></li><li·class="step"><p>连接到提供新映像服务的主机,·并执行 | 167 | » » <span·class="application">NanoBSD</span>·客户机的联接请求。</p></div></li><li·class="step"><p>连接到提供新映像服务的主机,·并执行 |
168 | » ······<code·class="filename">updatep1</code>·脚本:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>nc·myhost·2222·|·sh·updatep1</code></strong></pre></li></ol></div></div></div></div><div·class="index"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp596 | 168 | » ······<code·class="filename">updatep1</code>·脚本:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>nc·myhost·2222·|·sh·updatep1</code></strong></pre></li></ol></div></div></div></div><div·class="index"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59645496"></a>索引</h2></div></div></div><div·class="index"><div·class="indexdiv"><h3>N</h3><dl><dt>NanoBSD,<a·class="indexterm"·href="#intro">NanoBSD·简介</a></dt></dl></div></div></div></div></body></html> |
Offset 1, 9 lines modified | Offset 1, 9 lines modified | ||
1 | <?xml·version="1.0"·encoding="utf-8"?> | 1 | <?xml·version="1.0"·encoding="utf-8"?> |
2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>BSD·rc.d脚本编程实战</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="初学者可能会发现,难以通过正式的文档,·基于·BSD·的·rc.d·框架,编写一些实际任务的·rc.d·脚本。·本文中,我们采用了一些复杂性不断增加的典型案例,·来展示适合每个案例的·rc.d·特性,·并探讨其中的工作原理。·这样的实验为大家进一步研究设计有效的·rc.d·应用程序提供了一些参考点。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp56 | 2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>BSD·rc.d脚本编程实战</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="初学者可能会发现,难以通过正式的文档,·基于·BSD·的·rc.d·框架,编写一些实际任务的·rc.d·脚本。·本文中,我们采用了一些复杂性不断增加的典型案例,·来展示适合每个案例的·rc.d·特性,·并探讨其中的工作原理。·这样的实验为大家进一步研究设计有效的·rc.d·应用程序提供了一些参考点。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp56394808"></a>BSD·rc.d脚本编程实战</h1></div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="author"><h3·class="author"><span·class="firstname">Y·✂ |
3 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 | 3 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 |
4 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>初学者可能会发现,难以通过正式的文档, | 4 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>初学者可能会发现,难以通过正式的文档, |
5 | ········基于·BSD·的·<code·class="filename">rc.d</code> | 5 | ········基于·BSD·的·<code·class="filename">rc.d</code> |
6 | ········框架,编写一些实际任务的·<code·class="filename">rc.d</code>·脚本。 | 6 | ········框架,编写一些实际任务的·<code·class="filename">rc.d</code>·脚本。 |
7 | ········本文中,我们采用了一些复杂性不断增加的典型案例, | 7 | ········本文中,我们采用了一些复杂性不断增加的典型案例, |
8 | ········来展示适合每个案例的·<code·class="filename">rc.d</code>·特性, | 8 | ········来展示适合每个案例的·<code·class="filename">rc.d</code>·特性, |
9 | ········并探讨其中的工作原理。 | 9 | ········并探讨其中的工作原理。 |
Offset 1, 9 lines modified | Offset 1, 9 lines modified | ||
1 | <?xml·version="1.0"·encoding="utf-8"?> | 1 | <?xml·version="1.0"·encoding="utf-8"?> |
2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>FreeBSD·操作系统在无远程控制台下的远程安装</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="本文归档了当远程控制台不可用的情况下·FreeBSD·操作系统的远程安装。·文章背后的主要灵感归功于和·Martin·Matuska·还有由·Paweł·Jakub·Dawidek·提供的宝贵输入合作的结果。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp | 2 | <!DOCTYPE·html·PUBLIC·"-//W3C//DTD·XHTML·1.0·Transitional//EN"·"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html·xmlns="http://www.w3.org/1999/xhtml"><head><meta·http-equiv="Content-Type"·content="text/html;·charset=utf-8"·/><title>FreeBSD·操作系统在无远程控制台下的远程安装</title><link·rel="stylesheet"·type="text/css"·href="docbook.css"·/><link·rev="made"·href="mailto:doc@FreeBSD.org"·/><meta·name="generator"·content="DocBook·XSL·Stylesheets·V1.78.1"·/><meta·name="description"·content="本文归档了当远程控制台不可用的情况下·FreeBSD·操作系统的远程安装。·文章背后的主要灵感归功于和·Martin·Matuska·还有由·Paweł·Jakub·Dawidek·提供的宝贵输入合作的结果。"·/><script·xmlns=""·type="text/javascript"·src="/layout/js/google.js"></script></head><body><div·xml:lang="zh_cn"·class="article"·lang="zh_cn"><div·xmlns=""·class="titlepage"><div><div><h1·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp56417464"></a>FreeBSD·操作系统在无远程控制台下的远程安装</h1></div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="author"><h3·class="author"><span·class="firstname">Daniel</span>·<span·class·✂ |
3 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 | 3 | ··本文档中出现的,·为·FreeBSD·Project·所知晓的商标,后面将以·<span·class="quote">“<span·class="quote">™</span>”</span>·或 |
4 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>本文归档了当远程控制台不可用的情况下·FreeBSD·操作系统的远程安装。 | 4 | ··<span·class="quote">“<span·class="quote">®</span>”</span>·符号来标注。</p></div></div><div>··2013-11-14·由·delphij.</div><div><div·xmlns="http://www.w3.org/1999/xhtml"·class="abstract"><div·class="abstract-title">摘要</div><p>本文归档了当远程控制台不可用的情况下·FreeBSD·操作系统的远程安装。 |
5 | ········文章背后的主要灵感归功于和·Martin·Matuska·还有由·Paweł·Jakub·Dawidek | 5 | ········文章背后的主要灵感归功于和·Martin·Matuska·还有由·Paweł·Jakub·Dawidek |
6 | ········提供的宝贵输入合作的结果。</p></div></div></div><div·class="docformatnavi"> | 6 | ········提供的宝贵输入合作的结果。</p></div></div></div><div·class="docformatnavi"> |
7 | ······[ | 7 | ······[ |
8 | ······<a·href="index.html">章节模式</a> | 8 | ······<a·href="index.html">章节模式</a> |
9 | ······/ | 9 | ······/ |
Offset 55, 52 lines modified | Offset 55, 52 lines modified | ||
55 | ········最适合的方法配置网络选项取决于我们是否事先知道我们会用到的网络接口, | 55 | ········最适合的方法配置网络选项取决于我们是否事先知道我们会用到的网络接口, |
56 | ········而且网络接口驱动程序应被系统为我们的硬件载入。 | 56 | ········而且网络接口驱动程序应被系统为我们的硬件载入。 |
57 | ········我们将看到·<span·class="application">mfsBSD</span> | 57 | ········我们将看到·<span·class="application">mfsBSD</span> |
58 | ········如何能够在任一种情况下被配置。</p><p>另外一件重要的事情是设置·<code·class="systemitem">root</code>·的密码。 | 58 | ········如何能够在任一种情况下被配置。</p><p>另外一件重要的事情是设置·<code·class="systemitem">root</code>·的密码。 |
59 | ········这将通过编辑·<code·class="filename">conf/rootpw.conf</code>·文件来完成。 | 59 | ········这将通过编辑·<code·class="filename">conf/rootpw.conf</code>·文件来完成。 |
60 | ········请记住该文件将把你的密码保存在简单的文本中, | 60 | ········请记住该文件将把你的密码保存在简单的文本中, |
61 | ········所以在此我们不推荐你使用真实的密码。然而, | 61 | ········所以在此我们不推荐你使用真实的密码。然而, |
62 | ········这只是一个临时使用一次的密码,你可以在随后安装好的系统中更改它。</p><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp593 | 62 | ········这只是一个临时使用一次的密码,你可以在随后安装好的系统中更改它。</p><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59376568"></a>3.1.1. 编辑·<code·class="filename">conf/interfaces.conf</code>·的方法</h4></div></div></div><p>如果我们安装好的网卡是未知类型的, |
63 | ··········我们可以使用·<span·class="application">mfsBSD</span>·的自动探测功能。 | 63 | ··········我们可以使用·<span·class="application">mfsBSD</span>·的自动探测功能。 |
64 | ··········<span·class="application">mfsBSD</span>·启动脚本能够探测到正确的驱动来使用, | 64 | ··········<span·class="application">mfsBSD</span>·启动脚本能够探测到正确的驱动来使用, |
65 | ··········基于网络接口的·MAC·地址,我们假设在 | 65 | ··········基于网络接口的·MAC·地址,我们假设在 |
66 | ··········<code·class="filename">conf/interfaces.conf</code>·文件中设置如下选项:</p><pre·class="programlisting">initconf_interfaces="ext1" | 66 | ··········<code·class="filename">conf/interfaces.conf</code>·文件中设置如下选项:</p><pre·class="programlisting">initconf_interfaces="ext1" |
67 | initconf_mac_ext1="00:00:00:00:00:00" | 67 | initconf_mac_ext1="00:00:00:00:00:00" |
68 | initconf_ip_ext1="192.168.0.2" | 68 | initconf_ip_ext1="192.168.0.2" |
69 | initconf_netmask_ext1="255.255.255.0"</pre><p>别忘了添加·<code·class="literal">defaultrouter</code> | 69 | initconf_netmask_ext1="255.255.255.0"</pre><p>别忘了添加·<code·class="literal">defaultrouter</code> |
70 | ··········信息到·<code·class="filename">conf/rc.conf</code>·文件中:</p><pre·class="programlisting">defaultrouter="192.168.0.1"</pre></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 70 | ··········信息到·<code·class="filename">conf/rc.conf</code>·文件中:</p><pre·class="programlisting">defaultrouter="192.168.0.1"</pre></div><div·class="sect3"><div·xmlns=""·class="titlepage"><div><div><h4·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59402808"></a>3.1.2. 编辑·<code·class="filename">conf/rc.conf</code>·的方法</h4></div></div></div><p>当网络接口的驱动是已知类型的,使用 |
71 | ··········<code·class="filename">conf/rc.conf</code>·文件添加联网选项会更加方便。 | 71 | ··········<code·class="filename">conf/rc.conf</code>·文件添加联网选项会更加方便。 |
72 | ··········该文件的语法跟·FreeBSD·中标准的·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=rc.conf&sektion=5&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">rc.conf</span>(5)</span></a>·文件的语法相同。</p><p>例如,当你知道被使用的将是一个·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=re&sektion=4&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">re</span>(4)</span></a>·网络接口设备, | 72 | ··········该文件的语法跟·FreeBSD·中标准的·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=rc.conf&sektion=5&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">rc.conf</span>(5)</span></a>·文件的语法相同。</p><p>例如,当你知道被使用的将是一个·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=re&sektion=4&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">re</span>(4)</span></a>·网络接口设备, |
73 | ··········你可以在·<code·class="filename">conf/rc.conf</code>·文件中设置如下选项:</p><pre·class="programlisting">defaultrouter="192.168.0.1" | 73 | ··········你可以在·<code·class="filename">conf/rc.conf</code>·文件中设置如下选项:</p><pre·class="programlisting">defaultrouter="192.168.0.1" |
74 | ifconfig_re0="inet·192.168.0.2·netmask·255.255.255.0"</pre></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="mfsbsd-build"></a>3.2. 构建一个·<span·class="application">mfsBSD</span>·映像</h3></div></div></div><p>构建一个·<span·class="application">mfsBSD</span> | 74 | ifconfig_re0="inet·192.168.0.2·netmask·255.255.255.0"</pre></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="mfsbsd-build"></a>3.2. 构建一个·<span·class="application">mfsBSD</span>·映像</h3></div></div></div><p>构建一个·<span·class="application">mfsBSD</span> |
75 | ········映像文件的过程是非常简单明了的。</p><p>第一步是挂载·FreeBSD·的安装·<acronym·class="acronym">CD</acronym>, | 75 | ········映像文件的过程是非常简单明了的。</p><p>第一步是挂载·FreeBSD·的安装·<acronym·class="acronym">CD</acronym>, |
76 | ········或者挂载安装·<acronym·class="acronym">ISO</acronym>·文件到 | 76 | ········或者挂载安装·<acronym·class="acronym">ISO</acronym>·文件到 |
77 | ········<code·class="filename">/cdrom</code>。 | 77 | ········<code·class="filename">/cdrom</code>。 |
78 | ········因为例子的缘故,在文章中我们将假定你下载的是·FreeBSD·7.0-RELEASE | 78 | ········因为例子的缘故,在文章中我们将假定你下载的是·FreeBSD·7.0-RELEASE |
79 | ········<acronym·class="acronym">ISO</acronym>·文件。使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=mdconfig&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">mdconfig</span>(8)</span></a> | 79 | ········<acronym·class="acronym">ISO</acronym>·文件。使用·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=mdconfig&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">mdconfig</span>(8)</span></a> |
80 | ········实用程序挂载·<acronym·class="acronym">ISO</acronym>·映像文件到 | 80 | ········实用程序挂载·<acronym·class="acronym">ISO</acronym>·映像文件到 |
81 | ········<code·class="filename">/cdrom</code>·目录非常简单:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>mdconfig·-a·-t·vnode·-u·10·-f·7.0-RELEASE-amd64-disc1.iso</code></strong> | 81 | ········<code·class="filename">/cdrom</code>·目录非常简单:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>mdconfig·-a·-t·vnode·-u·10·-f·7.0-RELEASE-amd64-disc1.iso</code></strong> |
82 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount_cd9660·/dev/md10·/cdrom</code></strong></pre><p>紧接着,构建可启动的·<span·class="application">mfsBSD</span> | 82 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount_cd9660·/dev/md10·/cdrom</code></strong></pre><p>紧接着,构建可启动的·<span·class="application">mfsBSD</span> |
83 | ········映像:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>make·BASE=/cdrom/7.0-RELEASE</code></strong></pre><div·xmlns=""·class="note"><h3·class="admontitle">注意:·</h3><p·xmlns="http://www.w3.org/1999/xhtml">上面的·<code·class="command">make</code>·命令必须在 | 83 | ········映像:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>make·BASE=/cdrom/7.0-RELEASE</code></strong></pre><div·xmlns=""·class="note"><h3·class="admontitle">注意:·</h3><p·xmlns="http://www.w3.org/1999/xhtml">上面的·<code·class="command">make</code>·命令必须在 |
84 | ··········<span·class="application">mfsBSD</span>·目录树的最高一层运行,也就是: | 84 | ··········<span·class="application">mfsBSD</span>·目录树的最高一层运行,也就是: |
85 | ··········<code·class="filename">~/mfsbsd-1.0-beta1/</code>。</p></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp594 | 85 | ··········<code·class="filename">~/mfsbsd-1.0-beta1/</code>。</p></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59456440"></a>3.3. 启动·<span·class="application">mfsBSD·</span></h3></div></div></div><p>现在·<span·class="application">mfsBSD</span>·映像已经准备好了, |
86 | ········必须把它上传到远程的一个正在运行的急救系统上或者一个预安装了 | 86 | ········必须把它上传到远程的一个正在运行的急救系统上或者一个预安装了 |
87 | ········<span·class="trademark">Linux</span>®·发行版的系统上。最适合做这个工作的工具是 | 87 | ········<span·class="trademark">Linux</span>®·发行版的系统上。最适合做这个工作的工具是 |
88 | ········<span·class="application">scp</span>:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>scp·disk.img·root@192.168.0.2:.</code></strong></pre><p>想要正确的引导·<span·class="application">mfsBSD</span>·映像, | 88 | ········<span·class="application">scp</span>:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>scp·disk.img·root@192.168.0.2:.</code></strong></pre><p>想要正确的引导·<span·class="application">mfsBSD</span>·映像, |
89 | ········必须把它安放在机器的第一块(可启动)设备上。 | 89 | ········必须把它安放在机器的第一块(可启动)设备上。 |
90 | ········这可能会和使用的例子我们假定的一样,第一块可启动磁盘设备是 | 90 | ········这可能会和使用的例子我们假定的一样,第一块可启动磁盘设备是 |
91 | ········<code·class="filename">sda</code>:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>dd·if=/root/disk.img·of=/dev/sda·bs=1m</code></strong></pre><p>如果一切正常,该映像现在应该存在于第一块设备的 | 91 | ········<code·class="filename">sda</code>:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>dd·if=/root/disk.img·of=/dev/sda·bs=1m</code></strong></pre><p>如果一切正常,该映像现在应该存在于第一块设备的 |
92 | ········<acronym·class="acronym">MBR</acronym>(主引导区)而机器也应该能够被启动了。 | 92 | ········<acronym·class="acronym">MBR</acronym>(主引导区)而机器也应该能够被启动了。 |
93 | ········使用工具·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ping&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ping</span>(8)</span></a>·来查看机器是否被正确启动。 | 93 | ········使用工具·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ping&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ping</span>(8)</span></a>·来查看机器是否被正确启动。 |
94 | ········一旦它回复在线状态,就应该能够使用·<code·class="systemitem">root</code> | 94 | ········一旦它回复在线状态,就应该能够使用·<code·class="systemitem">root</code> |
95 | ········用户和配置好的密码通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ssh&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ssh</span>(1)</span></a>·来访问它了。</p></div></div><div·class="sect1"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"·style="clear:·both"><a·id="installation"></a>4. FreeBSD·操作系统的安装</h2></div></div></div><p><span·class="application">mfsBSD</span>·成功被引导后它就应该能够通过 | 95 | ········用户和配置好的密码通过·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ssh&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ssh</span>(1)</span></a>·来访问它了。</p></div></div><div·class="sect1"><div·xmlns=""·class="titlepage"><div><div><h2·xmlns="http://www.w3.org/1999/xhtml"·class="title"·style="clear:·both"><a·id="installation"></a>4. FreeBSD·操作系统的安装</h2></div></div></div><p><span·class="application">mfsBSD</span>·成功被引导后它就应该能够通过 |
96 | ······<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ssh&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ssh</span>(1)</span></a>·登入了。这一节会描述如何创建·slices·并标记·slices·的·label, | 96 | ······<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=ssh&sektion=1&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">ssh</span>(1)</span></a>·登入了。这一节会描述如何创建·slices·并标记·slices·的·label, |
97 | ······为·RAID-1·配置·<span·class="application">gmirror</span>, | 97 | ······为·RAID-1·配置·<span·class="application">gmirror</span>, |
98 | ······还有如何使用·<span·class="application">sysinstall</span> | 98 | ······还有如何使用·<span·class="application">sysinstall</span> |
99 | ······来安装一个最小的FreeBSD操作系统版本。</p><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp594 | 99 | ······来安装一个最小的FreeBSD操作系统版本。</p><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59491128"></a>4.1. 准备磁盘</h3></div></div></div><p>首要的任务是为·FreeBSD·分配磁盘空间,也就是, |
100 | ········创建·slices·和·partitions。很显然, | 100 | ········创建·slices·和·partitions。很显然, |
101 | ········当前运行的系统是全部被载入到系统内存中的因此操作磁盘将没有任何问题。 | 101 | ········当前运行的系统是全部被载入到系统内存中的因此操作磁盘将没有任何问题。 |
102 | ········要完成这个任务,可以是使用·<span·class="application">sysinstall</span> | 102 | ········要完成这个任务,可以是使用·<span·class="application">sysinstall</span> |
103 | ········或者·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=fdisk&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">fdisk</span>(8)</span></a>·中的二者任一并结合工具·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=bsdlabel&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">bsdlabel</span>(8)</span></a>。</p><p>在开始时,将所有磁盘都标记成空的, | 103 | ········或者·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=fdisk&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">fdisk</span>(8)</span></a>·中的二者任一并结合工具·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=bsdlabel&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">bsdlabel</span>(8)</span></a>。</p><p>在开始时,将所有磁盘都标记成空的, |
104 | ········在每个磁盘上重复如下命令:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>dd·if=/dev/zero·of=/dev/ad0·count=2</code></strong></pre><p>下面,使用你喜欢的工具创建·slices·并标记磁盘·label。 | 104 | ········在每个磁盘上重复如下命令:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>dd·if=/dev/zero·of=/dev/ad0·count=2</code></strong></pre><p>下面,使用你喜欢的工具创建·slices·并标记磁盘·label。 |
105 | ········比较简单的方法是使用·<span·class="application">sysinstall</span>, | 105 | ········比较简单的方法是使用·<span·class="application">sysinstall</span>, |
106 | ········强大也可能几乎没有漏洞方法是使用标准的基于文本的·<span·class="trademark">UNIX</span>®·工具, | 106 | ········强大也可能几乎没有漏洞方法是使用标准的基于文本的·<span·class="trademark">UNIX</span>®·工具, |
Offset 141, 15 lines modified | Offset 141, 15 lines modified | ||
141 | ············<code·class="literal">d</code>·为 | 141 | ············<code·class="literal">d</code>·为 |
142 | ············<code·class="filename">/usr</code> | 142 | ············<code·class="filename">/usr</code> |
143 | ············还有最后·<code·class="literal">f</code>·被用于 | 143 | ············还有最后·<code·class="literal">f</code>·被用于 |
144 | ············<span·class="application">ZFS</span>。</p></td></tr><tr><td·width="5%"·valign="top"·align="left"><p><a·href="#bsdlabel-restore"><span><img·src="imagelib/callouts/4.png"·alt="4"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>引入你刚才创建的·label·到第二块磁盘, | 144 | ············<span·class="application">ZFS</span>。</p></td></tr><tr><td·width="5%"·valign="top"·align="left"><p><a·href="#bsdlabel-restore"><span><img·src="imagelib/callouts/4.png"·alt="4"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>引入你刚才创建的·label·到第二块磁盘, |
145 | ············所以两块磁盘会使用同样的·label。</p></td></tr><tr><td·width="5%"·valign="top"·align="left"><p><a·href="#gmirror1"><span><img·src="imagelib/callouts/6.png"·alt="6"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>注意·<code·class="option">-F</code>·选项被用在·swap | 145 | ············所以两块磁盘会使用同样的·label。</p></td></tr><tr><td·width="5%"·valign="top"·align="left"><p><a·href="#gmirror1"><span><img·src="imagelib/callouts/6.png"·alt="6"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>注意·<code·class="option">-F</code>·选项被用在·swap |
146 | ············交换分区的·partition。·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=gmirror&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">gmirror</span>(8)</span></a> | 146 | ············交换分区的·partition。·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=gmirror&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">gmirror</span>(8)</span></a> |
147 | ············这个指令认为设备处于可靠的状态除非电源系统故障。</p></td></tr><tr><td·width="5%"·valign="top"·align="left"><p><a·href="#newfs"><span><img·src="imagelib/callouts/7.png"·alt="7"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>在每个被镜像的分区上创建一个 | 147 | ············这个指令认为设备处于可靠的状态除非电源系统故障。</p></td></tr><tr><td·width="5%"·valign="top"·align="left"><p><a·href="#newfs"><span><img·src="imagelib/callouts/7.png"·alt="7"·border="0"·/></span></a>·</p></td><td·valign="top"·align="left"><p>在每个被镜像的分区上创建一个 |
148 | ············<span·class="application">UFS2</span>·的文件系统。</p></td></tr></table></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp596 | 148 | ············<span·class="application">UFS2</span>·的文件系统。</p></td></tr></table></div></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59646776"></a>4.2. 系统安装</h3></div></div></div><p>这是最重要的一部分。 |
149 | ········此节将描述如何在我们上一小节已经准备好的磁盘上安装一个最小的 | 149 | ········此节将描述如何在我们上一小节已经准备好的磁盘上安装一个最小的 |
150 | ········FreeBSD·版本。要达成这个目的,所有的文件安系统需要被挂载乃至于 | 150 | ········FreeBSD·版本。要达成这个目的,所有的文件安系统需要被挂载乃至于 |
151 | ········<span·class="application">sysinstall</span>·可以把·FreeBSD | 151 | ········<span·class="application">sysinstall</span>·可以把·FreeBSD |
152 | ········系统的内容写到磁盘上:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/dev/mirror/root·/mnt</code></strong> | 152 | ········系统的内容写到磁盘上:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/dev/mirror/root·/mnt</code></strong> |
153 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mkdir·/mnt/var·/mnt/usr</code></strong> | 153 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mkdir·/mnt/var·/mnt/usr</code></strong> |
154 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/dev/mirror/var·/mnt/var</code></strong> | 154 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/dev/mirror/var·/mnt/var</code></strong> |
155 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/dev/mirror/usr·/mnt/usr</code></strong></pre><p>当你做完这些时,打开·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=sysinstall&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">sysinstall</span>(8)</span></a>。 | 155 | <code·class="prompt">#</code>·<strong·class="userinput"><code>mount·/dev/mirror/usr·/mnt/usr</code></strong></pre><p>当你做完这些时,打开·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=sysinstall&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">sysinstall</span>(8)</span></a>。 |
Offset 174, 15 lines modified | Offset 174, 15 lines modified | ||
174 | ········选择一个距离你最近的镜像站点并交给 | 174 | ········选择一个距离你最近的镜像站点并交给 |
175 | ········<span·class="application">sysinstall</span> | 175 | ········<span·class="application">sysinstall</span> |
176 | ········假定网络已经配置完好。你将再回到 | 176 | ········假定网络已经配置完好。你将再回到 |
177 | ········<span·class="guimenuitem">Custom</span> | 177 | ········<span·class="guimenuitem">Custom</span> |
178 | ········(自定义)菜单。</p><p>最后,选择最后的选项来执行系统的安装过程, | 178 | ········(自定义)菜单。</p><p>最后,选择最后的选项来执行系统的安装过程, |
179 | ········<span·class="guimenuitem">Commit</span>, | 179 | ········<span·class="guimenuitem">Commit</span>, |
180 | ········当安装完成后退出·<span·class="application">sysinstall</span> | 180 | ········当安装完成后退出·<span·class="application">sysinstall</span> |
181 | ········即可。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59 | 181 | ········即可。</p></div><div·class="sect2"><div·xmlns=""·class="titlepage"><div><div><h3·xmlns="http://www.w3.org/1999/xhtml"·class="title"><a·id="idp59711160"></a>4.3. 后期安装步骤</h3></div></div></div><p>FreeBSD·操作系统现在应该安装完毕了;通常情况下, |
182 | ········安装过程还没有结束。还需要进行一些安装后期的步骤使得容许 | 182 | ········安装过程还没有结束。还需要进行一些安装后期的步骤使得容许 |
183 | ········FreeBSD·在将来启动并能够登入系统。</p><p>你现在必须·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=chroot&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">chroot</span>(8)</span></a> | 183 | ········FreeBSD·在将来启动并能够登入系统。</p><p>你现在必须·<a·class="citerefentry"·href="http://www.FreeBSD.org/cgi/man.cgi?query=chroot&sektion=8&manpath=freebsd-release-ports"><span·class="citerefentry"><span·class="refentrytitle">chroot</span>(8)</span></a> |
184 | ········到刚安装的全新的系统中来完成安装。 | 184 | ········到刚安装的全新的系统中来完成安装。 |
185 | ········使用如下命令:·</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>chroot·/mnt</code></strong></pre><p>要达到我们的目的,进行如下步骤:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p>拷贝·<code·class="literal">GENERIC</code>(通用)内核到 | 185 | ········使用如下命令:·</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>chroot·/mnt</code></strong></pre><p>要达到我们的目的,进行如下步骤:</p><div·class="itemizedlist"><ul·class="itemizedlist"·style="list-style-type:·disc;·"><li·class="listitem"><p>拷贝·<code·class="literal">GENERIC</code>(通用)内核到 |
186 | ············<code·class="filename">/boot/kernel</code> | 186 | ············<code·class="filename">/boot/kernel</code> |
187 | ············目录:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>cp·-Rp·/boot/GENERIC/*·/boot/kernel</code></strong></pre></li><li·class="listitem"><p>创建·<code·class="filename">/etc/rc.conf</code>, | 187 | ············目录:</p><pre·class="screen"><code·class="prompt">#</code>·<strong·class="userinput"><code>cp·-Rp·/boot/GENERIC/*·/boot/kernel</code></strong></pre></li><li·class="listitem"><p>创建·<code·class="filename">/etc/rc.conf</code>, |
188 | ············<code·class="filename">/etc/resolv.conf</code>·还有 | 188 | ············<code·class="filename">/etc/resolv.conf</code>·还有 |