﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-八叶草(徐怀移)-随笔分类-linux</title><link>http://www.cppblog.com/byc/category/17578.html</link><description>学习资料记录</description><language>zh-cn</language><lastBuildDate>Mon, 29 Oct 2012 16:55:56 GMT</lastBuildDate><pubDate>Mon, 29 Oct 2012 16:55:56 GMT</pubDate><ttl>60</ttl><item><title>移除bzImage文件中'1f8b08'之前内容，存为gz文件</title><link>http://www.cppblog.com/byc/archive/2012/10/29/194021.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Mon, 29 Oct 2012 08:02:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2012/10/29/194021.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/194021.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2012/10/29/194021.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/194021.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/194021.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<div style="border-bottom: #cccccc 1px solid; border-left: #cccccc 1px solid; padding-bottom: 4px; background-color: #eeeeee; padding-left: 4px; width: 98%; padding-right: 5px; font-size: 13px; word-break: break-all; border-top: #cccccc 1px solid; border-right: #cccccc 1px solid; padding-top: 4px"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><span style="color: #000000">#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">stdlib.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" />#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">stdio.h</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/None.gif"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;_tmain(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;argc,&nbsp;_TCHAR</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;argv[])<br /><img id="Codehighlighter1_77_1249_Open_Image" onclick="this.style.display='none'; Codehighlighter1_77_1249_Open_Text.style.display='none'; Codehighlighter1_77_1249_Closed_Image.style.display='inline'; Codehighlighter1_77_1249_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockStart.gif"><img style="display: none" id="Codehighlighter1_77_1249_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_77_1249_Closed_Text.style.display='none'; Codehighlighter1_77_1249_Open_Image.style.display='inline'; Codehighlighter1_77_1249_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedBlock.gif"></span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_77_1249_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_77_1249_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;FILE</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;r</span><span style="color: #000000">=</span><span style="color: #000000">fopen(</span><span style="color: #000000">"</span><span style="color: #000000">linux26</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">rb</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;FILE</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;w</span><span style="color: #000000">=</span><span style="color: #000000">fopen(</span><span style="color: #000000">"</span><span style="color: #000000">linux26.gz</span><span style="color: #000000">"</span><span style="color: #000000">,</span><span style="color: #000000">"</span><span style="color: #000000">wb</span><span style="color: #000000">"</span><span style="color: #000000">);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;s</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(;;)<br /><img id="Codehighlighter1_181_1206_Open_Image" onclick="this.style.display='none'; Codehighlighter1_181_1206_Open_Text.style.display='none'; Codehighlighter1_181_1206_Closed_Image.style.display='inline'; Codehighlighter1_181_1206_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_181_1206_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_181_1206_Closed_Text.style.display='none'; Codehighlighter1_181_1206_Open_Image.style.display='inline'; Codehighlighter1_181_1206_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_181_1206_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_181_1206_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unsigned&nbsp;</span><span style="color: #0000ff">char</span><span style="color: #000000">&nbsp;c;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;l</span><span style="color: #000000">=</span><span style="color: #000000">fread(</span><span style="color: #000000">&amp;</span><span style="color: #000000">c,</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">,r);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(l</span><span style="color: #000000">&gt;=</span><span style="color: #000000">1</span><span style="color: #000000">)<br /><img id="Codehighlighter1_264_1148_Open_Image" onclick="this.style.display='none'; Codehighlighter1_264_1148_Open_Text.style.display='none'; Codehighlighter1_264_1148_Closed_Image.style.display='inline'; Codehighlighter1_264_1148_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_264_1148_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_264_1148_Closed_Text.style.display='none'; Codehighlighter1_264_1148_Open_Image.style.display='inline'; Codehighlighter1_264_1148_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_264_1148_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_264_1148_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(s</span><span style="color: #000000">==</span><span style="color: #000000">3</span><span style="color: #000000">)<br /><img id="Codehighlighter1_299_347_Open_Image" onclick="this.style.display='none'; Codehighlighter1_299_347_Open_Text.style.display='none'; Codehighlighter1_299_347_Closed_Image.style.display='inline'; Codehighlighter1_299_347_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_299_347_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_299_347_Closed_Text.style.display='none'; Codehighlighter1_299_347_Open_Image.style.display='inline'; Codehighlighter1_299_347_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_299_347_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_299_347_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite(</span><span style="color: #000000">&amp;</span><span style="color: #000000">c,</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">,w);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(s</span><span style="color: #000000">==</span><span style="color: #000000">2</span><span style="color: #000000">)<br /><img id="Codehighlighter1_387_770_Open_Image" onclick="this.style.display='none'; Codehighlighter1_387_770_Open_Text.style.display='none'; Codehighlighter1_387_770_Closed_Image.style.display='inline'; Codehighlighter1_387_770_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_387_770_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_387_770_Closed_Text.style.display='none'; Codehighlighter1_387_770_Open_Image.style.display='inline'; Codehighlighter1_387_770_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_387_770_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_387_770_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(c</span><span style="color: #000000">==</span><span style="color: #000000">0x08</span><span style="color: #000000">)<br /><img id="Codehighlighter1_433_674_Open_Image" onclick="this.style.display='none'; Codehighlighter1_433_674_Open_Text.style.display='none'; Codehighlighter1_433_674_Closed_Image.style.display='inline'; Codehighlighter1_433_674_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_433_674_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_433_674_Closed_Text.style.display='none'; Codehighlighter1_433_674_Open_Image.style.display='inline'; Codehighlighter1_433_674_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_433_674_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_433_674_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c</span><span style="color: #000000">=</span><span style="color: #000000">0x1f</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite(</span><span style="color: #000000">&amp;</span><span style="color: #000000">c,</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">,w);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c</span><span style="color: #000000">=</span><span style="color: #000000">0x8b</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite(</span><span style="color: #000000">&amp;</span><span style="color: #000000">c,</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">,w);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c</span><span style="color: #000000">=</span><span style="color: #000000">0x08</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite(</span><span style="color: #000000">&amp;</span><span style="color: #000000">c,</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">,w);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">++</span><span style="color: #000000">s;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br /><img id="Codehighlighter1_713_756_Open_Image" onclick="this.style.display='none'; Codehighlighter1_713_756_Open_Text.style.display='none'; Codehighlighter1_713_756_Closed_Image.style.display='inline'; Codehighlighter1_713_756_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_713_756_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_713_756_Closed_Text.style.display='none'; Codehighlighter1_713_756_Open_Image.style.display='inline'; Codehighlighter1_713_756_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_713_756_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_713_756_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(s</span><span style="color: #000000">==</span><span style="color: #000000">1</span><span style="color: #000000">)<br /><img id="Codehighlighter1_810_995_Open_Image" onclick="this.style.display='none'; Codehighlighter1_810_995_Open_Text.style.display='none'; Codehighlighter1_810_995_Closed_Image.style.display='inline'; Codehighlighter1_810_995_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_810_995_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_810_995_Closed_Text.style.display='none'; Codehighlighter1_810_995_Open_Image.style.display='inline'; Codehighlighter1_810_995_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_810_995_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_810_995_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(c</span><span style="color: #000000">==</span><span style="color: #000000">0x8b</span><span style="color: #000000">)<br /><img id="Codehighlighter1_856_899_Open_Image" onclick="this.style.display='none'; Codehighlighter1_856_899_Open_Text.style.display='none'; Codehighlighter1_856_899_Closed_Image.style.display='inline'; Codehighlighter1_856_899_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_856_899_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_856_899_Closed_Text.style.display='none'; Codehighlighter1_856_899_Open_Image.style.display='inline'; Codehighlighter1_856_899_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_856_899_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_856_899_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">++</span><span style="color: #000000">s;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br /><img id="Codehighlighter1_938_981_Open_Image" onclick="this.style.display='none'; Codehighlighter1_938_981_Open_Text.style.display='none'; Codehighlighter1_938_981_Closed_Image.style.display='inline'; Codehighlighter1_938_981_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_938_981_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_938_981_Closed_Text.style.display='none'; Codehighlighter1_938_981_Open_Image.style.display='inline'; Codehighlighter1_938_981_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_938_981_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_938_981_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s</span><span style="color: #000000">=</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(s</span><span style="color: #000000">==</span><span style="color: #000000">0</span><span style="color: #000000">)<br /><img id="Codehighlighter1_1035_1138_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1035_1138_Open_Text.style.display='none'; Codehighlighter1_1035_1138_Closed_Image.style.display='inline'; Codehighlighter1_1035_1138_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1035_1138_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1035_1138_Closed_Text.style.display='none'; Codehighlighter1_1035_1138_Open_Image.style.display='inline'; Codehighlighter1_1035_1138_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1035_1138_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1035_1138_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(c</span><span style="color: #000000">==</span><span style="color: #000000">0x1f</span><span style="color: #000000">)<br /><img id="Codehighlighter1_1081_1124_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1081_1124_Open_Text.style.display='none'; Codehighlighter1_1081_1124_Closed_Image.style.display='inline'; Codehighlighter1_1081_1124_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1081_1124_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1081_1124_Closed_Text.style.display='none'; Codehighlighter1_1081_1124_Open_Image.style.display='inline'; Codehighlighter1_1081_1124_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1081_1124_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1081_1124_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">++</span><span style="color: #000000">s;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br /><img id="Codehighlighter1_1171_1200_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1171_1200_Open_Text.style.display='none'; Codehighlighter1_1171_1200_Closed_Image.style.display='inline'; Codehighlighter1_1171_1200_Closed_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="display: none" id="Codehighlighter1_1171_1200_Closed_Image" onclick="this.style.display='none'; Codehighlighter1_1171_1200_Closed_Text.style.display='none'; Codehighlighter1_1171_1200_Open_Image.style.display='inline'; Codehighlighter1_1171_1200_Open_Text.style.display='inline';" align="top" src="http://www.cppblog.com/images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="border-bottom: #808080 1px solid; border-left: #808080 1px solid; background-color: #ffffff; display: none; border-top: #808080 1px solid; border-right: #808080 1px solid" id="Codehighlighter1_1171_1200_Closed_Text"><img src="http://www.cppblog.com/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_1171_1200_Open_Text"><span style="color: #000000">{<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">break</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;fclose(w);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;fclose(r);<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/InBlock.gif"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br /><img align="top" src="http://www.cppblog.com/images/OutliningIndicators/ExpandedBlockEnd.gif"  alt="" />}</span></span></div>
<p>&nbsp;</p><img src ="http://www.cppblog.com/byc/aggbug/194021.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2012-10-29 16:02 <a href="http://www.cppblog.com/byc/archive/2012/10/29/194021.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>centos 6.2 手动编译 apche php 编译</title><link>http://www.cppblog.com/byc/archive/2012/01/11/163982.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Wed, 11 Jan 2012 03:14:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2012/01/11/163982.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/163982.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2012/01/11/163982.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/163982.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/163982.html</trackback:ping><description><![CDATA[<div>wget <a href="http://apache.etoak.com//httpd/httpd-2.2.21.tar.gz">http://apache.etoak.com//httpd/httpd-2.2.21.tar.gz</a><br />tar xzvf httpd-2.2.21.tar.gz<br />cd httpd-2.2.21<br />./configure --enable-so --enable-mods-shared=most<br />make<br />make install<br /><br />vi /usr/local/apache2/conf/httpd.conf #编辑配置文件<br />找到：#ServerName www.example.com:80<br />修改为：ServerName localhost:80<br />找到：DirectoryIndex index.html<br />修改为：DirectoryIndex index.html index.php<br />找到：Options Indexes FollowSymLinks<br />修改为：Options FollowSymLinks #不显示目录结构<br />增加<br />&lt;FilesMatch \.php$&gt;<br />&nbsp;&nbsp;&nbsp; SetHandler application/x-httpd-php<br />&lt;/FilesMatch&gt;<br /><br />cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd&nbsp; <br />vi /etc/init.d/httpd<br />&nbsp;在文件最前面插入下面的行，使其支持chkconfig命令：&nbsp;<br />#!/bin/sh <br /># chkconfig: 2345 85 15 <br /># description: Apache is a World Wide Web server. <br /><span style="font-size: 12pt">（注：在运行级2/3/4/5中加入服务，启动顺序85，停止顺序15）<br /></span><br />chkconfig --add httpd<br />service htpd start<br /><br /><br />yum install mysql-devel<br />yum install libpng-devel<br />yum install libjpeg-devel<br />yum install libxml2-devel<br /><br />wget <a href="http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz/download">http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz/download</a><br />tar xzvf libmcrypt-2.5.8.tar.gz<br />cd libmcrypt-2.5.8<br />./configure<br />make<br />make install<br /><br /><br />//wget <a href="http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz">http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz</a> <br />//tar xzvf libiconv-1.14.tar.gz<br />//cd libiconv-1.14&nbsp; <br />//./configure <br />//make<br />//make install<br /><br /><br /><br />wget <a href="http://museum.php.net/php5/php-5.1.6.tar.gz">http://museum.php.net/php5/php-5.1.6.tar.gz</a><br />tar xzvf php-5.1.6.tar.gz<br />cd php-5.1.6<br />./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-gd --with-xlib --with-mysqli --with-jpeg-dir=/usr/lib/jpeg --with-zlib-dir=/usr/lib/zlib <br />//--with-mcrypt <br /><br />make&nbsp;<br />编译出错&nbsp; <font face="Courier New">ext/mysqli/mysqli_api.c:145: error: 'gptr' undeclared (first use in this function)</font><br /><font face="Courier New">处理 &nbsp;ext/mysqli/mysqli_api.c </font>and replace all occurrances of <code>gptr </code>with <code>char*<br /></code><br />make install<br /><br />编辑 httpd.conf 文件以调用 PHP 模块。LoadModule 表达式右边的路径必须指向 系统中的 PHP。以上的 make install 命令可能已经完成了这些，但务必要检查。 LoadModule php5_module modules/libphp5.so<br /><br />cp php.ini-dist /usr/local/php5/etc/php.ini<br /><br /><br /><br /><br /><br />
<h2>PHP扩展mcrypt编译时提示：configure: error: *** libmcrypt was not found</h2><br />需要安装libmcrypt+mhash+mcrypt 
<p>全部编译安装，安装到mcrypt的时候出现了问题</p>
<p>./config<br />checking for libmcrypt - version &gt;= 2.5.0... no<br />*** Could not run libmcrypt test program, checking why...<br />*** The test program compiled, but did not run. This usually means<br />*** that the run-time linker is not finding LIBMCRYPT or finding the wrong<br />*** version of LIBMCRYPT. If it is not finding LIBMCRYPT, you'll need to set your<br />*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point<br />*** to the installed location&nbsp; Also, make sure you have run ldconfig if that<br />*** is required on your system<br />***<br />*** If you have an old version installed, it is best to remove it, although<br />*** you may also be able to get things to work by modifying LD_LIBRARY_PATH<br />***<br />configure: error: *** libmcrypt was not found</p>
<p>解决方法如下：运行 export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH</p>
<p>然后make ； make install</p>
<p>完成<br /></p><br /></div><img src ="http://www.cppblog.com/byc/aggbug/163982.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2012-01-11 11:14 <a href="http://www.cppblog.com/byc/archive/2012/01/11/163982.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>centos5 php5.1.6 升级到 php5.2.17</title><link>http://www.cppblog.com/byc/archive/2011/12/29/163068.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Thu, 29 Dec 2011 01:54:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2011/12/29/163068.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/163068.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2011/12/29/163068.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/163068.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/163068.html</trackback:ping><description><![CDATA[root@linuxbox ~]# wget <a href="http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1-2.ius.el5.noarch.rpm">http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/</a><a href="http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1.0-8.ius.el5.noarch.rpm">ius-release-1.0-8.ius.el5.noarch.rpm</a><br /><span id="line-3" class="anchor"></span>root@linuxbox ~]# wget <a href="http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/--/epel-release-1-1.ius.el5.noarch.rpm">http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/<u><font color="#0066cc">i386</font></u>/</a><a href="http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/epel-release-5-4.noarch.rpm">epel-release-5-4.noarch.rpm</a><br />root@linuxbox ~]# rpm -Uvh ius-release*.rpm epel-release*.rpm<br />$ sudo yum install yum-plugin-replace<br />[root@linuxbox ~]# yum replace php --replace-with php52<br /><br />来源&nbsp; <a href="http://wiki.iuscommunity.org/Doc/ClientUsageGuide">http://wiki.iuscommunity.org/Doc/ClientUsageGuide</a> <br /><br /><br />任一种办法<br /><span style="color: #000000"><font face="Courier New"><span style="color: #0000bb"><span>
<p>CentOS 5.x 系统下使用yum 升级php到5.2.x 最方便方法</p>
<p>先将以下地址导入。</p>
<p># <code>rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka</code></p>
<p># <code>vi /etc/yum.repos.d/CentOS-Base.repo</code> 增加下面信息</p>
<p><code>[utterramblings]<br />name=Jason's Utter Ramblings Repo<br />baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/<br />enabled=1<br />gpgcheck=1<br />gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka</code></p>
<p>执行命令，自动升级。<br /><code><br />yum update php -y<br />yum install libmcrypt -y</code></p></span></span></font></span><img src ="http://www.cppblog.com/byc/aggbug/163068.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2011-12-29 09:54 <a href="http://www.cppblog.com/byc/archive/2011/12/29/163068.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>vsftpd</title><link>http://www.cppblog.com/byc/archive/2011/12/27/162898.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Tue, 27 Dec 2011 03:39:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2011/12/27/162898.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/162898.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2011/12/27/162898.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/162898.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/162898.html</trackback:ping><description><![CDATA[<div>yum install vsftpd<br />adduser -d /var/www/html -g ftp -s /sbin/nologin ftptest<br />passwd ftptest<br />/etc/vsftpd/vsftpd.conf<br />只能访问自己的目录<br />chroot_local_user=yes<br /><br /></div><img src ="http://www.cppblog.com/byc/aggbug/162898.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2011-12-27 11:39 <a href="http://www.cppblog.com/byc/archive/2011/12/27/162898.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>centos vnc 服务 配置</title><link>http://www.cppblog.com/byc/archive/2011/12/08/161733.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Thu, 08 Dec 2011 01:56:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2011/12/08/161733.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/161733.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2011/12/08/161733.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/161733.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/161733.html</trackback:ping><description><![CDATA[<span>1，首先确认你服务器是否配置了VNCSERVER，可以在命令行下敲入以下命令查看： </span><br /><span style="color: rgb(255,0,0)"><span>rpm -qa |grep vnc&nbsp;<br /><span style="color: rgb(255,0,0)"><span>yum isntall&nbsp;vnc-server<br /><br /><br /><span>2 启动VNCSERVER，第一次启动VNCSERVER会提示输入密码，这里分为管理员账户及普通账户，启动方式略有所不同。 </span><br /><span style="color: rgb(255,0,0)"><span>[root@localhost /]# vncserver </span></span><br /><span style="color: rgb(0,0,255)"><span>You will require a password to access your desktops. </span></span><br /><span style="color: rgb(0,0,255)"><span>Password:</span></span><span> </span><span style="color: rgb(255,0,0)"><span>123456</span></span><span> #输入vnc 连接密码 </span><br /><span style="color: rgb(0,0,255)"><span>Verify:</span></span><span> </span><span style="color: rgb(255,0,0)"><span>123456</span></span><span> #确认vnc密码 </span><br /><span style="color: rgb(0,0,255)"><span>xauth: creating new authority file /root/.Xauthority </span><br /><span>New &#8216;localhost.localdomain:1 (root)&#8217; desktop is localhost.localdomain:1 </span><br /><span>Creating default startup script /root/.vnc/xstartup </span><br /><span>Starting applications specified in /root/.vnc/xstartup </span><br /><span>Log file is /root/.vnc/localhost.localdomain:1.log </span><br /><br /><br />3 每个用户都可以启动自己的VNCSERVER远程桌面，同时每个用户可以启动多个VNCSERVER远程桌面，它们用ip加端口号：ip:1、ip:2、ip:3 来标识、区分，使用同一端口会使另外登录的用户自动退出。另，VNCSERVER的大部分配置文件及日志文件都在用户home目录下.vnc目录下。 <br /><span>用户可以自定义启动号码如： </span><br /><span style="color: rgb(255,0,0)"><span>[ceboy@localhost /]$ vncserver :2</span></span><span> #注意:2前面一定要有空格。 </span><br /><span style="color: rgb(0,0,255)"><span>A VNC server is already running as :2</span></span><span> <br /><br /><br />3 配置<font color="#0000ff">gnome桌面</font><br /><span>如果你是gnome桌面，那么你需要修改/root/.vnc/xstartup的配置文件。 </span><br /><span>[root@localhost .vnc]# vi xstartup </span><br /><span>#!/bin/sh </span><br /><span># Uncomment the following two lines for normal desktop: </span><br /><span># unset SESSION_MANAGER</span><span> </span><br /><span># exec /etc/X11/xinit/xinitrc<br /></span><span>[ -x /etc/vnc/xstartup ] &amp;&amp; exec /etc/vnc/xstartup </span><br /><span>[ -r $HOME/.Xresources ] &amp;&amp; xrdb $HOME/.Xresources </span><br /><span>xsetroot -solid grey </span><br /><span>vncconfig -iconic &amp; </span><br /><span>xterm -geometry 80&#215;24+10+10 -ls -title &#8220;$VNCDESKTOP Desktop&#8221; &amp; </span><br /><span style="color: rgb(255,0,0)"><span>gnome-session &amp; </span></span><span style="color: rgb(0,0,255)"><span>#添加这一句是连接时使用gnome 桌面环境</span></span><span> </span><br /><span>#twm &amp; </span><br /><br /><span>设置修改完毕最好是重启一次系统，否则设置不会生效。我采用的方法是杀死VNCSERVER进程再重运行VNCSERVER。 </span><br /><br /><span style="color: rgb(255,0,0)"><span>[root@localhost .vnc]#vncserver -kill :1</span></span><span> #这里你启动vncserver时是什么端口号要对应上。 </span><br /><span style="color: rgb(255,0,0)"><span>[root@localhost .vnc]#vncserver :1</span></span><span> #重启VNCSERVER，注意:1前面一定要有空格。 <br /><br /><span>4，设置用户信息及分辨率。 </span><br /><br /><span>[root@localhost: ~]#vi /etc/sysconfig/vncservers </span><br /><br /><span style="color: rgb(0,0,255)"><span>VNCSERVERS=&#8221;1:root 2:ceboy&#8221; </span></span><span>#此处添加用户，一般只添加一个1:root也就行了。 </span><br /><span style="color: rgb(0,0,255)"><span>VNCSERVERARGS[1]=&#8221;-geometry 800&#215;600 -nolisten tcp -nohttpd -localhost&#8221; <br />-nolisten tcp -nohttpd <br />如果你要透過 Browser 來使用 VNC,請移除這設定.<br />-localhost<br />如果你只允許local(127.0.0.1) 透過 Browser 來連結 VNC.請加入這設定</span><br /><br /><span>另外也可以通过命令行临时修改分辨率及色深，这种方式重启后就会丢失，这里暂时用不到，命令如下： </span><br /><span style="color: rgb(255,0,0)"><span>[root@localhost: ~]#vncserver -geometry 800&#215;600 #设置vncserver的分辨率 </span><br /><span>[root@localhost: ~]#vncserver -depth 16 #设置vncserver的色深</span></span><span> </span><br />置密码<br />
<div class="cnblogs_code"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0,128,0)">#</span><span style="color: rgb(0,128,0)">vncpasswd <br /></span></div><br /></span><br /><span></span><br /><br /><span>5，同一个显示器可以连接多个客户机 </span><br /><span>#vncserver -alwaysshared </span><br /><br /><span></span></span><br /></span><br /></span></span></span></span></span><img src ="http://www.cppblog.com/byc/aggbug/161733.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2011-12-08 09:56 <a href="http://www.cppblog.com/byc/archive/2011/12/08/161733.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>centos  groupinstall </title><link>http://www.cppblog.com/byc/archive/2011/11/26/161009.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Sat, 26 Nov 2011 13:47:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2011/11/26/161009.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/161009.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2011/11/26/161009.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/161009.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/161009.html</trackback:ping><description><![CDATA[<p><span style="font-family: 宋体"><span style="color: black; font-size: 11pt"><span></span></span></span><span style="font-family: 宋体"><span style="color: black; font-size: 11pt">yum groupinstall&nbsp;</span><span style="color: red; font-size: 11pt">"DNS Name Server"</span></span></p>
<p><span style="font-family: 宋体"><span style="color: red; font-size: 11pt"></span><span style="color: black; font-size: 11pt"></span></span><span style="font-family: 宋体"><span style="color: black; font-size: 11pt">yum groupinstall&nbsp;</span><span style="color: red; font-size: 11pt">"Web Server"<br /></span><span style="color: black; font-size: 11pt"></span></span><span style="font-family: 宋体"><span style="color: black; font-size: 11pt">yum groupinstall&nbsp;</span><span style="color: red; font-size: 11pt">"Mail Server"</span></span></p>
<p><span style="font-family: 宋体"><span style="color: red; font-size: 11pt"></span><span style="color: black; font-size: 11pt"></span></span><span style="font-family: 宋体"><span style="color: black; font-size: 11pt">yum groupinstall&nbsp;</span><span style="color: red; font-size: 11pt">"MySQL Database"</span><span style="color: black; font-size: 11pt"></span></span> </p>
<p><span style="font-family: Times New Roman"><span style="color: black; font-size: 11pt">yum groupinstall&nbsp;</span><span style="color: red; font-size: 11pt">"Development Tools"</span><span style="color: black; font-size: 11pt">&nbsp;<br /><font color="#ff6600">yum groupinstall "GNOME Desktop Environment"<br /></font></span></span></p>
<p><span style="color: black; font-size: 11pt"><span style="font-family: Times New Roman">yum groupinstall "X Window System"<br />yum groupinstall "KDE (K Desktop Environment)"<br /><br />yum groupremove<br /><br /><font color="#464646" size="2" face="Verdana">rpm -e *</font><br /><font color="#464646" size="2" face="Verdana">"error: %preun(*) scriptlet failed, exit status 1"<br />解决方法为加 --noscripts 标记来删除RPM。 --noscripts 相当于 --nopre --nopost --nopreun --nopostun。</font><br /><br /></span></span></p><img src ="http://www.cppblog.com/byc/aggbug/161009.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2011-11-26 21:47 <a href="http://www.cppblog.com/byc/archive/2011/11/26/161009.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>grub4dos menu.lst</title><link>http://www.cppblog.com/byc/archive/2011/11/26/160995.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Sat, 26 Nov 2011 05:00:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2011/11/26/160995.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/160995.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2011/11/26/160995.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/160995.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/160995.html</trackback:ping><description><![CDATA[<p><br />title centos57-gui<br />find --set-root /centos57/vmlinuz<br />kernel /centos57/vmlinuz<br />initrd /centos57/initrd.img </p>
<p>title centos57-text<br />find --set-root /centos57/vmlinuz<br />kernel /centos57/vmlinuz text<br />initrd /centos57/initrd.img <br /><br />title pbr<br />rootnoverify (hd0,3)<br />chainloader +1 <br /><br />title syslinux<br />find --set-root /syslinux.BIN<br />chainloader /syslinux.BIN<br /><br /><br />--ks<br /></p>
<p>#Use CDROM installation media<br />#cdrom<br />harddrive&nbsp; --partition=/dev/hd3&nbsp; --dir=/</p>
<p>#System bootloader configuration<br />bootloader --location=none <br />bootloader --location=mbr --driveorder=sda,sdb<br /><br />title elastix<br />find --set-root /menu.lst<br />kernel /elastix/vmlinuz ks=hd:sdb4:/elastix/ks_default.cfg ramdisk_size=8192<br />initrd /elastix/initrd.img<br /><br />title centos6livecd<br />kernel /LiveOS/vmlinuz0 root=live:CDLABEL=GRUB rootfstype=auto ro liveimg quiet nodiskmount nolvmmount&nbsp; rhgb vga=791 rd.luks=0 rd.md=0 rd.dm=0 <br />initrd /LiveOS/initrd0.img <br /><br /><br /><br /><br /></p><img src ="http://www.cppblog.com/byc/aggbug/160995.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2011-11-26 13:00 <a href="http://www.cppblog.com/byc/archive/2011/11/26/160995.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>VNC(Virtual Network Computing) </title><link>http://www.cppblog.com/byc/archive/2011/11/24/160929.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Thu, 24 Nov 2011 12:47:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2011/11/24/160929.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/160929.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2011/11/24/160929.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/160929.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/160929.html</trackback:ping><description><![CDATA[VNC(Virtual Network Computing) <br /><a href="http://blog.yam.com/iwinblue/article/14961544">http://blog.yam.com/iwinblue/article/14961544</a><br />Step 0:簡介<br />Step 1:檢查你的系統是否有提供 VNC 工具<br />Step 2:VNC的設定檔<br />Step 3:VNC 的 password<br />Step 4:檢查 VNC 服務是否啟動 <br />Step 5:指定用哪個 XWindow <br />Step 6:VNC Viewer<br />Step 7:VNC via Browser<br /><br />Step 0:簡介<br />VNC(Virtual Network Computing) 是可以遠端遙控 Linux 桌面的服務.<br /><br />Step 1:檢查你的系統是否有提供 VNC 工具<br />[root@unsvr root] # rpm -aq | grep -i vnc<br />vnc-server-version<br />vnc-version<br /><br />如果沒有關係可以到 VNC 的官方網站下載 http://www.realvnc.com <br /><br />Step 2:VNC的設定檔<br />VNC的設定檔存放在 /etc/sysconfig/vncservers<br />[root@unsvr root] # vi /etc/sysconfig/vncservers<br />--------------------------------------------------------<br />VNCSERVERS="2:root"<br />VNCSERVERARGS[2]="-genometry 800*600 -nolisten tcp -nohttpd -localhost"<br />--------------------------------------------------------<br /><br />VNCSERVERS="2:root"<br />上面意思是說,我們要啟動一個 VNC 在 port 5900+2 即 5902 的意思.使用者為 root.<br /><br />VNCSERVERARGS[2]="-genometry 800*600 -nolisten tcp -nohttpd -localhost"<br />-genometry 800*600 <br />x-windows的解析度為 800*600<br />-nolisten tcp -nohttpd <br />如果你要透過 Browser 來使用 VNC,請移除這設定.<br />-localhost<br />如果你只允許local(127.0.0.1) 透過 Browser 來連結 VNC.請加入這設定<br /><br /><br />Step 3: VNC 的 password<br />基本上 VNC 的 password 無法使用 /etc/passwd,所以要自己設定.<br />[root@unsvr root] # vncpasswd<br />Password:<br />Verify:<br />這是為 root 使用者來設定.如果要設定其他使用者請 #su - user 轉換後在設定.<br /><br />Step 4:檢查 VNC 服務是否啟動 <br />[root@unsvr ~]# service vncserver start <br />如果要讓每次開機時都能啟動 vnc server,請鍵入下面指令.<br />[root@unsvr ~]# chkconfig vncserver on<br /><br />[root@unsvr root]# netstat -tulnp<br />Active Internet connections (only servers)<br />Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name<br />tcp 0 0 0.0.0.0:5802 0.0.0.0:* LISTEN 15287/Xvnc<br />tcp 0 0 0.0.0.0:5902 0.0.0.0:* LISTEN 15287/Xvnc<br />tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 15019/X<br /><br /><br />說明:<br />port 5802 是給 Web Browser 使用.<br />port 5902 是給 VNCViewer 使用.<br /><br />Step 5:指定用哪個 XWindow <br />指定用哪個 XWindow 是設定在 $HOME/.vnc/xstartup 裡 <br />---------------------------------------------------------------------------<br />#!/bin/sh<br />[ -x /etc/vnc/xstartup ] &amp;&amp; exec /etc/vnc/xstartup<br />[ -r $HOME/.Xresources ] &amp;&amp; xrdb $HOME/.Xresources<br />xsetroot -solid grey<br />vncconfig -iconic &amp;<br />xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &amp;<br />twm &amp;<br />---------------------------------------------------------------------------<br />預設的 XWindow為 twm如果有需要其他的請設定成下面的 XWindow.<br />gnome-session &amp; (==&gt; for GNOME)<br />startkde &amp; (==&gt; for KDE) <br /><br /><br />Step 6:VNC Viewer<br />在 Linux 下可以直接使用<br />[root@unsvr root]#vncviewer<br /><br />不過 Windows 並沒有安裝,所以需要至 http://www.realvnc.com 下載.<br /><br />Step 7:VNC via Browser<br />Windows:<br />不想下載一堆有的沒有的,可以考慮使用 web browser的方式來連結.不過前提是需要加裝 Java Runtime Environment (JRE) http://www.java.com<br />在 Windows 底下開 browser,輸入網址,再加上 port number : 5802 就可以透過 Web 方式連結.<br /><br />Linux:<br />安裝 java runtime environment <br />你可以在 java 的安裝目錄下 /usr/jave/plugin/i386/ns7/ 找到 libjavaplugin_oji.so 檔 <br />在 ~/.mozilla/plugins/ 目錄裡做一個符號連結到 libjavaplugin_oji.so，不可以直接複製。 <br /><br />[root@unsvr root]# cd ~/.mozilla/plugins/ <br />[root@unsvr root]# ln -s /usr/java/jre1.5.0_04/plugin/i386/ns7/libjavaplugin_oji.so <br /><br />可以參考 Mozilla 的網站<br />http://wiki.moztw.org/index.php/Plugins_%E7%9A%84%E5%AE%89%E8%A3%9D<br /><br />另一:<br />新一篇: linux 开机启动 oracle<br /><br /><br />下载地址：http://www.realvnc.com/download.html <br /><br />参考资料:<br /><br />http://liy.slat.org/study/tips/vnc.html<br /><br />http://www.realvnc.com<br /><br />&lt; 第一方法&gt;<br /><br />遠端控制一直是個理想的工作目標，你不但可以在本機使用電腦，在離開之後，還可以使用網路使用遠端的功能來繼續你未完的工作。<br />現在市面上最流行的 Symantec PcAnywhere 也是這種功能，但是這是要花 錢的，而且還蠻貴的，當然，它還包含了一些其它的進階功能。然而，如果你只 需要單純只要可以遠端控制你的電腦的話，當然就不用如此殺雞用牛刀了，VNC (Virtual Network Computing) 正是我們所需要的軟體，他不但是完全 Free 的，你可以拿到他的可執行檔，或是如果你的興趣的話，也可以找到他的 Source 供你研究，最重要的一點，他的檔案很小，只需要一片磁片就夠了。<br /><br />這篇文章在 RedHat 8 、RedHat 9 和 Fedora 1 上測過，可以正常執行。<br /><br />1. 首先，我們們要先下載 VNC 來安裝，假設我們現在裝在自己的家目錄裡 的 VNC/vncgo 目錄裡。<br /><br /># cd ~<br /># wget http://www.realvnc.com/dist/vnc-3.3.7-x86_linux.tar.gz<br /># tar -zxvf vnc-3.3.7-x86_linux.tar.gz<br /># mv vnc-3.3.7-x86_linux vnc<br /># cd vnc<br /># mkdir -p ~/VNC/vncgo<br /># ./vncinstall ~/VNC/vncgo <br /><br /><br />2. 接著，我們就要設定環境變數，因為 VNC 在啟動的時候，會去找相關的檔案，所以一定要先指定 PATH 的變數。如果你是 root，你可以把下面的三行指令寫到 /etc/profile 裡面。<br /><br /># PATH="$PATH":~/VNC/vncgo <br /># export $PATH <br /># echo $PATH <br />/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/UserHomeDir/VNC/vncgo <br /><br />3. 以上就安裝完成 VNC Server ，現在就開始來玩玩吧！先開啟第一次，讓他<br />產生必要的檔案，如果是第一次執行，就會要你輸入登入的密碼才行！<br /><br /># vncserver <br /><br />4. 然後關閉 VNC <br /><br /># vncserver -kill :1 <br /><br />5. 修改 X 的設定, 這樣你的遠端桌面才會美美的! <br /><br /># cd ~/.vnc/xstartup <br /># vi xstartup <br />________________________________________________________________ <br />#!/bin/sh <br />#下面都註解起來<br />#輸入下面這一行<br />/etc/X11/xinit/Xclients <br />#[ -r $HOME/.Xresources ] &amp;&amp; xrdb $HOME/.Xresources <br />#xsetroot -solid grey <br />#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &amp; <br />#twm &amp; <br />:______________________________________________________________<br /><br /><br /><br />6. 最後, 就開始 VNC 吧<br /><br /># vncserver <br /><br />7. 遠端控制<br />執行 vncviewer ，使用 VNC Viewer 來看，輸入IP:num（IP 是主機的位置，num 是 vnc 的啟動項目，開啟 vnc 服務時會有提示）<br /><br />&lt; 第二种方法&gt;<br /><br />(1)tar -xvf vnc-4.0-x86.tar<br /><br />(2)cd vnc-4.0-x86<br /><br />(3) ./vncinstall /usr/local/bin<br /><br />(4) mkdir -P /usr/local/vnc/classes<br /><br />(5) cp java/* /usr/local/vnc/classes<br /><br />(6) vncserver 启动，可以正常运行了 可以通过 netstat -an | grep 01查看端口是否正常启动，如果要看到桌面可按如下方法：<br /><br />vi ~/.vnc/xstartup文件中加入如下两句：<br /><br />unset SESSION_MANAGER<br /><br />exec /etc/X11/xinit/xinitrc 如有/etc/X11/xinit/Xclients 此句注掉<br /><br />另二:<br /><br />Vnc Server 4.1.2 建置on CentOS 5<br />adj 發表於: 2007-11-29 21:57 來源: ADJ網路控股集團 <br /><br />Check what's installed<br />First check if you already have them installed on your system, open a terminal and type:<br />CODE:<br /><br />$ rpm -qa|grep vnc<br />vnc-server-4.1.1-36<br />vnc-4.1.1-36<br />If you get an output something like this then you're all ready, if not you need to install them via yum.<br /><br />Add a user(s)<br />Next we need to add at least 1 VNC user, open the file /etc/sysconfig/vncservers as root and add the information shown:<br />CODE:<br /><br />$ vi /etc/sysconfig/vncservers<br /><br /># The VNCSERVERS variable is a list of display:user pairs.<br />#<br /># Uncomment the lines below to start a VNC server on display :2<br /># as my 'myusername' (adjust this to your own). You will also<br /># need to set a VNC password; run 'man vncpasswd' to see how<br /># to do that.<br />#<br /># DO NOT RUN THIS SERVICE if your local area network is<br /># untrusted! For a secure way of using VNC, see<br /># <url :http: www.uk.research.att.com archive vnc sshvnc.html>.<br /><br /># Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.<br /><br /># Use "-nohttpd" to prevent web-based VNC clients connecting.<br /><br /># Use "-localhost" to prevent remote VNC clients connecting except when<br /># doing so through a secure tunnel. See the "-via" option in the<br /># `man vncviewer' manual page.<br /><br />VNCSERVERS="1:bobpeers"<br />VNCSERVERARGS[1]="-geometry 1024x768 -depth 16"<br />The important part is the VNCSERVERS="1:bobpeers", this sets up a users for the vnc server, you can add as many as you like here. The VNCSERVERARGS[1] line refers to the arguments for user 1, in this case the only user. Geometry sets the size and depth sets the colour depth, you can adjust these to suit your preferences but in my case the client machine has a resolution of 1024x768 and the depth 16 makes the connection a bit faster since the less information that needs to be sent the more responsive the session will feel.<br /><br />Knowing which port to use<br />It's also important to note the session number user as this will tell us which port vncserver will listen on. Remember the Gnome Remote Desktop asked us to use computername:0 as the connection string, the number needs to be added to 5900 to get the listening port. In this case we need to use port 5901 since we are using session 1. In the same way we could use any number, for example:<br />CODE:<br /><br />VNCSERVERS="2000:bobpeers"<br />VNCSERVERARGS[2000]="-geometry 1024x768 -depth 16"<br />In this case we need to use port 5900+2000 so port 7900.<br /><br />Setting a password<br />To add some security we need to add a password that must be given before a connection can be established, open a terminal and type:<br />CODE:<br /><br />$ vncpasswd<br />Password:<br />Verify:<br />This creates a hidden folder called .vnc in your home folder containing the password file.<br /><br />Starting the server and startup options<br />To start the server we type the command 'vncserver' and the session you wish to start (if you have set up more than 1 entry in the /etc/sysconfig/vncservers file:<br />CODE:<br /><br />$ vncserver :1<br />Starting VNC server: 1:bobpeers<br />New 'linux.bobpeers:1 (bobpeers)' desktop is linux.bobpeers:1<br /><br />Starting applications specified in /home/bobuser/.vnc/xstartup<br />Log file is /home/bobuser/.vnc/linux.bobpeers:1.log<br /><br />[ OK ]<br />Now the server is started and a user could connect, however they will get a plain grey desktop by default as the connection will not cause a new session of X to start by default, to fix this we need to edit the startup script in the .vnc folder in your home directory.<br />CODE:<br /><br />$ vi ~/.vnc/xstartup<br /><br />#!/bin/sh<br /><br /># Uncomment the following two lines for normal desktop:<br />unset SESSION_MANAGER<br />exec /etc/X11/xinit/xinitrc<br /><br />[ -x /etc/vnc/xstartup ] &amp;&amp; exec /etc/vnc/xstartup<br />[ -r $HOME/.Xresources ] &amp;&amp; xrdb $HOME/.Xresources<br />xsetroot -solid grey<br />vncconfig -iconic &amp;<br />xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &amp;<br />twm &amp;<br />As the file says make sure the two lines at the top are uncommented by removing the leading # sign. Next we need to restart vncserver to pick up the changed we just made. To restart the vncserver we need to kill the process and start a new one as root:<br />CODE:<br /><br />$ vncserver -kill :1<br />Killing Xvnc process ID 13728<br /><br />$ vncserver :1<br />Starting VNC server: 1:bobpeers<br />New 'linux.bobpeers:1 (bobpeers)' desktop is linux.bobpeers:1<br /><br />Starting applications specified in /home/bobuser/.vnc/xstartup<br />Log file is /home/bobuser/.vnc/linux.bobpeers:1.log<br /><br />[ OK ]<br />PS: 測試時發現 $Home/.vnc/xstartup 需要有 +x 的權限...要不然登入遠端主機時會看不到GDM的畫面...可能要注意一下<br /><br /><br />相關文章來至:<br />http://bobpeers.com/linux/vnc.php<br /><br />另二:<br />Configuring the VNC server/viewer in Linux.<br />Page contents<br />Overview of VNC <br />Gnome Remote Desktop (vino) <br />vncserver and viewer <br />Allowing remote connections <br />Overview of VNC<br />VNC, or Virtual Networked Computing, is a way of controlling a remote computer just as though you are sitting in front of it. In the Windows world it is also known as remote desktop but it's normally referred to as VNC in the Linux world. All that happens is that you connect using a VNC client to a remote computer running the VNC server, then an image of the remote desktop is transmitted to your local computer and you can see and control the desktop just as though you are there since all keyboard and mouse commands are sent from your client machine to the server.<br /><br />Gnome Remote Desktop<br />If you are running the Gnome desktop on Fedora Core then you already have a VNC server built in. Click on the Fedora icon &gt; Desktop &gt; Preferences &gt; Remote Desktop to open the dialog shown.<br /><br /><br /><br />The screen is pretty self explanatory but basically when set up this way another computer can connect to your computer using the command listed on the dialog. There are a few important things to note, you must open port 5900 on the server for this to work since by default the Gnome Remote Desktop (called vino) listens on this port, also the person connecting will see the same session that you are currently logged in as. This means that any programs you have open will also be visible to the client, of course this is very useful if you are helping someone remotely.<br /><br />A more flexible way to use VNC is to install the VNC server and client software via yum, these are rpm's based on RealVNC.<br /><br />vncserver and vncviewer<br />Check what's installed<br />First check if you already have them installed on your system, open a terminal and type:<br /><br />$ rpm -qa|grep vnc<br />vnc-server-4.1.1-36<br />vnc-4.1.1-36<br /><br />If you get an output something like this then you're all ready, if not you need to install them via yum.<br /><br />Add a user(s)<br />Next we need to add at least 1 VNC user, open the file /etc/sysconfig/vncservers as root and add the information shown:<br /><br />$ vi /etc/sysconfig/vncservers<br /><br /># The VNCSERVERS variable is a list of display:user pairs.<br />#<br /># Uncomment the lines below to start a VNC server on display :2<br /># as my 'myusername' (adjust this to your own). You will also<br /># need to set a VNC password; run 'man vncpasswd' to see how<br /># to do that.<br />#<br /># DO NOT RUN THIS SERVICE if your local area network is<br /># untrusted! For a secure way of using VNC, see<br /># </url><url :http: www.uk.research.att.com archive vnc sshvnc.html>.<br /><br /># Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.<br /><br /># Use "-nohttpd" to prevent web-based VNC clients connecting.<br /><br /># Use "-localhost" to prevent remote VNC clients connecting except when<br /># doing so through a secure tunnel. See the "-via" option in the<br /># `man vncviewer' manual page.<br /><br />VNCSERVERS="1:bobpeers"<br />VNCSERVERARGS[1]="-geometry 1024x768 -depth 16"<br /><br />The important part is the VNCSERVERS="1:bobpeers", this sets up a users for the vnc server, you can add as many as you like here. The VNCSERVERARGS[1] line refers to the arguments for user 1, in this case the only user. Geometry sets the size and depth sets the colour depth, you can adjust these to suit your preferences but in my case the client machine has a resolution of 1024x768 and the depth 16 makes the connection a bit faster since the less information that needs to be sent the more responsive the session will feel.<br /><br />Knowing which port to use<br />It's also important to note the session number user as this will tell us which port vncserver will listen on. Remember the Gnome Remote Desktop asked us to use computername:0 as the connection string, the number needs to be added to 5900 to get the listening port. In this case we need to use port 5901 since we are using session 1. In the same way we could use any number, for example:<br /><br />VNCSERVERS="2000:bobpeers"<br />VNCSERVERARGS[2000]="-geometry 1024x768 -depth 16"<br /><br />In this case we need to use port 5900+2000 so port 7900.<br /><br />Setting a password<br />To add some security we need to add a password that must be given before a connection can be established, open a terminal and type:<br /><br />$ vncpasswd<br />Password:<br />Verify:<br /><br />This creates a hidden folder called .vnc in your home folder containing the password file.<br /><br />Starting the server and startup options<br />To start the server we type the command 'vncserver' and the session you wish to start (if you have set up more than 1 entry in the /etc/sysconfig/vncservers file:<br /><br />$ vncserver :1<br />Starting VNC server: 1:bobpeers<br />New 'linux.bobpeers:1 (bobpeers)' desktop is linux.bobpeers:1<br /><br />Starting applications specified in /home/bobuser/.vnc/xstartup<br />Log file is /home/bobuser/.vnc/linux.bobpeers:1.log<br /><br />[ OK ]<br /><br />Now the server is started and a user could connect, however they will get a plain grey desktop by default as the connection will not cause a new session of X to start by default, to fix this we need to edit the startup script in the .vnc folder in your home directory.<br /><br />$ vi ~/.vnc/xstartup<br /><br />#!/bin/sh<br /><br /># Uncomment the following two lines for normal desktop:<br />unset SESSION_MANAGER<br />exec /etc/X11/xinit/xinitrc<br /><br />[ -x /etc/vnc/xstartup ] &amp;&amp; exec /etc/vnc/xstartup<br />[ -r $HOME/.Xresources ] &amp;&amp; xrdb $HOME/.Xresources<br />xsetroot -solid grey<br />vncconfig -iconic &amp;<br />xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &amp;<br />twm &amp;<br /><br />As the file says make sure the two lines at the top are uncommented by removing the leading # sign. Next we need to restart vncserver to pick up the changed we just made. To restart the vncserver we need to kill the process and start a new one as root:<br /><br />$ vncserver -kill :1<br />Killing Xvnc process ID 13728<br /><br />$ vncserver :1<br />Starting VNC server: 1:bobpeers<br />New 'linux.bobpeers:1 (bobpeers)' desktop is linux.bobpeers:1<br /><br />Starting applications specified in /home/bobuser/.vnc/xstartup<br />Log file is /home/bobuser/.vnc/linux.bobpeers:1.log<br /><br />[ OK ]<br /><br />Using vncviewer<br />To start the viewer type:<br /><br />$ vncviewer localhost:5901<br />This open a dialog as shown for us to enter our password we set earlier, enter the password and you should now see a copy of your desktop. Note that unlike the Gnome Remote Desktop this has started a new session of X so any applications open on the host machine are not visible to the new session, it's basically a whole new logon running at the same time.<br /><br />If you just type 'vncviewer' at the prompt then you will asked for the host to connect to, then you can type localhost:5901 for example. Remember to use the correct port number when connecting, if you set your VNCSERVERS to be 2000:myname then you would need to connect on localhost:7900.<br /><br /><br /><br />Stopping the vncserver<br />There are two ways to stop the server, either as root:<br /><br />$ /sbin/service vncserver stop<br />Shutting down VNC server: 1:bobpeers [ OK ]<br /><br />or you can explicitly kill a particular session without being root:<br /><br />$ vncserver -kill :1<br />Killing Xvnc process ID 13728<br /><br />Just replace the 1 with the vnc session you wish to stop.<br /><br />Allowing remote connections<br />So far we have only connected to our own computer using localhost so we have not needed to open any ports in the firewall, however if we want to allow remote connection we will have to do the following. This can either be done from the command line or using system-config-security if you have it installed.<br /><br />Using system-config-security to opens ports.<br />First we'll look into the GUI system-config-security. Go to the Fedora start menu &gt; Desktop &gt; Administration &gt; Security Level and Firewall, then type your root password when prompted to see this:<br /><br /><br /><br />Click on other ports at the bottom and enter the port you wish to open, 5901 in my case, select tcp, then click OK and OK again to save your settings. That's all there is to it, but remember to close the port again when you are finished.<br /><br /><br /><br />Editing the iptables manually to opens ports.<br />To do the same from the command line add the line in bold to the file /etc/sysconfig/iptables while logged in as root:<br /><br /># Firewall configuration written by system-config-securitylevel<br /># Manual customization of this file is not recommended.<br />*filter<br />:INPUT ACCEPT [0:0]<br />:FORWARD ACCEPT [0:0]<br />:OUTPUT ACCEPT [0:0]<br />:RH-Firewall-1-INPUT - [0:0]<br />-A INPUT -j RH-Firewall-1-INPUT<br />-A FORWARD -j RH-Firewall-1-INPUT<br />-A RH-Firewall-1-INPUT -i lo -j ACCEPT<br />-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT<br />-A RH-Firewall-1-INPUT -p 50 -j ACCEPT<br />-A RH-Firewall-1-INPUT -p 51 -j ACCEPT<br />-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT<br />-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT<br />-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT<br />-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT<br />-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT<br />-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited<br />COMMIT<br /><br />Finally we need to restart the iptables service to reload the changes.<br /><br />$ sudo /sbin/service iptables restart<br />Flushing firewall rules: [ OK ]<br />Setting chains to policy ACCEPT: filter [ OK ]<br />Unloading iptables modules: [ OK ]<br />Applying iptables firewall rules: [ OK ]<br />Loading additional iptables modules: ip_conntrack_netbios_n[ OK ]<br /><br />Connecting from the remote machine.<br />Now from the remote client computer start up vncviewer but this time use the IP address of the host computer followed by the port number. So on my home network this might be:<br /><br />$ vncviewer 192.168.1.105:5901<br /><br /><br /><img src ="http://www.cppblog.com/byc/aggbug/160929.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2011-11-24 20:47 <a href="http://www.cppblog.com/byc/archive/2011/11/24/160929.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ubuntu DVD设置本地更新源</title><link>http://www.cppblog.com/byc/archive/2011/08/18/153713.html</link><dc:creator>八叶草</dc:creator><author>八叶草</author><pubDate>Thu, 18 Aug 2011 03:16:00 GMT</pubDate><guid>http://www.cppblog.com/byc/archive/2011/08/18/153713.html</guid><wfw:comment>http://www.cppblog.com/byc/comments/153713.html</wfw:comment><comments>http://www.cppblog.com/byc/archive/2011/08/18/153713.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/byc/comments/commentRss/153713.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/byc/services/trackbacks/153713.html</trackback:ping><description><![CDATA[ubuntu DVD设置本地更新源<br />1 编辑sources.list<br />执行：sudo gedit /etc/apt/sources.list<br />备份之后全部删除写入如下一行！<br />deb "<a href="file:///media/Ubuntu">file:///media/Ubuntu</a> 11.04 i38" natty main restricted<br />3 更新一下<br />执行：sudo apt-get update<br /><img src ="http://www.cppblog.com/byc/aggbug/153713.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/byc/" target="_blank">八叶草</a> 2011-08-18 11:16 <a href="http://www.cppblog.com/byc/archive/2011/08/18/153713.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>