<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>OS与Oracle &#187; Open Source</title>
	<atom:link href="http://www.os2ora.com/category/open-source/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.os2ora.com</link>
	<description>专注于现实世界Oracle数据库的高性能，高可扩展性与新一代数据库Exadata架构</description>
	<lastBuildDate>Mon, 19 Sep 2011 09:10:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>闲话Linux内核——学习，揣摩与玩味</title>
		<link>http://www.os2ora.com/chat-about-linux-kernel/</link>
		<comments>http://www.os2ora.com/chat-about-linux-kernel/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 08:33:21 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Linux性能调优]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[数据库性能调优]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux 内核]]></category>
		<category><![CDATA[Linux 性能监控]]></category>
		<category><![CDATA[软件架构]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/chat-about-linux-kernel/</guid>
		<description><![CDATA[周末翻阅了以前写在msn space上的文章，不经意间找到了一篇2006年写的关于Linux内核的文章，那时想不到自己会变成一个Database Performance Engineer，不过里面的一些观点却和现在的工作不谋而合，只不过那时面对的Linux Kernel，现在面对的却是Oracle Database......]]></description>
			<content:encoded><![CDATA[<p>Kaya 发表于 <a href="http://www.os2ora.com/">os2ora.com</a></p>
<p><em>周末翻阅了以前写在msn space上的文章，不经意间找到了一篇2006年写的关于Linux内核的文章，那时想不到自己会变成一个Database Performance Engineer，不过里面的一些观点却和现在的工作不谋而合，只不过那时面对的Linux Kernel，现在面对的却是Oracle Database，看来有一些根本的东西是不会变的。</em></p>
<p>quote begin“</p>
<p>最早接触Linux内核是在大三的时候，那时《操作系统》的课程设计就是进行Linux内核源代码的分析与进程调度的改进。题目是大的有点吓人，特别是对那时一个涉足未深的年轻人看来。不过那时做的事情很简单，认认真真的看了《Linux内核源代码情景分析》的前言部分（主要讲的AT&amp;T汇编语言，内核中一些特殊的编程规则），与进程调度相关的部分，包括进程的管理，进程的切换，进程与中断，软中断，系统调用，进程互斥与同步机制。并画了几张图阐述了进程调度的路线，对spinlock机制进行了深入的剖析。明白了2.4的内核为何是非抢占式内核，进程调度器其实也不是什么神奇的东 东—— 一个函数罢了，啥叫process context。同时，为了完成“进程调度机制的改进”，看了实现可抢占的两个补丁，哦，现在已经整合进2.6了，也怪不得昨天看2.6进程调度的介绍有种似曾相识的感觉。</p>
<p>可以说，那时的分析完全是理论学习。对于内核编程的实践几乎没有。带来的好处最主要的在于提高了对操作系统运行的认识与提高了代码的阅读能力。</p>
<p>回头去看这段往事，总觉得存在着有所改进的地方。</p>
<p>现在看来，内核是啥呢？只是一个比较大的软件项目，可以拿它与Eclipse相比，或者mplayer相比，或者就是与任何一个开源软件处于同层次的东西，只是它更具复杂性，涉及到的软件与硬件的东西更全面罢了。</p>
<p>或者说，经过这几年对开源项目的接触，对软件项目的参与，Linux内核在我心目中的神秘感已然消失，Eclipse在软件架框方面应该可以算出类拔萃，EFI在BIOS这一层上也实现了新的可扩展的和良好的设备管理模型，而Linux在操作系统的层次上也应该是一个典范，值得去学习，去揣摩，去玩味。</p>
<p>2.6内核之于2.4内核，无疑是前进了一大步，进程调度，设备管理等等方面都形成了更良好的framework。同时也涌现出了好多优秀的传道士及其杰作，如《Linux Kernel Development Second Edition》《Linux Device Driver Third Edition》。我更想把这些带有浓厚实践性质的书籍当做进入Linux 内核世界的一个极佳的“切入点”。想起Eclipse世界一本与此类似的书《contributing to eclipse》，一个提倡的规则就是“MONKEY SEE/MONKEY DO RULE Always start by copying the structure of a similar plug-in.”。从内核中学习内核，增强内核，应该是内核编程的一个原则。</p>
<p>不可否认地，“情景分析”是《Linux内核源代码情景分析》的一个亮点，为过去乏味的Linux内核源代码阅读注入了一丝亮色。可是，不管怎样，这还是一个静态的过程，我更期望能从一个动态的系统中获取关于她的内幕与运作规律。</p>
<p>所以，如果能够设想出一些观测内核运行的切入点，并藉此实现对内核机制的动态掌握，真真切切感知内核的运行，有时更能得出一些独具特色的结论进而做出更进一步的改进。</p>
<p>例如对内核调度机制的分析，有以下几个简单的问题：一秒钟内内核大概会做多少次进程切换。系统一般会存在着哪些进程，哪些系统因素会显著地加剧进程切换的次数。这些进程的运行与时间存在着怎样的分布关系（即进程与时间的函数关系）。通过在内核代码中加入相应的进行统计的代码，就可以画出这种函数图出来。再通过对它的分析，就更能从中发现出一些共性东西，数学性的东西，改进的空间。</p>
<p>内核中的调试机制，是与内核打交道首当其冲的问题，也是进行窥探内核的途径。做为一个工具，是实现此种学习的一个必经之路。如printk，如proc文件系统等。</p>
<p>而实践的过程，就是一个发现问题的过程，bottom halves有几种机制，softirq, workqueue, tasklet,他们之间有哪些区别，timer的实现有哪些，在进行实践的过程中，必定会碰到这些问题，并会主动地去寻找这类问题的答案，最后的结果就是自己编写的代码能够良好的运行于内核之中。</p>
<p>这里有另一问题，在内核中是否可以调用一般的系统调用？如open,close,read等等。会存在什么问题？又当如何解决？呵呵，当一个一个的问题被你解决之后，与Linux内核之间的接触又亲密了一层。</p>
<p>从实践中来，到实践中去吧。</p>
<p>当从一个业余者的角度来看Linux内核时，我想，有趣才是最好的导师，寓学于乐吧。 </p>
<p>“quote end</p>
<p><em>遗憾的是，自从做完了研究生的毕业论文之后，就基本上不去做Linux Kernel相关的东西了，但从现在一个Database Performance Engineer的观点看，那时的一些想法和现在的工作还是有一些共性的。比如</em>从一个动态的系统中获取关于她的内幕与运作规律; 通过在内核代码中加入相应的进行统计的代码，就可以画出这种函数图出来,再通过对它的分析，就更能从中发现出一些共性东西，数学性的东西，改进的空间; 内核中的调试机制，是与内核打交道首当其冲的问题，也是进行窥探内核的途径,做为一个工具，是实现此种学习的一个必经之路。如printk，如proc文件系统等。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/chat-about-linux-kernel/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Linux性能分析工具重点推荐 – nmon analyser</title>
		<link>http://www.os2ora.com/linux-performance-analysis-tool-recommend-nmon-analyser-2/</link>
		<comments>http://www.os2ora.com/linux-performance-analysis-tool-recommend-nmon-analyser-2/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 15:20:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Linux性能调优]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[数据库性能调优]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Linux 性能监控]]></category>
		<category><![CDATA[monitor]]></category>
		<category><![CDATA[nmon]]></category>
		<category><![CDATA[nmon analyser]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[性能监控]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/linux-performance-analysis-tool-recommend-nmon-analyser-2/</guid>
		<description><![CDATA[除了上一篇文章提到的collectl, IBM出品的nmon其实也是一个不错的Linux上的性能监控工具，在写这篇文章时顺带google了nmon一把，惊喜地发现nmon也open source了。还是以sourceforge为根据地，网址是http://nmon.sourceforge.net.

nmon在监控数据与易用性方面几乎与collectl不相上下，对监控单台机器的系统性能还是不错的选择的。

不过，nmon却做出了另一个突出贡献。这就是推出了一个nmon analyser，而且以开放源代码的形式提供，它的目的是实现对nmon产生的历史性能数据的分析，产生一系列的图表。nmon analyser其实就是一个Excel文件，里面嵌套了VBA脚本用来分析nmon产生的文本文件并产生一系列的图形报表。深入地分析这些脚本，你会发现，这个analyser其实是一个极好的框架，很容易利用这个analyser来分析自己的数据，而不局限于nmon产生的文件......]]></description>
			<content:encoded><![CDATA[<p>Kaya 发表于 <a href="http://www.os2ora.com">os2ora.com</a></p>
<p>除了<a href="http://www.os2ora.com/linux-performance-monitoring-tool-recommend-collectl/">上一篇文章</a>提到的collectl, IBM出品的nmon其实也是一个不错的Linux上的性能监控工具，在写这篇文章时顺带google了nmon一把，惊喜地发现nmon也open source了。还是以sourceforge为根据地，网址是<a title="http://nmon.sourceforge.net" href="http://nmon.sourceforge.net">http://nmon.sourceforge.net</a>.</p>
<p>nmon在监控数据与易用性方面几乎与collectl不相上下，对监控单台机器的系统性能还是不错的选择的。不过，nmon没有如collectl一样的网络接口，如果用来它实时监控几十台机器，可能要开几十个窗口，这基本上是不可能的事情。</p>
<p>下面是nmon官方网站最新版本的一个截图：</p>
<div><a href="http://www.os2ora.com/wp-content/uploads/2009/11/image11.png"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="image" src="http://www.os2ora.com/wp-content/uploads/2009/11/image_thumb10.png" border="0" alt="image" width="483" height="296" /></a></div>
<div> </div>
<p>不过，nmon却做出了另一个突出贡献。这就是推出了一个nmon analyser，而且以开放源代码的形式提供，它的目的是实现对nmon产生的历史性能数据的分析，产生一系列的图表。</p>
<p>以图表分析性能数据的作用是很明显的。密密麻麻的数字，也许只有经过一定的聚合计算，人们才能大致地了解数据的含义，说得忽悠人一点，那就是数据挖掘。不过，聚合计算有个问题，就是会把系统可能出现的瓶颈掩盖掉，举个<a href="http://jonathanlewis.wordpress.com">Jonathan Lewis</a>打过的比方，一个人头部放在寒冰里，脚放在烈火中，按平均值理论，这个人会感觉得很舒服。而利用图形的方式对数据进行描述，就不会导致数据的丢失，而且会使数据特征一目了然。</p>
<p>还是一个来自官方网站上nmon analyser分析结果的一个截图：</p>
<p><a href="http://www.os2ora.com/wp-content/uploads/2009/11/image12.png"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="image" src="http://www.os2ora.com/wp-content/uploads/2009/11/image_thumb11.png" border="0" alt="image" width="400" height="242" /></a></p>
<p>nmon analyser其实就是一个Excel文件，里面嵌套了VBA脚本用来分析nmon产生的文本文件并产生一系列的图形报表。深入地分析这些脚本，你会发现，这个analyser其实是一个极好的框架，很容易利用这个analyser来分析自己的数据，而不局限于nmon产生的文件。举个例子，可以用nmon analyser来产生由collectl产生的文件。这当然需要对nmon analyser的脚本做一定的改写，下面是一个例子：</p>
<p><a href="http://www.os2ora.com/wp-content/uploads/2009/11/image13.png"><img style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" title="image" src="http://www.os2ora.com/wp-content/uploads/2009/11/image_thumb12.png" border="0" alt="image" width="804" height="226" /></a></p>
<p>这里可能要做更深一步的说明，无论是nmon或者collectl，都提供了一种把它们做为后台daemon进程对系统进行监控并产生监控日志的功能。这些监控日志就可以被用于对系统的历史性能的分析。collectl甚至还做了一个功能，根据用户指定的时间跨度，自动地从日志里面抽取出这段时间里的历史数据。analyser的作用就在于分析这些日志，并产生相应的分析报告和图表。</p>
<p>因此，从某种程度上说，nmon anlayser为我们提供了一个框架，利用这个框架，我们可以利用起Excel强大的数据分析与绘图功能，实现对文本文件数据的自动处理。这才是本文要说明的最终结论。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/linux-performance-analysis-tool-recommend-nmon-analyser-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Linux操作系统资源监控工具重点推荐 &#8212; collectl</title>
		<link>http://www.os2ora.com/linux-performance-monitoring-tool-recommend-collectl/</link>
		<comments>http://www.os2ora.com/linux-performance-monitoring-tool-recommend-collectl/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 05:57:44 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Linux性能调优]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[数据库性能调优]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Linux 性能监控]]></category>
		<category><![CDATA[linux系统监控工具]]></category>
		<category><![CDATA[monitor]]></category>
		<category><![CDATA[nmon]]></category>
		<category><![CDATA[nmon analyser]]></category>
		<category><![CDATA[VBA]]></category>
		<category><![CDATA[性能监控]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/linux-performance-monitoring-tool-recommend-collectl/</guid>
		<description><![CDATA[对系统资源的监控，是系统管理者一个必备的任务。从OS角度讲，包括CPU/IO/Network/FS等等，从Database的角度讲，包括Active Sessions/ON CPU/Disks/Top Segments/Top SQL等等。而Database对资源的利用也反映在OS一级上，对OS计算资源的充分均衡利用是我们的目标。那么，如何有效的掌握OS的资源利用情况就成为了一个System Administrator，Database Administrator日常工作的一个重点。
Linux上的常规监控工具主要有top, vmstat, iostat, netstat, sar这些。对这些工具的熟练运用应该能解决大部分问题，不过，这些工具也太散了，学习周期是一个很大的问题。有没有一个包揽所有这些工具的一个超级命令呢？
这就是本文要推荐的一个工具了，collectl，一个开源的sourceforge上的项目，http://collectl.sourceforge.net......]]></description>
			<content:encoded><![CDATA[<p>Kaya 发表于 <a href="http://www.os2ora.com">os2ora.com</a></p>
<p>对系统资源的监控，是系统管理者一个必备的任务。从OS角度讲，包括CPU/IO/Network/FS等等，从Database的角度讲，包括Active Sessions/ON CPU/Disks/Top Segments/Top SQL等等。而Database对资源的利用也反映在OS一级上，对OS计算资源的充分均衡利用是我们的目标。那么，如何有效的掌握OS的资源利用情况就成为了一个System Administrator，Database Administrator日常工作的一个重点。</p>
<p>Linux上的常规监控工具主要有top, vmstat, iostat, netstat, sar这些。对这些工具的熟练运用应该能解决大部分问题，不过，这些工具也太散了，学习周期是一个很大的问题。有没有一个包揽所有这些工具的一个超级命令呢？</p>
<p>这就是本文要推荐的一个工具了，collectl，一个开源的sourceforge上的项目，<a href="http://collectl.sourceforge.net">http://collectl.sourceforge.net</a>。</p>
<p>先摆摆架构图</p>
<p><img src="http://collectl.sourceforge.net/Architecture.jpg" alt="" width="716" height="375" /></p>
<p>三种模式：</p>
<p>Interactive Mode: This is the default and in this mode data is read from /proc and passes through analyze.</p>
<p>Record Mode: Data passes from /proc the same way as Interactive Mode but instead of going through the Analyze function it written it to a file.</p>
<p>Playback Mode: Here collectl works virtually identical to Interactive Mode except instead of reading data from /proc it reads it from a file.</p>
<p>另一个摩登的，独此一家的，现成的特性是支持socket发送数据，这对于一个有几十台以上机器的cluster来说简直就是一个福音。可以通过另一个命令接收整个cluster里面所有机器实时发送过来的数据，通过一个屏幕显示出来，这对于掌握整个cluster的工作状态是极其方便的。</p>
<p>对于一般的机房来说，虽然机房里的所有机器不是一般意义上的cluster，但是也可以在所有机器上安装collectl,然后把性能信息实时发送到一个监控机器，实现grid control。当然，这里指的是安装了Linux操作系统的机器。</p>
<p>collectl支持的性能数据种类应该是最全的一个，包括IO/CPU/Network/NFS/Infiniband/Lustre/Process/Slabs等等。</p>
<p>最后贴一个collectl在Exadata上的一个应用，监控所有的8个数据库节点还有14个cell节点。</p>
<p><a href="http://www.os2ora.com/wp-content/uploads/2009/11/image6.png"><img style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" title="image" src="http://www.os2ora.com/wp-content/uploads/2009/11/image_thumb6.png" border="0" alt="image" width="804" height="360" /></a></p>
<p>看起来Exadata V1的IO已经很强劲，对否？</p>
<p>collectl有一个工具<a href="http://collectl-utils.sourceforge.net/colmux.html">colmux</a>可以实现上面的类似功能，是collectl作者的另一个开源项目，叫Collectl Utilities(<a href="http://collectl-utils.sourceforge.net/">http://collectl-utils.sourceforge.net/</a>)。</p>
<p>如果对上图监控方式感兴趣的朋友可以用邮件的方式和我进一步联系。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/linux-performance-monitoring-tool-recommend-collectl/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>与Ubuntu的第一次亲密接触(cont.)</title>
		<link>http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6cont/</link>
		<comments>http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6cont/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 17:39:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6cont/</guid>
		<description><![CDATA[罗列一下apt的一系列命令，也借以感受感受apt带给我们的方便与快捷。 APT相关命令 /etc/apt/sources.list 命令 用法 备注 apt-cdrom [options] command apt-cdrom is a tool to add CDROM&#8217;s to APT&#8217;s source list. The CDROM mount point and device information is taken from apt.conf and /etc/fstab. Commands&#58;   add &#8211; Add a CDROM       ident &#8211; Report the identity of a CDROM   apt-get [options] command apt-get [options] install&#124;remove [...]]]></description>
			<content:encoded><![CDATA[<div>
<p style="background:white;text-indent:10pt;line-height:13.5pt;text-align:left" align="left"><span lang="EN-US" style="font-size:10pt;color:black">罗列一下apt的一系列命令，也借以感受感受apt带给我们的方便与快捷。</span><span lang="EN-US" style="font-size:10pt;color:black"><br />
</span></p>
<p style="background:white;layout-grid-mode:char;line-height:13.5pt"><font size="3"><b><span lang="EN-US" style="color:black"><font face="Times New Roman">APT</font></span></b><b><span style="color:black;font-family:宋体">相关命令</span></b><b><span lang="EN-US" style="color:black;font-family:宋体"></span></b></font>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">/etc/apt/sources.list</font></font></span>
</p>
<p><span lang="EN-US"><font face="Times New Roman" size="3"></font></span>
</p>
<p style="background:white;text-indent:10pt;line-height:13.5pt;text-align:left" align="left">
<table style="border-right:medium none;border-top:medium none;border-left:medium none;border-bottom:medium none;border-collapse:collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr>
<td valign="top" width="224">
<p><font size="3"><span style="font-family:宋体">命令</span><span lang="EN-US"></span></font>
</p>
</td>
<td valign="top" width="455">
<p><font size="3"><span style="font-family:宋体">用法</span><span lang="EN-US"></span></font>
</p>
</td>
<td valign="top" width="199">
<p><font size="3"><span style="font-family:宋体">备注</span><span lang="EN-US"></span></font>
</p>
</td>
</tr>
<tr>
<td valign="top" width="224">
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-cdrom [options] command</font></font></span>
</p>
</td>
<td valign="top" width="455">
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-cdrom is a tool to add CDROM&#8217;s to APT&#8217;s source list. <br /></font></font></span><span lang="EN-US"><font size="3"><font face="Times New Roman">The CDROM mount point and device information is taken <br /></font></font></span><span lang="EN-US"><font size="3"><font face="Times New Roman">from apt.conf and /etc/fstab.</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">Commands&#58;<br /></font></font></span><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>add &#8211; Add a CDROM</font></font></span> <span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   <br /></span>   ident &#8211; Report the identity of a CDROM</font></font></span>
</p>
</td>
<td valign="top" width="199">
<p><span lang="EN-US"><font face="Times New Roman" size="3"> </font></span>
</p>
</td>
</tr>
<tr>
<td valign="top" width="224">
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-get [options] command</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-get [options] install|remove pkg1 [pkg2 ...]</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-get [options] source pkg1 [pkg2 ...]</font></font></span>
</p>
</td>
<td valign="top" width="455">
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-get is a simple command line interface for downloading and</font></font></span> <span lang="EN-US"><font size="3"><font face="Times New Roman">installing packages. The most frequently used commands are update</font></font></span> <span lang="EN-US"><font size="3"><font face="Times New Roman">and install.</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">Commands&#58;</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>update &#8211; Retrieve new lists of packages</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>upgrade &#8211; Perform an upgrade</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>install &#8211; Install new packages (pkg is libc6 not libc6.deb)</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>remove &#8211; Remove packages</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>source &#8211; Download source archives</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>build-dep &#8211; Configure build-dependencies for source packages</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>dist-upgrade &#8211; Distribution upgrade, see apt-get(8)</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>dselect-upgrade &#8211; Follow dselect selections</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>clean &#8211; Erase downloaded archive files</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>autoclean &#8211; Erase old downloaded archive files</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>check &#8211; Verify that there are no broken dependencies</font></font></span>
</p>
</td>
<td valign="top" width="199">
<p><span lang="EN-US" style="font-size:10pt;font-family:宋体">使用</span><span lang="EN-US" style="font-size:10pt;color:blue"><font face="Times New Roman">apt-get upgrade</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">升级软件包之前</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">需要执行</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:blue">apt-get update</span><span lang="EN-US" style="font-size:10pt"> </span></font><span lang="EN-US" style="font-size:10pt;font-family:宋体">命令从当前系统使用的</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">Debian</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">数据源中更新软件包列表</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt">.</span><span lang="EN-US" style="font-size:10pt"></span></font>
</p>
<p><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman"> </font></span>
</p>
<p style="background:white;layout-grid-mode:char;line-height:13.5pt"><span lang="EN-US" style="font-size:10pt;color:blue"><font face="Times New Roman">apt-get dist-upgrade</font></span><span style="font-size:10pt;font-family:宋体">与升级系统中的软件包不同的是</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,<span style="color:blue">apt-get dist-upgrade</span></font></span><span style="font-size:10pt;font-family:宋体">是将整个系统都升级了过去</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span style="font-size:10pt;font-family:宋体">例如安装光盘使用的是</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">stable </font></span><span style="font-size:10pt;font-family:宋体">而我却想使用</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">testing,</font></span><span style="font-size:10pt;font-family:宋体">怎么办呐</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">~? </font></span><span style="font-size:10pt;font-family:宋体">首先编辑</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:#666699">sources.list</span><span lang="EN-US" style="font-size:10pt"> </span></font><span style="font-size:10pt;font-family:宋体">把</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">stable</font></span><span style="font-size:10pt;font-family:宋体">的软件服务器指向</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">testing</font></span>
</p>
<p style="background:white;layout-grid-mode:char;line-height:13.5pt"><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span style="font-size:10pt;font-family:宋体">这样在输入</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:blue">apt-get dist-upgrade</span><span lang="EN-US" style="font-size:10pt"> </span></font><span style="font-size:10pt;font-family:宋体">就会将整个版本升级为</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">testing</font></span><span style="font-size:10pt;font-family:宋体">版</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">.</font></span>
</p>
<p><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman"> </font></span>
</p>
<p><span lang="EN-US" style="font-size:10pt;font-family:宋体">系统中的某个软件包安装到系统中的文件受到破坏</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">或需要安装软件包的新版本时</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">用户可以使用</span><span lang="EN-US" style="font-size:10pt;color:blue"><font face="Times New Roman">apt-get &#8211;reinstall install</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">命令重新安装指定软件包</span><span lang="EN-US" style="font-size:10pt"></span>
</p>
<p><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman"> </font></span>
</p>
<p><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:blue">apt-get remove</span><span lang="EN-US" style="font-size:10pt"> </span></font><span style="font-size:10pt;font-family:宋体">可以蛮好的解决软件包卸载过程中的包依赖关系问题</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span style="font-size:10pt;font-family:宋体">依赖于被卸载软件包的其他软件包将被一同卸载</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">.</font></span>
</p>
<p><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman"> </font></span>
</p>
<p><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:blue">apt-get &#8211;purge remove</span><span lang="EN-US" style="font-size:10pt"> </span></font><span lang="EN-US" style="font-size:10pt;font-family:宋体">命令可以从系统中完全卸载指定的软件包</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">即卸载软件包中文件的同时还删除该软件包所使用的配置文件</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">是从系统中删除某个软件包最彻底的方法</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt">.</span><span lang="EN-US" style="font-size:10pt"></span></font>
</p>
<p><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman"> </font></span>
</p>
<p><span lang="EN-US" style="font-size:10pt;color:blue"><font face="Times New Roman">apt-get clean</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">命令安全有效的清理</span><span lang="EN-US" style="font-size:10pt;color:#666699"><font face="Times New Roman">/var/cache/apt/archives/</font></span><span lang="EN-US" style="font-size:10pt;font-family:宋体">目录中的文件</span><span lang="EN-US" style="font-size:10pt"></span>
</p>
<p><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:blue">apt-get </span><span lang="EN-US" style="font-size:10pt;color:blue">-b </span><span lang="EN-US" style="font-size:10pt;color:blue">source </span></font><span lang="EN-US" style="font-size:10pt;font-family:宋体">命令用于下载指定软件包到当前目录中</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt">,</span><span lang="EN-US" style="font-size:10pt"> -b </span></font><span style="font-size:10pt;font-family:宋体">表示</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt">compile</span><span lang="EN-US"></span></font>
</p>
</td>
</tr>
<tr>
<td valign="top" width="224">
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-cache [options] command</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-cache [options] add file1 [file2 ...]</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-cache [options] showpkg pkg1 [pkg2 ...]</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-cache [options] showsrc pkg1 [pkg2 ...]</font></font></span>
</p>
<p><span lang="EN-US"><font face="Times New Roman" size="3"> </font></span>
</p>
</td>
<td valign="top" width="455">
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">apt-cache is a low-level tool used to manipulate APT&#8217;s binary</font></font></span> <span lang="EN-US"><font size="3"><font face="Times New Roman">cache files, and query information from them</font></font></span>
</p>
<p><span lang="EN-US"><font size="3"><font face="Times New Roman">Commands&#58;</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>add &#8211; Add a package file to the source cache</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>gencaches &#8211; Build both the package and source cache</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>showpkg &#8211; Show some general information for a single package</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>showsrc &#8211; Show source records</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>stats &#8211; Show some basic statistics</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>dump &#8211; Show the entire file in a terse form</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>dumpavail &#8211; Print an available file to stdout</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>unmet &#8211; Show unmet dependencies</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span><b>search</b> &#8211; Search the package list for a regex pattern</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span><b>show</b> &#8211; Show a readable record for the package</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span><b>depends</b> &#8211; Show raw dependency information for a package</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span><b>rdepends</b> &#8211; Show reverse dependency information for a package</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>pkgnames &#8211; List the names of all packages</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>dotty &#8211; Generate package graphs for GraphVis</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>xvcg &#8211; Generate package graphs for xvcg</font></font></span> <br /><span lang="EN-US"><font size="3"><font face="Times New Roman"><span>   </span>policy &#8211; Show policy settings</font></font></span>
</p>
</td>
<td valign="top" width="199">
<p style="background:white;layout-grid-mode:char;line-height:13.5pt"><span lang="EN-US" style="font-size:10pt;color:blue"><font face="Times New Roman">apt-cache showsrc</font></span><span style="font-size:10pt;font-family:宋体">命令用于查看源码包的信息</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">,</font></span><span style="font-size:10pt;font-family:宋体">在下载源码包之前可以使用该命令获取指定的源码包信息</span><span lang="EN-US" style="font-size:10pt"><font face="Times New Roman">.</font></span>
</p>
<p><span lang="EN-US"><font face="Times New Roman" size="3"> </font></span>
</p>
</td>
</tr>
<tr>
<td valign="top" width="224">
<p><span lang="EN-US"><font face="Times New Roman" size="3"> </font></span>
</p>
</td>
<td valign="top" width="455">
<p><span lang="EN-US"><font face="Times New Roman" size="3"> </font></span>
</p>
</td>
<td valign="top" width="199">
<p><span lang="EN-US"><font face="Times New Roman" size="3"> </font></span></p>
</td>
</tr>
</tbody>
</table>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6cont/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>与Ubuntu的第一次亲密接触</title>
		<link>http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6/</link>
		<comments>http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6/#comments</comments>
		<pubDate>Thu, 21 Jun 2007 17:38:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6/</guid>
		<description><![CDATA[Ubuntu 的意思是&#8217;Humanity to others&#8217;,从innovation的perspective出发，第一个让人震捍的就是安装程序的设计。技术上而言，没什么突出的，就是整合了linux live cd的功能（一张光盘就是一个安装好了的OS），然后在这个OS上提供了一个双击即运行的安装程序，同时，提供了一些桌面应用的sample让新手们体验体验。可是，从用户的角度出发，这应该是一个极佳的创意，为什么以前的OS安装程序都那么简陋呢，即使如XP，也没有让你体验体验先再接着安装的功能呢。That&#8217;s really what &#8216;Humanity to others&#8217; means. 心里头的一个担忧，就是从Redhat的使用经验转到其它distribution,会不会耗费一些无谓的精力呢？ 促使我接触Ubuntu的根本原因在于它们间包管理机制的不同。对RPM其实早已抱怨己久，RPM把包与包之间的依赖关系都留给用户自己解决了，而这本应该由系统解决的，这给升级带来了海量的工作负担，甚至导致一些升级工作的无法进行！ 出乎意料的是，Ubuntu采用的包管理机制就是Debian的那一套。RPM与Deb应该是目前Linux世界两种最流行的binary级别的包管理机制了。（source级别的独gentoo一家？）Deb应该做得比RPM好吧，起码在包与包间的依赖的智能处理上。当然，目前的RPM应该早就借鉴了Deb的优点了，就是那个叫yum的东西吗？没深究了。无论如何，就凭着Deb能动态地网络安装与升级，就好好地熟悉一下吧。 利用已知的东西，对比一些未知的东西还是比较值得的。嗯，先对RPM与Deb都有的东西在用法上做个对比。 RPM与DEB包管理方式的对比 对比项目 RPM DEB 备注 查询       查询当前系统所有以安装的包的信息 rpm -qa dpkg -l   查看软件包的详细情况 rpm -qi pkg rpm -qpi pkg.rpm dpkg -s pkg dpkg -I pkg.deb   查询软件包的文件列表 rpm -ql  pkg rpm -qpl pkg.rpm dpkg -L pkg dpkg [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>Ubuntu 的意思是&#8217;Humanity to others&#8217;,从innovation的perspective出发，第一个让人震捍的就是安装程序的设计。技术上而言，没什么突出的，就是整合了linux live cd的功能（一张光盘就是一个安装好了的OS），然后在这个OS上提供了一个双击即运行的安装程序，同时，提供了一些桌面应用的sample让新手们体验体验。可是，从用户的角度出发，这应该是一个极佳的创意，为什么以前的OS安装程序都那么简陋呢，即使如XP，也没有让你体验体验先再接着安装的功能呢。That&#8217;s really what &#8216;Humanity to others&#8217; means.
</p>
<p>心里头的一个担忧，就是从Redhat的使用经验转到其它distribution,会不会耗费一些无谓的精力呢？ 促使我接触Ubuntu的根本原因在于它们间包管理机制的不同。对RPM其实早已抱怨己久，RPM把包与包之间的依赖关系都留给用户自己解决了，而这本应该由系统解决的，这给升级带来了海量的工作负担，甚至导致一些升级工作的无法进行！
</p>
<p>出乎意料的是，Ubuntu采用的包管理机制就是Debian的那一套。RPM与Deb应该是目前Linux世界两种最流行的binary级别的包管理机制了。（source级别的独gentoo一家？）Deb应该做得比RPM好吧，起码在包与包间的依赖的智能处理上。当然，目前的RPM应该早就借鉴了Deb的优点了，就是那个叫yum的东西吗？没深究了。无论如何，就凭着Deb能动态地网络安装与升级，就好好地熟悉一下吧。
</p>
<p>利用已知的东西，对比一些未知的东西还是比较值得的。嗯，先对RPM与Deb都有的东西在用法上做个对比。
</p>
<p style=""><font size="3"><font color="#000000"><span lang="EN-US" style=""><font face="Times New Roman">RPM</font></span><span style="font-family:宋体">与</span><span lang="EN-US" style=""><font face="Times New Roman">DEB</font></span><span style="font-family:宋体">包管理方式的对比</span><span lang="EN-US" style=""></span></font></font>
</p>
<table style="border-right:medium none;border-top:medium none;border-left:medium none;border-bottom:medium none;border-collapse:collapse" cellspacing="0" cellpadding="0" border="1">
<tbody>
<tr style="">
<td valign="top" width="143">
<p style=""><font size="3"><font color="#000000"><b style=""><span style="font-family:宋体">对比项目</span></b><b style=""><span lang="EN-US" style=""></span></b></font></font>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">RPM</font></font></font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">DEB</font></font></font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><font size="3"><font color="#000000"><span style="font-family:宋体">备注</span><span lang="EN-US" style=""></span></font></font>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><font size="3"><font color="#000000"><b style=""><i style=""><span style="font-family:宋体">查询</span></i></b><b style=""><i style=""><span lang="EN-US" style=""></span></i></b></font></font>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><span style="font-size:10pt;color:black;font-family:宋体">查询当前系统所有以安装的包的信息</span><span lang="EN-US" style=""></span>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -qa</font></font></font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -l</font></font></font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><span style="font-size:10pt;color:black;font-family:宋体">查看软件包的详细情况</span><span lang="EN-US" style=""></span>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -qi pkg</font></font></font></span>
</p>
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -qpi pkg.rpm</font></font></font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -s pkg</font></font></font></span>
</p>
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -I pkg.deb</font></font></font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><span style="font-size:10pt;color:black;font-family:宋体">查询软件包的文件列表</span><span lang="EN-US" style=""></span>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -ql<span style="">  </span>pkg</font></font></font></span>
</p>
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -qpl pkg.rpm</font></font></font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -L pkg</font></font></font></span>
</p>
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -c pkg.deb</font></font></font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><span style="font-size:10pt;color:#993366;font-family:宋体">查询系统中某个文件属于那个软件包</span><span lang="EN-US" style=""></span>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -qf file</font></font></font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -S file</font></font></font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><font size="3"><font color="#000000"><b style=""><i style=""><span style="font-family:宋体">安装</span></i></b><span lang="EN-US" style=""></span></font></font>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -i(vh)</font></font></font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -i</font></font></font></span>
</p>
</td>
<td valign="top" width="347">
<p style="background:white;layout-grid-mode:char;line-height:13.5pt"><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:blue">dpkg –i</span><span lang="EN-US" style="font-size:10pt;color:black"> </span></font><span style="font-size:10pt;color:black;font-family:宋体">手工安装</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">deb</font></span><span style="font-size:10pt;color:black;font-family:宋体">包到系统中</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">,</font></span><span style="font-size:10pt;color:black;font-family:宋体">不过有时会存在</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">Dpends</font></span><span style="font-size:10pt;color:black;font-family:宋体">关系</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">,</font></span><span style="font-size:10pt;color:black;font-family:宋体">建议使用</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">apt-get </font></span><span style="font-size:10pt;color:black;font-family:宋体">来安装</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">.</font></span>
</p>
<p style="background:white;layout-grid-mode:char;line-height:13.5pt"><span style="font-size:10pt;color:black;font-family:宋体">如果通过</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">dpkg –i</font></span><span style="font-size:10pt;color:black;font-family:宋体">安装软件后由于</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">Dpends</font></span><span style="font-size:10pt;color:black;font-family:宋体">关系没有安装成功</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">,</font></span><span style="font-size:10pt;color:black;font-family:宋体">可通过</span><span lang="EN-US" style="font-size:10pt;color:blue"><font face="Times New Roman">apt-get –f install</font></span><span style="font-size:10pt;color:black;font-family:宋体">解决</span><span lang="EN-US" style="font-size:10.5pt"></span>
</p>
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
<td valign="top" width="347">
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span>
</p>
</td>
</tr>
<tr style="">
<td valign="top" width="143">
<p style=""><font size="3"><font color="#000000"><b style=""><i style=""><span style="font-family:宋体">卸装</span></i></b><b style=""><i style=""><span lang="EN-US" style=""></span></i></b></font></font>
</p>
</td>
<td valign="top" width="155">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">rpm -e</font></font></font></span>
</p>
</td>
<td valign="top" width="154">
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -r</font></font></font></span>
</p>
<p style=""><span lang="EN-US" style=""><font size="3"><font color="#000000"><font face="Times New Roman">dpkg -P </font></font></font></span>
</p>
</td>
<td valign="top" width="347">
<p style="background:white;layout-grid-mode:char;line-height:13.5pt"><span lang="EN-US" style="font-size:10pt;color:blue"><font face="Times New Roman">dpkg –P </font></span><span style="font-size:10pt;color:black;font-family:宋体">用于卸载软件包同时也删除配置文件</span><font face="Times New Roman"><span lang="EN-US" style="font-size:10pt;color:black">,</span><span lang="EN-US" style="font-size:10pt;color:blue">dpkg –P</span><span lang="EN-US" style="font-size:10pt;color:black"> </span></font><span style="font-size:10pt;color:black;font-family:宋体">不能解决</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">Dpends</font></span><span style="font-size:10pt;color:black;font-family:宋体">问题</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">,</font></span><span style="font-size:10pt;color:black;font-family:宋体">建议卸载时使用</span><span lang="EN-US" style="font-size:10pt;color:black"><font face="Times New Roman">apt-get</font></span><span style="font-size:10pt;color:black;font-family:宋体">操作</span><span lang="EN-US" style="font-size:10pt;color:black;font-family:宋体"></span>
</p>
<p style=""><span lang="EN-US" style=""><font face="Times New Roman" color="#000000" size="3"> </font></span></p>
</td>
</tr>
</tbody>
</table>
<p style="background:white;text-indent:10pt;line-height:13.5pt;text-align:left" align="left"><span lang="EN-US" style="font-size:10pt;color:black">APT(Advanced Packaging Tool),</span><span style="font-size:10pt;color:black;font-family:宋体">是</span><span lang="EN-US" style="font-size:10pt;color:black">Debian Linux</span><span style="font-size:10pt;color:black;font-family:宋体">和基于</span><span lang="EN-US" style="font-size:10pt;color:black">Debian</span><span style="font-size:10pt;color:black;font-family:宋体">进行开发的</span><span lang="EN-US" style="font-size:10pt;color:black">Linux</span><span style="font-size:10pt;color:black;font-family:宋体">发行版</span><span lang="EN-US" style="font-size:10pt;color:black">(</span><span style="font-size:10pt;color:black;font-family:宋体">如</span><span lang="EN-US" style="font-size:10pt;color:black">Ubuntu)</span><span style="font-size:10pt;color:black;font-family:宋体">使用的高级包管理系统</span><span lang="EN-US" style="font-size:10pt;color:black">.APT</span><span style="font-size:10pt;color:black;font-family:宋体">最初的设计目的是处理</span><span lang="EN-US" style="font-size:10pt;color:black">Debian</span><span style="font-size:10pt;color:black;font-family:宋体">系统中的</span><span lang="EN-US" style="font-size:10pt;color:black">.deb</span><span style="font-size:10pt;color:black;font-family:宋体">软件包</span><span lang="EN-US" style="font-size:10pt;color:black">,</span><span style="font-size:10pt;color:black;font-family:宋体">但现在通过</span><span lang="EN-US" style="font-size:10pt;color:black">apt4rpm,</span><span style="font-size:10pt;color:black;font-family:宋体">已经可以在其他系统处理</span><span lang="EN-US" style="font-size:10pt;color:black">rpm</span><span style="font-size:10pt;color:black;font-family:宋体">软件包了</span><span lang="EN-US" style="font-size:10pt;color:black">.</span>
</p>
<p style="background:white;text-indent:10pt;line-height:13.5pt;text-align:left" align="left"><span lang="EN-US" style="font-size:10pt;color:black">下篇再看看apt一系列的命令。</span></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/%e4%b8%8eubuntu%e7%9a%84%e7%ac%ac%e4%b8%80%e6%ac%a1%e4%ba%b2%e5%af%86%e6%8e%a5%e8%a7%a6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Source and Oracle &#8212; Trace Analyzer</title>
		<link>http://www.os2ora.com/open-source-and-oracle-trace-analyzer/</link>
		<comments>http://www.os2ora.com/open-source-and-oracle-trace-analyzer/#comments</comments>
		<pubDate>Wed, 22 Nov 2006 07:52:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/open-source-and-oracle-trace-analyzer/</guid>
		<description><![CDATA[What&#8217;s going on in a Oracle session? Usually, you turn on tracing a session, then analyse the output of trace file. But the raw trace file are difficult to read and understand. So you must use some tools to help you do this job. The most popular tool is what Oracle offer, tkprof, which parse the [...]]]></description>
			<content:encoded><![CDATA[<div>What&#8217;s going on in a Oracle session?</div>
<div>Usually, you turn on tracing a session, then analyse the output of trace file. But the raw trace file are difficult to read and understand. So you must use some tools to help you do this job. The most popular tool is what Oracle offer, tkprof, which parse the trace file and output another text file.</div>
<div>Here I will introduce another tool which is more powerful than tkprof, called Trace Analyzer. This tool parse the trace file <strong>completely</strong>, and also query the database for additional infomation, erasing your job for quering relate-to-trace information from database, such as table, index, tablespaces, extents, etc.</div>
<div>For example, when you analyse the trace from tkprof, sometimes you want to know detailed infomation about the tables and index referenced by the explain plan. Then you use the sqlplus to query the database for these infomation. But with trca, it free you from such jobs, you just read it in the report. </div>
<div>This tool is open source, you can view the code, modify the code, and learn the code for your own development. and you can download from <a href="http://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&amp;p_id=224270.1"><u><font color="#0000ff">Metalink Note 224270.1</font></u></a>.</div>
<div> </div>
<div>Install trca&#58;</div>
<div>simple, follow the instructions.txt included in installation zip file.</div>
<div> </div>
<div>Quick start to use trca&#58;</div>
<div>SQL&gt; exec dbms_session.session_trace_enable;</div>
<div> </div>
<div>SQL&gt; sql activites to be traced&#8230;&#8230;&#8230;&#8230;..</div>
<div> </div>
<div>SQL&gt;exec dbms_session.session_trace_disable;</div>
<div> </div>
<div>SQL&gt; exec trca$i.trace_analyzer </div>
<div> </div>
<div>then a generated HTML is put into &quot;user_dump_dest&quot; directory.</div>
<div> </div>
<div>NOTE&#58;</div>
<div>There are various ways to enable trace.</div>
<div>
<div><strong>1. execute dbms_session.session_trace_enable(); </strong></div>
<div>can be invoked by any user to enable session-level SQL trace for their own session.</div>
</div>
<div><strong>2. execute dbms_session.set_sql_trace(true); </strong></div>
<div>require DBA privileage, equivalent to  &quot;alter session set sql_trace = true&quot;</div>
<div><strong>3. alter session set sql_trace = true; </strong></div>
<div>require DBA privileage</div>
<div><strong>4. exec DBMS_MONITOR.SESSION_TRACE_ENABLE();</strong></div>
<div>only visable to DBA.</div>
<div>5. <strong>DBMS_SYSTEM.Set_sql_trace_in_session</strong></div>
<div>The DBMS_SYSTEM package is not a published package in the Oracle published documentation of 9iR2, 10gR1 or 10gR2..</div>
<div><strong>6. ALTER SESSION SET EVENTS &#8217;10046 trace name context forever, level 8&#8242;;</strong><br /><strong>7.ORADEBUG SETMYPID;</strong></div>
<div><strong>8.EXEC DBMS_SUPPORT.start_trace(waits=&gt;TRUE, binds=&gt;FALSE);</strong></div>
<div>is not present by default, but can be loaded as the SYS user by executing the $ORACLE_HOME/rdbms/admin/dbmssupp.sql script.</div>
<div> </div>
<div> </div>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/open-source-and-oracle-trace-analyzer/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Open Source and Oracle &#8212; rlwrap, cle, rlfe</title>
		<link>http://www.os2ora.com/open-source-and-oracle-rlwrap-cle-rlfe/</link>
		<comments>http://www.os2ora.com/open-source-and-oracle-rlwrap-cle-rlfe/#comments</comments>
		<pubDate>Sun, 12 Nov 2006 09:27:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/open-source-and-oracle-rlwrap-cle-rlfe/</guid>
		<description><![CDATA[Maybe these tools are not Oracle related, just are complemental to the lack of readline functionality for the tools such as sqplus, rman, ftp etc.   From the design perspective, these tools stands a level higher than gqlplus. They are more general and more extensible.    The usage of these tools are similiar, just put the [...]]]></description>
			<content:encoded><![CDATA[<div>Maybe these tools are not Oracle related, just are complemental to the lack of readline functionality for the tools such as sqplus, rman, ftp etc.</div>
<div> </div>
<div>From the design perspective, these tools stands a level higher than gqlplus. They are more general and more extensible. </div>
<div> </div>
<div>The usage of these tools are similiar, just put the program which lack of readline functionality but you want as the arguments of these tools. For example, the ftp client are lack of readlline(history, completation etc), so instead you can run &quot;rlwrap ftp&quot; or &quot;cle ftp&quot; or &quot;rlfe ftp&quot;, they achive the same  goal.</div>
<div> </div>
<div>rlwrap can be reached at <a href="http://utopia.knoware.nl/~hlub/uck/rlwrap/">http&#58;//utopia.knoware.nl/~hlub/uck/rlwrap/</a></div>
<div> </div>
<div>rlfe now is distributed as part of the GNU readline library.</div>
<div> </div>
<div>cle can be reached at <a href="http://kaolin.unice.fr/Cle/">http&#58;//kaolin.unice.fr/Cle/</a></div>
<div> </div>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/open-source-and-oracle-rlwrap-cle-rlfe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Source and Oracle &#8211; gqlplus improvment for scripts execution</title>
		<link>http://www.os2ora.com/open-source-and-oracle-gqlplus-improvment-for-scripts-execution/</link>
		<comments>http://www.os2ora.com/open-source-and-oracle-gqlplus-improvment-for-scripts-execution/#comments</comments>
		<pubDate>Thu, 26 Oct 2006 13:12:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/open-source-and-oracle-gqlplus-improvment-for-scripts-execution/</guid>
		<description><![CDATA[These days, my gqlplus has some problems when started.   [oracle@rac1 gqlplus-1.11]$ ./gqlplus*** glibc detected *** free()&#58; invalid pointer&#58; 0x082804bc ***Aborted[oracle@rac1 gqlplus-1.11]$   A bad news!  After debugging, I found that this is just a minor bug in gqlplus source code, it free a array point of two dimension, but this point has increased itself before [...]]]></description>
			<content:encoded><![CDATA[<div>These days, my gqlplus has some problems when started.</div>
<div> </div>
<div>[oracle@rac1 gqlplus-1.11]$ ./gqlplus<br />*** glibc detected *** free()&#58; invalid pointer&#58; 0x082804bc ***<br />Aborted<br />[oracle@rac1 gqlplus-1.11]$</div>
<div> </div>
<div>A bad news! </div>
<div>After debugging, I found that this is just a minor bug in gqlplus source code, it free a array point of two dimension, but this point has increased itself before freed in order to free its string member. After modified the code, gqlplus become normal again. This bug is related to SQLPATH environment variable. when this variable is set, error happened.</div>
<div>Also, I found that gqlplus is lack of completion for sql script names, which is just like the  completion for executable in shell enviroment. So some modification are taken by me too. This new version will support completion scripts name, when you press &#8216;tab&#8217;,  in multiple paths which is specified by SQLPATH environment variable.</div>
<div> If you are using gqlplus and think this feature is useful, please drop me a notification. I can provide the patch for the current gqlplus-1.11.</div>
<div> </div>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/open-source-and-oracle-gqlplus-improvment-for-scripts-execution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Source and Oracle &#8212; DBA Scripts from Jeff Hunter</title>
		<link>http://www.os2ora.com/open-source-and-oracle-dba-scripts-from-jeff-hunter/</link>
		<comments>http://www.os2ora.com/open-source-and-oracle-dba-scripts-from-jeff-hunter/#comments</comments>
		<pubDate>Mon, 23 Oct 2006 17:18:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/open-source-and-oracle-dba-scripts-from-jeff-hunter/</guid>
		<description><![CDATA[As I have said, sqlplus is simple but powerful, just like bash in Linux. But everyone don&#8217;t like to type a lot, so the DBA scripts, which is written by someone and shared by them, are a great help for the lazy people. And keep in mind, a good programer is a lazy one. In [...]]]></description>
			<content:encoded><![CDATA[<div>As I have said, sqlplus is simple but powerful, just like bash in Linux.</div>
<div>But everyone don&#8217;t like to type a lot, so the DBA scripts, which is written by someone and shared by them, are a great help for the lazy people. And keep in mind, a good programer is a lazy one.</div>
<div>In order to use this scripts, firstly set the SQLPATH, let it point to the directories which contain the DBA scripts. Then in the sqlplus session, you can just type @the script&#8217;s name, not the absolute path of it. This will save you a lot of time.</div>
<div>Below is a list of DBA scripts from Jeff Hunter, great thanks to Jeff!</div>
<div>SQL&gt; @help</div>
<div>========================================<br />Automatic Storage Management<br />========================================<br />asm_alias.sql<br />asm_clients.sql<br />asm_diskgroups.sql<br />asm_disks.sql<br />asm_disks_perf.sql<br />asm_drop_files.sql<br />asm_files.sql<br />asm_files2.sql<br />asm_templates.sql</div>
<div>========================================<br />Create Object Examples<br />========================================<br />cr_clob.sql<br />cr_clob_8.sql<br />cr_dimension.sql<br />cr_index.sql<br />cr_index_organized_table.sql<br />cr_materialized_view.sql<br />cr_not_null_constraints.sql<br />cr_primary_foreign_key.sql<br />cr_profile_password_parameters.sql<br />cr_profile_resource_parameters.sql<br />cr_resource_plan_multi_resource_plan_9i.sql<br />cr_sequence.sql<br />cr_table.sql<br />cr_table_buffer_pools.sql<br />cr_tablespace.sql<br />cr_temporary_tables.sql<br />create_emp_dept_custom.sql<br />create_emp_dept_original.sql<br />create_user_tables.sql</div>
<div>========================================<br />Database Administration<br />========================================<br />dba_blocks_used_by_table.sql<br />dba_column_constraints.sql<br />dba_compare_schemas.sql<br />dba_controlfile_records.sql<br />dba_controlfiles.sql<br />dba_cr_init.sql<br />dba_db_growth.sql<br />dba_errors.sql<br />dba_file_space_usage.sql<br />dba_file_space_usage_7.sql<br />dba_file_use.sql<br />dba_file_use_7.sql<br />dba_files.sql<br />dba_files_all.sql<br />dba_free_space_frag.sql<br />dba_highwater_mark.sql<br />dba_index_fragmentation.sql<br />dba_index_schema_fragmentation_report.sql<br />dba_index_stats.sql<br />dba_invalid_objects.sql<br />dba_invalid_objects_summary.sql<br />dba_jobs.sql<br />dba_object_cache.sql<br />dba_object_search.sql<br />dba_object_summary.sql<br />dba_options.sql<br />dba_owner_to_tablespace.sql<br />dba_plsql_package_size.sql<br />dba_query_hidden_parameters.sql<br />dba_random_number.sql<br />dba_rebuild_indexes.sql<br />dba_recompile_invalid_objects.sql<br />dba_registry.sql<br />dba_related_child_tables.sql<br />dba_row_size.sql<br />dba_segment_summary.sql<br />dba_snapshot_database_10g.sql<br />dba_snapshot_database_8i.sql<br />dba_snapshot_database_9i.sql<br />dba_table_info.sql<br />dba_tables.sql<br />dba_tables_all.sql<br />dba_tables_user.sql<br />dba_tablespace_mapper.sql<br />dba_tablespace_to_owner.sql<br />dba_tablespaces.sql<br />dba_tablespaces_7.sql<br />dba_tablespaces_8i.sql<br />help.sql</div>
<div>========================================<br />Database Resource Manager<br />========================================<br />rsrc_plan_status_detail_9i.sql<br />rsrc_plan_status_summary_9i.sql</div>
<div>========================================<br />Locks<br />========================================<br />locks_blocking.sql<br />locks_dml_ddl.sql</div>
<div>========================================<br />Multi Threaded Server<br />========================================<br />mts_dispatcher_status.sql<br />mts_dispatcher_utilization.sql<br />mts_queue_information.sql<br />mts_shared_server_statistics.sql<br />mts_shared_server_utilization.sql<br />mts_user_connections.sql</div>
<div>========================================<br />Oracle Applications<br />========================================<br />erp_conc_manager_user_query.sql</div>
<div>========================================<br />Oracle Wait Interface<br />========================================<br />owi_event_names.sql</div>
<div>========================================<br />RMAN<br />========================================<br />rman_backup_pieces.sql<br />rman_backup_sets.sql<br />rman_backup_sets_8i.sql<br />rman_configuration.sql<br />rman_controlfiles.sql<br />rman_spfiles.sql</div>
<div>========================================<br />Real Application Clusters<br />========================================<br />rac_instances.sql<br />rac_locks_blocking.sql<br />rac_rollback_segments.sql<br />rac_rollback_users.sql<br />rac_sess_users.sql<br />rac_waiting_sessions.sql</div>
<div>========================================<br />Rollback Segments<br />========================================<br />rollback_contention.sql<br />rollback_segments.sql<br />rollback_users.sql</div>
<div>========================================<br />Security<br />========================================<br />sec_default_passwords.sql<br />sec_roles.sql<br />sec_users.sql</div>
<div>========================================<br />Session Management<br />========================================<br />sess_current_user_transactions.sql<br />sess_query_sql.sql<br />sess_uncommited_transactions.sql<br />sess_user_sessions.sql<br />sess_user_stats.sql<br />sess_user_trace_file_location.sql<br />sess_users.sql<br />sess_users_active.sql<br />sess_users_active_sql.sql<br />sess_users_by_cpu.sql<br />sess_users_by_cursors.sql<br />sess_users_by_io.sql<br />sess_users_by_memory.sql<br />sess_users_by_transactions.sql<br />sess_users_sql.sql</div>
<div>========================================<br />Statspack<br />========================================<br />sp_auto.sql<br />sp_auto_15.sql<br />sp_auto_30.sql<br />sp_auto_5.sql<br />sp_last_report.sql<br />sp_list.sql<br />sp_parameters.sql<br />sp_purge.sql<br />sp_purge_30_days_10g.sql<br />sp_purge_30_days_9i.sql<br />sp_purge_n_days_10g.sql<br />sp_purge_n_days_9i.sql<br />sp_snap.sql<br />sp_statspack_custom_pkg_10g.sql<br />sp_statspack_custom_pkg_9i.sql<br />sp_trunc.sql</div>
<div>========================================<br />Temporary Tablespace<br />========================================<br />temp_sort_segment.sql<br />temp_sort_users.sql<br />temp_status.sql</div>
<div>========================================<br />Tuning<br />========================================<br />perf_db_block_buffer_usage.sql<br />perf_explain_plan.sql<br />perf_file_io.sql<br />perf_file_io_7.sql<br />perf_file_io_efficiency.sql<br />perf_file_waits.sql<br />perf_hit_ratio_by_session.sql<br />perf_hit_ratio_system.sql<br />perf_log_switch_history_daily.sql<br />perf_log_switch_history_daily_7.sql<br />perf_log_switch_history_daily_all.sql<br />perf_lru_latch_contention.sql<br />perf_objects_without_statistics.sql<br />perf_performance_snapshot.sql<br />perf_redo_log_contention.sql<br />perf_sga_free_pool.sql<br />perf_sga_usage.sql<br />perf_shared_pool_memory.sql<br />perf_top_10_procedures.sql<br />perf_top_10_tables.sql<br />perf_top_sql_by_buffer_gets.sql<br />perf_top_sql_by_disk_reads.sql</div>
<div>========================================<br />Workspace Manager<br />========================================<br />wm_create_workspace.sql<br />wm_disable_versioning.sql<br />wm_enable_versioning.sql<br />wm_freeze_workspace.sql<br />wm_get_workspace.sql<br />wm_goto_workspace.sql<br />wm_merge_workspace.sql<br />wm_refresh_workspace.sql<br />wm_remove_workspace.sql<br />wm_unfreeze_workspace.sql<br />wm_workspaces.sql</div>
<div>download them from <a href="http://www.idevelopment.info/">http&#58;//www.idevelopment.info/</a> .</div>
<div> </div>
<div> </div>
<div> </div>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/open-source-and-oracle-dba-scripts-from-jeff-hunter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Source and Oracle &#8212; gqlplus</title>
		<link>http://www.os2ora.com/open-source-and-oracle-gqlplus/</link>
		<comments>http://www.os2ora.com/open-source-and-oracle-gqlplus/#comments</comments>
		<pubDate>Mon, 09 Oct 2006 17:00:00 +0000</pubDate>
		<dc:creator>Kaya</dc:creator>
				<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://www.os2ora.com/open-source-and-oracle-gqlplus/</guid>
		<description><![CDATA[The more I use sqlplus, the more I feel uncomfortable about the ugly interface of it. what I hope is an environment like bash shell, support history command, completion etc. gqlplus, come into my eye then. A greate substitution tool for sqlplus,   gqlplus is a drop-in replacement for sqlplus, an Oracle SQL client, for [...]]]></description>
			<content:encoded><![CDATA[<div>The more I use sqlplus, the more I feel uncomfortable about the ugly interface of it. what I hope is an environment like bash shell, support history command, completion etc.</div>
<div><a href="http://gqlplus.sourceforge.net/"><u><strong>gqlplus</strong></u></a>, come into my eye then. A greate substitution tool for sqlplus, </div>
<div> </div>
<div>
<hr />
</div>
<div>gqlplus is a drop-in replacement for sqlplus, an Oracle SQL client, for UNIX and UNIX-like platforms. The difference between gqlplus and sqlplus is command-line editing and history, plus table-name and column-name completion. As you know if you have used sqlplus, it is notoriously difficult to correct typing errors and other mistakes in your SQL statements. sqlplus does give you ability to use external editor to edit a statement, but only the last statement you typed. gqlplus solves this problem by providing the familiar command-line editing and history as in tcsh or bash shells, and table/column-name completion, while otherwise retaining compatibility with sqlplus. Thus, no user training is needed &#8211; simply use gqlplus instead of sqlplus. In addition, configuration/installation is trivial&#58; gqlplus is a single binary compiled executable (written in C), so all you need to do is download it and put it anywhere in your PATH. After that, you&#8217;ll be ready to use it.</div>
<div>
<hr />
</div>
<p>just from the <a href="http://gqlplus.sourceforge.net/">http&#58;//gqlplus.sourceforge.net/</a></p>
<p> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.os2ora.com/open-source-and-oracle-gqlplus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

