<?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>realself 的个人博客</title>
	<atom:link href="http://realself.blogcn.com/feed" rel="self" type="application/rss+xml" />
	<link>http://realself.blogcn.com</link>
	<description>又一个 WordPress 站点</description>
	<lastBuildDate>Wed, 13 Jul 2011 01:02:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Chapter 4 The ldapmodify Tool</title>
		<link>http://realself.blogcn.com/articles/chapter-4.html</link>
		<comments>http://realself.blogcn.com/articles/chapter-4.html#comments</comments>
		<pubDate>Wed, 13 Jul 2011 00:57:49 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/?p=134</guid>
		<description><![CDATA[http://download.oracle.com/docs/cd/E19199-01/816-6400-10/lmodify.html top.window.focus(); &#160;&#160;&#160; Previous &#160;&#160;&#160;&#160; Contents &#160;&#160;&#160;&#160; Index &#160;&#160;&#160;&#160; Next &#160;&#160;&#160;&#160; Sun ONE Directory Server Resource Kit 5.2 Tools Reference&#160; Chapter&#160;4 The ldapmodify Tool The ldapmodify tool edits the contents of a Lightweight Directory Access Protocol (LDAP) directory, either by &#8230; <a href="http://realself.blogcn.com/articles/chapter-4.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>http://download.oracle.com/docs/cd/E19199-01/816-6400-10/lmodify.html</p>
<p><br>
<br>
<br></p>
<br>
<br>
<br>
<br>
<br>
<br>
<p><!-- on load bring this window to front --><br>
<script laguage="javascript">
  top.window.focus();
  </script><br>
<br></p>
<br>
<a name="top"></a>
<p><!-- navigation --></p>
<table width="100%" border="0" cellspacing="4" summary="Header navigation table">
<tr>
<td valign="bottom">
<p class="pNavigation"><a href="http://www.sun.com/software/"><br>
<img src="java.jpg" height="70" alt="Sun Java logo" valign="bottom" border="0"></a><br>
&nbsp;&nbsp;&nbsp;</p>
<p><a href="lsearch.html">Previous</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p><a href="contents.html">Contents</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p><a href="ix.html">Index</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p><a href="ldelete.html">Next</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
</td>
<td align="right" valign="top"><a href="http://www.sun.com"><br>
<img src="sun.gif" alt="Sun logo" valign="bottom" border="0"></a></td>
</tr>
<tr>
<td valign="top" align="right" bgcolor="#594FBF" colspan="2"><span class="cBookTitle">Sun ONE Directory Server Resource Kit 5.2 Tools Reference</span>&nbsp;</td>
</tr>
</table>
<p><!-- end navigation --></p>
<blockquote>
<p><!-- chapter content --></p>
<p><a name="wp14352"></a><br></p>
<h2 class="pChapNumber"><span class="cGray"><br>
Chapter&nbsp;4<br>
<br></span></h2>
<p><br>
<br>
<a name="wp14354"></a><br>
The ldapmodify Tool<br></p>
<p><a name="wp19515"></a></p>
<p class="pParagraph">The <span class="cCode">ldapmodify</span> tool edits the contents of a Lightweight Directory Access Protocol (LDAP) directory, either by adding new entries or modifying existing ones. This chapter provides instructions on how to use the <span class="cCode">ldapmodify</span> tool. It contains the following sections:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19524"></a>
<div class="pSmartList1">
<ul>
<li><a href="lmodify.html#wp20800">Overview</a></li>
</ul>
</div>
<p><a name="wp20829"></a></p>
<div class="pSmartList1">
<ul>
<li><a href="lmodify.html#wp19534">Command Usage</a></li>
</ul>
</div>
<p><a name="wp19528"></a></p>
<div class="pSmartList1">
<ul>
<li><a href="lmodify.html#wp19882">Return Values</a></li>
</ul>
</div>
<p><a name="wp19532"></a></p>
<div class="pSmartList1">
<ul>
<li><a href="lmodify.html#wp19995">Command-Line Examples</a></li>
</ul>
</div>
</div>
</div>
<p><a name="wp20800"></a><br></p>
<hr>
<h2 class="pHeading1">Overview<br></h2>
<p><a name="wp22181"></a></p>
<p class="pParagraph">The <span class="cCode">ldapmodify</span> tool takes entry updates, defined using the LDAP Data Interchange Format (LDIF), as input and issues a corresponding LDAP request to the designated directory server. The LDIF information can be configured in a file or directly at the command-line.</p>
<p><a name="wp22418"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp22415">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22415"></a>
<p class="pCaption">Tip</p>
</td>
<td><a name="wp22417"></a>
<p class="pTableText">By placing all entry update statements in a file, <span class="cCode">ldapmodify</span> can be used to process large numbers of modifications as well as transferring entries between directories.</p>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp22422"></a></p>
<p class="pParagraph"><span class="cCode">ldapmodify</span> is also provided with Sun™ ONE Directory Server in the <em class="cEmphasis">DirectoryServer_base</em><span class="cCode">/shared/bin</span> directory. However, the DSRK and its updates should include the latest version of the tool in the <em class="cEmphasis">DSRK_base</em><span class="cCode">/bin/dsrk52</span> directory.</p>
<p><a name="wp22353"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp22347">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22347"></a>
<p class="pCaution">Caution</p>
</td>
<td><a name="wp22349"></a>
<p class="pTableText">If you use the Solaris™ operating environment, there may be an older version of <span class="cCode">ldapmodify</span> in <span class="cCode">/usr/bin</span>. Be sure your path is set to use the latest version in <em class="cEmphasis">DSRK_base</em><span class="cCode">/bin/dsrk52</span>.</p>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp19534"></a><br></p>
<hr>
<h2 class="pHeading1">Command Usage<br></h2>
<p><a name="wp21111"></a></p>
<p class="pParagraph">The <span class="cCode">ldapmodify</span> tool processes entry update statements, or <em class="cEmphasis">change records</em>, defined by the LDIF . A change record contains the DN (distinguished name) of the target entry, the operation to perform, and any data needed to complete the operation. <a href="lmodify.html#wp21132">Code Example&nbsp;4-1</a> is a change record configured to change Barbara Jensen’s surname [<span class="cCode">sn</span>] attribute to Morris. In addition, it will change all values of the multi-valued <span class="cCode">cn</span> attribute. (When using the replace syntax, all current values of the specified attribute will be removed and all given values will be added.)</p>
<p><a name="wp21126"></a></p>
<p class="pAnchor"></p>
<div align="left">
<p class="pCaption">Code Example&nbsp;4-1&nbsp;&nbsp;Entry Update Statement or Change Record</p>
<table summary="Table border" cellspacing="0" cellpadding="2" border="1" width="90%">
<caption><a name="wp21132"></a></caption>
<tr>
<td>
<table border="0" cellpadding="2" summary="This table is used for code examples" id="wp21132">
<tr align="center" valign="top">
<th scope="col"><a name="wp21134"></a>
<p class="pScreenText"></p>
</th>
</tr>
<tr align="left" valign="top">
<td><a name="wp21136"></a>
<p class="pScreenText">ldapmodify -h <em class="cEmphasis">host</em> -p <em class="cEmphasis">port</em> -D "cn=Directory Manager" -w <em class="cEmphasis">password<br></em></p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21138"></a>
<p class="pScreenText">dn: uid=bjensen,ou=People,dc=example,dc=com</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21140"></a>
<p class="pScreenText">changetype: modify</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21142"></a>
<p class="pScreenText">replace: sn</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21144"></a>
<p class="pScreenText">sn: Morris</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21146"></a>
<p class="pScreenText">-</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21148"></a>
<p class="pScreenText">replace: cn</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21150"></a>
<p class="pScreenText">cn: Barbara Morris</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21152"></a>
<p class="pScreenText">cn: Babs Morris</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21154"></a>
<p class="pScreenText"></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp21059"></a></p>
<p class="pParagraph"><span class="cCode">ldapmodify</span> reads any number of these change records from the command-line or from a file, modifying the corresponding entries according to the LDIF instructions. For each DN in the LDIF file, the tool will perform the requested LDAP operation (defined by <span class="cCode">changetype</span>) on the designated entry. <span class="cCode">ldapmodify</span> supports the following operations:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19536"></a>
<div class="pSmartList1">
<ul>
<li>add an entry</li>
</ul>
</div>
<p><a name="wp20981"></a></p>
<div class="pSmartList1">
<ul>
<li>delete an entry</li>
</ul>
</div>
<p><a name="wp20893"></a></p>
<div class="pSmartList1">
<ul>
<li>edit an entry (including the DN or relative DN)</li>
</ul>
</div>
</div>
</div>
<p><a name="wp19549"></a><br></p>
<h3 class="pHeading2">Syntax<br></h3>
<p><a name="wp19551"></a></p>
<p class="pParagraph">The syntax of the <span class="cCode">ldapmodify</span> tool on the command-line can take any of these forms:</p>
<p><a name="wp19552"></a></p>
<p class="pCodelineIndent"><span class="cCode">ldapmodify [ options ]<br></span></p>
<p><a name="wp19553"></a></p>
<p class="pCodelineIndent"><span class="cCode">ldapmodify [ options ] &lt;</span> <em class="cEmphasis">LDIFfile<br></em></p>
<p><a name="wp19554"></a></p>
<p class="pCodelineIndent"><span class="cCode">ldapmodify [ options ] -f</span> <em class="cEmphasis">LDIFfile<br></em></p>
<p><a name="wp19555"></a></p>
<p class="pParagraph">Where:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19556"></a>
<div class="pSmartList1">
<ul>
<li><em class="cEmphasis">options</em> are the command-line options and their parameters described in <a href="lmodify.html#wp19588">Options</a>.</li>
</ul>
</div>
<p><a name="wp19560"></a></p>
<div class="pSmartList1">
<ul>
<li><em class="cEmphasis">LDIFfile</em> is an <a href="http://www.ietf.org/rfc/rfc2849.txt">RFC 2849</a>-compliant LDIF text file containing new entries or updates to existing entries.</li>
</ul>
</div>
</div>
</div>
<p><a name="wp21363"></a></p>
<p class="pParagraph">In its first form (without <em class="cEmphasis">LDIFfile)</em>, <span class="cCode">ldapmodify</span> takes one or more LDIF update statements configured at the command-line, and ends the input with an end-of-file (EOF) marker. Once you enter all update statements and the EOF marker, <span class="cCode">ldapmodify</span> will process the input and perform all operations.</p>
<p><a name="wp21461"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp21466">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21466"></a>
<p class="pNote">Note</p>
</td>
<td><a name="wp21470"></a>
<p class="pTableText">The EOF marker is platform dependent:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp21471"></a>
<div class="pSmartList1">
<ul>
<li>Type Control-D (^d) on most UNIX systems.</li>
</ul>
</div>
<p><a name="wp21468"></a></p>
<div class="pSmartList1">
<ul>
<li>Type Control-Z (^z) and press Enter on Windows<sup class="cSuperscript">ï¿½</sup> NT<sup class="cSuperscript">ï¿½</sup>.</li>
</ul>
</div>
</div>
</div>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp21424"></a></p>
<p class="pParagraph">The next two syntaxes take an LDIF file as input. The second syntax uses <span class="cCode">&lt;</span> (the <em class="cEmphasis">less than</em> symbol) to take the input from the specified file instead of the keyboard. The final syntax does the same by using the <span class="cCode">-f</span> option. Some samples of syntax and update statements are given in <a href="lmodify.html#wp19995">Command-Line Examples</a>.</p>
<p><a name="wp22229"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp22232">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22232"></a>
<p class="pNote">Note</p>
</td>
<td><a name="wp22234"></a>
<p class="pTableText">For general information on LDIF, see <a href="/docs/cd/E19199-01/816-6699-10/ax_ldif.html">Appendix&nbsp;E, “LDAP Data Interchange Format,” in the <em class="cEmphasis">Sun ONE Directory Server Reference Manual</em></a>). Additional information on LDIF and update statements is in <a href="/docs/cd/E19199-01/816-6698-10/entries.html#14774">“Managing Entries From the Command Line” in Chapter&nbsp;2 of the <em class="cEmphasis">Sun ONE Directory Server Administration Guide</em></a>.</p>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp19575"></a><br></p>
<h3 class="pHeading2">Modification Prerequisites<br></h3>
<p><a name="wp19576"></a></p>
<p class="pParagraph">When modifying the contents of a directory, you must satisfy several prerequisite conditions. First, the bind DN and password used for authentication must have the appropriate permissions for the operations being performed. (Many high level directory operations, such as creating a database suffix, may only be performed by the Directory Manager with a bind DN of <span class="cCode">"cn=directory manager"</span>.) Second, if schema checking is active in your directory, Directory Server will check the contents of new and modified entries against the object class definition in the LDAP schema. All attributes of an entry, even those not being modified, are checked against the schema and must meet the following conditions:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19578"></a>
<div class="pSmartList1">
<ul>
<li>The value and value type of all attributes being added or modified must conform to their definition in the entry’s object class. When this is not the case, the modification of this entry will fail.</li>
</ul>
</div>
<p><a name="wp19579"></a></p>
<div class="pSmartList1">
<ul>
<li>Attributes and values not being modified must also conform to the schema. The modification of the entry will fail even if the offending attribute is not being modified. This situation can even occur if you run Directory Server with schema checking turned off, remove a required attribute or set an illegal value, and then turn schema checking on. For more information, see <a href="/docs/cd/E19199-01/816-6698-10/schema.html">Chapter 9, “Extending the Directory Schema,” in the <em class="cEmphasis">Sun ONE Directory Server Administration Guide</em></a>.</li>
</ul>
</div>
</div>
</div>
<p><a name="wp19586"></a></p>
<p class="pParagraph">Finally, you must ensure the coherent placement of entries in the LDIF input. Updates are performed in the order they are given in the input, allowing you to manage dependencies between operations. For example, if you want to add entries to a subtree that doesn’t exist, your LDIF input must first give the update statement for adding the subtree entry, before the update statements for adding entries under the subtree.</p>
<p><a name="wp21578"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp21575">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp21575"></a>
<p class="pCaution">Caution</p>
</td>
<td><a name="wp21577"></a>
<p class="pTableText">When a modification fails, only the operation on the faulty entry is affected. <span class="cCode">ldapmodify</span> will stop processing further input although all entries processed before the error was encountered will be successfully added or modified. Use the <span class="cCode">-c</span> option to specify that the tool should continue processing.</p>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp19588"></a><br></p>
<h3 class="pHeading2">Options<br></h3>
<p><a name="wp19590"></a></p>
<p class="pParagraph">The <span class="cCode">ldapmodify</span> tool has three types of options:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19591"></a>
<div class="pSmartList1">
<ul>
<li><a href="lmodify.html#wp21595">Common Options</a></li>
</ul>
</div>
<p><a name="wp19592"></a></p>
<div class="pSmartList1">
<ul>
<li><a href="lmodify.html#wp21668">Input And Output Options</a></li>
</ul>
</div>
<p><a name="wp19593"></a></p>
<div class="pSmartList1">
<ul>
<li><a href="lmodify.html#wp21754">SSL (Secure Socket Layer) Options</a></li>
</ul>
</div>
</div>
</div>
<p><a name="wp21584"></a></p>
<p class="pParagraph">The following sections detail these options. The <span class="cCode">ldapmodify -H</span> command and option when run on the command-line will display text that briefly describes all of the command-line options.</p>
<p><a name="wp21595"></a><br></p>
<h4 class="pHeading3">Common Options<br></h4>
<p><a name="wp21599"></a></p>
<p class="pParagraph">The common options listed in <a href="lmodify.html#wp19600">Table&nbsp;4-1</a> control the binding and general behavior of the <span class="cCode">ldapmodify</span> command.</p>
<p><a name="wp19737"></a></p>
<p class="pAnchor"></p>
<div align="left">
<p class="pCaption">Table&nbsp;4-1&nbsp;&nbsp;<span style="font-style: normal; font-weight: normal; text-decoration: none; vertical-align: baseline">Common Options for</span> <span class="cCode">ldapmodify</span>&nbsp;</p>
<table border="1" cellpadding="5" cellspacing="0" id="wp19600">
<caption><a name="wp19600"></a></caption>
<tr bgcolor="#CDCCEE" align="left" valign="top">
<th scope="col"><a name="wp19606"></a>
<p class="pTableHead">Option</p>
</th>
<th scope="col"><a name="wp19608"></a>
<p class="pTableHead">Parameter</p>
</th>
<th scope="col"><a name="wp19610"></a>
<p class="pTableHead">Purpose</p>
</th>
</tr>
<tr align="left" valign="top">
<td><a name="wp19612"></a>
<p class="pTableTextRight"><span class="cCode">-h</span></p>
</td>
<td><a name="wp19614"></a>
<p class="pTableText"><em class="cEmphasis">hostname</em></p>
</td>
<td><a name="wp19616"></a>
<p class="pTableText">Specify the hostname of the directory server. When this option is omitted, the default is <span class="cCode">localhost</span>.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19618"></a>
<p class="pTableTextRight"><span class="cCode">-p</span></p>
</td>
<td><a name="wp19620"></a>
<p class="pTableText"><em class="cEmphasis">port</em></p>
</td>
<td><a name="wp19622"></a>
<p class="pTableText">Specify the port number for accessing the directory server host. The default is 389 normally and 636 when the SSL options are used.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19624"></a>
<p class="pTableTextRight"><span class="cCode">-D</span></p>
</td>
<td><a name="wp19626"></a>
<p class="pTableText"><em class="cEmphasis">bindDN</em></p>
</td>
<td><a name="wp19628"></a>
<p class="pTableText">Specify a bind DN for accessing your directory, usually in double quotes (<span class="cCode">""</span>) for the shell. If the bind DN and its password are omitted, the tool will use anonymous binding. The bind DN determines what entries and attributes may be modified, according to the DN’s access permissions.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19630"></a>
<p class="pTableTextRight"><span class="cCode">-w</span></p>
</td>
<td><a name="wp19632"></a>
<p class="pTableText"><em class="cEmphasis">password</em></p>
</td>
<td><a name="wp21618"></a>
<p class="pTableText">Specify the password for the bind DN. <b class="cBold">CAUTION: Specifying the password on the command-line is a possible security risk.</b></p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19636"></a>
<p class="pTableTextRight"><span class="cCode">-w</span></p>
</td>
<td><a name="wp19638"></a>
<p class="pTableText"><span class="cCode">-</span></p>
</td>
<td><a name="wp19640"></a>
<p class="pTableText">Type the password for the bind DN when prompted. This is the most secure way of specifying the password.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19642"></a>
<p class="pTableTextRight">-j</p>
</td>
<td><a name="wp19644"></a>
<p class="pTableText"><em class="cEmphasis">filename</em></p>
</td>
<td><a name="wp19646"></a>
<p class="pTableText">Specify a file containing the password for the bind DN. Use this option in scripts and place the password in a secure file to protect it. This option is mutually exclusive with the <span class="cCode">-w</span> option.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19648"></a>
<p class="pTableTextRight"><span class="cCode">-f</span></p>
</td>
<td><a name="wp19650"></a>
<p class="pTableText"><em class="cEmphasis">LDIFfile</em></p>
</td>
<td><a name="wp19652"></a>
<p class="pTableText">Give the name of a file containing LDIF update statements or new entries. (See <a href="lmodify.html#wp19549">Syntax</a>.) The tool will perform each of the update operations (add, modify, or delete) in the order given in the file. When this option is omitted, <span class="cCode">ldapmodify</span> will read LDIF update statements from the standard input (command-line).</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19659"></a>
<p class="pTableTextRight"><span class="cCode">-B</span></p>
</td>
<td><a name="wp19661"></a>
<p class="pTableText"><em class="cEmphasis">baseDN</em></p>
</td>
<td><a name="wp19663"></a>
<p class="pTableText">Specify the base DN when performing additions, usually in double quotes (<span class="cCode">""</span>) for the shell. All entries will be placed under this suffix, thus providing bulk import functionality.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19665"></a>
<p class="pTableTextRight"><span class="cCode">-V</span></p>
</td>
<td><a name="wp19667"></a>
<p class="pTableText"><em class="cEmphasis">version</em></p>
</td>
<td><a name="wp19669"></a>
<p class="pTableText">Specify the LDAP protocol version number to be used for the modify operation, either <span class="cCode">2</span> or <span class="cCode">3</span>. LDAP v3 is the default; only specify LDAP&nbsp;v2 when connecting to servers that do not support v3.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19671"></a>
<p class="pTableTextRight"><span class="cCode">-Y</span></p>
</td>
<td><a name="wp19673"></a>
<p class="pTableText"><em class="cEmphasis">proxyDN</em></p>
</td>
<td><a name="wp19675"></a>
<p class="pTableText">Specify the proxy DN to use for the modify operation, usually in double quotes (<span class="cCode">""</span>) for the shell. For more information about proxy authorization, see <a href="/docs/cd/E19199-01/816-6698-10/aci.html">Chapter 6, “Managing Access Control,” in the <em class="cEmphasis">Sun ONE Directory Server Administration Guide</em></a>.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19682"></a>
<p class="pTableTextRight"><span class="cCode">-M</span></p>
</td>
<td><a name="wp19684"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19686"></a>
<p class="pTableText">Manage smart referrals: when they are the target of the update, modify the actual entry containing the referral instead of the entry obtained by following the referral. For more information, see <a href="/docs/cd/E19199-01/816-6698-10/entries.html#20405">“Creating Smart Referrals” in Chapter&nbsp;2 of the <em class="cEmphasis">Sun ONE Directory Server Administration Guide</em></a>.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19693"></a>
<p class="pTableTextRight"><span class="cCode">-O</span></p>
</td>
<td><a name="wp19695"></a>
<p class="pTableText"><em class="cEmphasis">hopLimit</em></p>
</td>
<td><a name="wp19697"></a>
<p class="pTableText">(Capital letter O) Specify the maximum number of referral hops to follow while finding an entry to modify. By default, there is no limit.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19699"></a>
<p class="pTableTextRight"><span class="cCode">-R</span></p>
</td>
<td><a name="wp19701"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19703"></a>
<p class="pTableText">Specify that referrals should <em class="cEmphasis">not</em> be followed. By default, referrals are followed automatically.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19705"></a>
<p class="pTableTextRight"><span class="cCode">-q</span></p>
</td>
<td><a name="wp19707"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19709"></a>
<p class="pTableText">Quiet output mode: the tool will not display any output about the operations it performs.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19711"></a>
<p class="pTableTextRight"><span class="cCode">-v</span></p>
</td>
<td><a name="wp19713"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19715"></a>
<p class="pTableText">Verbose output mode: the tool will display additional information about the operations it performs.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19717"></a>
<p class="pTableTextRight"><span class="cCode">-n</span></p>
</td>
<td><a name="wp19719"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19721"></a>
<p class="pTableText">No-op mode: use with the <span class="cCode">-v</span> option to show what the tool would do with the given input but do not perform any operations.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19723"></a>
<p class="pTableText"><span class="cCode">-0<br></span>(zero)</p>
</td>
<td><a name="wp19725"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19727"></a>
<p class="pTableText">Allow runtime library version mismatches. When this option is omitted, the default behavior is to assert that the revision number of the LDAP API is greater than or equal to that used to compile the tool. Also, if the API library and the tool have the same vendor name, the tool will also assert that the vendor version number of the API is greater than or equal to that used to compile the tool. This information is based on the contents of the <span class="cCode">LDAPAPIInfo</span> structure. (See the <a href="http://docs.sun.com/coll/S1_ipSDK_41"><em class="cEmphasis">Sun ONE LDAP SDK for&nbsp;C Programming Guide</em></a>.)</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19732"></a>
<p class="pTableTextRight"><span class="cCode">-H</span></p>
</td>
<td><a name="wp19734"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19736"></a>
<p class="pTableText">Display the usage help text that briefly describes all options.</p>
</td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp21668"></a><br></p>
<h4 class="pHeading3">Input And Output Options<br></h4>
<p><a name="wp21672"></a></p>
<p class="pParagraph">The input and output options listed in <a href="lmodify.html#wp19744">Table&nbsp;4-2</a> control how <span class="cCode">ldapmodify</span> processes input files and handles errors.</p>
<p><a name="wp19815"></a></p>
<p class="pAnchor"></p>
<div align="left">
<p class="pCaption">Table&nbsp;4-2&nbsp;&nbsp;Input and Output Options for <span class="cCode">ldapmodify</span>&nbsp;</p>
<table border="1" cellpadding="5" cellspacing="0" id="wp19744">
<caption><a name="wp19744"></a></caption>
<tr bgcolor="#CDCCEE" align="left" valign="top">
<th scope="col"><a name="wp19750"></a>
<p class="pTableHead">Option</p>
</th>
<th scope="col"><a name="wp19752"></a>
<p class="pTableHead">Parameter</p>
</th>
<th scope="col"><a name="wp19754"></a>
<p class="pTableHead">Purpose</p>
</th>
</tr>
<tr align="left" valign="top">
<td><a name="wp19756"></a>
<p class="pTableTextRight"><span class="cCode">-a</span></p>
</td>
<td><a name="wp19758"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp20992"></a>
<p class="pTableText">The add entry mode provides an easy way to add entries in LDIF. All input entries that do not contain an LDIF <span class="cCode">changetype</span> statement and keyword are processed as adds; entries with a defined <span class="cCode">changetype</span> statement are processed accordingly. In particular, this option allows you to directly add entries from the output files of the <span class="cCode">ldapsearch</span> tool.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19763"></a>
<p class="pTableTextRight"><span class="cCode">-F</span></p>
</td>
<td><a name="wp19765"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19767"></a>
<p class="pTableText">Force the application of all updates, regardless of the replica status.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19769"></a>
<p class="pTableTextRight"><span class="cCode">-i</span></p>
</td>
<td><a name="wp19771"></a>
<p class="pTableText"><em class="cEmphasis">locale</em></p>
</td>
<td><a name="wp19773"></a>
<p class="pTableText">Specify the character set to use for the <span class="cCode">-f</span> <em class="cEmphasis">LDIFfile</em> or standard input. The default is the character set specified in the <span class="cCode">LANG</span> environment variable. You might want to use this option to perform the conversion from the specified character set to UTF8, thus overriding the <span class="cCode">LANG</span> setting.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19775"></a>
<p class="pTableTextRight"><span class="cCode">-k</span></p>
</td>
<td><a name="wp19777"></a>
<p class="pTableText"><em class="cEmphasis">path</em></p>
</td>
<td><a name="wp19779"></a>
<p class="pTableText">Specify the path to a directory containing conversion routines. These routines are used to specify a locale that is not supported by default by your directory server. For more information, see <a href="/docs/cd/E19199-01/816-6699-10/ax_inter.html">Appendix&nbsp;C, “Directory Internationalization” in the <em class="cEmphasis">Sun ONE Directory Server Reference Manual</em></a>.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19786"></a>
<p class="pTableTextRight"><span class="cCode">-b</span></p>
</td>
<td><a name="wp19788"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19790"></a>
<p class="pTableText">Handle binary files: the <span class="cCode">ldapmodify</span> tool will scan every attribute value in the input to determine whether it is a valid file reference, and if so, it will use the contents of the file as the attribute’s value. This option is used to input binary data for an attribute, such as a JPEG image. For example, the corresponding LDIF input would be:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19791"></a>
<div class="pSmartList1">
<ul>
<li><span class="cCode">jpegPhoto: /tmp/photo.jpg</span> (on a UNIX platform)</li>
</ul>
</div>
<p><a name="wp19792"></a></p>
<div class="pSmartList1">
<ul>
<li><span class="cCode">jpegPhoto: c:\tmp\photo.jpg</span> (on Windows)</li>
</ul>
</div>
</div>
</div>
<p><a name="wp19794"></a></p>
<p class="pTableText">The <span class="cCode">ldapmodify</span> tool also supports the LDIF <span class="cCode">: &lt;</span> <em class="cEmphasis">URL</em> notation for directly including file contents. For example:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19795"></a>
<div class="pSmartList1">
<ul>
<li><span class="cCode">jpegPhoto: &lt; file:///tmp/photo.jpg</span> (on all platforms)</li>
</ul>
</div>
</div>
</div>
<p><a name="wp21740"></a></p>
<p class="pTableText">If all of your input entries use this notation, you do not need to specify the <span class="cCode">-b</span> option. This option also allows you to process entries from the output files of the <span class="cCode">ldapsearch</span> tool when it uses the <span class="cCode">-t</span> option.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19798"></a>
<p class="pTableTextRight"><span class="cCode">-A</span></p>
</td>
<td><a name="wp19800"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19802"></a>
<p class="pTableText">Non-ASCII mode: display non-ASCII values, in conjunction with the <span class="cCode">-v</span> option.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19804"></a>
<p class="pTableTextRight"><span class="cCode">-c</span></p>
</td>
<td><a name="wp19806"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19808"></a>
<p class="pTableText">Continuous mode: errors are reported but the <span class="cCode">ldapmodify</span> tool will continue processing input and performing operations. When this option is omitted, the default is to quit after reporting an error.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19810"></a>
<p class="pTableTextRight"><span class="cCode">-e</span></p>
</td>
<td><a name="wp19812"></a>
<p class="pTableText"><em class="cEmphasis">errorFile</em></p>
</td>
<td><a name="wp19814"></a>
<p class="pTableText">Invalid update statements in the input will be copied to the <em class="cEmphasis">errorFile</em> for debugging. Use with the <span class="cCode">-c</span> option to correct errors when processing large LDIF input.</p>
</td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp21754"></a><br></p>
<h4 class="pHeading3">SSL (Secure Socket Layer) Options<br></h4>
<p><a name="wp21758"></a></p>
<p class="pParagraph">The options in <a href="lmodify.html#wp19832">Table&nbsp;4-3</a> allow you to use LDAPS (LDAP over SSL) to establish a secure connection for the update operation. These options are valid only when LDAPS has been enabled and configured in your SSL-enabled directory server. For information on certificate-based authentication and creating a certificate database for use with LDAP clients, see <a href="/docs/cd/E19199-01/816-6698-10/ssl.html">Chapter&nbsp;11, “Implementing Security,” in the <em class="cEmphasis">Sun ONE Directory Server Administration Guide</em></a>. See <a href="lmodify.html#wp20025">Using Authentication</a> for examples using the SSL options.</p>
<p><a name="wp22289"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp22292">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22292"></a>
<p class="pNote">Note</p>
</td>
<td><a name="wp22297"></a>
<p class="pTableText">Only the <span class="cCode">-P</span> option is required for server authentication. For the more secure client authentication, the <span class="cCode">-P</span>, <span class="cCode">-N</span>, <span class="cCode">-K</span> and <span class="cCode">-W</span> options are required.</p>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp19880"></a></p>
<p class="pAnchor"></p>
<div align="left">
<p class="pCaption">Table&nbsp;4-3&nbsp;&nbsp;SSL Options for <span class="cCode">ldapmodify</span>&nbsp;</p>
<table border="1" cellpadding="5" cellspacing="0" id="wp19832">
<caption><a name="wp19832"></a></caption>
<tr bgcolor="#CDCCEE" align="left" valign="top">
<th scope="col"><a name="wp19838"></a>
<p class="pTableHead">Option</p>
</th>
<th scope="col"><a name="wp19840"></a>
<p class="pTableHead">Parameter</p>
</th>
<th scope="col"><a name="wp19842"></a>
<p class="pTableHead">Purpose</p>
</th>
</tr>
<tr align="left" valign="top">
<td><a name="wp19844"></a>
<p class="pTableTextRight"><span class="cCode">-P</span></p>
</td>
<td><a name="wp19846"></a>
<p class="pTableText"><em class="cEmphasis">path</em></p>
</td>
<td><a name="wp19848"></a>
<p class="pTableText">Specify the path and filename of the client’s certificate database. This file may be the same as the certificate database for an SSL-enabled version of Netscape™ Communicator, if available; for example: <span class="cCode">-P /home/</span><em class="cEmphasis">uid</em><span class="cCode">/.netscape/cert7.db</span>. When using the command on the same host as the directory server, you may use the server’s own certificate database, for example:<br>
<span class="cCode">-P</span> <em class="cEmphasis">installDir</em><span class="cCode">/slapd-</span><em class="cEmphasis">serverID</em><span class="cCode">/alias/cert7.db</span>.</p>
<p><a name="wp19849"></a></p>
<p class="pTableText">Use the <span class="cCode">-P</span> option alone to specify server authentication only.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19851"></a>
<p class="pTableTextRight"><span class="cCode">-Z</span></p>
</td>
<td><a name="wp19853"></a>
<p class="pTableText">&nbsp;</p>
</td>
<td><a name="wp19855"></a>
<p class="pTableText">Specify that SSL be used to provide certificate-based client authentication. This option requires the <span class="cCode">-N</span> and <span class="cCode">-W</span> options and any other of the SSL options needed to identify the certificate and the key database.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19857"></a>
<p class="pTableTextRight"><span class="cCode">-N</span></p>
</td>
<td><a name="wp19859"></a>
<p class="pTableText"><em class="cEmphasis">certificate</em></p>
</td>
<td><a name="wp19861"></a>
<p class="pTableText">Specify the certificate name to use for certificate-based client authentication, for example: <span class="cCode">-N "Directory-Cert"</span>.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19863"></a>
<p class="pTableTextRight"><span class="cCode">-m</span></p>
</td>
<td><a name="wp19865"></a>
<p class="pTableText"><em class="cEmphasis">path</em></p>
</td>
<td><a name="wp19867"></a>
<p class="pTableText">Specify the path to the security module database. For example, <span class="cCode">/usr/iplanet/servers/slapd-</span><em class="cEmphasis">serverID</em><span class="cCode">/secmodule.db</span>. You need to specify this option only if the security module database is in a different directory from the certificate database itself.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19869"></a>
<p class="pTableTextRight"><span class="cCode">-K</span></p>
</td>
<td><a name="wp19871"></a>
<p class="pTableText"><em class="cEmphasis">keyFile</em></p>
</td>
<td><a name="wp19873"></a>
<p class="pTableText">Specify the file and path name of the client’s private key database. This option may be omitted if the key database is in the location already given by the <span class="cCode">-P</span> option.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19875"></a>
<p class="pTableTextRight"><span class="cCode">-W</span></p>
</td>
<td><a name="wp19877"></a>
<p class="pTableText"><em class="cEmphasis">password</em></p>
</td>
<td><a name="wp19879"></a>
<p class="pTableText">Specify the password for the client’s key database given in the <span class="cCode">-K</span> or <span class="cCode">-P</span> options. This option is required for certificate-based client authentication.</p>
</td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp19882"></a><br></p>
<hr>
<h2 class="pHeading1">Return Values<br></h2>
<p><a name="wp22614"></a></p>
<p class="pParagraph">The <span class="cCode">ldapmodify</span> tool is based on the Sun ONE LDAP SDK for&nbsp;C and its return values are those of the functions it uses, such as <span class="cCode">ldap_simple_bind_s()</span>, <span class="cCode">ldap_add_ext_s()</span>, <span class="cCode">ldap_modify_ext_s()</span>, and <span class="cCode">ldap_delete_ext_s()</span>. These functions return both client-side and server-side errors and codes. <a href="lmodify.html#wp19898">Table&nbsp;4-4</a> shows the possible return values when the directory is hosted on a Sun ONE Directory Server. Other LDAP servers may send these values under different circumstances or may send different values. They may also send other result codes entirely; for example, custom result codes from a custom plug-in. For further information about result codes, see the <a href="http://docs.sun.com/coll/S1_ipSDK_41"><em class="cEmphasis">Sun ONE LDAP SDK for&nbsp;C Programming Guide</em></a>.</p>
<p><a name="wp19993"></a></p>
<p class="pAnchor"></p>
<div align="left">
<p class="pCaption">Table&nbsp;4-4&nbsp;&nbsp;Return Values of <span class="cCode">ldapmodify</span>&nbsp;</p>
<table border="1" cellpadding="5" cellspacing="0" id="wp19898">
<caption><a name="wp19898"></a></caption>
<tr bgcolor="#CDCCEE" align="left" valign="top">
<th scope="col"><a name="wp19902"></a>
<p class="pTableHead">Return Value</p>
</th>
<th scope="col"><a name="wp19904"></a>
<p class="pTableHead">Result Code<br>
and Explanation</p>
</th>
</tr>
<tr align="left" valign="top">
<td><a name="wp19906"></a>
<p class="pTableText">&nbsp;&nbsp;0 (0x00)</p>
</td>
<td><a name="wp19908"></a>
<p class="pTableText"><span class="cCode">LDAP_SUCCESS</span>: the operation was successful.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19910"></a>
<p class="pTableText">&nbsp;&nbsp;1 (0x01)</p>
</td>
<td><a name="wp19912"></a>
<p class="pTableText"><span class="cCode">LDAP_OPERATIONS_ERROR</span>: sent by Directory Server for general errors encountered by the server when processing the request.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19914"></a>
<p class="pTableText">&nbsp;&nbsp;2 (0x02)</p>
</td>
<td><a name="wp19916"></a>
<p class="pTableText"><span class="cCode">LDAP_PROTOCOL_ERROR</span>: the modify request did not comply with the LDAP protocol. Directory Server may set this error code in the results for a variety of reasons, such as encountering an error when decoding the BER-encoded request.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19918"></a>
<p class="pTableText">10 (0x0a)</p>
</td>
<td><a name="wp19920"></a>
<p class="pTableText"><span class="cCode">LDAP_REFERRAL</span>: sent by Directory Server if the specified DN is an entry not handled by the current server and if the referral URL identifies a different server to handle the entry.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19922"></a>
<p class="pTableText">16 (0x10)</p>
</td>
<td><a name="wp19924"></a>
<p class="pTableText"><span class="cCode">LDAP_NO_SUCH_ATTRIBUTE</span>: sent by Directory Server if the attribute that you want to modify (add, replace, or delete) does not exist.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19926"></a>
<p class="pTableText">19 (0x13)</p>
</td>
<td><a name="wp19928"></a>
<p class="pTableText"><span class="cCode">LDAP_CONSTRAINT_VIOLATION</span>: sent by Directory Server when improperly modifying the <span class="cCode">userpassword</span> attribute, for example if the new value is shorter than the allowed minimum length.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19930"></a>
<p class="pTableText">20 (0x14)</p>
</td>
<td><a name="wp19932"></a>
<p class="pTableText"><span class="cCode">LDAP_TYPE_OR_VALUE_EXISTS</span>: sent by Directory Server when attempting to add an attribute to an entry in which the attribute already exists with the given value.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19934"></a>
<p class="pTableText">21 (0x15)</p>
</td>
<td><a name="wp19936"></a>
<p class="pTableText"><span class="cCode">LDAP_INVALID_SYNTAX</span>: sent by Directory Server if your client is modifying the schema entry and no object class or attribute type is specified.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19938"></a>
<p class="pTableText">32 (0x20)</p>
</td>
<td><a name="wp19940"></a>
<p class="pTableText"><span class="cCode">LDAP_NO_SUCH_OBJECT</span>: sent by Directory Server if the entry that you want to modify or delete does not exist.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19942"></a>
<p class="pTableText">50 (0x32)</p>
</td>
<td><a name="wp19944"></a>
<p class="pTableText"><span class="cCode">LDAP_INSUFFICIENT_ACCESS</span>: sent by Directory Server if the DN used for authentication does not have permission to write to the entry.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19946"></a>
<p class="pTableText">53 (0x35)</p>
</td>
<td><a name="wp19948"></a>
<p class="pTableText"><span class="cCode">LDAP_UNWILLING_TO_PERFORM</span>: sent by Directory Server when:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp21910"></a>
<div class="pSmartList1">
<ul>
<li>The directory is read-only.</li>
</ul>
</div>
<p><a name="wp21912"></a></p>
<div class="pSmartList1">
<ul>
<li>Attempting to add attributes to the special directory configuration entry.</li>
</ul>
</div>
<p><a name="wp21915"></a></p>
<div class="pSmartList1">
<ul>
<li>Attempting to modify attributes in the special schema entry.</li>
</ul>
</div>
</div>
</div>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19950"></a>
<p class="pTableText">65 (0x41)</p>
</td>
<td><a name="wp19952"></a>
<p class="pTableText"><span class="cCode">LDAP_OBJECT_CLASS_VIOLATION</span>: sent by Directory Server if the modified entry does not comply with the directory schema (for example, if one or more required attributes are not specified).</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19954"></a>
<p class="pTableText">67 (0x43)</p>
</td>
<td><a name="wp19956"></a>
<p class="pTableText"><span class="cCode">LDAP_NOT_ALLOWED_ON_RDN</span>: sent by Directory Server if the modified entry no longer contains attributes for each DN component.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19958"></a>
<p class="pTableText">68 (0x44)</p>
</td>
<td><a name="wp19960"></a>
<p class="pTableText"><span class="cCode">LDAP_ALREADY_EXISTS</span>: sent by Directory Server if the DN of the entry that you want to add is already present in the directory.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19962"></a>
<p class="pTableText">81 (0x51)</p>
</td>
<td><a name="wp19964"></a>
<p class="pTableText"><span class="cCode">LDAP_SERVER_DOWN</span>: the LDAP server did not receive the request or the connection to the server was lost.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19966"></a>
<p class="pTableText">82 (0x52)</p>
</td>
<td><a name="wp19968"></a>
<p class="pTableText"><span class="cCode">LDAP_LOCAL_ERROR</span>: an error occurred when receiving the results from the server.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19970"></a>
<p class="pTableText">83 (0x53)</p>
</td>
<td><a name="wp19972"></a>
<p class="pTableText"><span class="cCode">LDAP_ENCODING_ERROR</span>: BER-encoding the request is not possible.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19974"></a>
<p class="pTableText">84 (0x54)</p>
</td>
<td><a name="wp19976"></a>
<p class="pTableText"><span class="cCode">LDAP_DECODING_ERROR</span>: an error occurred when decoding the BER-encoded results from the server.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19978"></a>
<p class="pTableText">89 (0x59)</p>
</td>
<td><a name="wp19980"></a>
<p class="pTableText"><span class="cCode">LDAP_PARAM_ERROR</span>: one of the options or parameters is invalid.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19982"></a>
<p class="pTableText">90 (0x5a)</p>
</td>
<td><a name="wp19984"></a>
<p class="pTableText"><span class="cCode">LDAP_NO_MEMORY</span>: memory cannot be allocated as needed.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19986"></a>
<p class="pTableText">91 (0x5b)</p>
</td>
<td><a name="wp19988"></a>
<p class="pTableText"><span class="cCode">LDAP_CONNECT_ERROR</span>: the specified hostname or port is invalid.</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp19990"></a>
<p class="pTableText">92 (0x5c)</p>
</td>
<td><a name="wp19992"></a>
<p class="pTableText"><span class="cCode">LDAP_NOT_SUPPORTED</span>: the <span class="cCode">-V 2</span> option is needed to access a server that only supports LDAP v2.</p>
</td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp19995"></a><br></p>
<hr>
<h2 class="pHeading1">Command-Line Examples<br></h2>
<p><a name="wp19997"></a></p>
<p class="pParagraph">The examples in this section demonstrate common uses of the <span class="cCode">ldapmodify</span> tool to update the contents of a directory. All examples assume the following:</p>
<div class="pSmartList1">
<div style="margin-left: 2em" class="pSmartList1"><a name="wp19998"></a>
<div class="pSmartList1">
<ul>
<li>The given bind DN has the permission to perform all operations on the selected entries.</li>
</ul>
</div>
<p><a name="wp19999"></a></p>
<div class="pSmartList1">
<ul>
<li>The directory server is located on a machine with the given <em class="cEmphasis">hostname</em>.</li>
</ul>
</div>
<p><a name="wp20000"></a></p>
<div class="pSmartList1">
<ul>
<li>The server uses the default port number 389 so you do not have to specify the port number on the search request.</li>
</ul>
</div>
<p><a name="wp20001"></a></p>
<div class="pSmartList1">
<ul>
<li>SSL is enabled for the server on the default SSL port number 636.</li>
</ul>
</div>
</div>
</div>
<p><a name="wp20002"></a><br></p>
<h3 class="pHeading2">Adding an Entry<br></h3>
<p><a name="wp20004"></a></p>
<p class="pParagraph">This example uses the <span class="cCode">-a</span> option for bulk addition, so the <span class="cCode">changetype: add</span> statement and keyword are not needed in the input. Instead, it contains standard LDIF entries to be added. <a href="lmodify.html#wp22002">Code Example&nbsp;4-2</a> is the input file called <span class="cCode">newEntry.ldif</span> which defines only one entry to add.</p>
<p><a name="wp21986"></a></p>
<p class="pAnchor"></p>
<div align="left">
<p class="pCaption">Code Example&nbsp;4-2&nbsp;&nbsp;newEntry.ldif Input File&nbsp;</p>
<table summary="Table border" cellspacing="0" cellpadding="2" border="1" width="90%">
<caption><a name="wp22002"></a></caption>
<tr>
<td>
<table border="0" cellpadding="2" summary="This table is used for code examples" id="wp22002">
<tr align="center" valign="top">
<th scope="col"><a name="wp22004"></a>
<p class="pScreenText"></p>
</th>
</tr>
<tr align="left" valign="top">
<td><a name="wp22006"></a>
<p class="pScreenText">dn: cn=Pete Minsky,ou=People,dc=example,dc=com</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22008"></a>
<p class="pScreenText">objectclass: top</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22010"></a>
<p class="pScreenText">objectclass: person</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22012"></a>
<p class="pScreenText">objectclass: organizationalPerson</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22014"></a>
<p class="pScreenText">objectclass: inetOrgPerson</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22016"></a>
<p class="pScreenText">cn: Pete Minsky</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22018"></a>
<p class="pScreenText">givenName: Pete</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22020"></a>
<p class="pScreenText">sn: Minsky</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22022"></a>
<p class="pScreenText">ou: People</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22024"></a>
<p class="pScreenText">ou: Marketing</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22026"></a>
<p class="pScreenText">uid: peterm</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22028"></a>
<p class="pScreenText"></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp20006"></a></p>
<p class="pParagraph">To perform this addition, launch the <span class="cCode">ldapmodify</span> tool with the <span class="cCode">-a</span> option and specify the input file with the <span class="cCode">-f</span> option:</p>
<p><a name="wp20007"></a></p>
<p class="pCodelineIndent">$ ldapmodify -h <em class="cEmphasis">hostname</em> -a -f newEntry.ldif \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-D "uid=bjensen,dc=example,dc=com" -w <em class="cEmphasis">bindPassword<br></em></p>
<p><a name="wp20008"></a><br></p>
<h3 class="pHeading2">Modifying an Entry<br></h3>
<p><a name="wp20009"></a></p>
<p class="pParagraph">The update statement for a modification includes change records that specify the attributes to change and their new values. (See <a href="/docs/cd/E19199-01/816-6698-10/entries.html#14774">“Managing Entries From the Command Line” in Chapter&nbsp;2 of the <em class="cEmphasis">Sun ONE Directory Server Administration Guide</em></a> for a description of this syntax.) <a href="lmodify.html#wp22078">Code Example&nbsp;4-3</a> is the <span class="cCode">modifyEntry.ldif</span> file which includes statements for adding a new attribute and modifying an existing one. The line with a single dash (-) is a separator for multiple modifications in the same entry.</p>
<p><a name="wp20017"></a></p>
<p class="pAnchor"></p>
<div align="left">
<p class="pCaption">Code Example&nbsp;4-3&nbsp;&nbsp;modifyEntry.ldif Input File</p>
<table summary="Table border" cellspacing="0" cellpadding="2" border="1" width="90%">
<caption><a name="wp22078"></a></caption>
<tr>
<td>
<table border="0" cellpadding="2" summary="This table is used for code examples" id="wp22078">
<tr align="center" valign="top">
<th scope="col"><a name="wp22080"></a>
<p class="pScreenText"></p>
</th>
</tr>
<tr align="left" valign="top">
<td><a name="wp22082"></a>
<p class="pScreenText">dn: cn=Pete Minsky,ou=People,dc=example,dc=com</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22084"></a>
<p class="pScreenText">changetype: modify</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22086"></a>
<p class="pScreenText">add: telephonenumber</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22088"></a>
<p class="pScreenText">telephonenumber: (40 <img src='http://realself.blogcn.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley'> 555-2468</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22090"></a>
<p class="pScreenText">-</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22092"></a>
<p class="pScreenText">replace: uid</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22094"></a>
<p class="pScreenText">uid: pminsky</p>
</td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22096"></a>
<p class="pScreenText"></p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp20018"></a></p>
<p class="pParagraph">To perform the operation, launch the <span class="cCode">ldapmodify</span> tool and specify the filename on the command-line.</p>
<p><a name="wp20019"></a></p>
<p class="pCodelineIndent">$ ldapmodify -h <em class="cEmphasis">hostname</em> -f modifyEntry.ldif \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-D "uid=bjensen,dc=example,dc=com" -w <em class="cEmphasis">bindPassword<br></em></p>
<p><a name="wp20020"></a><br></p>
<h3 class="pHeading2">Deleting an Entry<br></h3>
<p><a name="wp20021"></a></p>
<p class="pParagraph">The update statement for a deletion requires only the DN and the <span class="cCode">changetype</span>. This example shows how to enter this information as standard input on the command-line:</p>
<p><a name="wp20022"></a></p>
<p class="pCodelineIndent">$ ldapmodify -h <em class="cEmphasis">hostname</em> \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-D "uid=bjensen,dc=example,dc=com" \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-w <em class="cEmphasis">bindPassword</em> \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;dn: cn=Pete Minsky,ou=People,dc=example,dc=com \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;changetype: delete ^D</p>
<p><a name="wp20025"></a><br></p>
<h3 class="pHeading2">Using Authentication<br></h3>
<p><a name="wp20026"></a></p>
<p class="pParagraph">There are two levels of authentication that the directory server may enforce on clients such as the <span class="cCode">ldapmodify</span> tool: server authentication and client authentication. In server authentication, the server accepts connections only from clients that have a trusted certificate. In the stronger client authentication the client must sign the certificate with a password-protected private key.</p>
<p><a name="wp22810"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp22807">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22807"></a>
<p class="pNote">Note</p>
</td>
<td><a name="wp22809"></a>
<p class="pTableText">In both cases, use the <span class="cCode">-p</span> option to specify the directory server’s SSL port. All other non-SSL options retain their original meaning and may be used as necessary.</p>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp22135"></a><br></p>
<h4 class="pHeading3">Using Server Authentication<br></h4>
<p><a name="wp22751"></a></p>
<p class="pParagraph">To run the <span class="cCode">ldapmodify</span> tool with server authentication, use only the <span class="cCode">-P</span> SSL option [as discussed in <a href="lmodify.html#wp21754">SSL (Secure Socket Layer) Options</a>] on the command-line, in addition to other common options.</p>
<p><a name="wp20029"></a></p>
<p class="pCodelineIndent">$ ldapmodify -h <em class="cEmphasis">hostname</em> -p 636 -f <em class="cEmphasis">LDIFfile</em> \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-D "uid=bjensen,dc=example,dc=com" -w <em class="cEmphasis">bindPassword</em> \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-P /home/bjensen/certs/cert.db</p>
<p><a name="wp20030"></a><br></p>
<h4 class="pHeading3">Using Client Authentication<br></h4>
<p><a name="wp22775"></a></p>
<p class="pParagraph">To perform an update with client authentication, you must give all SSL options [as discussed in <a href="lmodify.html#wp21754">SSL (Secure Socket Layer) Options</a>] on the command-line, in addition to other common options.</p>
<p><a name="wp22829"></a></p>
<p class="pCodelineIndent">$ ldapmodify -h <em class="cEmphasis">hostname</em> -p 636 -f <em class="cEmphasis">LDIFfile</em> \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-Z -P /home/bjensen/security/cert.db -N "bjscert" \<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-K /home/bjensen/security/key.db -W <em class="cEmphasis">KeyPassword</em></p>
<p><a name="wp22835"></a></p>
<p class="pAnchor"></p>
<div align="left">
<table border="0" width="90%" summary="This table is used for Notes, Tips, and Cautions" id="wp22832">
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
<tr align="left" valign="top">
<td><a name="wp22832"></a>
<p class="pCaution">Caution</p>
</td>
<td><a name="wp22834"></a>
<p class="pTableText">Do not use the <span class="cCode">-D</span> and <span class="cCode">-w</span> common options with client authentication, as the bind operation will use the authentication credentials specified with <span class="cCode">-D</span> and <span class="cCode">-w</span> instead of the certificate credentials desired.</p>
</td>
</tr>
<tr>
<td colspan="2">
<hr noshade="-1"></td>
</tr>
</table>
</div>
<p class="pAnchor"></p>
<p><a name="wp22791"></a></p>
<p class="pParagraph"></p>
<p><!-- end chapter content --></p>
<p><!-- footer --><br>
<!-- navigation --></p>
<table width="100%" border="0" cellspacing="4" summary="Footer navigation table">
<tr>
<td>
<p class="pNavigation"><a href="lsearch.html">Previous</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p><a href="contents.html">Contents</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p><a href="ix.html">Index</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p><a href="ldelete.html">Next</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;</p>
</td>
</tr>
</table>
<p><!-- end navigation --></p>
<hr size="1" noshade="-1">
<p><!-- copyright --></p>
<p class="pFooter"></p>
<p><!-- start copyright --><br>
<span class="footer"><br>
<a href="copyright.html" class="footer">Copyright</a> 2004 <a href="http://www.sun.com" class="footer">Sun Microsystems, Inc.</a> All rights reserved.<br></span><br>
<!--  end copyright  --></p>
<p><!-- end copyright --></p>
<p><!--
<p class="pFooter" align="right">Last Updated <b>$Update;</b></p><p> --><br>
<!-- end footer --></p>
</blockquote>
<br>]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/chapter-4.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>quagga-0.99.18 compile error (`ipv6_bgp_network&#039; undeclared here)</title>
		<link>http://realself.blogcn.com/articles/quagga-0-99-18-compile-error-ipv6_bgp_network-undeclared-here.html</link>
		<comments>http://realself.blogcn.com/articles/quagga-0-99-18-compile-error-ipv6_bgp_network-undeclared-here.html#comments</comments>
		<pubDate>Sun, 19 Jun 2011 03:42:42 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/?p=132</guid>
		<description><![CDATA[http://www.gossamer-threads.com/lists/quagga/users/21943?do=post_view_threaded#21943 Hi Paul! Your patch is almost perfect! Thanks! Here the complete "fix" for build quagga-0.99.18 ===================================================================--- quagga-0.99.18/bgpd/bgp_route.c 2011-03-21 15:32:49.000000000 +0100 +++ quagga-0.99.18-ok/bgpd/bgp_route.c 2011-03-23 10:29:03.000000000 +0100 @@ -4327,6 +4327,7 @@ "Specify a BGP backdoor route\n" "AS-Path hopcount limit attribute\n" "AS-Pathlimit &#8230; <a href="http://realself.blogcn.com/articles/quagga-0-99-18-compile-error-ipv6_bgp_network-undeclared-here.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.gossamer-threads.com/lists/quagga/users/21943?do=post_view_threaded#21943">http://www.gossamer-threads.com/lists/quagga/users/21943?do=post_view_threaded#21943</a></p>
<p>Hi Paul!</p>
<p>Your patch is almost perfect! Thanks!</p>
<p>Here the complete "fix" for build quagga-0.99.18</p>
<p><span style="color: #660066;">===================================================================<br></span>--- quagga-0.99.18/bgpd/bgp_route.c 2011-03-21 15:32:49.000000000 +0100<br>
+++ quagga-0.99.18-ok/bgpd/bgp_route.c 2011-03-23 10:29:03.000000000 +0100<br>
@@ -4327,6 +4327,7 @@<br>
"Specify a BGP backdoor route\n"<br>
"AS-Path hopcount limit attribute\n"<br>
"AS-Pathlimit TTL, in number of AS-Path hops\n")<br>
+#ifdef HAVE_IPV6<br>
ALIAS_DEPRECATED (ipv6_bgp_network,<br>
ipv6_bgp_network_ttl_cmd,<br>
"network X:X::X:X/M pathlimit &lt;0-255&gt;",<br>
@@ -4342,6 +4343,7 @@<br>
"IPv6 prefix &lt;network&gt;/&lt;length&gt;\n"<br>
"AS-Path hopcount limit attribute\n"<br>
"AS-Pathlimit TTL, in number of AS-Path hops\n")<br>
+#endif /* HAVE_IPV6 */<br>
^L<br>
/* Aggreagete address:</p>
<p>@@ -12133,9 +12135,11 @@<br>
install_element (BGP_IPV4M_NODE, &amp;no_bgp_network_backdoor_ttl_cmd);<br>
install_element (BGP_IPV4M_NODE, &amp;no_bgp_network_mask_backdoor_ttl_cmd);<br>
install_element (BGP_IPV4M_NODE,<br>
&amp;no_bgp_network_mask_natural_backdoor_ttl_cmd);<br>
-<br>
+<br>
+#ifdef HAVE_IPV6<br>
install_element (BGP_IPV6_NODE, &amp;ipv6_bgp_network_ttl_cmd);<br>
install_element (BGP_IPV6_NODE, &amp;no_ipv6_bgp_network_ttl_cmd);<br>
+#endif /* HAVE_IPV6 */<br>
}</p>
<p>void<br>
<span style="color: #660066;">===================================================================<br></span><br>
Thanks again!</p>
<p>---<br>
Sim<br>
_______________________________________________<br>
Quagga-users mailing list<br>
Quagga-users [at] lists<br>
<a rel="nofollow" href="http://lists.quagga.net/mailman/listinfo/quagga-users" target="_blank">http://lists.quagga.net/mailman/listinfo/quagga-users</a></p>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/quagga-0-99-18-compile-error-ipv6_bgp_network-undeclared-here.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>bind log</title>
		<link>http://realself.blogcn.com/articles/bind-log.html</link>
		<comments>http://realself.blogcn.com/articles/bind-log.html#comments</comments>
		<pubDate>Mon, 13 Jun 2011 09:44:19 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/?p=131</guid>
		<description><![CDATA[queries &#160;Specify where queries should be logged to. At startup, specifing the category queries will also enable query logging unless querylog option has been specified. The query log entry reports the client’s IP address and port number. The query name, &#8230; <a href="http://realself.blogcn.com/articles/bind-log.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>queries</p>
<p>&nbsp;Specify where queries should be logged to.<br>
At startup, specifing the category queries will also enable<br>
query logging unless querylog option has been<br>
specified.<br>
The query log entry reports the client’s IP address and<br>
port number. The query name, class and type. It also<br>
reports whether the Recursion Desired flag was set (+<br>
if set, - if not set), EDNS was in use (E) or if the query<br>
was signed (S).<br>
client 127.0.0.1#62536: query:<br>
<a href="http://www.example.com">www.example.com</a> IN AAAA +SE<br>
client ::1#62537: query:<br>
<a href="http://www.example.net">www.example.net</a> IN AAAA -SE</p>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/bind-log.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>windows2003 添加loopback地址，广播地址设置为虚拟地址本身，子网掩码4个255</title>
		<link>http://realself.blogcn.com/articles/windows2003-%e6%b7%bb%e5%8a%a0loopback%e5%9c%b0%e5%9d%80%ef%bc%8c%e5%b9%bf%e6%92%ad%e5%9c%b0%e5%9d%80%e8%ae%be%e7%bd%ae%e4%b8%ba%e8%99%9a%e6%8b%9f%e5%9c%b0%e5%9d%80%e6%9c%ac%e8%ba%ab%ef%bc%8c%e5%ad%90.html</link>
		<comments>http://realself.blogcn.com/articles/windows2003-%e6%b7%bb%e5%8a%a0loopback%e5%9c%b0%e5%9d%80%ef%bc%8c%e5%b9%bf%e6%92%ad%e5%9c%b0%e5%9d%80%e8%ae%be%e7%bd%ae%e4%b8%ba%e8%99%9a%e6%8b%9f%e5%9c%b0%e5%9d%80%e6%9c%ac%e8%ba%ab%ef%bc%8c%e5%ad%90.html#comments</comments>
		<pubDate>Fri, 06 May 2011 03:17:40 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/?p=128</guid>
		<description><![CDATA[windows服务器设置虚拟地址。windows下设置子网掩码为255.255.255.255比linux设置要麻烦些。要想在网上邻居本地连接的tcp/ip属性设置4个255掩码是不能得逞的，唯一的办法是修改注册表。默认状况下，windows并没有环回接口存在，配置之前得先安装这个“设备”。接下来介绍一下环回接口设置步骤： 控制面板点击添加新硬件 选“网络适配器”，按“下一步”，选“Microsoft”及“Microsoft Loopback Adapter” &#160; 点击下一步安装好loopback adapter. 设置loopback的tcp/ip参数值 先设置ip，把子网掩码设置成255.255.255.0。 设置ip地址的目的是方便在注册表中搜索loopback设置子网掩码的位置，我们用设置的虚拟ip地址做搜索关键字，很快就找到位置了。 在这个项的下方，有个项“SubnetMask”，它的值为255.255.255.0. 把其修改为255.255.255.255,但不幸的是，windows 2003 server 的注册表修改编辑方式是2进制，修改时需要技巧。在windows xp的注册表编辑器上修改好，然后转换到2进制方式，windows 2003 server 对照这个值更改即可。 另外：也可以参考DhcpServer这个值来改。 修改好了，重启网卡或者重启机器就好了。 附： http://hi.baidu.com/ruiban/blog/item/f6d6851cf98b4d8787d6b6fe.html]]></description>
			<content:encoded><![CDATA[<p><span style="font-family: Times New Roman;">windows</span>服务器设置虚拟地址。<span style="font-family: Times New Roman;">windows</span>下设置子网掩码为<span style="font-family: Times New Roman;">255.255.255.255</span>比<span style="font-family: Times New Roman;">linux</span>设置要麻烦些。要想在网上邻居本地连接的<span style="font-family: Times New Roman;">tcp/ip</span>属性设置<span style="font-family: Times New Roman;">4</span>个<span style="font-family: Times New Roman;">255</span>掩码是不能得逞的，唯一的办法是修改注册表。默认状况下，<span style="font-family: Times New Roman;">windows</span>并没有环回接口存在，配置之前得先安装这个“设备”。接下来介绍一下环回接口设置步骤：</p>
<p>控制面板点击添加新硬件</p>
<p>选“网络适配器”，按“下一步”，选“Microsoft”及“Microsoft Loopback Adapter”</p>
<p>&nbsp; 点击下一步安装好loopback adapter. 设置loopback的tcp/ip参数值</p>
<p>先设置<span style="font-family: Times New Roman;">ip</span>，把子网掩码设置成<span style="font-family: Times New Roman;">255.255.255.0</span>。</p>
<p>设置<span style="font-family: Times New Roman;">ip</span>地址的目的是方便在注册表中搜索<span style="font-family: Times New Roman;">loopback</span>设置子网掩码的位置，我们用设置的虚拟<span style="font-family: Times New Roman;">ip</span>地址做搜索关键字，很快就找到位置了。</p>
<p>在这个项的下方，有个项“SubnetMask”，它的值为255.255.255.0.</p>
<p>把其修改为255.255.255.255,但不幸的是，windows 2003 server 的注册表修改编辑方式是2进制，修改时需要技巧。在windows xp的注册表编辑器上修改好，然后转换到2进制方式，windows 2003 server 对照这个值更改即可。</p>
<p>另外：也可以参考DhcpServer这个值来改。</p>
<p>修改好了，重启网卡或者重启机器就好了。</p>
<p>附：</p>
<p><a href="http://hi.baidu.com/ruiban/blog/item/f6d6851cf98b4d8787d6b6fe.html">http://hi.baidu.com/ruiban/blog/item/f6d6851cf98b4d8787d6b6fe.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/windows2003-%e6%b7%bb%e5%8a%a0loopback%e5%9c%b0%e5%9d%80%ef%bc%8c%e5%b9%bf%e6%92%ad%e5%9c%b0%e5%9d%80%e8%ae%be%e7%bd%ae%e4%b8%ba%e8%99%9a%e6%8b%9f%e5%9c%b0%e5%9d%80%e6%9c%ac%e8%ba%ab%ef%bc%8c%e5%ad%90.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cisco SFP-10G-LR  &amp;  Cisco SFP-10G-ER</title>
		<link>http://realself.blogcn.com/articles/cisco-sfp-10g-lr-cisco-sfp-10g-er.html</link>
		<comments>http://realself.blogcn.com/articles/cisco-sfp-10g-lr-cisco-sfp-10g-er.html#comments</comments>
		<pubDate>Thu, 21 Apr 2011 07:55:53 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/?p=126</guid>
		<description><![CDATA[Cisco SFP-10G-LR The Cisco 10GBASE-LR Module supports a link length of 10 kilometers on standard single-mode fiber (SMF, G.652). Cisco SFP-10G-ER The Cisco 10GBASE-ER Module supports a link length of up to 40 kilometers on standard single-mode fiber (SMF,&#160;G.652).]]></description>
			<content:encoded><![CDATA[<p>Cisco SFP-10G-LR</p>
<p><a name="wp9000229"></a></p>
<div>The Cisco 10GBASE-LR Module supports a link length of 10 kilometers on standard single-mode fiber (SMF, G.652).</div>
<p><a name="wp9000230"></a></p>
<p>Cisco SFP-10G-ER</p>
<p><a name="wp9000231"></a></p>
<div>The Cisco 10GBASE-ER Module supports a link length of up to 40 kilometers on standard single-mode fiber (SMF,&nbsp;G.652).</div>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/cisco-sfp-10g-lr-cisco-sfp-10g-er.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://realself.blogcn.com/articles/hello-world.html</link>
		<comments>http://realself.blogcn.com/articles/hello-world.html#comments</comments>
		<pubDate>Fri, 08 Apr 2011 23:01:40 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/?p=1</guid>
		<description><![CDATA[欢迎使用 WordPress。这是您的第一篇日志。您可以编辑它或是删除它，然后开始写您自己的博客。]]></description>
			<content:encoded><![CDATA[<p>欢迎使用 WordPress。这是您的第一篇日志。您可以编辑它或是删除它，然后开始写您自己的博客。</p>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/hello-world.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>This system is not registered with RHN.</title>
		<link>http://realself.blogcn.com/articles/this-system-is-not-registered-with-rhn.html</link>
		<comments>http://realself.blogcn.com/articles/this-system-is-not-registered-with-rhn.html#comments</comments>
		<pubDate>Fri, 28 Jan 2011 00:00:00 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/diary,35434880.shtml</guid>
		<description><![CDATA[RHEL5使用Centos yum（解决This system is not registered with RHN.)） 2010-12-31 16:08 This system is not registered with RHN 今天在公司的一台cacti服务器上利用yum安装一个软件的时候，出现了上述错误提示,原因是你的linux没有在红帽网络上注册，所以无法下载上面的软件包，替代方案可以使用centos。下面介绍下使用centos 的流程 1.卸载rhel的默认安装的yum包 查看yum包 rpm -qa&#124;grep yum 卸载之 rpm -qa&#124;grep yum&#124;xargs rpm -e --nodeps 2.下载新的yum包 wget&#160; http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm wget&#160; http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm wget http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm 并且安装之 rpm &#8230; <a href="http://realself.blogcn.com/articles/this-system-is-not-registered-with-rhn.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="tit">RHEL5使用Centos yum（解决This system is not registered with RHN.)）</div>
<br>
<div class="date">2010-12-31 16:08</div>
<br>
<br>
<br>
<br>
<table>
<tbody>
<tr>
<td><br>
<div class="cnt"><br>
<p>This system is not registered with RHN<br>
今天在公司的一台cacti服务器上利用yum安装一个软件的时候，出现了上述错误提示,原因是你的linux没有在红帽网络上注册，所以无法下载上面的软件包，替代方案可以使用centos。下面介绍下使用centos 的流程</p>
<br>
<p>1.卸载rhel的默认安装的yum包<br>
查看yum包<br>
rpm -qa|grep yum<br>
卸载之<br>
rpm -qa|grep yum|xargs rpm -e --nodeps<br>
2.下载新的yum包<br>
wget&nbsp; <a href="http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm">http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-3.2.22-26.el5.centos.noarch.rpm</a></p>
<br>
<p>wget&nbsp; <a href="http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm">http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-fastestmirror-1.1.16-14.el5.centos.1.noarch.rpm</a></p>
<br>
<p>wget <a href="http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm">http://centos.ustc.edu.cn/centos/5/os/i386/CentOS/yum-metadata-parser-1.1.2-3.el5.centos.i386.rpm</a></p>
<br>
<p>并且安装之<br>
rpm -ivh yum-*<br>
注意：yum和yum-fastestmirror相互依赖，所以同时安装即可。<br>
3.下载yum的配置源<br>
wget <a href="http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo">http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo</a>&nbsp;下载到 /etc/yum.repos.d/ 目录下面</p>
<br>
<p>4.运行yum makecache生成缓存</p>
</div>
</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/this-system-is-not-registered-with-rhn.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>获取进程的详细信息</title>
		<link>http://realself.blogcn.com/articles/%e8%8e%b7%e5%8f%96%e8%bf%9b%e7%a8%8b%e7%9a%84%e8%af%a6%e7%bb%86%e4%bf%a1%e6%81%af.html</link>
		<comments>http://realself.blogcn.com/articles/%e8%8e%b7%e5%8f%96%e8%bf%9b%e7%a8%8b%e7%9a%84%e8%af%a6%e7%bb%86%e4%bf%a1%e6%81%af.html#comments</comments>
		<pubDate>Tue, 09 Nov 2010 00:00:00 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/diary,34087878.shtml</guid>
		<description><![CDATA[包括进程的envrionstatusCMD及START_TIME 附件 http://bbs.chinaunix.net/thread-1813014-2-1.html]]></description>
			<content:encoded><![CDATA[<p>包括进程的envrionstatusCMD及START_TIME<br>
<br>
<br>
<br>
<a href="http://bbs.chinaunix.net/attachment.php?aid=ndeznzk3fgm4zwu5y2jlfdeyodkynjk3nzf8ngu4nkvbkzg3yzbomuz3b2rsmee2y1luk2ztvjb0y3q3m0n1m1r5d0vpzk85atg%3d" target="_blank">附件</a><br>
<br>
<br>
<a href="http://bbs.chinaunix.net/thread-1813014-2-1.html">http://bbs.chinaunix.net/thread-1813014-2-1.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/%e8%8e%b7%e5%8f%96%e8%bf%9b%e7%a8%8b%e7%9a%84%e8%af%a6%e7%bb%86%e4%bf%a1%e6%81%af.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>apache日志记录格式LogFormat参数说明</title>
		<link>http://realself.blogcn.com/articles/apache%e6%97%a5%e5%bf%97%e8%ae%b0%e5%bd%95%e6%a0%bc%e5%bc%8flogformat%e5%8f%82%e6%95%b0%e8%af%b4%e6%98%8e.html</link>
		<comments>http://realself.blogcn.com/articles/apache%e6%97%a5%e5%bf%97%e8%ae%b0%e5%bd%95%e6%a0%bc%e5%bc%8flogformat%e5%8f%82%e6%95%b0%e8%af%b4%e6%98%8e.html#comments</comments>
		<pubDate>Sun, 07 Nov 2010 00:00:00 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/diary,34033857.shtml</guid>
		<description><![CDATA[在apache的配置文件httpd.conf里一般都有类似于LogFormat "%h %l %u %t "%r" %&#62;s %b "%{Referer}i" "%{User-Agent}i"" common 的日志记录格式设置，那么这种格式里的各个参数都代表什么意思呢，怎样设置才能完全掌握网站的访问情况呢？下面我就参数意思，简单说下。 请求本身的情况将通过在格式字符串中放置各种"%"转义符的方法来记录，它们在写入日志文件时，根据下表的定义进行转换： %a 远端IP地址 %A 本机IP地址 %B 除HTTP头以外传送的字节数 %b 以CLF格式显示的除HTTP头以外传送的字节数，也就是当没有字节传送时显示’-'而不是0。 %{Foobar}C 在请求中传送给服务端的cookieFoobar的内容。 %D 服务器处理本请求所用时间，以微为单位。 %{FOOBAR}e 环境变量FOOBAR的值 %f 文件名 %h 远端主机 %H 请求使用的协议 %{Foobar}i 发送到服务器的请求头Foobar:的内容。 %l 远端登录名(由identd而来，如果支持的话)，除非IdentityCheck设为"On"，否则将得到一个"-"。 %m 请求的方法 %{Foobar}n &#8230; <a href="http://realself.blogcn.com/articles/apache%e6%97%a5%e5%bf%97%e8%ae%b0%e5%bd%95%e6%a0%bc%e5%bc%8flogformat%e5%8f%82%e6%95%b0%e8%af%b4%e6%98%8e.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>在apache的配置文件httpd.conf里一般都有类似于LogFormat "%h %l %u %t "%r" %&gt;s %b "%{Referer}i" "%{User-Agent}i"" common 的日志记录格式设置，那么这种格式里的各个参数都代表什么意思呢，怎样设置才能完全掌握网站的访问情况呢？下面我就参数意思，简单说下。</p>
<br>
<p>请求本身的情况将通过在格式字符串中放置各种"%"转义符的方法来记录，它们在写入日志文件时，根据下表的定义进行转换：</p>
<br>
<p>%a 远端IP地址<br>
%A 本机IP地址<br>
%B 除HTTP头以外传送的字节数<br>
%b 以CLF格式显示的除HTTP头以外传送的字节数，也就是当没有字节传送时显示’-'而不是0。<br>
%{Foobar}C 在请求中传送给服务端的cookieFoobar的内容。<br>
%D 服务器处理本请求所用时间，以微为单位。<br>
%{FOOBAR}e 环境变量FOOBAR的值<br>
%f 文件名<br>
%h 远端主机<br>
%H 请求使用的协议<br>
%{Foobar}i 发送到服务器的请求头Foobar:的内容。<br>
%l 远端登录名(由identd而来，如果支持的话)，除非IdentityCheck设为"On"，否则将得到一个"-"。<br>
%m 请求的方法<br>
%{Foobar}n 来自另一个模块的注解Foobar的内容。<br>
%{Foobar}o 应答头Foobar:的内容。<br>
%p 服务器服务于该请求的标准端口。<br>
%P 为本请求提供服务的子进程的PID。<br>
%{format}P 服务于该请求的PID或TID(线程ID)，format的取值范围为：pid和tid(2.0.46及以后版本)以及hextid(需要APR1.2.0及以上版本)<br>
%q 查询字符串(若存在则由一个"?"引导，否则返回空串)<br>
%r 请求的第一行<br>
%s 状态。对于内部重定向的请求，这个状态指的是原始请求的状态，—%&gt;s则指的是最后请求的状态。<br>
%t 时间，用普通日志时间格式(标准英语格式)<br>
%{format}t 时间，用strftime(3)指定的格式表示的时间。(默认情况下按本地化格式)<br>
%T 处理完请求所花时间，以秒为单位。<br>
%u 远程用户名(根据验证信息而来；如果返回status(%s)为401，可能是假的)<br>
%U 请求的URL路径，不包含查询字符串。<br>
%v 对该请求提供服务的标准ServerName。<br>
%V 根据UseCanonicalName指令设定的服务器名称。<br>
%X 请求完成时的连接状态：X= 连接在应答完成前中断。<br>
+= 应答传送完后继续保持连接。<br>
-= 应答传送完后关闭连接。</p>
<br>
<p>(在1.3以后的版本中，这个指令是%c，但这样就和过去的SSL语法：%{var}c冲突了)<br>
%I 接收的字节数，包括请求头的数据，并且不能为零。要使用这个指令你必须启用mod_logio模块。<br>
%O 发送的字节数，包括请求头的数据，并且不能为零。要使用这个指令你必须启用mod_logio模块。</p>
<br>
<p>修饰符<br>
可以紧跟在"%"后面加上一个逗号分隔的状态码列表来限制记录的条目。例如，"%400,501{User-agent}i" 只记录状态码400和501发生时的User-agent头内容；不满足条件时用"-"代替。状态码前还可以加上"!"前缀表示否定，"%!200,304,302{Referer}i"记录所有不同于200,304,302的状态码发生时的Referer头内容。</p>
<br>
<p>"&lt;"和"&gt;"修饰符可以用来指定对于已被内部重定向的请求是选择原始的请求还是选择最终的请求。默认情况下，%s, %U, %T, %D, %r 使用原始请求，而所有其他格式串则选择最终请求。例如，%&gt;s 可以用于记录请求的最终状态，而 %&lt;u 则记录一个已经被内部重定向到非认证资源的请求的原始认证用户。</p>
<br>
<p>一些说明<br>
出于安全考虑，从2.0.46版本开始，%r, %i, %o 中的特殊字符，除了双引号(")和反斜线()分别用 " 和 \ 进行转义、空白字符用C风格(n, t 等)进行转义以外，非打印字符和其它特殊字符使用 xhh 格式进行转义(hh是该字符的16进制编码)。在2.0.46以前的版本中，这些内容会被完整的按原样记录。这种做法将导致客户端可以在日志中插入控制字符，所以你在处理这些日志文件的时候要特别小心。</p>
<br>
<p>在2.0版本中(不同于1.3)，%b 和 %B 格式字符串并不表示发送到客户端的字节数，而只是简单的表示HTTP应答字节数(在连接中断或使用SSL时与前者有所不同)。mod_logio提供的 %O 格式字符串将会记录发送的实际字节数。</p>
<br>
<p>示例<br>
一些常见的格式串：</p>
<br>
<p>通用日志格式(CLF)<br>
"%h %l %u %t "%r" %&gt;s %b"</p>
<br>
<p>带虚拟主机的通用日志格式<br>
"%v %h %l %u %t "%r" %&gt;s %b"</p>
<br>
<p>NCSA扩展/组合日志格式<br>
"%h %l %u %t "%r" %&gt;s %b "%{Referer}i" "%{User-agent}i""</p>
<br>
<p>Referer日志格式<br>
"%{Referer}i -&gt; %U"</p>
<br>
<p>Agent(Browser)日志格式<br>
"%{User-agent}i"</p>
<br>
<p>文章开头提到的LogFormat "%h %l %u %t "%r" %&gt;s %b "%{Referer}i" "%{User-Agent}i"" common 中间用" "包含的参数都可以在上面找到对应的说明，至于最后的那个common，其实就是这种格式的一种标识符，当你套用这种格式记录日志的时候，就可以直接使用标识符了，例如:<br>
CustomLog logs/access_log common<br>
就会在logs下面产生一个以common为格式记录的日志文件access_log</p>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/apache%e6%97%a5%e5%bf%97%e8%ae%b0%e5%bd%95%e6%a0%bc%e5%bc%8flogformat%e5%8f%82%e6%95%b0%e8%af%b4%e6%98%8e.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache 1.3 URL Rewriting</title>
		<link>http://realself.blogcn.com/articles/apache-1-3-url-rewriting.html</link>
		<comments>http://realself.blogcn.com/articles/apache-1-3-url-rewriting.html#comments</comments>
		<pubDate>Sat, 30 Oct 2010 00:00:00 +0000</pubDate>
		<dc:creator>realself</dc:creator>
				<category><![CDATA[未分类]]></category>

		<guid isPermaLink="false">http://realself.blogcn.com/diary,34010690.shtml</guid>
		<description><![CDATA[Apache 1.3 URL Rewriting Guide http://httpd.apache.org/docs/1.3/misc/rewriteguide.html Module mod_rewrite URL Rewriting Engine http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html]]></description>
			<content:encoded><![CDATA[<h1>Apache 1.3<br>
URL Rewriting Guide<br>
http://httpd.apache.org/docs/1.3/misc/rewriteguide.html<br>
<br>
Module mod_rewrite<br>
URL Rewriting Engine<br>
<a href="http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html">http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html</a></h1>
]]></content:encoded>
			<wfw:commentRss>http://realself.blogcn.com/articles/apache-1-3-url-rewriting.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

