﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-kapok-随笔分类-Linux</title><link>http://www2.blogjava.net/kapok/category/647.html</link><description>垃圾桶,嘿嘿，我藏的这么深你们还能找到啊，真牛！</description><language>zh-cn</language><lastBuildDate>Wed, 28 Feb 2007 03:25:03 GMT</lastBuildDate><pubDate>Wed, 28 Feb 2007 03:25:03 GMT</pubDate><ttl>60</ttl><item><title>MOM备忘录</title><link>http://www.blogjava.net/kapok/archive/2005/08/28/10074.html</link><dc:creator>笨笨</dc:creator><author>笨笨</author><pubDate>Sat, 27 Aug 2005 17:57:00 GMT</pubDate><guid>http://www.blogjava.net/kapok/archive/2005/08/28/10074.html</guid><wfw:comment>http://www.blogjava.net/kapok/comments/10074.html</wfw:comment><comments>http://www.blogjava.net/kapok/archive/2005/08/28/10074.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kapok/comments/commentRss/10074.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kapok/services/trackbacks/10074.html</trackback:ping><description><![CDATA[MOM备忘录<BR>1.<BR>Overview of WebLogic Server Domains<BR><A href="http://e-docs.bea.com/wls/docs81/adminguide/overview_domain.html">http://e-docs.bea.com/wls/docs81/adminguide/overview_domain.html</A><BR><BR>2.<BR>Overview of Node Manager<BR><A href="http://e-docs.bea.com/wls/docs81/adminguide/nodemgr.html#1153289">http://e-docs.bea.com/wls/docs81/adminguide/nodemgr.html#1153289</A><BR><BR>3.<BR>WebLogic Server Tools<BR><A href="http://e-docs.bea.com/wls/docs81/toolstable/ToolsTable.html#1012180">http://e-docs.bea.com/wls/docs81/toolstable/ToolsTable.html#1012180</A><BR><BR>4.<BR>Using Ant Tasks to Configure a WebLogic Server Domain<BR><A href="http://e-docs.bea.com/wls/docs81/admin_ref/ant_tasks.html">http://e-docs.bea.com/wls/docs81/admin_ref/ant_tasks.html</A><BR><BR>5.<BR>EJB Subsystem Messages<BR><A href="http://e-docs.bea.com/wls/docs81/messages/EJB.html">http://e-docs.bea.com/wls/docs81/messages/EJB.html</A><BR><BR>6.<BR>Web Services<BR><A href="http://e-docs.bea.com/wls/docs81/webservices.html">http://e-docs.bea.com/wls/docs81/webservices.html</A><BR><BR>7.<BR>Web Service Ant Tasks and Command-Line Utilities<BR><A href="http://e-docs.bea.com/wls/docs81/webserv/anttasks.html">http://e-docs.bea.com/wls/docs81/webserv/anttasks.html</A><BR><BR>8.<BR>Programming WebLogic Web Services<BR><A href="http://e-docs.bea.com/wls/docs81/webserv/index.html">http://e-docs.bea.com/wls/docs81/webserv/index.html</A><BR><BR>9.<BR>BEA WebLogic Server and WebLogic Express 8.1 Documentation<BR><A href="http://e-docs.bea.com/wls/docs81/index.html">http://e-docs.bea.com/wls/docs81/index.html</A><BR><BR><BR>感觉最近很多以前知道的都开始模糊了。<BR>10.<BR><FONT color=#ff0000 size=4><STRONG>EJB 工作原理<BR></STRONG></FONT><A href="http://forum.javaeye.com/viewtopic.php?t=3832">http://forum.javaeye.com/viewtopic.php?t=3832</A><BR><BR><BR>11.<BR><A class=maintitle href="http://forum.javaeye.com/viewtopic.php?t=1036&amp;start=0&amp;postdays=0&amp;postorder=asc&amp;highlight="><FONT color=#ff0000 size=4><STRONG>EJB调用的原理分析</STRONG></FONT></A><FONT color=#ff0000 size=4><STRONG> <BR></STRONG></FONT><A href="http://forum.javaeye.com/viewtopic.php?t=1036">http://forum.javaeye.com/viewtopic.php?t=1036</A><BR><BR><BR>12.<BR>Web service:<BR><A href="http://www.javaworld.com.tw/jute/post/view?bid=19&amp;id=101122&amp;sty=1&amp;tpg=1&amp;ppg=1&amp;age=0#101122">http://www.javaworld.com.tw/jute/post/view?bid=19&amp;id=101122&amp;sty=1&amp;tpg=1&amp;ppg=1&amp;age=0#101122</A><BR><BR>13.<BR>听说NetBeans不错<BR>XXXXXX没看到怎么跟Bea集成<BR><BR>14.<BR><U><FONT color=#606420>searchsmb</FONT></U><BR><A href="http://searchsmb.techtarget.com/sDefinition/0,,sid44_gci213231,00.html">http://searchsmb.techtarget.com/sDefinition/0,,sid44_gci213231,00.html</A><BR><BR><BR>15.<BR><A href="http://www.acronymfinder.com/">http://www.acronymfinder.com/</A><BR><BR>16.<BR><A href="http://blog.hjenglish.com/stanley/category/4745.html">http://blog.hjenglish.com/stanley/category/4745.html</A><BR><BR>17.<BR>Unix related:<BR><A href="http://www.yesky.com/20030306/1655486_4.shtml">http://www.yesky.com/20030306/1655486_4.shtml</A><BR><A href="http://www-128.ibm.com/developerworks/cn/linux/sdk/perl/l-p101/">http://www-128.ibm.com/developerworks/cn/linux/sdk/perl/l-p101/</A><BR><A href="http://bbs.chinaunix.net/forum/viewtopic.php?t=218853&amp;show_type=new">http://bbs.chinaunix.net/forum/viewtopic.php?t=218853&amp;show_type=new</A><BR><A href="http://bbs.chinaunix.net/forum/24/20041109/441883.html">http://bbs.chinaunix.net/forum/24/20041109/441883.html</A><BR><A href="http://bbs.chinaunix.net/forum/viewtopic.php?t=218853&amp;show_type=new"></A>调试shell<BR><A href="http://www.chinaitlab.com/www/news/article_show.asp?id=14410">http://www.chinaitlab.com/www/news/article_show.asp?id=14410</A><BR><A href="http://www.linuxforum.net/forum/gshowflat.php?Cat=&amp;Board=vrml&amp;Number=472740&amp;page=0&amp;view=collapsed&amp;sb=5&amp;o=all&amp;fpart">http://www.linuxforum.net/forum/gshowflat.php?Cat=&amp;Board=vrml&amp;Number=472740&amp;page=0&amp;view=collapsed&amp;sb=5&amp;o=all&amp;fpart</A>=<BR><BR><BR><A href="http://www.intuitive.com/wicked/index.shtml">http://www.intuitive.com/wicked/index.shtml</A><BR><A href="http://www.delorie.com/gnu/docs/sh-utils/sh-utils_toc.html#SEC_Contents">http://www.delorie.com/gnu/docs/sh-utils/sh-utils_toc.html#SEC_Contents</A><BR><BR><BR><BR>创意英国<BR><BR><BR>查询专业术语<BR><A href="http://www.informatik.uni-bremen.de/uniform/gdpa/" target=_top><IMG alt="GDPA Homepage" src="http://www.informatik.uni-bremen.de/gdpa/images/header.gif" border=0></A><BR><A href="http://www.informatik.uni-bremen.de/gdpa/i-def_a.htm">http://www.informatik.uni-bremen.de/gdpa/i-def_a.htm</A><BR><A href="http://searchcrm.techtarget.com/sDefinition/0,,sid11_gci789218,00.html">http://searchcrm.techtarget.com/sDefinition/0,,sid11_gci789218,00.html</A><BR><BR><A href="http://e-docs.bea.com/wls/docs81/programming/classloading.html">http://e-docs.bea.com/wls/docs81/programming/classloading.html</A><BR><BR><BR><img src ="http://www.blogjava.net/kapok/aggbug/10074.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kapok/" target="_blank">笨笨</a> 2005-08-28 01:57 <a href="http://www.blogjava.net/kapok/archive/2005/08/28/10074.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MKS Toolkit</title><link>http://www.blogjava.net/kapok/archive/2005/08/12/9871.html</link><dc:creator>笨笨</dc:creator><author>笨笨</author><pubDate>Fri, 12 Aug 2005 01:19:00 GMT</pubDate><guid>http://www.blogjava.net/kapok/archive/2005/08/12/9871.html</guid><wfw:comment>http://www.blogjava.net/kapok/comments/9871.html</wfw:comment><comments>http://www.blogjava.net/kapok/archive/2005/08/12/9871.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kapok/comments/commentRss/9871.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kapok/services/trackbacks/9871.html</trackback:ping><description><![CDATA[<A href="http://www.softwarechn.com/mks/mks_index.htm">http://www.softwarechn.com/mks/mks_index.htm</A><BR><BR><STRONG><FONT size=2><FONT color=#cc6600>MKS Toolkit</FONT> </FONT></STRONG>
<P>MKS Inc. (MKS) (TSE:MKX)发布其Windows和UNIX/Linux跨平台工具箱9.0版本，新版本显著提高了32位和64位Windows操作系统的生产力，并对世界通用的multibyte/Unicode字符集提供本地支持。</P>
<P>当用户在32位和64位Windows环境下执行开发、测试和系统管理任务时，MKS Toolkit 9.0可以明显提高其生产力。通过将流行的 Vi编辑器同最常用、最强大的Windows开发环境Microsoft Visual Studio相集成，MKS为跨平台开发提供了一个强强联合、无与匹敌的解决方案。</P>
<P><STRONG>MKS Toolkit 9.0新特性</STRONG><BR><BR><STRONG>多字节字符支持：</STRONG>MKS工具和API支持那些包含在文件内容、文件和目录名、管道、环境变量、控制台显示屏等内部的multibyte/Unicode字符，这样，用户就可以利用非ASCII格式对文件和数据进行显示、加载、编辑、查找及其他操作了。<BR><BR><STRONG>Vi/Viw同VisualStudio.NET的集成：</STRONG>含有新的Visual Studio Viw插件特性，用户可以更加有效的在其开发环境中进行工作。同时，借助于Vi 和 Viw的语法突出新特性，用户可以使用自定义规则对命令、保留字、注释等进行加强。<BR><BR><STRONG>安全、可视化的文件操作：</STRONG>对该强大图形化工具的新改进，您可以在远程UNIX、Linux和Windows系统之间安全的拖放多个文件和目录、编辑和处理文件权限、复制大型文件和文件集合等。<BR><BR><STRONG>Perl更新：</STRONG>利用多种新特性对Perl进行更新，现在包括32位和64位可执行文件、fork()函数以及多线程功能等。<BR><BR><STRONG>新应用：</STRONG>新的mksrv允许您将任何标准脚本或程序设置为一个Windows服务来运行；pwrmgr可以用于显示和管理电源使用方案；ShellExecute可以将任何文件作为可执行文件来启动；另外，还针对实际的企业问题新增了一系列灵活有效的解决工具。<BR><BR><STRONG>API增强：</STRONG>由SUSv3和POSIX.4定义的附加API有力补充了工具箱中现有的对实时UNIX程序移植的支持，而所有重要的API中均带有IPv6支持，再加上大量新增的API，同Internet新命名标准实现了很好的交互性。<BR></P>
<P><B><FONT size=2><FONT color=#cc6600>MKS Toolkit for Developers 9.0</FONT></FONT></B></P>
<P><BR>MKS Toolkit for Developers是工业领先的Windows/UNIX交互方案，显著提高了Windows和UNIX工作环境的兼容性。</P>
<P>MKS Toolkit for Developers提供了一套完全的UNIX和Windows工具集，开发人员和系统管理人员能够对其软件开发和系统管理过程进行定制和控制，并使之自动化。</P>
<P>MKS Toolkit for Developers能够自动完成那些繁琐的手动任务，加速了软件的开发和系统管理过程，减少了错误概率。</P>
<P>强大的脚本：允许您将重复性任务简化或使之自动化。<BR>集成新技术：使您轻松的控制并操纵当今动态结构。<BR>基于组件的结构体系：轻松定制一个方案，使之适应您的企业需求。</P>
<P><BR><STRONG>特性和优势</STRONG>：</P>
<P><STRONG>用于Windows 的450多种UNIX工具</STRONG><BR>——增强了开发人员和系统管理人员培训和经验的已有投资；<BR>——为UNIX和Windows系统提供了单一的构建环境。</P>
<P><STRONG>70多种Windows专用工具</STRONG><BR>——轻松添加和处理用户和用户组帐号；<BR>——处理Windows注册表和Windows专门文件许可权；<BR>——控制Windows服务程序；<BR>——复制系统文件子目录。</P>
<P><STRONG>自动化处理</STRONG><BR>——将常规程序和进程自动化，提高了开发人员和系统管理人员的工作效率；<BR>——减少了由于重复性的手动操作带来的错误。</P>
<P><STRONG>64位Windows支持</STRONG><BR>——轻松将系统和工具移植到下一代Windows操作系统。</P>
<P><STRONG>强大的Command Shell</STRONG><BR>——您可以优先选择Korn (ksh), POSIX (sh), Bash (bash), tclsh，并以此取代Windows Command Shell，从而提供更多的灵活性和功能性，增强了您的控制能力。</P>
<P><STRONG>本地Windows结构体系</STRONG><BR>——同Win32完全集成并交互作用；<BR>——控制并操作Windows进程和应用程序。</P>
<P><STRONG>完全的互连套件</STRONG><BR>——安全连接到远程UNIX和Windows系统；<BR>——在多个地点实现资源共享；<BR>——包含单机版本和数目无限的互连版本。</P>
<P><STRONG>系统备份和磁带处理套件</STRONG><BR>——快速执行UNIX兼容的完全或累加式系统备份。</P>
<P><STRONG>自动通信</STRONG><BR>——将email、Web或网络消息通知集成到您的程序中，并使之自动化，增强了通信能力。</P>
<P></P>
<P><A name=2></A><FONT size=2><B><FONT color=#cc6600>MKS Toolkit for Enterprise Developers 9.0</FONT></B></FONT></P>
<P>MKS Toolkit for Enterprise Developers（以前的NuTCRACKER）能够将UNIX程序移植到Windows系统中。</P>
<P>MKS Toolkit for Enterprise Developers含有2700多种UNIX API和一个完全的命令行开发环境，是UNIX程序向Windows平台移植的最终方案。该产品提供对C, C++, Fortran的完全支持；还支持UNIX进程管理，包括fork（），信号，警告和线程；支持文件系统和安全管理；支持curse，X，Motif和OpenGL。另外，为了实现Windows集成和交互能力，还提供了无与伦比的Win32 API访问功能。</P>
<P>——充分利用了COM, .NET和其他Windows特色，像运行本地Windows程序一样运行UNIX程序。<BR>——一个单源库（source base），支持UNIX和Windows平台。<BR>——缩短了70%, 80%甚至90%的开发时间。<BR>——含有内置的打包向导和UNIX运行时选项，能够轻松部署植入程序。</P>
<P><BR><STRONG>特性和优势：</STRONG></P>
<P><STRONG>2700多种UNIX API</STRONG><BR>——为UNIX和Windows提供了一个单源库。<BR>——显著缩短了Windows产品的开发时间。<BR>——缩短了投入市场的时间。</P>
<P><STRONG>本地Windows结构体系</STRONG><BR>——同本地Win32（以及Win64）程序完全集成，并具有交互性。<BR>——将已有的业务逻辑组件化。<BR>——将程序转向Windows技术。</P>
<P><STRONG>灵活的编译器支持</STRONG><BR>——为UNIX/Linux程序导入Windows平台选择编译器，包括Microsoft, Intel 或GNU编译器。</P>
<P><STRONG>NuTCRACKER Workstation/Server 和运行时组件</STRONG><BR>——如同运行本地程序那样运行导入的UNIX程序。</P>
<P><STRONG>程序部署向导</STRONG><BR>——确保导入的程序中含有所有必须组件。<BR>——利用内置的打包向导和多种UNIX运行时选项轻松部署植入的UNIX程序。</P>
<P><STRONG>64位Windows支持</STRONG><BR>——将程序和工具轻松植入下一代Windows操作系统中。</P>
<P><STRONG>为Windows准备的450多种UNIX工具</STRONG><BR>——增强了开发人员和系统管理人员培训和经验的已有投资。<BR>——将脚本和程序代码导入Windows。<BR>——为UNIX和Windows平台提供单一构建环境。</P>
<P><STRONG>强大的Command Shell</STRONG><BR>——通过本地的Korn (ksh), POSIX (sh), Bash (bash), C (csh) 或<BR>tclsh 命令shell 植入基于脚本的构建和测试环境，较之Windows cmd，提供了更多的灵活性和功能性，增强了控制能力。</P>
<P><A name=14></A><FONT color=#cc6600 size=2><STRONG>MKS Toolkit for Enterprise Developers 64位版本 9.0</STRONG></FONT> </P>
<P>MKS Toolkit for Enterprise Developers 64位版本简化了64位UNIX程序向64位Windows平台的移植过程，用户可以将UNIX和Linux程序布署到扩展的结构体系（如AMD 64和EM64T）和Itanium平台上。</P>
<P>对于像Web caching、数据仓库、复杂机械设计和分析以及科学计算和研究等应用程序，往往内存需求大、计算性能要求高，因此，64位Windows操作系统是其理想的工作环境。</P>
<P>MKS Toolkit for Enterprise Developers 64位版本为移植64位UNIX/Linux程序到Windows系统提供了唯一的解决方案，特性见<FONT color=#cc6600><STRONG><A href="http://www.softwarechn.com/mks/mks_index.htm#2">MKS Toolkit for Enterprise Developers</A></STRONG></FONT><FONT color=#cc6600 size=2><STRONG> </STRONG></FONT>。</P>
<P><A name=3></A><FONT size=2><B><FONT color=#cc6600>MKS Toolkit for Interoperability 9.0</FONT></B></FONT></P>
<P>MKS Toolkit for Interoperability——扩展了MKS Toolkit for Developers，增加了一个完全的X server，能够在Windows上显示基于X Window系统的图形程序，其中包括OpenGL和Motif程序。网络服务器能够在您的Windows工作站上显示网络中任何一台机器上的图形程序。 </P><A name=4></A><B><FONT color=#cc6600 size=2>MKS Toolkit for Professional Developers 9.0</FONT></B><BR>
<P>MKS Toolkit for Professional Developers——MKS Toolkit for Enterprise Developers的子集，适合于专业开发人员，能够将那些非图形和基于字符的UNIX C, C++和Fortran程序和工具移植到Windows中。</P>
<P><BR><A name=5></A><FONT color=#cc6600 size=2><B>MKS Toolkit for System Administrators 9.0</B></FONT></P>
<P>MKS Toolkit for System Administrators——MKS Toolkit for Developers的子集，适合于系统管理人员。该产品是一个强大的管理套件，您可以完成两台机器之间的文件和数据转移，系统远程管理，跨平台备份功能。它能够自动安排并执行重复性任务，如同步密码、添加用户和用户组、设置新机器、复制系统文件或本地及远程系统的文档目录等。 </P>
<P><A name=6></A><FONT color=#cc6600 size=2><B>MKS AlertCentre 2.03</B></FONT><BR></P>
<P>MKS AlertCentre 2.03是MKS工具箱的附加组件。每一台AlertCentre监控站都需要MKS工具箱产品的一个副本。MKS AlertCentre 2.03将作为MKS Toolkit Resourse Kit和GCC附加组件免费提供给Toolkit客户。MKS已经对该产品进行了重组，其配置方式同其他的Resourse Kit组件类似。而且同其他Resourse Kit组件和GCC附加组件一样，新的AlertCentre add-on也可以从网站免费下载，其使用前提是目标机上装有MKS Toolkit产品（v 8.7或更新）。</P>
<P>为了充分使用 AlertCentre的特性和功能，用户需要具备一个MKS Toolkit产品的2份有效许可证。</P>
<P>MKS AlertCentre是监控、警告和矫正行为自动安排的完全解决方案。AlertCentre可以每天24小时，每周7天监控您的关键任务系统，使您可以十分放心您的网络、软件和基于Internet/Intranet的信息系统正常运行。 </P>
<P><STRONG>特点：</STRONG> <STRONG>自动监控、警告、调整和行为纠正。</STRONG>AlertCentre自动触发处理系统失误或事件的行为。利用这些行为，您可以通过e-mail, 手机，寻呼机, SNMP trap, 或您自己的定制行为向别人发出错误或关键系统状态警告。AlertCentre也允许您实施一个调整进程来通知相应的人，并基于问题的严重性采取适当的行为。而且，AlertCentre能够以行为方式触发监控器、脚本器和程序，使您采取自动的纠正行为。 
<P>
<P><STRONG>内置的监控冗余。</STRONG>AlertCentre提供对监控器的监控能力，来帮助您确保您的重要资源是可获得的，并且您的业务一直不间断的运行。如果您的主要机器被接受，备份会自动剔除并继续监控就您的系统和软件。 
<P>
<P><STRONG>易于定制。</STRONG>虽然AlertCentre被设计成工作于一组预先定义的监控器框的形式，它依然是易于定制的。您可以通过图形式用户界面配置监控器行为，组织您的监控器从而将其分成易于管理的组，也可以创建定制的监控器。通过定制监控器，您可以插入已有的脚本来创建您自己的监控器类型，并且受益于AlertCentre的内置行为和警告能力。 
<P>
<P> </P><A name=7></A><BR><FONT color=#cc6600 size=2><B>MKS Source Integrity Enterprise Edition 2005</B></FONT><BR>
<P>MKS Source Integrity Enterprise Edition是企业进行充分的跨平台软件配置管理的理想选择。作为目前市场上最先进的SCM技术方案，它能为本地和分布式开发团队提供实时、安全、灵活的进程中央管理功能。 
<P align=left><EM>如今，一切都可以集中管理，不用再去搜索某个版本或文件了。它完全安装在服务器端，项目被清楚列表，可以方便的选择当前正在进行或将要开展的项目。符合ISO要求，能够清楚证明当前的工作，证书维护问题也迎刃而解。</EM></P>
<P align=right><EM>Jim Smith——Agere Systems软件工程师和技术组成员</EM></P>
<P><STRONG>MKS Source Integrity构建于MKS的传统技术基础之上，使用方便，功能全面：</STRONG></P>
<P><STRONG><IMG height=225 src="http://www.softwarechn.com/mks/SIE_IntegratedProcess_sm.jpg" width=300 align=right></STRONG><BR>MKS Federated Server 结构体系——为分布式开发团队提供创新性支持，去除了复制需求，从而降低了管理费用，并实现了在低带宽网络上的实时协作。</P>
<P>沙箱——为开发人员提供私人工作空间。<BR><BR>变化包检查和被提议的变化包检查——实现了基于任务的开发，在改动被实施之前先对其进行全面检查。<BR><BR>通过拖放合并实现图形化的历史浏览——开发历程可视化，方便了版本合并。<BR><BR>集成的进程和工作流传管理——通过MKS Integrity Manager，实现了更高级的工序自动化和完备化。<BR><BR>项目基线功能和冻结已完成的模块和项目。<BR><BR>反转到任何时间点——重新创建过去版本的准确复制。<BR><BR>项目共享和重整——支持代码重复使用，降低了重写代码的要求。<BR><BR>深度集成——同MKS的Open API所支持的领先开发环境如Eclipse/IBM Websphere 、Microsoft Visual Studio .NET等深度集成。</P>
<P><STRONG>优点： </STRONG>
<P>. 提高了个体开发者和协作开发组的生产力和工作效率； <BR>. 对于连续集成和多平台开发，共享sandboxes是理想选择； <BR>. 非成员浏览利用Wizard 添加成员或者在sandbox中检查文件是否存在，提高了开发者的生产力。 
<P>
<P>新的更新集成： <BR>. Borland Together ControlCenter 6.1 <BR>. Sybase PowerBuilder 9.0 <BR>. Microsoft Visual Studio .NET 2003 <BR>. WebSphere Development Studio Client for iSeries (WDSc) 5.0 <BR>. WebSphere Studio Application Developer Integration Edition (WSAD-IE) 5.0 <BR>. WebSphere Studio Site Developer (WSSD) 5.0 <BR>. WSAD 5.1 (WIN32) <BR>. WDSc for iSeries 5.1 (WIN32) <BR>. WSSD 5.1 (WIN32) <BR>. WebSphere Development Studio Client for iSeries Advanced Edition (WDSc-AE) 5.0 <BR>. WDSc for iSeries — AE 5.1 (WIN32) 
<P>
<P>新的更新平台： <BR>. LDAP version 3 <BR>. SuSE Linux 8.2 <BR>. Red Hat Linux 9.0 <BR>. Windows Server 2003 Standard Edition <BR>. HP-UX 11i 
<P><A name=8></A><FONT color=#cc6600 size=2><B>MKS Integrity Manager 2005</B></FONT><BR>
<P>MKS Integrity Manager是企业工序和工作流程灵活管理的理想选择，能够帮助创建可重复的进程，从而管理软件开发。它同MKS Source Integrity Enterprise无缝集成以实现全面的企业软件配置管理，还是需求管理工具MKS Requirements的基础，另外，还可以无缝集成其他的开发人员生产力工具来平衡软件投资并扩大软件开发周期的覆盖范围。 
<P>MKS Integrity Manager的透明性、高级型以及多层结构体系在企业范围可升级，能够支持变化进程中的分布式开发人员和其他的委托开发人员：</P>
<P><IMG height=225 src="http://www.softwarechn.com/mks/PMDashboard_sm.jpg" width=300 align=right></P>
<P>完全可配置——允许团队将已有程序自动化，并随时间变化调节控件。<BR><BR>管理仪表板——提供重要的指标、图表和报告，增加了管理可见度，方便了决策的制定。<BR><BR>工序自动化、email通知、议题增强——使团队沟通能力和工作效率最大化，降低了项目风险。<BR><BR>电子签名支持——符合FDA 21 CFR Part 11等法规。<BR><BR>图形化工作流程建模器——帮助团队将工序可视化，并对其进行调整。<BR><BR>跨平台——包括分布式、Unix、iSeries和Mainframe平台。<BR><BR>方便应用、培训和管理——降低了开发所有者的总投入。<BR><BR>同MKS的Open API所支持的开发、测试和项目管理环境深度集成。</P>
<P>MKS Integrity Manager强大可定制的工作流程引擎使您可以执行适合您工作组的进程。利用它您可以方便的自动操作已存在的工作流程，或者如果您的进程还没有准确定义，由于进程模板是在广泛的经过验证的开发方法上建立的，可以应用进程模板跳至开始进程执行处。直观的可重复进程允许您获得对全部软件开发行为的控制，从而快速发布可靠优质的应用软件。 </P>
<P><A name=9></A><FONT color=#cc6600 size=2><B>MKS Requirements 2005</B></FONT></P>
<P>MKS Requirements 2005是软件开发的里程碑——需求管理方案，该产品第一个内置成为了ESCM（企业软件配置管理）系统的一部分。除ESCM系统外，它还是MKS Integrity Manager?中进程管理和工作流程功能的一部分。</P>
<P>该产品的推出，首次实现了商业用户和开发人员之间的无缝集成和实时信息流的交互能力，这一切都是通过一个单独平台、标准化界面以及通用程序完成的。</P>
<P><STRONG>产品核心功能<BR><IMG height=338 src="http://www.softwarechn.com/mks/RM-2005_sm.jpg" width=450 align=right></STRONG></P>
<P>——是MKS Integrity Manager程序和工作流程引擎的扩展，降低了成本，利用通用工具实现了商业用户和开发人员的协作性。</P>
<P>——强大灵活的工作流程，周期性生成业务和开发团队。</P>
<P>——单个知识库，带有核查跟踪能力，能够提供需求和变动的时间历史。</P>
<P>——已有开发资料（如源代码、文档、相关需求）之间清晰明确的链接，该链接是由支持IT核查和依从的变化包来完成的。</P>
<P>——自动触发敏感需求和开发任务，显示了需求变化在商业用户和开发团队之间的实时影响。</P>
<P>——同Microsoft Word相集成，允许商业用户通过熟悉的制作工具构建需求，进而将其导入MKS Requirements 2005中。</P>
<P>——需求具有分层结构，并分层显示，因此为需求变动提供了逻辑化组织、跟踪能力，并方便了对需求变动的影响分析。</P>
<P>——为项目管理人员提供历史报告，显示单个需求或整个项目是如何按时间变化的，也可以浏览任意两个时间点之间的变化情况。</P>
<P>——强大的查询、制表和报告能力，方便了团队交流和高级管理的可见度。</P>
<P><BR></P>
<P><A name=10></A><STRONG><FONT color=#cc6600 size=2>MKS Openmake</FONT></STRONG><BR>
<P>Openmake是一个软件开发工具，使用可重复的软件构建程序来自动创建可靠的应用程序。该工具确保每次都以相同的方式根据企业的商业目标来创建可执行程序，从而降低了开发企业应用程序的风险。 
<P>——自动创建可执行程序，流水线化程序开发。</P>
<P>——确保可执行程序都是采用专门的编译器选项和正确的源代码版本创建的，降低了开发错误。</P>
<P>——用户可以在多台机器上分布完成程序组件的创建，缩短了开发周期。</P>
<P>——支持真正的累加构建，缩短了程序的部署时间。</P>
<P>——集成了MKS Integrity Suite，使全部软件开发过程中的整个构建过程集中化并自动化。</P>
<P>——为用户提供了一个单一的标准化程序构建过程，适合于任何语言、IDE或操作系统。<BR></P>
<P><A name=11></A><FONT color=#cc6600 size=2><STRONG>MKS Build &amp; Deployment</STRONG></FONT><BR>
<P>MKS Build &amp; Deployment是一个工作流程工具，使企业降低了部署错误所带来的风险，同时还减少了部署费用。利用MKS Build &amp; Deployment，您企业软件系统的任何变动都可以准确部署，避免了手动部署通常出现的错误，提高了系统的可靠性和资源的可访问性，从而能够将主要的精力投入到其他的重要工作上。 
<P>MKS Build &amp; Deployment改善了您的管理能力，使您能够同时管理更多的产品版本；提高了您的工作效率，使您能够更快的构建、发布产品包，并对其进部署。另外，使用MKS Build &amp; Deployment，使您的产品质量恒定，还增强了客户的信任度。</P>
<P>——单一工具就能完成多个平台的部署，降低了成本。</P>
<P>——利用可重复进程维护部署的稳定性和软件品质。</P>
<P>——将手动程序自动化，避免了操作错误。</P>
<P>——同已有构建工具如ANT和Openmake相集成，增强了您的投资。<BR></P>
<P><A name=12></A><STRONG><FONT color=#cc6600 size=2>MKS Integrity Suite 2005</FONT></STRONG> 
<P>针对管理企业技术和软件开发周期所面临的挑战，MKS将帮助您提前应付这些问题，为管理IT组织内的不断变化提供了一个强有力的途经。 
<P>MKS Integrity Suite作为构建于单一结构体系上的单一方案，完全覆盖了应用程序开发周期的全过程，降低了您IT环境的复杂度，同时也降低了您的总成本。<IMG height=195 src="http://www.softwarechn.com/mks/is2005.gif" width=200 align=right></P>
<P><FONT color=#cc6600><STRONG>MKS Integrity Suite组件包括：</STRONG></FONT></P>
<P><A href="http://www.softwarechn.com/mks/mks_index.htm#9"><STRONG><FONT color=#cc6600>MKS Requirements</FONT></STRONG></A>：需求管理组件。</P>
<P><A href="http://www.softwarechn.com/mks/mks_index.htm#8"><STRONG><FONT color=#cc6600>MKS Integrity Manager</FONT></STRONG></A>：进程和工作流程管理以及错误跟踪组件。</P>
<P><A href="http://www.softwarechn.com/mks/mks_index.htm#7"><STRONG><FONT color=#cc6600>MKS Source Integrity Enterprise</FONT></STRONG></A>：软件配置管理、版本控制、全球化分布式团队开发组件。</P>
<P><A href="http://www.softwarechn.com/mks/mks_index.htm#10"><STRONG><FONT color=#cc6600>OpenMake</FONT></STRONG></A>：企业构建管理组件。</P>
<P><A href="http://www.softwarechn.com/mks/mks_index.htm#11"><STRONG><FONT color=#cc6600>MKS Build and Deploy</FONT></STRONG></A>：产品环境部署管理组件。</P>
<P></P>
<P></P>
<P><A name=13></A><STRONG><FONT color=#cc6600 size=2>MKS Federated Server</FONT></FONT></STRONG></P>
<P>MKS Federated Server 结构体系为软件开发项目的全球化团队协作提供了一个创新、划算的工作方案。构建于MKS创新的程序服务器基础之上，MKS Federated Server能够使工作团队在任何时区和任何地点实时访问SCM知识库。</P>
<P>——确保整个团队清楚了解共享软件项目的发展，并及时进行沟通。<BR>——避免代码冲突。<BR>——通过对中央知识库的集中管理，显著降低了管理费用。<BR>——改进了对外部项目的管理控制。<BR>——提高了对全球化开发行为的管理可见度。</P>
<P>&nbsp;</P>
<P><IMG height=309 src="http://www.softwarechn.com/mks/fsa_diagram.jpg" width=500 align=absMiddle></P><img src ="http://www.blogjava.net/kapok/aggbug/9871.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kapok/" target="_blank">笨笨</a> 2005-08-12 09:19 <a href="http://www.blogjava.net/kapok/archive/2005/08/12/9871.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux下SSH配合SecureCRT的密匙完美使用方法</title><link>http://www.blogjava.net/kapok/archive/2005/08/06/9482.html</link><dc:creator>笨笨</dc:creator><author>笨笨</author><pubDate>Sat, 06 Aug 2005 10:52:00 GMT</pubDate><guid>http://www.blogjava.net/kapok/archive/2005/08/06/9482.html</guid><wfw:comment>http://www.blogjava.net/kapok/comments/9482.html</wfw:comment><comments>http://www.blogjava.net/kapok/archive/2005/08/06/9482.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kapok/comments/commentRss/9482.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kapok/services/trackbacks/9482.html</trackback:ping><description><![CDATA[<TABLE cellSpacing=0 cellPadding=5 align=center bgColor=#ffffff>
<TBODY>
<TR>
<TD align=middle><STRONG><FONT color=#d52b6f><SPAN class=title>linux下SSH配合SecureCRT的密匙完美使用方法</SPAN><BR><BR></FONT></STRONG>发布于2005-05-29 被读465次 【字体：<A onclick="xydwtext.style.fontSize='18px'" href="javascript:void(null)"><FONT color=#000000>大</FONT></A> <A onclick="xydwtext.style.fontSize='14px'" href="javascript:void(null)"><FONT color=#000000>中</FONT></A> <A onclick="xydwtext.style.fontSize='12px'" href="javascript:void(null)"><FONT color=#000000>小</FONT></A>】 <BR><!---->作者：张微波 <BR></TD></TR></TBODY></TABLE><BR><A href="http://www.chinalinuxpub.com/read.php?wid=610">http://www.chinalinuxpub.com/read.php?wid=610</A><BR>
<TABLE style="TABLE-LAYOUT: fixed" cellSpacing=0 cellPadding=5 align=center bgColor=#ffffff>
<TBODY>
<TR>
<TD vAlign=top><SPAN class=pg id=xydwtext>
<P>版权声明：可以任意转载，转载时请务必以超链接形式标明文章原始出处和作者信息及本声明<BR><BR><A style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/ssh01.html" target=_blank><A href="http://www.5ilinux.com/ssh01.html" target=_blank><FONT color=#000000>http://www.5ilinux.com/ssh01.html</FONT></A></A> <BR><BR><BR>linux下SSH配合SecureCRT的密匙完美使用方法 <BR><BR>我想肯定有不少朋友在使用SecureCRT做为SSH的客户端软件，但都很少使用他的RSA/DSA加密功能吧，怎么你还不知道RSA是什么？ <BR><BR>SSH，特别是 OpenSSH，是一个类似于 telnet 或 rsh，ssh 客户程序也可以用于登录到远程机器。所要求的只是该远程机器正在运行 sshd，即 ssh 服务器进程。但是，与 telnet 不同的是，ssh 协议非常安全。加密数据流，确保数据流的完整性，甚至安全可靠的进行认证它都使用了专门的算法。<BR><BR>然而，虽然 ssh 的确很棒，但还是有一个 ssh 功能组件常常被忽略、这个组件就是 OpenSSH 的 RSA/DSA 密钥认证系统，它可以代替 OpenSSH 缺省使用的标准安全密码认证系统。<BR><BR>OpenSSH 的 RSA 和 DSA 认证协议的基础是一对专门生成的密钥，分别叫做专用密钥和公用密钥。使用这些基于密钥的认证系统的优势在于：在许多情况下，有可能不必手工输入密码就能建立起安全的连接。<BR><BR>好了知道RSA和DSA是怎么回事了吧，至于里面的原理我就不讲了，有兴趣的朋友去看看公匙密匙的原理就行。其实不止SecureCRT支持RSA/DSA，其他ssh的客户端软件都支持类似的RSA/DSA，只不过好像不同软件产生的公匙密匙好像不通用。我这里只是拿最典型的SecureCRT来说明RSA怎么使用来配合linux下的ssh服务<BR><BR>我的环境：Redhat9.0 openssh-3.5p1-6 SecureCRT 4.0<BR><BR>服务端openssh我们先不可以设置，等客户端设置好后，我们再回过头来设置ssh。<BR><BR>我们创建一个新链接，点击属性：<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh01.jpg" target=_blank><IMG src="http://www.5ilinux.com/image/ssh01.jpg" width=467 onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR><BR>默认验证方式是password，把他改成RSA，系统会弹出一个弹出框<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh02.jpg" target=_blank><IMG height=119 src="http://www.5ilinux.com/image/ssh02.jpg" width=450 onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>让你确认是否使用RSA公匙密匙创建向导，当然选“是”<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh03.jpg" target=_blank><IMG height=299 src="http://www.5ilinux.com/image/ssh03.jpg" width=447 onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>接着下一步：<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh04.jpg" target=_blank><IMG height=299 src="http://www.5ilinux.com/image/ssh04.jpg" width=447 onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>这一步填入你的保护密匙的密码，这个密码要记住哦，以后都要这个密码，Comment就随便填了<BR><BR>下一步：<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh05.jpg" target=_blank><IMG height=299 src="http://www.5ilinux.com/image/ssh05.jpg" width=447 onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>让你选择加密的位数，默认1024就行<BR><BR>下一步：<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh06.jpg" target=_blank><IMG height=299 src="http://www.5ilinux.com/image/ssh06.jpg" width=447 onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>这一步你动一下鼠标，系统就会根据你鼠标动的频率自动产生公匙和密匙<BR><BR>下一步：<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh07.jpg" target=_blank><IMG src="http://www.5ilinux.com/image/ssh07.jpg" onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>RSA公匙密匙创建好后，会让你保存，名字默认或者改名都行，后面大家只要注意SecureCRT只寻找密匙的路径，你保证SecureCRT能找到你的密匙就行。<BR><BR>好了客户端的工作完成。下面是linux服务端的配置了<BR><BR>把我们刚才建立的RSA公匙传到你的服务器，默认名为identity.pub <BR><BR>然后在linux下操作，如果你的密匙是给linux用户frank创建的，那么我们先在frank的宿主目录创建一个.ssh的目录<BR><BR>mkdir /home/frank/.ssh<BR><BR>chmod o+x /home/frank<BR><BR>chmod 700 /home/frank/.ssh <BR><BR>然后把公匙导到authorized_keys这个文件，因为我们是使用ssh1，如果是ssh2的那就是authorized_keys2<BR><BR>cat identity.pub &gt; /home/frank/.ssh/authorized_keys<BR><BR>chmod 644 /home/frank/.ssh/authorized_keys<BR><BR>权限的设置非常重要，因为不安全的设置安全设置，会让你不能使用RSA功能，大家如果调试的过程中，发现有找不到公匙的错误提示，先看看权限是否设置正确哦！<BR><BR>ok，现在服务器端也设置完毕了，你现在可以用SecureCRT的RSA验证方式连接ssh服务器端了，如果连接正常的话应该会弹出一个对话框，让你输入密码<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh08.jpg" target=_blank><IMG src="http://www.5ilinux.com/image/ssh08.jpg" onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>这里只要输入我们保护密匙的密码就行了。完了就能顺利进入<BR><BR><BR><BR>还有一步设置，既然大家都已经成功使用了ssh的RSA功能，那么就必须让openssh只支持RSA验证，否则既支持普通密码又支持RSA就没什么意思了，根本没把安全提高，所以我们有必要让openssh只支持RSA验证，如果还没有成功使用RSA功能的朋友就不用看，还是先把上面的的先实现再说。<BR><BR>要实现openssh只支持RSA验证方式，我们只要修改<BR><BR>vi /etc/ssh/sshd_config <BR><BR>设置<BR><BR>PasswordAuthentication no<BR><BR>好了，你现在再试试以前普通密码验证方式，应该是会弹出下面错误信息<BR><BR><A title=开新窗口浏览图片 style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www.5ilinux.com/image/ssh09.jpg" target=_blank><IMG src="http://www.5ilinux.com/image/ssh09.jpg" onload="javascript:if(this.width>screen.width-333) this.width=screen.width-333" border=0></A><BR><BR>大致意思服务器只支持RSA的验证方式，ok了<BR><BR>以后就可以用RSA的公匙密匙访问ssh服务器了，不过你的密匙可要保存好，反正我是保存在我的U盘，随身携带，一旦你的用户丢了密匙，一定在服务器端把它的公匙删除，这样即使那人获得了密匙也上不去：）<BR><BR>参考文档 <BR><BR>OpenSSH 密钥管理 <A style="FONT-SIZE: 12px; COLOR: #000099; FONT-FAMILY: 宋体; TEXT-DECORATION: none" href="http://www-900.ibm.com/developerWorks/cn/linux/security/openssh/part1/index.shtml" target=_blank><A href="http://www-900.ibm.com/developerWor...rt1/index.shtml" target=_blank><FONT color=#000000>http://www-900.ibm.com/developerWor...rt1/index.shtml</FONT></A></A><BR><BR><BR>张微波<BR><BR>2003年11月21日于北京</P></SPAN></TD></TR></TBODY></TABLE><img src ="http://www.blogjava.net/kapok/aggbug/9482.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kapok/" target="_blank">笨笨</a> 2005-08-06 18:52 <a href="http://www.blogjava.net/kapok/archive/2005/08/06/9482.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Vi编辑使用入门</title><link>http://www.blogjava.net/kapok/archive/2005/03/06/1762.html</link><dc:creator>笨笨</dc:creator><author>笨笨</author><pubDate>Sun, 06 Mar 2005 04:11:00 GMT</pubDate><guid>http://www.blogjava.net/kapok/archive/2005/03/06/1762.html</guid><wfw:comment>http://www.blogjava.net/kapok/comments/1762.html</wfw:comment><comments>http://www.blogjava.net/kapok/archive/2005/03/06/1762.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kapok/comments/commentRss/1762.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kapok/services/trackbacks/1762.html</trackback:ping><description><![CDATA[<P><A href="http://blog.china-pub.com/more.asp?name=cfengc&amp;id=8958">http://blog.china-pub.com/more.asp?name=cfengc&amp;id=8958</A><BR><BR><BR>建议：本文是针对初学Unix Vi编辑器的网友的，而文后所付的详尽的命令表也可作为已经熟练使用vi的网友的参考之用，因此你最好下载本文或打印本文然后对照实践学习。<BR><BR>　 <BR>一、Unix编辑器概述<BR><BR>编辑器是使用计算机的重要工具之一，在各种操作系统中，编辑器都是必不可少的部件。Unix及其相似的ix<BR><BR>操作系统系列中，为方便各种用户在各个不同的环境中使用，提供了一系列的ex编辑器，包括 ex, edit,ed 和<BR><BR>vi.其中ex,edit,ed都是行编辑器，现在已很少有人使用，Unix提供他们的原因是考虑到满足各种用户特别<BR><BR>是某些终端用户的需要。<BR><BR>值得庆幸的是，Unix提供了全屏幕的Vi编辑器，这使我们的工作轻松不少。不少DOS用户抱怨Vi编辑器不象<BR><BR>DOS下的编辑器如edit那么好用，这是因为Vi考虑到各种用户的需要，没有使用某些通用的编辑键（在各个<BR><BR>不同的终端机上他们的定义是不同的，在某些终端机上甚至没有这些键）。而是采用状态切换的方法，但这<BR><BR>只是习惯的问题，一旦你熟练的使用上了vi你就会觉得它其实也很好用。<BR><BR>虽然 Vi采用了状态切换的方法，但电脑的硬件及操作系统多种多样，某些电脑的键盘上没有特定的几个功<BR><BR>能键！那麽不就有某些功能不能用了？这个问题在 Unix 系统上也一样，几乎各大电脑厂商都有自己的 <BR><BR>Unix 系统，而 vi 的操作方法也会随之有点出入。这里我们采用 PC 的键盘来说明 vi 的操作，但在具体<BR><BR>的环境中还要参考相应的资料，这一点是值得注意的。<BR><BR>二、Vi入门<BR><BR>（一）、进入vi<BR><BR>在系统提示字符(如$、#)下敲入vi ＜档案名称＞，vi 可以自动帮你载入所要编辑的文件或是开启一个新<BR><BR>文件（如果该文件不存在或缺少文件名）。进入 vi 后萤幕左方会出现波浪符号，凡是列首有该符号就代<BR><BR>表此列目前是空的。<BR><BR>(二）、两种模式<BR><BR>如上所述，vi存在两种模式：指令模式和输入模式。在指令模式下输入的按键将做为指令来处理：如输入<BR><BR>a，vi即认为是在当前位置插入字符。而在输入模式下，vi则把输入的按键当作插入的字符来处理。指令<BR><BR>模式切换到输入模式只需键入相应的输入命令即可（如a,A），而要从输入模式切换到指令模式，则需在<BR><BR>输入模式下键入ESC键，如果不晓得现在是处於什麽模式，可以多按几次 [ESC]，系统如发出哔哔声就表<BR><BR>示已处于指令模式下了。<BR><BR>付：有指令模式进入输入模式的指令：<BR><BR>新增 (append)<BR><BR>a ：从光标所在位置後面开始新增资料，光标後的资料随新增资料向後移动。<BR><BR>A： 从光标所在列最後面的地方开始新增资料。<BR><BR>插入 (insert)<BR><BR>i： 从光标所在位置前面开始插入资料，光标後的资料随新增资料向後移动。<BR><BR>I ：从光标所在列的第一个非空白字元前面开始插入资料。<BR><BR>开始 (open)<BR><BR>o ：在光标所在列下新增一列并进入输入模式。<BR><BR>O: 在光标所在列上方新增一列并进入输入模式。<BR><BR>（三）、退出vi<BR><BR>在指令模式下键入:q,:q!,:wq或:x(注意:号），就会退出vi。其中:wq和:x是存盘退出，而:q是直接退出，<BR><BR>如果文件已有新的变化，vi会提示你保存文件而:q命令也会失效，这时你可以用:w命令保存文件后再用:q<BR><BR>退出，或用:wq或:x命令退出，如果你不想保存改变后的文件，你就需要用:q!命令，这个命令将不保存文件<BR><BR>而直接退出vi。<BR><BR>（四）、基本编辑<BR><BR>配合一般键盘上的功能键，像是方向键、[Insert] 、[Delete] 等等，</P>
<P>现在你应该已经可以利用 vi 来编辑文件<BR><BR>了。当然 vi 还提供其他许许多多功能让文字的处理更为方便。<BR><BR>何谓编辑？一般认为是文字的新增、修改以及删除，甚至包括文字区块的搬移、复制等等。先这里介绍 vi<BR><BR>的如何做删除与修改。（注意：在 vi 的原始观念里，输入跟编辑是两码子事。编辑是在指令模式下操作<BR><BR>的，先利用指令移动光标来定位要进行编辑的地方，然後才下指令做编辑。）<BR><BR>删除与修改文件的命令：<BR><BR>x： 删除光标所在字符。<BR><BR>dd ：删除光标所在的列。<BR><BR>r ：修改光标所在字元，r 後接著要修正的字符。<BR><BR>R： 进入取替换状态，新增文字会覆盖原先文字，直到按 [ESC] 回到指令模式下为止。<BR><BR>s： 删除光标所在字元，并进入输入模式。<BR><BR>S： 删除光标所在的列，并进入输入模式。<BR><BR>其实呢，在PC上根本没有这麽麻烦！输入跟编辑都可以在输入模式下完成。例如要删除字元，直接按 <BR>[Delete] 不就得了。而插入状态与取代状态可以直接用 [Insert] 切换，犯不著用什麽指令模式的编<BR>辑指令。不过就如前面所提到的，这些指令几乎是每台终端机都能用，而不是仅仅在 PC 上。<BR>在指令模式下移动光标的基本指令是 h, j, k, l 。想来各位现在也应该能猜到只要直接用 PC 的方向<BR>键就可以了，而且无论在指令模式或输入模式下都可以。多容易不是。<BR>当然 PC 键盘也有不足之处。有个很好用的指令 u 可以恢复被删除的文字，而 U 指令则可以恢复光标所<BR>在列的所有改变。这与某些电脑上的 [Undo] 按键功能相同。<BR>三、附件：vi详细指令表<BR>（一）、基本编辑指令：<BR>新增 (append)<BR><BR>a ：从光标所在位置後面开始新增资料，光标後的资料随新增资料向後移动。<BR><BR>A： 从光标所在列最後面的地方开始新增资料。<BR><BR>插入 (insert)<BR><BR>i： 从光标所在位置前面开始插入资料，光标後的资料随新增资料向後移动。<BR><BR>I ：从光标所在列的第一个非空白字元前面开始插入资料。<BR><BR>开始 (open)<BR><BR>o ：在光标所在列下新增一列并进入输入模式。<BR><BR>O: 在光标所在列上方新增一列并进入输入模式。<BR><BR>x： 删除光标所在字符。<BR><BR>dd ：删除光标所在的列。<BR><BR>r ：修改光标所在字元，r 後接著要修正的字符。<BR><BR>R： 进入取替换状态，新增文字会覆盖原先文字，直到按 [ESC] 回到指令模式下为止。<BR><BR>s： 删除光标所在字元，并进入输入模式。<BR><BR>S： 删除光标所在的列，并进入输入模式。<BR><BR>（二）、光标移动指令：<BR>由於许多编辑工作是藉由光标来定位，所以 vi 提供许多移动光标的方式，这个我们列<BR>几张简表来说明（这些当然是指令模式下的指令）：</P>
<TABLE cellSpacing=4 cellPadding=0 width="52%" border=1>
<TBODY>
<TR>
<TD width="24%">
<DIV align=center>指令</DIV></TD>
<TD width="57%">
<DIV align=center>说明&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </DIV></TD>
<TD width="19%">
<DIV align=center>功能键&nbsp;&nbsp;&nbsp; </DIV></TD></TR>
<TR>
<TD width="24%">0</TD>
<TD width="57%">移动到光标所在列的最前面&nbsp; </TD>
<TD width="19%">[Home]</TD></TR>
<TR>
<TD width="24%">$&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="57%">移动到光标所在列的最後面</TD>
<TD width="19%">[End]</TD></TR>
<TR>
<TD width="24%">[CTRL][d]</TD>
<TD width="57%">向下半页&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="19%">[PageDown]</TD></TR>
<TR>
<TD width="24%">[CTRL][f] </TD>
<TD width="57%">向下一页</TD>
<TD width="19%">&nbsp;</TD></TR>
<TR>
<TD width="24%">[CTRL][u]</TD>
<TD width="57%">向上半页</TD>
<TD width="19%">&nbsp;</TD></TR>
<TR>
<TD width="24%">[CTRL][b]</TD>
<TD width="57%">向上一页&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="19%">[PageUp] </TD></TR></TBODY></TABLE>
<P><BR></P>
<TABLE cellSpacing=4 cellPadding=0 width="39%" border=1>
<TBODY>
<TR>
<TD width="17%">
<DIV align=center>指令</DIV></TD>
<TD width="83%">
<DIV align=center>说明</DIV></TD></TR>
<TR>
<TD width="17%">
<DIV align=center>H</DIV></TD>
<TD width="83%">移动到视窗的第一列</TD></TR>
<TR>
<TD width="17%">
<DIV align=center>M</DIV></TD>
<TD width="83%">移动到视窗的中间列</TD></TR>
<TR>
<TD width="17%">
<DIV align=center>L</DIV></TD>
<TD width="83%">移动到视窗的最後列&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD></TR>
<TR>
<TD width="17%" height=16>
<DIV align=center>b</DIV></TD>
<TD width="83%" height=16>移动到下个字的第一个字母</TD></TR>
<TR>
<TD width="17%">
<DIV align=center>w</DIV></TD>
<TD width="83%">移动到上个字的第一个字母&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD></TR>
<TR>
<TD width="17%">
<DIV align=center>e</DIV></TD>
<TD width="83%">移动到下个字的最後一个字母</TD></TR>
<TR>
<TD width="17%">
<DIV align=center>^</DIV></TD>
<TD width="83%">移动到光标所在列的第一个非空白字元</TD></TR></TBODY></TABLE>
<P></P>
<TABLE cellSpacing=4 cellPadding=0 width="51%" border=1>
<TBODY>
<TR>
<TD width="16%">
<DIV align=center>指令</DIV></TD>
<TD width="84%">
<DIV align=center>说明&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </DIV></TD></TR>
<TR>
<TD width="16%">
<DIV align=center>n-</DIV></TD>
<TD width="84%">减号移动到上一列的第一个非空白字元前面加上数字可以指定移动到以上 n 列&nbsp;&nbsp; </TD></TR>
<TR>
<TD width="16%">
<DIV align=center>n+</DIV></TD>
<TD width="84%">加号移动到下一列的第一个非空白字元前面加上数字可以指定移动到以下 n 列</TD></TR>
<TR>
<TD width="16%">
<DIV align=center>nG</DIV></TD>
<TD width="84%">直接用数字 n 加上大写 G 移动到第 n 列</TD></TR></TBODY></TABLE>
<TABLE cellSpacing=4 cellPadding=0 width="51%" border=1>
<TBODY>
<TR>
<TD width="14%">指令</TD>
<TD width="86%">说明</TD></TR>
<TR>
<TD width="14%" height=17>
<P>fx</P></TD>
<TD width="86%" height=17>往右移动到 x 字元上&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD></TR>
<TR>
<TD width="14%">Fx</TD>
<TD width="86%">往左移动到 x 字元上&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD></TR>
<TR>
<TD width="14%">tx</TD>
<TD width="86%">往右移动到 x 字元前</TD></TR>
<TR>
<TD width="14%">Tx&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="86%">往左移动到 x 字元前</TD></TR>
<TR>
<TD width="14%">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="86%">配合 f&amp;t 使用，重复一次</TD></TR>
<TR>
<TD width="14%">,</TD>
<TD width="86%">配合 f&amp;t 使用，反方向重复一次</TD></TR>
<TR>
<TD width="14%">/string</TD>
<TD width="86%">往右移动到有 string 的地方</TD></TR>
<TR>
<TD width="14%">?string</TD>
<TD width="86%">往左移动到有 string 的地方</TD></TR>
<TR>
<TD width="14%">n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="86%">配合 /&amp;? 使用，重复一次&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD></TR>
<TR>
<TD width="14%">N&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="86%">配合 /&amp;? 使用，反方向重复一次 </TD></TR></TBODY></TABLE>
<P>&nbsp;</P>
<TABLE cellSpacing=4 cellPadding=0 width="81%" border=1>
<TBODY>
<TR>
<TD width="14%">指令</TD>
<TD width="56%">说明</TD>
<TD width="30%">备注</TD></TR>
<TR>
<TD width="14%" height=38>
<P>n(&nbsp;&nbsp; </P></TD>
<TD width="56%" height=38>左括号移动到句子的最前面句子是以前面加上数字可以指定往前移动 n 个句子</TD>
<TD width="30%" height=38>! . ? 三种符号来界定</TD></TR>
<TR>
<TD width="14%">n)</TD>
<TD width="56%">右括号移动到下个句子的最前面前面加上数字可以指定往後移动 n 个句子</TD>
<TD width="30%">! . ? 三种符号来界定</TD></TR>
<TR>
<TD width="14%">n{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </TD>
<TD width="56%">左括弧移动到段落的最前面</TD>
<TD width="30%">段落是以段落间的空白列界定</TD></TR>
<TR>
<TD width="14%">n}</TD>
<TD width="56%">前面加上数字可以指定往前移动 n 个段落右括弧移动到下个段落的最前面前面加上数字可以指定往後移动 n 个段落</TD>
<TD width="30%">段落是以段落间的空白列界定</TD></TR></TBODY></TABLE>
<P><BR>（三）、更多的编辑指令<BR>这些编辑指令非常有弹性，基本上可以说是由指令与范围所构成。例如 dw 是由删除指令 d 与范围 w 所<BR>组成，代表删除一个字 d(elete) w(ord) 。<BR>指令列表如下：<BR>d 删除(delete)<BR>y 复制(yank)<BR>p 放置(put)<BR>c 修改(change)<BR>范围可以是下列几个：<BR>e 光标所在位置到该字的最後一个字母<BR>w 光标所在位置到下个字的第一个字母<BR>b 光标所在位置到上个字的第一个字母<BR>$ 光标所在位置到该列的最後一个字母<BR>0 光标所在位置到该列的第一个字母<BR>) 光标所在位置到下个句子的第一个字母<BR>( 光标所在位置到该句子的第一个字母<BR>} 光标所在位置到该段落的最後一个字母<BR>{ 光标所在位置到该段落的第一个字母<BR>说实在的，组合这些指令来编辑文件有一点点艺术气息。不管怎麽样，它们提供更多编辑文字的能力。值得<BR>注意的一点是删除与复制都会将指定范围的内容放到暂存区里，然後就可以用指令 p 贴到其它地方去，这<BR>是 vi 用来处理区段拷贝与搬移的办法。<BR>某些 vi 版本，例如 Linux 所用的 elvis 可以大幅简化这一坨指令。如果稍微观察一下这些编辑指令<BR>就会发现问题其实是定范围的方式有点杂，实际上只有四个指令罢了。指令 v 非常好用，只要按下 v 键，<BR>光标所在的位置就会反白，然後就可以移动光标来设定范围，接著再直接下指令进行编辑即可。<BR>对於整列操作， vi 另外提供了更方便的编辑指令。前面曾经提到过删除整列文字的指令 dd 就是其中一个<BR>；cc 可以修改整列文字；而 yy 则是复制整列文字；指令 D 则可以删除光标到该列结束为止所有的文字。<BR>（四）、文件操作指令<BR>文件操作指令多以 : 开头，这跟编辑指令有点区别。<BR>:q 结束编辑(quit)<BR>:q! 不存档而要放弃编辑过的文件。<BR>:w 保存文件(write)其後可加所要存档的档名。<BR>:wq 即存档後离开。<BR>zz 功能与 :wq 相同。<BR>:x 与:wq相同<BR>　<BR><BR>&lt;全文完&gt;<BR>　</P><img src ="http://www.blogjava.net/kapok/aggbug/1762.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kapok/" target="_blank">笨笨</a> 2005-03-06 12:11 <a href="http://www.blogjava.net/kapok/archive/2005/03/06/1762.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux Vi命令</title><link>http://www.blogjava.net/kapok/archive/2005/03/06/1761.html</link><dc:creator>笨笨</dc:creator><author>笨笨</author><pubDate>Sun, 06 Mar 2005 03:58:00 GMT</pubDate><guid>http://www.blogjava.net/kapok/archive/2005/03/06/1761.html</guid><wfw:comment>http://www.blogjava.net/kapok/comments/1761.html</wfw:comment><comments>http://www.blogjava.net/kapok/archive/2005/03/06/1761.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kapok/comments/commentRss/1761.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kapok/services/trackbacks/1761.html</trackback:ping><description><![CDATA[<P><A href="http://nmc.nchu.edu.tw/linux/vi.htm">http://nmc.nchu.edu.tw/linux/vi.htm</A><BR><BR>&nbsp;vi是全銀幕文字編輯器。<BR>&nbsp;&nbsp;不是僅有，也不是最好用﹐卻是唯一存在所有UNIX版本中之Editor。&nbsp;<BR>&nbsp;三種模式：命令模式﹑插入（輸入）模式﹑last line(延伸命令)模式。</P>
<P>&nbsp;&nbsp;模式切換</P>
<P>啟動vi編輯器&nbsp; --&gt; 命令模式 <BR>命令模式 +( i, a, o, O,) --&gt; 插入模式<BR>命令模式 + ”:”--&gt;&nbsp; last line模式<BR>last line模式 + 任何指令or KeyStroke --&gt; 命令模式<BR>插入模式 + “Esc”--&gt;&nbsp; 命命模式 </P>
<P>&nbsp;vi啟動： <BR>$ vi&nbsp; filename</P>
<P><BR>&nbsp;命令模式：<BR>命令模式基本指令可分為游標移動﹑插入文字﹑刪除文字﹑修改文字等幾類﹐熟悉各種常用指令﹐並善加組合變化﹐可使文字編輯的工作變得快速而有效率。</P>
<P>&nbsp;last line模式：<BR>last line模式之指令一般用於輔助命令模式指令之不足﹐主要指令如下：<BR>(我們可以將last line模式指令視為“:”開頭的命令模式指令）</P>
<P>:q 不儲存檔案內容並離開vi(未變更檔案內容)<BR>:q! 不儲存檔案內容並離開vi(檔案內容已被更動)<BR>:wq &lt;filename&gt; 儲存檔案內容並離開vi <BR>:w &lt;filename&gt; 儲存檔案<BR>:= 顯示游標目前所在之行數<BR>:.= 顯示檔案全部總行數<BR>:n,ms/str1/str2/opt從第n行搜尋至第m行，並將所找到之字串”str1”取代為”str2”。opt=g全部取代，opt=c確認再取代<BR>:r filename將外部檔案引用(paste)至游標所在位置之後<BR>:e filename編輯另一檔案<BR>:! Command 執行SHELL command後返回。</P>
<P>&nbsp;命令模式指令概述：</P>
<P>游標移動指令<BR>&nbsp;<BR>k<BR>&nbsp;往上移一格<BR>&nbsp;<BR>j <BR>&nbsp;往下移一格<BR>&nbsp;<BR>h <BR>&nbsp;往左移一格<BR>&nbsp;<BR>l <BR>&nbsp;往右移一格<BR>&nbsp;<BR>w<BR>&nbsp;往下移一個字(word)<BR>&nbsp;<BR>b <BR>&nbsp;往上移一個字(word)<BR>&nbsp;<BR>1 or 0 <BR>&nbsp;移至游標所在行首<BR>&nbsp;<BR>$ <BR>&nbsp;移至游標所在行首<BR>&nbsp;<BR>n G <BR>&nbsp;移至第n行<BR>&nbsp;<BR>G <BR>&nbsp;移至檔尾<BR>&nbsp;<BR>插入本文<BR>&nbsp;<BR>a <BR>&nbsp;在游標後插入文字（進入插入模式）<BR>&nbsp;<BR>A <BR>&nbsp;在行尾插入文字（進入插入模式）<BR>&nbsp;<BR>I <BR>&nbsp;在游標前插入文字（進入插入模式）<BR>&nbsp;<BR>I <BR>&nbsp;在本行前插入文字（進入插入模式）<BR>&nbsp;<BR>o <BR>&nbsp;在本行之下開新一行並輸入<BR>&nbsp;<BR>O <BR>&nbsp;在本行之上開新一行並輸入<BR>&nbsp;<BR>&lt;Ctrl&gt; v <BR>&nbsp;輸入特殊字元(在插入模式下)<BR>&nbsp;<BR>編輯指令<BR>&nbsp;<BR>nyy <BR>&nbsp;copy n行資料放置緩衝區中<BR>&nbsp;<BR>y+游標移動指令 <BR>&nbsp;copy游標移動範圍之資料至緩衝區中(e.g.:y3w: copy游標之後三個字)<BR>&nbsp;<BR>p <BR>&nbsp;將緩衝區之資料copy至目前游標所在<BR>&nbsp;<BR>nx <BR>&nbsp;刪除游標之後n個字元<BR>&nbsp;<BR>ndd <BR>&nbsp;往下刪n行<BR>&nbsp;<BR>d+游標移動指令 <BR>&nbsp;copy刪除游標移動範圍之資料(e.g.:dw刪一個字)<BR>&nbsp;<BR>其他 <BR>&nbsp;<BR>/字串&lt;CR&gt; <BR>&nbsp;尋找字串所在位置（往下）<BR>&nbsp;<BR>?字串&lt;CR&gt; <BR>&nbsp;尋找字串所在位置（往上）<BR>&nbsp;<BR>u <BR>&nbsp;放棄上一個指令動作<BR>&nbsp;<BR>. <BR>&nbsp;重複上一個本文更改指令<BR>&nbsp;<BR>&nbsp;<BR></P><img src ="http://www.blogjava.net/kapok/aggbug/1761.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kapok/" target="_blank">笨笨</a> 2005-03-06 11:58 <a href="http://www.blogjava.net/kapok/archive/2005/03/06/1761.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux init详解</title><link>http://www.blogjava.net/kapok/archive/2005/03/05/1741.html</link><dc:creator>笨笨</dc:creator><author>笨笨</author><pubDate>Sat, 05 Mar 2005 10:51:00 GMT</pubDate><guid>http://www.blogjava.net/kapok/archive/2005/03/05/1741.html</guid><wfw:comment>http://www.blogjava.net/kapok/comments/1741.html</wfw:comment><comments>http://www.blogjava.net/kapok/archive/2005/03/05/1741.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kapok/comments/commentRss/1741.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kapok/services/trackbacks/1741.html</trackback:ping><description><![CDATA[<P>Linux init详解 <BR><A href="http://www.chinaunix.net">http://www.chinaunix.net</A> 作者:fjlrb&nbsp; 发表于：2003-01-16 17:13:23 </P>
<P>一、什么是INIT:&nbsp; </P>
<P>　　init是Linux系统操作中不可缺少的程序之一。&nbsp; </P>
<P>　　所谓的init进程，它是一个由内核启动的用户级进程。&nbsp; </P>
<P>　　内核自行启动（已经被载入内存，开始运行，并已初始化所有的设备驱动程序和数据结构等）之后，就通过启动一个用户级程序init的方式，完成引导进程。所以,init始终是第一个进程（其进程编号始终为1）。&nbsp; </P>
<P>　　内核会在过去曾使用过init的几个地方查找它，它的正确位置（对Linux系统来说）是/sbin/init。如果内核找不到init，它就会试着运行/bin/sh，如果运行失败，系统的启动也会失败。&nbsp; </P>
<P>　　二、运行级别&nbsp; </P>
<P>　　那么，到底什么是运行级呢？&nbsp; </P>
<P>　　简单的说，运行级就是操作系统当前正在运行的功能级别。这个级别从1到6 ，具有不同的功能。&nbsp; </P>
<P>　　不同的运行级定义如下：(可以参考Red Hat Linux 里面的/etc/inittab）&nbsp; </P>
<P>　　# 0 - 停机（千万不能把initdefault 设置为0 ）&nbsp; </P>
<P>　　# 1 - 单用户模式&nbsp; </P>
<P>　　# 2 - 多用户，没有 NFS&nbsp; </P>
<P>　　# 3 - 完全多用户模式(标准的运行级)&nbsp; </P>
<P>　　# 4 - 没有用到&nbsp; </P>
<P>　　# 5 - X11 （xwindow)&nbsp; </P>
<P>　　# 6 - 重新启动 （千万不要把initdefault 设置为6 ）&nbsp; </P>
<P>　　这些级别在/etc/inittab 文件里指定。这个文件是init 程序寻找的主要文件，最先运行的服务是放在/etc/rc.d 目录下的文件。在大多数的Linux 发行版本中，启动脚本都是位于 /etc/rc.d/init.d中的。这些脚本被用ln 命令连接到 /etc/rc.d/rcn.d 目录。(这里的n 就是运行级0-6)&nbsp; </P>
<P>三、运行级别的配置&nbsp; </P>
<P>　　运行级别的配置是在/etc/inittab行内进行的，如下所示：&nbsp; </P>
<P>　　12 : 2 : wait : / etc / init.d / rc 2&nbsp; </P>
<P>　　第一个字段是一个任意指定的标签； </P>
<P>　　第二个字段表示这一行适用于运行那个级别（这里是2）； </P>
<P>　　第三个字 段表示进入运行级别时，init应该运行第四个字段内的命令一次，而且init应该等待该命令结束。/etc/init.d/rc命令运行启动和终止输入以便进入运行级别2时所需的任何命令。&nbsp; </P>
<P>　　第四个字段中的命令执行设置运行级别时的一切“杂活”。它启动已经没有运行的服务，终止不应该再在新运行级别内运行的服务。根据Linux版本的不同，采用的具体命令也不同，而且运行级别的配置也是有差别的。&nbsp; </P>
<P>　　init启动时，它会在/etc/inittab内查找一个代码行，这一行指定了默认的运行级别：&nbsp; </P>
<P>　　id : 2 : initdefault :&nbsp; </P>
<P>　　你可以要求init在启动时，进入非默认运行级别，这是通过为内核指定一个“single”或“emergency” 命令行参数来实现的。比如说，内核命令行参数的指定可通过LILO来执行。这样一来，你就可以选择单用户模式了（即运行级别1）。&nbsp; </P>
<P>　　系统正在运行时，telinit命令可更改运行级别。运行级别发生变化时， init 就会从/etc/inittab运行相应的命令。&nbsp; </P>
<P>　　四、/etc/inittab中的特殊配置&nbsp; </P>
<P>　　/etc/inittab中，有几个特殊的特性，允许init重新激活特殊事件。这些特殊特性都是用第三个字段中的特殊关键字标记出来的。比如：&nbsp; </P>
<P>　　1. powerwait&nbsp; </P>
<P>　　允许init在电源被切断时，关闭系统。其前提是具有U P S和监视U P S并通知init电源已被切断的软件。&nbsp; </P>
<P>　　2. ctrlaltdel&nbsp; </P>
<P>　　允许init在用户于控制台键盘上按下C t r l + A l t + D e l组合键时，重新启动系统。注意，如果该系统放在一个公共场所，系统管理员可将C t r l + A l t + D e l组合键配置为别的行为，比如忽略等。&nbsp; </P>
<P>3. sysinit&nbsp; </P>
<P>　　系统启动时准备运行的命令。比如说，这个命令将清除/tmp。&nbsp; </P>
<P>　　上面列出的特殊关键字尚不完整。其他的关键字及其使用详情，可参考你的inittab手册页。&nbsp; </P>
<P>　　五、在单用户模式下引导 </P>
<P>　　一个重要的运行级别就是单用户模式（运行级别1），该模式中，只有一个系统管理员使用特定的机器，而且尽可能少地运行系统服务，其中包含登录。单用户模式对少数管理任务（比如在/usr分区上运行fsck）而言，是很有必要的，因为这需要卸载分区，但这是不可能的，除非所有的服务系统已被杀死。&nbsp; </P>
<P>　　一个正在运行的系统可以进入单用户模式，具体做法是利用init，请求运行级别1。内核启动时，在内核命令行指定single或emergency关键字，就可进入运行级别1了。内核同时也为init指定命令行， init从关键字得知自己不应该采用默认的运行级别（内核命令行的输入方式和你启动系统的方式有关）。&nbsp; </P>
<P>　　有时，以单用户模式进行启动是必要的，这样一来，用户在装入分区之前，或至少在装入分散的/usr分区之前，能手工运行fsck（在分散的文件系统上，任何活动都可能使其更为分散，所以应该尽可能地运行fsck）。&nbsp; </P>
<P>　　如果自动化的fsck在启动时失败了，启动脚本init的运行将自动进入单用户模式。这样做是为了防止系统使用不连贯的文件系统，这个文件系统是f s c k不能自动修复的。文件系统不连贯的现象极为少见，而且通常会导致硬盘的不连贯或实验性的内核释放，但最好能做到防患于未然。&nbsp; </P>
<P>　　由于安全上的考虑，在单用户模式下，启动外壳脚本之前，配置得当的系统会要求用户提供root密码。否则，它会简单地为L I L O输入合适的一行代码，以r o o t的身份登录（当然，如果/etc/passwd已经由于文件系统的问题而不连贯了，就不适合这里的原则了，为对付这种情况，你最好随时准备一张启动盘）。&nbsp; </P>
<P>　　不同的运行级有不同的用处，也应该根据自己的不同情形来设置。&nbsp; </P>
<P>　　例如，如果丢失了root口令，那么可以让机器启动进入单用户状态。在启动后的 lilo 提示符下输入： </P>
<P>　　init=/bin/sh rw 使机器进入运行级1 ，并把 root 文件系统挂为读写。他会跳过所有系统认证，让你可以使用passwd 程序来改变root口令，然后启动到一个新的运行级。<BR>&nbsp;<BR>&nbsp;<BR></P>
<P>&nbsp;</P><img src ="http://www.blogjava.net/kapok/aggbug/1741.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kapok/" target="_blank">笨笨</a> 2005-03-05 18:51 <a href="http://www.blogjava.net/kapok/archive/2005/03/05/1741.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>虚拟机上模拟red hat linux的网络配置</title><link>http://www.blogjava.net/kapok/archive/2005/03/05/1723.html</link><dc:creator>笨笨</dc:creator><author>笨笨</author><pubDate>Sat, 05 Mar 2005 10:04:00 GMT</pubDate><guid>http://www.blogjava.net/kapok/archive/2005/03/05/1723.html</guid><wfw:comment>http://www.blogjava.net/kapok/comments/1723.html</wfw:comment><comments>http://www.blogjava.net/kapok/archive/2005/03/05/1723.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kapok/comments/commentRss/1723.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kapok/services/trackbacks/1723.html</trackback:ping><description><![CDATA[<P>主机windows,虚拟机设置成采用NAT方式.<BR>guest机采用DHCP自动获取地址,报错:说是check cable, no link present.<BR>解决办法:<BR><BR><BR><BR>Getting a DHCP Address in a Red Hat Linux 9.0 Virtual Machine</P>
<P>When a Red Hat Linux 9.0 guest operating system tries to get a DHCP address, the attempt may fail with an error message that states the link is down. On ESX Server, this happens only if you are using the vlance driver for your network connection. </P>
<P>To work around this problem, become root (su -) and use a text editor to edit the following files in the guest operating system. If only one of these files exist, make the change for that file only. </P>
<P>/etc/sysconfig/network-scripts/ifcfg-eth[n] </P>
<P>/etc/sysconfig/networking/devices/ifcfg-eth[n] </P>
<P>In both cases, [n] is the number of the Ethernet adapter ?for example, eth0. </P>
<P>Add the following section to each of these two files: </P>
<P>check_link_down () { </P>
<P>return 1; </P>
<P>} </P>
<P>Then run the command ifup eth[n] (where [n] is the number of the Ethernet adapter) or restart the guest operating system.<BR><BR><BR>测试成功,用ifconfig可以查看获得的ip地址.</P><img src ="http://www.blogjava.net/kapok/aggbug/1723.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kapok/" target="_blank">笨笨</a> 2005-03-05 18:04 <a href="http://www.blogjava.net/kapok/archive/2005/03/05/1723.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>