⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 152.html

📁 本文详细介绍了学习FREEBSD的一些命令
💻 HTML
字号:
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>www.newok.com::FreeBSD使用大全</title>
<link rel=stylesheet href="newok.css" tppabs="http://www.newok.com/include/newok.css">
</head>

<body>

<div align=center>
<p>&nbsp;</p>
<table width=720>
<tr><td>
<strong>当前所在位置:</strong><a href="javascript:if(confirm('http://www.at.china.com/bsd/index.html  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.at.china.com/bsd/index.html'" tppabs="http://www.at.china.com/bsd/index.html" class=t1>FreeBSD使用大全>></a>
</td></tr>
</table>
<table width=700>
<tr><th><font color=white>FreeBSD使用大全(09):系统启动过程  </font></th></tr>
<tr><td>&nbsp;</td></tr>
<tr><td align=left><i>作者:</i>王波 </td></tr>
<tr><td>&nbsp;</td></tr>
<tr><td><font color=white><br>第3章&nbsp;系统管理和维护<br>  当使用安装程序Sysinstall完成了系统安装和基本配置任务之后,系统需要重新启动。在系统从硬盘上重新启动之后,一个完好的FreeBSD系统就展现在使用者面前了。系统将出现登录提示,允许使用者登录进入FreeB&nbsp;SD操作系统。<br><br>  Unix是一种多用户、多任务的操作系统,它支持并能管理多个用户使用系统,其用户分为普通用户和管理员两类。普通用户只能使用系统提供的具体应用功能,而只有管理员才能更改系统的配置、维护整个系统。FreeBSD系统的拥有者不但是仅仅使用系统的普通用户,同样也是整个系统的管理员,要负责系统维护的任务。<br><br>  Unix下系统维护的任务具有相当大的伸缩性,按照不同的系统的要求,可以非常简单,仅仅使用系统初始提供的管理策略即可,也能是一种相当复杂的任务,对访问的客户进行更严格、更全面的限制。无论如何,FreeBSD的使用和维护都是一件富有挑战性的任务。&nbsp;<br><br><br>系统的启动与关闭<br>  不象个人计算机上的其他几种操作系统,FreeBSD被设计为一种可以永久运行的系统,正常情况下不需要也不应该频繁的启动和关闭。然而,FreeBSD的启动过程从计算机系统自检到载入FreeBSD系统内核,其中经过了几个不同的阶段,这些阶段的操作都涉及到系统维护,因此相当重要,需要系统管理员加以了解。同样,由于FreeBSD是一个多用户系统,在后台运行着相当多对系统而言非常重要的进程,系统关闭时就需要首先关闭这些进程,因而FreeBS&nbsp;D的关闭过程也必须按照一定的要求来操作,否则就会对系统造成破坏。&nbsp;<br><br><br>系统启动过程<br><br>  普通个人计算机的启动过程相当简单,首先是系统BIOS自检,自检之后将载入启动硬盘上的主引导区,由主引导区上的引导程序再载入具体操作系统。标准的主引导区将按照启动分区的设置,引导该分区上的操作系统,FreeBSD也可以使用这种方式。但更常见的引导FreeBSD的方式,是使用FreeBSD&nbsp;Boot&nbsp;Manager,来管理和负责引导包括FreeBSD在内的多个操作系统。&nbsp;<br><br><br>多操作系统引导程序<br><br>  按照计算机启动硬盘第一个扇区的系统主引导程序的不同,计算机有不同的启动过程。FreeBSD最常使用&nbsp;FreeBSD&nbsp;Boot&nbsp;Manager,它可以让使用者在系统中共存的不同操作系统进行选择。&nbsp;<br><br>  如果使用了Boot&nbsp;Manager用于多操作系统的引导,则系统自检后首先进入Boot&nbsp;Manager的引导界面。<br><br>  F1:&nbsp;FreeBSD<br><br>  F2:&nbsp;Dos<br><br>  F5:&nbsp;Disk&nbsp;2<br><br>  Default&nbsp;F1<br><br>  Boot&nbsp;Manager使用计算机的功能键来启动各个分区的操作系统,使用F1将启动第一个分区wd0s1&nbsp;上的操作系统,F2启动wd0s2,F3对应wd0s3,等等,F5启动另一个硬盘上主引导区的引导程序。这样可以在第二个磁盘上也安装Boot&nbsp;Manager,由它来引导自己硬盘上各分区的操作系统。只有在分区的确存在的情况下,&nbsp;Boot&nbsp;Manager才显示相应的启动热键,并从分区的类型判断它是那种操作系统。在使用者选择了某个选项,或者经过了一定的延迟时间之后,Boot&nbsp;Manager就启动FreeBSD系统。<br><br>  使用Boot&nbsp;Manager作多操作系统引导需要注意的是:一旦在这台计算机中重新安装Dos/Windo&nbsp;ws系统,则主引导区就被重写,需要重新安装BootManager。<br><br>  当不想使用Boot&nbsp;Manager引导系统,而打算回到标准引导区的方式(不再需要引导多操作系统)时,可以使用DOS程序fdisk.exe来恢复主引导区的内容。也可以使用FreeBSD的sysinstall程序来重新安装标准主引导区。<br><br>  A:>&nbsp;fdisk&nbsp;/mbr<br><br>  但是,Boot&nbsp;Manager仍然使用BIOS调用来获得分区上的数据,由于BIOS只能访问硬盘1024&nbsp;柱面内的分区,因此FreeBSD的引导分区必须在1024柱面以内才能正常启动系统。新的BIOS中使用LBA等方式对硬盘数据进行了重新映射,来避免这个问题。然而就需注意不能随意更改BIOS中的硬盘映射方式不可随便更改,必须与硬盘进行分区时的设置一致,否则BIOS就不能正确找到以前设置的分区。&nbsp;<br><br><br>boot&nbsp;loader<br><br>  无论是标准引导程序,还是FreeBSD&nbsp;Boot&nbsp;Manager,都将载入FreeBSD基本分区的第一个扇区,这里放置着FreeBSD的启动程序Boot&nbsp;Block,它将载入FreeBSD文件系统中的boot&nbsp;l&nbsp;oader程序,不需进行任何操作,boot&nbsp;loader程序将引导系统内核来启动系统。但在这个过程中也可以中断自动启动进程,进入交互模式,从而更改启动内核、进行硬件设置、甚至提供了选择不同的boot&nbsp;loader程序的机会。<br><br>  FreeBSD&nbsp;3.1-release中更新了系统的boot&nbsp;loader程序,这个新boot&nbsp;loa&nbsp;der程序与FreeBSD&nbsp;2.2.x和3.0版本使用的boot&nbsp;loader不同,升级的原因之一是老版本的b&nbsp;oot&nbsp;loader不能启动ELF格式的内核,此外新版本的boot&nbsp;loader功能更强大。因此老版本的boo&nbsp;t&nbsp;loader的行为与下面描述的不同。<br><br>  通常没有必要改变Boot&nbsp;Loader,如果要更改使用的Boot&nbsp;Loader程序,就要在启动屏幕最先印出一个简单的斜线&nbsp;“/”&nbsp;时,在几秒时间内按下空格键,否则启动过程将略过这个步骤,直接进入下一步。如果按下空格,则系统将出现boot提示符。<br><br>  /<br><br>  >>FreeBSD/i386&nbsp;BOOT<br><br>  Default:&nbsp;0:wd(0,a)/boot/loader<br><br>  boot:<br><br>  此时输入&nbsp;“?”&nbsp;,可以列出对应的硬盘分区中根目录下的所有文件。这时可以在boot提示符下输入另一个b&nbsp;oot&nbsp;loader程序,启动该boot&nbsp;loader程序,也可以直接输入某个内核文件名,从而略过boot&nbsp;l&nbsp;oader而直接启动相应的内核。然而,通过boot&nbsp;loader能完成更多的任务,包括进行硬件资源设置。<br><br>  此时也可以列出、选择不同的硬盘分区上的不同启动文件,正如之前的提示信息,0:wd(0,a)用于一个包含&nbsp;FreeBSD根文件系统的子分区,其中第一个0为硬盘控制器的序号,而wd(0,a)为硬盘分区wd0a,根据硬盘分区情况,这对应第一个UFS分区上的根文件系统。而后面可以跟随目录和文件名,以及可以使用?来列出目录下的文件,当然选择启动内核的任务可以在boot&nbsp;loader内部中更好的完成,一般情况下不需要进入这个阶段改变boot&nbsp;loader程序。<br><br>  此后系统将进入Boot&nbsp;Loader程序中,由Boot&nbsp;Loader将内核/kernel和内核模块载入内存,接着Boot&nbsp;Loader就等待10秒间隔,在这个时间内可以让用户按下了除回车之外的其他任意键,进入Bo&nbsp;ot&nbsp;Loader的交互模式。<br><br>  /<br><br>  BTX&nbsp;loader&nbsp;1.00&nbsp;BTX&nbsp;version&nbsp;is&nbsp;1.01<br><br>  Console:&nbsp;internal&nbsp;video/keyboard<br><br>  BIOS&nbsp;drive&nbsp;A:&nbsp;is&nbsp;disk0<br><br>  BIOS&nbsp;drive&nbsp;C:&nbsp;is&nbsp;disk1<br><br>  BIOS&nbsp;drive&nbsp;D:&nbsp;is&nbsp;disk2<br><br>   <br><br>  FreeBSD/i386&nbsp;bootstrap&nbsp;loader,&nbsp;Revision&nbsp;0.5&nbsp;638/64512kB<br><br>  (wb@email.online.ha.cn,&nbsp;Web&nbsp;Mar&nbsp;3&nbsp;02:54:38&nbsp;CST&nbsp;1999)<br><br>  /kernel&nbsp;text=0x1697f2&nbsp;data=0x168d0+0x1f17c&nbsp;syms=[0x4+0x1eb70+0x4+0x2014a]<br><br>  /modules/splash_bmp.ko&nbsp;text=0x1025&nbsp;data=0xc+0x634&nbsp;syms=[0x4+0x400+0x4+0x213]<br><br>   <br><br>  Hit&nbsp;[Enter]&nbsp;to&nbsp;boot&nbsp;immediately,&nbsp;or&nbsp;any&nbsp;other&nbsp;key&nbsp;for&nbsp;command&nbsp;prompt.<br><br>  Booting&nbsp;[kernel]&nbsp;in&nbsp;8&nbsp;seconds...<br><br>   <br><br>  Type&nbsp;‘?’&nbsp;for&nbsp;a&nbsp;list&nbsp;of&nbsp;commands,&nbsp;‘help’&nbsp;for&nbsp;more&nbsp;detiled&nbsp;help.<br><br>  disk1s3a:><br><br>  新的Boot&nbsp;Loader使用BIOS的硬盘表示顺序,没有区分SCSI硬盘da和IDE硬盘wd,而直接使用disk0、disk1、disk2按BIOS中的顺序表示硬盘。本例中的提示符为disk1s3a,由于本例中使用的硬盘为IDE接口,因此这实际就代表wd1s3a分区。<br><br>  在boot&nbsp;loader提示符下有很多相当有用的命令,例如使用ls命令可以列出disk1s3a中各级目录下的文件,使用lsdev可以列出当前内核中的设备驱动,使用lsmod可以列出已经载入的内核模块,使用load&nbsp;可以载入另外的需要载入的内核模块,使用autoboot可以在给定时间之后启动系统,而使用boot命令可以立即启动系统内核,或者使用pnpscan命令扫描当前系统中的PNP卡。一般boot命令比较常用,例如使用&nbsp;“boot&nbsp;-s”&nbsp;命令,将启动系统并进入单用户模式,在这个模式下可以执行系统维护任务。通常由于只有可以信任的管理人员才能访问控制台,因此缺省状况下进入单用户模式不需要使用口令认证。<br><br>  在boot命令之后使用其他内核名字作参数,用来使用缺省内核/kernel之外的其他内核来启动系统。每个&nbsp;FreeBSD系统都至少具备一个备用的通用内核kernel.GENERIC,在当前系统内核被破坏的情况下可以使用它来启动系统。因此在引导程序被破坏而系统完好的情况下(通常是由于重新安装了Windows的原因),可以使用安装软盘或光盘启动,进入Boot&nbsp;Loader的交互模式,选择硬盘上的内核启动,然后进行修复而不需要重新安装。当在boot&nbsp;loader提示符下使用&nbsp;“boot&nbsp;-c”&nbsp;命令,在其后的启动过程中将进入UserConfig中,用于对内核中的硬件资源参数进行配置。与系统初始安装时进入UserConfig的方式不同,这将直接进入User&nbsp;Config的命令行模式,内核将出现UserConfig的提示符:<br><br>  config><br><br>  此时可以使用help命令查询可以使用的UserConfig命令,如果输入visual指令,表示使用vi&nbsp;sual方式配置系统硬件,则会进入UserConfig的全屏幕界面,否则就使用这个命令行方式进行硬件参数配置。命令行模式中可以使用ls命令列出不同的设备驱动程序,使用irq、drq、iomem等命令查看硬件的相应资源设置。<br><br>  命令行模式比全屏幕界面更强大的地方是能够对ISA&nbsp;PNP设备进行控制,这是通过pnp命令进行的。当IS&nbsp;A&nbsp;PNP卡由BIOS分配资源的时候,内核能以非PNP的驱动去探测它,这也是为何要在BIOS中关闭相关的PNP&nbsp;选项的原因。但如果在编译内核支持了PNP控制器,也可以在BIOS中设置为由OS(即FreeBSD)来管理硬件资源,这就需要使用pnp命令手工为ISA&nbsp;PNP硬件分配资源,以便非PNP的驱动能检测并正确设置资源。但是手工设置要求对PNP卡硬件相当了解,否则还是让BIOS来完成资源的分配更为适合。<br><br>  当退出UserConfig之后,或者在boot&nbsp;loader的交互模式下执行了boot命令,或者在bo&nbsp;ot&nbsp;loader提示进入交互模式的时候10秒钟内没有任何输入,则boot&nbsp;loader就会载入内核,并自动将控制权交给已经载入的FreeBSD内核程序,由内核探测计算机中的各个硬件,并将探测结果打印到屏幕上。使用键盘右上角的Pause键可以暂停屏幕输出,并可以使用Page&nbsp;Up,Page&nbsp;Down键上下滚动屏幕上的信息进行查看,最后再使用一次Pause键将打开屏幕输出,继续系统启动过程。内核的启动信息也可以在登录系统之后使用dmesg&nbsp;命令查看。<br><br>  FreeBSD&nbsp;3.0以前的FreeBSD版本使用的Boot&nbsp;Loader为一个较老的版本,因此提示信息与命令输入方式也略有不同,但基本实现同样的功能,旧Boot&nbsp;Loader程序的提示符直接就为&nbsp;“boot:”&nbsp;,可以直接输入&nbsp;“-s”&nbsp;、&nbsp;“-c”&nbsp;等参数进入单用户模式或进入UserConfig。启动时boot&nbsp;loa&nbsp;der都会在屏幕上打印提示信息,解释了基本用法和具体参数对应的含义。<br><br>  FreeBSD&nbsp;3.1之后可以设定系统启动标志图象(如同Windows9x的启动标志),那么内核的探测信息就不会显示在屏幕上,而是被这个启动图象遮住。<br><br>未完,待续。。。</font></td></tr>
<tr><td>&nbsp;</td></tr>
<tr><td align=right><i>来源:</i><a href="javascript:if(confirm('http://freebsd.online.ha.cn/  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://freebsd.online.ha.cn/'" tppabs="http://freebsd.online.ha.cn/">http://freebsd.online.ha.cn/</a></td></tr>
</table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
声明:本站的文章和软件是本人从网上收集整理的(除本人的作品之外),所有版权属于作者,<br>
如有侵犯您的权益,请指出,本站将立即改正,谢谢.
<hr  width=500>
<br>
<font color=#ffffff>Copyright 2000 <a href="javascript:if(confirm('http://www.newok.com/  \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address.  \n\nDo you want to open it from the server?'))window.location='http://www.newok.com/'" tppabs="http://www.newok.com/" class=t1>www.newok.com</a></font>
</div>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -