??xml version="1.0" encoding="utf-8" standalone="yes"?>中文无码亚洲精品字幕,日韩亚洲综合精品国产,亚洲高清国产拍精品26Uhttp://www.tkk7.com/badboyryan/category/14609.html<hr color=red> <marquee direction=left bgcolor= aaaaee behavior=scroll scrollamount=2 onmouseover="this.stop();" onmouseout="this.start();" width=500> <font color=green> 在恰当的旉、地点以恰当的方式表辄恰当的h...</font>&nbsp;&nbsp;<font color=blue>阅读的时候请注意分类Q佛(jng)曰我日里面是谈笑文章Q其他是各个分类的文章,U极的热情投入到写博的队伍中来,支持blogjava做大做强Q向dudu站长致敬>> > <a href=http://t.qq.com/badboyryan>我的微博敬请收听</a> </font> </marquee> <hr color=blue>zh-cnFri, 11 Dec 2015 08:05:45 GMTFri, 11 Dec 2015 08:05:45 GMT60AIX修改旉http://www.tkk7.com/badboyryan/archive/2015/12/11/428607.html坏男?/dc:creator>坏男?/author>Thu, 10 Dec 2015 21:18:00 GMThttp://www.tkk7.com/badboyryan/archive/2015/12/11/428607.htmlhttp://www.tkk7.com/badboyryan/comments/428607.htmlhttp://www.tkk7.com/badboyryan/archive/2015/12/11/428607.html#Feedback1http://www.tkk7.com/badboyryan/comments/commentRss/428607.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/428607.htmllinux下用date -s "YYYYmmdd HH:MM:SS"

AIX  date -n mmddHHMMYYQmm表示月分Qdd表示日期QHH表示时QMM表示分钟QYY表示q䆾?/p>




]]>
VMware 虚拟机状态已挂v无法恢复解决Ҏ(gu)http://www.tkk7.com/badboyryan/archive/2011/02/09/343966.html坏男?/dc:creator>坏男?/author>Wed, 09 Feb 2011 03:09:00 GMThttp://www.tkk7.com/badboyryan/archive/2011/02/09/343966.htmlhttp://www.tkk7.com/badboyryan/comments/343966.htmlhttp://www.tkk7.com/badboyryan/archive/2011/02/09/343966.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/343966.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/343966.html 2、删除该文gQ重新启动虚拟机okQ?

]]>
linuxpȝ关闭防火?/title><link>http://www.tkk7.com/badboyryan/archive/2010/12/03/339753.html</link><dc:creator>坏男?/dc:creator><author>坏男?/author><pubDate>Fri, 03 Dec 2010 13:51:00 GMT</pubDate><guid>http://www.tkk7.com/badboyryan/archive/2010/12/03/339753.html</guid><wfw:comment>http://www.tkk7.com/badboyryan/comments/339753.html</wfw:comment><comments>http://www.tkk7.com/badboyryan/archive/2010/12/03/339753.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/badboyryan/comments/commentRss/339753.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/badboyryan/services/trackbacks/339753.html</trackback:ping><description><![CDATA[<p>1Q防火墙x,怹性生效,重启后不?x)复?/p> <p>开启:(x) chkconfig iptables on</p> <p>关闭Q?chkconfig iptables off</p> <p>2Q防火墙x,x生效Q重启后复原</p> <p>开启:(x) service iptables start</p> <p>关闭Q?service iptables stop</p> <p> 打开一个端?2</p> iptables -A INPUT -p tcp -sport 22 -j ACCEPT <br /> iptables -A INPUT -p tcp -dport 22 -j ACCEPT. <img src ="http://www.tkk7.com/badboyryan/aggbug/339753.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/badboyryan/" target="_blank">坏男?/a> 2010-12-03 21:51 <a href="http://www.tkk7.com/badboyryan/archive/2010/12/03/339753.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>dmysql出现/var/lib/mysql/mysql.sock不存?/title><link>http://www.tkk7.com/badboyryan/archive/2010/06/10/323219.html</link><dc:creator>坏男?/dc:creator><author>坏男?/author><pubDate>Thu, 10 Jun 2010 04:58:00 GMT</pubDate><guid>http://www.tkk7.com/badboyryan/archive/2010/06/10/323219.html</guid><wfw:comment>http://www.tkk7.com/badboyryan/comments/323219.html</wfw:comment><comments>http://www.tkk7.com/badboyryan/archive/2010/06/10/323219.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/badboyryan/comments/commentRss/323219.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/badboyryan/services/trackbacks/323219.html</trackback:ping><description><![CDATA[  <p>问题描述Q?span lang="EN-US"><br /> 1.mysql</span>安装完成后,使用<span lang="EN-US"><br /> service mysqld restart<br /> </span>L出现<span lang="EN-US">stop mysqld service </span>p|?span lang="EN-US"><br /> 2.</span>使用<span lang="EN-US">mysql -uroot -p</span>d出现找不?span lang="EN-US"> /var/lib/mysql/mysql.sock</span>问题?span lang="EN-US"><br /> 3.</span>使用<span lang="EN-US">service mysqld status</span>出现<span lang="EN-US"> mysql dead but subsys locked<br /> </span>解决Ҏ(gu)Q?span lang="EN-US"><br /> </span>大多?span lang="EN-US">mysql</span>都是<span lang="EN-US">rpm</span>方式安装的。它?x)自动寻?span lang="EN-US">/var/lib/mysql/mysql.sock</span>q个文g?span lang="EN-US"><br /> 1.</span>首先?span lang="EN-US">mysql.sock</span>的位|?span lang="EN-US"><br /> </span>通过<span lang="EN-US">/etc/my.cnf</span>中的<span lang="EN-US">socket</span>的字Dc(din)?span lang="EN-US"><br /> </span>如果<span lang="EN-US">socket</span>如下所C:(x)</p> <p><span lang="EN-US">socket=/tmp/mysql.sock</span></p> <p><span lang="EN-US">2.</span>?span lang="EN-US">mysql.sock</span>增加软连接(相当?span lang="EN-US">windows</span>中的快捷方式Q。比如实际的<span lang="EN-US">mysql.sock</span>?span lang="EN-US">/tmp/</span>下?span lang="EN-US"><br /> </span>则运行如下命令?/p> <p><span lang="EN-US">ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock</span></p> <p><span lang="EN-US">3.</span>如果上述两种Ҏ(gu)都不生效。那么?span lang="EN-US"><br /> 3.1 service mysqld restart<br /> 3.2 service mysqld status<br /> </span>如果出现<span lang="EN-US"> mysql dead but subsys locked</span></p> <p>我的<span lang="EN-US">rhel5.4</span>执行?span lang="EN-US">3.1</span>以后?span lang="EN-US">ok</span>?/p> <p>然后执行<span lang="EN-US">mysqladmin –u root password scf</span></p> <span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">密码Ҏ(gu)</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">scf</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">?/span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">ok<br /> 4.</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">Ҏ(gu)</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体"> 1<br /> 4.1 service mysqld stop (</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">停止服务</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">)<br /> 4.2 rm -fr /var/lib/mysql/* (</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">删除</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">/var/lib/mysql</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">下的所有文?/span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">)<br /> 4.3 rm /var/lock/subsys/mysqld(</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">删除锁定文g</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">)<br /> 4.4 killall mysqld (</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">杀L?/span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">mysqld</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">q程</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">) <br /> 4.5 service mysql start (</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">启动</span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">mysql</span><span style="font-size: 10.5pt; font-family: 宋体; mso-bidi-font-size: 12.0pt; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA">服务?/span><span lang="EN-US" style="font-size: 10.5pt; font-family: 'Times New Roman'; mso-bidi-font-size: 12.0pt; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-fareast-font-family: 宋体">)</span> <img src ="http://www.tkk7.com/badboyryan/aggbug/323219.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/badboyryan/" target="_blank">坏男?/a> 2010-06-10 12:58 <a href="http://www.tkk7.com/badboyryan/archive/2010/06/10/323219.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何解决fedora 13中root用户不能d的问?/title><link>http://www.tkk7.com/badboyryan/archive/2010/06/09/323134.html</link><dc:creator>坏男?/dc:creator><author>坏男?/author><pubDate>Wed, 09 Jun 2010 03:34:00 GMT</pubDate><guid>http://www.tkk7.com/badboyryan/archive/2010/06/09/323134.html</guid><wfw:comment>http://www.tkk7.com/badboyryan/comments/323134.html</wfw:comment><comments>http://www.tkk7.com/badboyryan/archive/2010/06/09/323134.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/badboyryan/comments/commentRss/323134.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/badboyryan/services/trackbacks/323134.html</trackback:ping><description><![CDATA[先用普通用L(fng)陆,打开pȝ工具-l端<br /> 切换到root用户<br /> 输入? ?    gedit      /etc/pam.d/gdm&<br /> 在文本编辑器中注释掉"auth required pam_succeed_if.so user != root quiet"<br /> 保存后l输入命?   gedit       /etc/pam.d/gdm-password&<br /> 同样地注释掉"auth required pam_succeed_if.so user != root quiet"q一行?br /> 保存后退?br /> 现在p使用rootd? <img src ="http://www.tkk7.com/badboyryan/aggbug/323134.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/badboyryan/" target="_blank">坏男?/a> 2010-06-09 11:34 <a href="http://www.tkk7.com/badboyryan/archive/2010/06/09/323134.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>tar.bz2如何解压http://www.tkk7.com/badboyryan/archive/2010/06/09/323119.html坏男?/dc:creator>坏男?/author>Wed, 09 Jun 2010 01:37:00 GMThttp://www.tkk7.com/badboyryan/archive/2010/06/09/323119.htmlhttp://www.tkk7.com/badboyryan/comments/323119.htmlhttp://www.tkk7.com/badboyryan/archive/2010/06/09/323119.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/323119.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/323119.html 2. tar -xvf XXX.tar



]]>
linux下面一句话把一个文件的 写字母全部替换成大?/title><link>http://www.tkk7.com/badboyryan/archive/2010/01/06/308452.html</link><dc:creator>坏男?/dc:creator><author>坏男?/author><pubDate>Wed, 06 Jan 2010 07:59:00 GMT</pubDate><guid>http://www.tkk7.com/badboyryan/archive/2010/01/06/308452.html</guid><wfw:comment>http://www.tkk7.com/badboyryan/comments/308452.html</wfw:comment><comments>http://www.tkk7.com/badboyryan/archive/2010/01/06/308452.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/badboyryan/comments/commentRss/308452.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/badboyryan/services/trackbacks/308452.html</trackback:ping><description><![CDATA[tr "[:lower:]" "[:upper:]" <infile   >>outfile<br /> <br /> 把infile里面的小写字母全部变成大写存入outfile..... <img src ="http://www.tkk7.com/badboyryan/aggbug/308452.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/badboyryan/" target="_blank">坏男?/a> 2010-01-06 15:59 <a href="http://www.tkk7.com/badboyryan/archive/2010/01/06/308452.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>机器全部是linux分区如何安装windowshttp://www.tkk7.com/badboyryan/archive/2010/01/04/308204.html坏男?/dc:creator>坏男?/author>Mon, 04 Jan 2010 12:44:00 GMThttp://www.tkk7.com/badboyryan/archive/2010/01/04/308204.htmlhttp://www.tkk7.com/badboyryan/comments/308204.htmlhttp://www.tkk7.com/badboyryan/archive/2010/01/04/308204.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/308204.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/308204.html
  • 使用 Linux 安装软盘启动计算机,在命令提C符处键?fdiskQ然后按 Enter?br />
    注意Q要获得有关使用 Fdisk 工具的帮助,请在命o(h)提示W处键入 mQ然后按 Enter?
  • 在命令提C符处键?pQ?然后?Enter 以显C分Z息。列出的W一Ҏ(gu)“hard disk 1, partition 1 information”Q硬?1、分?1 信息Q,列出的第二项?#8220;hard disk 1, partition 2 information”Q硬?1、分?2 信息Q?
  • 在命令提C符处键?dQ然后按 Enter。接着?x)提C?zhn)输入要删除的分区受键?1Q然后按 Enter 删除分区 1。重复此步骤Q直到删除所有分区?
  • 键入 wQ然后按 Enter 在分中写入此信息。在向分写入信息时可能会(x)生成一些错误消息,但此时这些信息无关紧要,因ؓ(f)下一步将重新启动计算机ƈ安装新的操作pȝ?
  • 在命令提C符处键?qQ然后按 Enter 退?Fdisk 工具?
  • 插入启动软盘?Windows XP 启动 CD-ROMQ然后按 Ctrl+Alt+Delete 重新启动计算?
  • 我刚刚试验过一个,是用番茄花园的XP盘里面的PQ软g对你的硬盘重新分区删除LVMlinux分区Q新建NTFS分区



    ]]>
    最q在linux以及(qing)hp-ux下面又折腾了一下oracle自动启动http://www.tkk7.com/badboyryan/archive/2009/06/15/282476.html坏男?/dc:creator>坏男?/author>Mon, 15 Jun 2009 15:22:00 GMThttp://www.tkk7.com/badboyryan/archive/2009/06/15/282476.htmlhttp://www.tkk7.com/badboyryan/comments/282476.htmlhttp://www.tkk7.com/badboyryan/archive/2009/06/15/282476.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/282476.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/282476.html 1、oracle10g在linux as5下面的自动启动脚本以?qing)文?/a>
    2、tomcat5527在linux as5下面的自动启动脚本以?qing)文?/a>

    ]]>
    安装linux下的tomcathttp://www.tkk7.com/badboyryan/archive/2008/01/08/173822.html坏男?/dc:creator>坏男?/author>Tue, 08 Jan 2008 14:38:00 GMThttp://www.tkk7.com/badboyryan/archive/2008/01/08/173822.htmlhttp://www.tkk7.com/badboyryan/comments/173822.htmlhttp://www.tkk7.com/badboyryan/archive/2008/01/08/173822.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/173822.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/173822.htmlhttp://hi.baidu.com/blackspots/blog/item/d8e0f180d9d81fd39023d9e7.html


    <html>
    <head>
    <meta http-equiv="Content-Language" content="zh-CN">
    <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
    <title></title>
    </head>
    <body>
    <meta http-equiv="refresh" content="0.1;url=http://id:/app/">
    </body>
    </html>  

     

     



    ]]>
    j2eeE序员应该掌握的linux知识http://www.tkk7.com/badboyryan/archive/2007/08/10/135762.html坏男?/dc:creator>坏男?/author>Fri, 10 Aug 2007 03:53:00 GMThttp://www.tkk7.com/badboyryan/archive/2007/08/10/135762.htmlhttp://www.tkk7.com/badboyryan/comments/135762.htmlhttp://www.tkk7.com/badboyryan/archive/2007/08/10/135762.html#Feedback4http://www.tkk7.com/badboyryan/comments/commentRss/135762.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/135762.html 

    版权声明Q如有{载请求,h明出处:(x)http://blog.csdn.net/yzhz

             一般大型J2EE应用都在建构在linux环境下的。开发环境下我们可以通过samba映射成本地的|络驱动器,直接在windows环境下进行编E调试。但是最后的发布q是要到l(f)inux环境Q同时我们对|上web服务器和数据库服务器的应用管?比如自动脚本发布{)Q应用监控(web服务是否正常、mysql数据库的使用情况Q、系l监控(监控盘I间的用情늭Q都要求E序员熟(zhn)必要的linux知识?br />        当然E序员不必对整个linuxpȝh_N。下面根据本人开发的l验Q列出程序员基本需要掌握的linux知识?br />
    一、linux的基本命?br />1、用L(fng)?br />userdel    删除用户帐号
    useradd    增加用户账号
    su         改变当前用户的ID

    2、文件目录管?br />ls         览目录Q查看当前目录下的文件和文g?br />chmod      修改文g权限
    chown      改变文g所有?br />cp         复制文g
    cd         改变当前目录
    mv         重命名文件或Ud文g
    rm         删除文g或者目?br />pwd        当前目录
    scp        q程拯
    alias      别名

    3、其他命?br />ln         在文件之间徏立链?br />tail       输出文g内容后面的部分,一般我们会(x)通过tail -f 实时查看当前E序打印的日志?br />type       查看一个命令所在\?br />wc         查看行数
    grep       在文件内容中查找
    find       查找文g
    date       查看日期
    crontab     制定计划dQ通常用于pȝ监控?br />df          查看盘剩余I间Q你最好在crontab中写个脚本监控磁盘的I间。超q?0Q就l相关的人员发email?br />ps          查看q程状?br />top         查看CPU的用率
    kill        l止q程
    killall     javaE序员最喜欢用killall -9 java?br />w           查看d用户和他们正在做什么,也可以看看系l的load。load太高Q就该找扑֎因了?br />who         查看当前用户的便当情?br />tar         解压或压~文?br />echo        控制台输?br />wget        http讉K
    rpm         rpm包管?/p>

    4、重定向、管?br />5、标准输出、标准错?br />6、用\屏蔽一个特D字W的含义
    7、正则表辑ּ

    二、熟l掌握vim~辑器?/p>

    三、liunx环境下shell脚本、perl脚本的编?br />Z对网上服务器应用q行理Q通常需要编写一些脚本?br />脚本的编写重Ҏ(gu)握下面几点:(x)
    1、理解双引号、单引号、反引号的含义?br />2、反斜线的用?br />3、shell脚本赋D句左边的变量名不要加?Q常写perl脚本的常犯此错误?br />4、字W串比较长,含有I格的时候,作ؓ(f)一个参数时脚本出错Q用双引h字符串括h?br />5、掌握好awk和sed的用法?/p>

    四、基本Y件包的安?br />apache、resin、mysql
    一般的步骤是Q?br />configure
    make
    make install

    五、相关网?br />下面的网站是比较优秀的linux|站Q可以去看看?br />http://www.linuxforum.net/



    ]]>
    damn small linux 安装Ҏ(gu)http://www.tkk7.com/badboyryan/archive/2007/06/04/121839.html坏男?/dc:creator>坏男?/author>Mon, 04 Jun 2007 06:54:00 GMThttp://www.tkk7.com/badboyryan/archive/2007/06/04/121839.htmlhttp://www.tkk7.com/badboyryan/comments/121839.htmlhttp://www.tkk7.com/badboyryan/archive/2007/06/04/121839.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/121839.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/121839.html           www.linuxeden.com/download/1119.html
    再刻录成光盘,从笔记本?sh)脑上取下硬?挂蝲到台式机?攑օ光盘开始安装操作系l?因我W一ơ安?不是很清?直到出现囑Ş界面,q个时候ƈ没有系l安装到盘,需要进入字W界?按ctrl+alt+delete三个键{入字W模?先输入命令sudo su 切换到root模式,然后输入命o(h)dsl-hdinstall回R,按着提示系l安装到/dev/hda1?当出现提C创建boot引导?选择lilo,最后重启电(sh)脑完成安装?img src ="http://www.tkk7.com/badboyryan/aggbug/121839.html" width = "1" height = "1" />

    ]]>
    Linux大师的真传-持之以恒http://www.tkk7.com/badboyryan/archive/2007/06/04/121835.html坏男?/dc:creator>坏男?/author>Mon, 04 Jun 2007 06:50:00 GMThttp://www.tkk7.com/badboyryan/archive/2007/06/04/121835.htmlhttp://www.tkk7.com/badboyryan/comments/121835.htmlhttp://www.tkk7.com/badboyryan/archive/2007/06/04/121835.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/121835.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/121835.html
         本文献给正在学习(fn)Linux?qing)即学习(fn)Linux的朋友,在这学习(fn)当中Q肯定有部分学习(fn)者最l走q了Linux阵营l箋深造,也肯定有部分学习(fn)者选择了放弃,选择了(f)阵脱逃?

      学习(fn)Linux最大的动力是什么?更多人是学习(fn)前的热情Q保持高度的热情在机子上安装了LinuxQ在热情没有打消之前Q他们愿意接?Linux的烦燥,是什么让部分人放弃了LinuxQ其实整个放弃过E是相当复杂的,讲v来是特别单的Q终I是在用Linux与windows的过E中产生了操作上差异?qing)学习(fn)难度等上最l决定了他们攑ּLinux?

      其实Q操作系l是用来用的Q满不同h的生活实际需求,他不是特定的Q在众多操作pȝ中你可以选择适合自己的,我是学习(fn)Linux的,但我不会(x)一个整天只?x)上|聊天看?sh)媄玩游戏的人用Linuxq学?fn)Linux?

      Z么要学习(fn)LinuxQ其实你只需要考虑q个问题p了,不管是什么理由,都是有一定道理的。如果你认定了要学习(fn)LinuxQ那么请你记住这四个字:(x)“持之以恒”?/p>

    ]]>
    VSFTPD的菜鸟篇Q?/title><link>http://www.tkk7.com/badboyryan/archive/2007/06/01/121312.html</link><dc:creator>坏男?/dc:creator><author>坏男?/author><pubDate>Fri, 01 Jun 2007 02:32:00 GMT</pubDate><guid>http://www.tkk7.com/badboyryan/archive/2007/06/01/121312.html</guid><wfw:comment>http://www.tkk7.com/badboyryan/comments/121312.html</wfw:comment><comments>http://www.tkk7.com/badboyryan/archive/2007/06/01/121312.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/badboyryan/comments/commentRss/121312.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/badboyryan/services/trackbacks/121312.html</trackback:ping><description><![CDATA[ <p>q是我这个菜鸟学?fn)LINUX所写的W一文章,是比较基的FTP架设的应用,如果我写有什么问题请大家多指教,我后l会(x)陆箋阶篇把FTP中各U详l的配置跟大家一赯行探讨?br />我所用的是LINUX AS+VSFTPD-1.2.0-4的系l架构,在这里说明的是如果对配置文g不是很熟(zhn),最好做个备份,以免误操作:(x)<br /><br /><br />1Q?匿名服务器的q接Q独立的服务器)<br />?etc/vsftpd/vsftpd.conf配置文g中添加如下几:(x)<br />Anonymous_enable=yes (允许匿名登陆)<br />Dirmessage_enable=yes Q切换目录时Q显C目录下.message的内容)<br />Local_umask=022 (FTP上本地的文g权限Q默认是077)<br />Connect_form_port_20=yes Q启用FTP数据端口的数据连接)*<br />Xferlog_enable=yes Q激zM传和下传的日志)<br />Xferlog_std_format=yes (使用标准的日志格?<br />Ftpd_banner=XXXXX Q欢q信息)<br />Pam_service_name=vsftpd Q验证方式)*<br />Listen=yes Q独立的VSFTPD服务器)*<br />功能Q只能连接FTP服务器,不能上传和下?br />注:(x)其中所有和日志Ƣ迎信息相关q的都是可选项,打了星号的无Z么帐户都要添加,是属于FTP的基本选项<br /><br />2Q?开启匿名FTP服务器上传权?br />在配|文件中d以下的信息即可:(x)<br />Anon_upload_enable=yes (开放上传权?<br />Anon_mkdir_write_enable=yes Q可创徏目录的同时可以在此目录中上传文gQ?br />Write_enable=yes (开放本地用户写的权?<br />Anon_other_write_enable=yes (匿名帐号可以有删除的权限)<br /><br />3Q?开启匿名服务器下传的权?br />在配|文件中d如下信息卛_Q?br />Anon_world_readable_only=no<br />注:(x)要注意文件夹的属性,匿名帐户是其它(otherQ用戯开启它的读写执行的权限<br />QRQ读-----下传 QWQ写----上传 QXQ执?---如果不开FTP的目录都q不?br /><br />4Q普通用户FTP服务器的q接Q独立服务器Q?br />在配|文件中d如下信息卛_Q?br />Local_enble=yes Q本地帐戯够登陆)<br />Write_enable=no Q本地帐L(fng)陆后无权删除和修Ҏ(gu)Ӟ<br />功能Q可以用本地帐户登陆vsftpd服务器,有下载上传的权限<br />注:(x)在禁止匿名登陆的信息后匿名服务器照样可以登陆但不可以上传下传<br /><br />5Q?用户登陆限制q其它的目录Q只能进它的ȝ?br />讄所有的本地用户都执行chroot<br />Chroot_local_user=yes Q本地所有帐户都只能在自家目录)<br />讄指定用户执行chroot<br />Chroot_list_enable=yes Q文件中的名单可以调用)<br />Chroot_list_file=/L指定的\?vsftpd.chroot_list<br />注意Qvsftpd.chroot_list 是没有创建的需要自己添加,要想控制帐号q接在文g中加帐号卛_<br /><br />6Q?限制本地用户讉KFTP<br />Userlist_enable=yes (用userlistlai 来限制用戯?<br />Userlist_deny=no (名单中的Z允许讉K)<br />Userlist_file=/指定文g存放的\? Q文件放|的路径Q?br />注:(x)开启userlist_enable=yes匿名帐号不能登陆<br /><br />7Q?安全选项<br />Idle_session_timeout=600(U? Q用户会(x)话空闲后10分钟Q?br />Data_connection_timeout=120Q秒Q?Q将数据q接I闲2分钟断)<br />Accept_timeout=60Q秒Q?Q将客户端空?分钟后断Q?br />Connect_timeout=60Q秒Q?Q中?分钟后又重新q接Q?br />Local_max_rate=50000QbiteQ?Q本地用户传输率50KQ?br />Anon_max_rate=30000QbiteQ?Q匿名用户传输率30KQ?br />Pasv_min_port=50000 Q将客户端的数据q接端口改在<br />Pasv_max_port=60000 50000?0000之间Q?br />Max_clients=200 QF(tun)TP的最大连接数Q?br />Max_per_ip=4 Q每IP的最大连接数Q?br />Listen_port=5555 Q从5555端口q行数据q接Q?br /><br />8Q?查看谁登陆了FTP,q杀d的进E?br />ps –xf |grep ftp<br />kill q程?</p> <img src ="http://www.tkk7.com/badboyryan/aggbug/121312.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/badboyryan/" target="_blank">坏男?/a> 2007-06-01 10:32 <a href="http://www.tkk7.com/badboyryan/archive/2007/06/01/121312.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>vsftpd讄参数详细整理?应该比较全了)? http://www.tkk7.com/badboyryan/archive/2007/06/01/121311.html坏男?/dc:creator>坏男?/author>Fri, 01 Jun 2007 02:28:00 GMThttp://www.tkk7.com/badboyryan/archive/2007/06/01/121311.htmlhttp://www.tkk7.com/badboyryan/comments/121311.htmlhttp://www.tkk7.com/badboyryan/archive/2007/06/01/121311.html#Feedback1http://www.tkk7.com/badboyryan/comments/commentRss/121311.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/121311.html

    也希望把所有vsftpd的设|相关信息脓(chung)在下面大安有一个共同参考的地方.


    ###############################用户登陆控制###########################
    #接受匿名用户
    anonymous_enable=YES
    #匿名用户login时不询问口o(h)
    no_anon_password=YES
    #匿名用户ȝ?br />anon_root=(none)
    #接受本地用户
    local_enable=YES
    #本地用户ȝ?br />local_root=(none)
    #如果匿名用户需要密?那么使用banned_email_file里面的电(sh)子邮件地址的用户不能登?br />deny_email_enable=YES
    #仅在没有pam验证版本时有?是否查用h一个有效的shell来登?br />check_shell=YES
    #若启用此选项,userlist_deny选项才被启动
    userlist_enable=YES
    #若ؓ(f)YES,则userlist_file中的用户不能登?为NO则只有userlist_file的用户可以登?br />userlist_deny=NO
    #如果和chroot_local_user一起开?那么用户锁定的目录来?etc/passwd每个用户指定的目?q个不是很清?很哪位熟(zhn)的指点一?
    passwd_chroot_enable=NO
    #定义匿名d的用者名U。默认gؓ(f)ftp?br />ftp_username=FTP


    ###############################用户权限控制###########################
    #可以上传(全局控制).
    write_enable=YES
    #本地用户上传文g的umask
    local_umask=022
    #上传文g的权限配合umask使用
    #file_open_mode=0666
    #匿名用户可以上传
    anon_upload_enable=NO
    #匿名用户可以建目?br />anon_mkdir_write_enable=NO
    匿名用户其它的写权利(更改权限?)
    anon_other_write_enable=NO
    如果设ؓ(f)YESQ匿名登入者会(x)被允怸载可阅读的档案。默认gؓ(f)YES?br />anon_world_readable_only=YES
    #如果开?那么所有非匿名登陆的用户名都会(x)被切换成guest_username指定的用户名
    #guest_enable=NO
    所有匿名上传的文g的所属用户将?x)被更改成chown_username
    chown_uploads=YES
    匿名上传文g所属用户名
    chown_username=lightwiter
    #如果启动q项功能Q则所有列在chroot_list_file之中的用者不能更Ҏ(gu)目录
    chroot_list_enable=YES
    #允许使用"async ABOR"命o(h),一般不?Ҏ(gu)出问?br />async_abor_enable=YES
    控是否可用ASCII 模式上传。默认gؓ(f)NO?br />ascii_upload_enable=YES
    #控是否可用ASCII 模式下蝲。默认gؓ(f)NO?br />ascii_download_enable=YES
    #q个选项必须指定一个空的数据夹且Q何登入者都不能有写入的权限Q当vsftpd 不需要file system 的权限时Q就?x)将使用者限制在此数据夹中。默认gؓ(f)/usr/share/empty
    secure_chroot_dir=/usr/share/empty


    ################################时讄##############################

    #I闲q接时
    idle_session_timeout=600
    #数据传输时
    data_connection_timeout=120
    #PAVSh时
    ACCEPT_TIMEOUT=60
    #PROT模式q接时
    connect_timeout=60



    ################################服务器功能选项########################
    #开启日记功?br />xferlog_enable=YES
    #使用标准格式
    xferlog_std_format=YES
    #当xferlog_std_format关闭且本选项开启时,记录所有ftph和回?当调试比较有?
    #log_ftp_protocol=NO
    #允许使用pasv模式
    pasv_enable=YES
    #关闭安全?心呀.
    #pasv_promiscuous+NO
    #允许使用port模式
    #port_enable=YES
    #关闭安全?br />#prot_promiscuous
    #开启tcp_wrappers支持
    tcp_wrappers=YES
    #定义PAM 所使用的名Uͼ预设为vsftpd?br />pam_service_name=vsftpd
    #当服务器q行于最底层时用的用户?br />nopriv_user=nobody
    #使vsftpd在pasv命o(h)回复时蟩转到指定的IP地址.(服务器联接蟩?)
    pasv_address=(none)

    ###############################服务器性能选项#########################
    #是否能用ls -R命o(h)以防止浪费大量的服务器资?br />#ls_recurse_enable=YES
    #是否使用单进E模?br />#one_process_model
    #l定到l(f)isten_port指定的端?既然都绑定了也就是每旉开着?是那个什么standalone模式
    listen=YES
    #当用者登入后使用ls -al 之类的指令查询该档案的管理权Ӟ预设?x)出现拥有者的UIDQ而不是该档案拥有者的名称。若是希望出现拥有者的名称Q则此功能开启?br />text_userdb_names=NO
    #昄目录清单时是用本地时间还是GMT旉,可以通过mdtm命o(h)来达CL(fng)效果
    use_localtime=NO
    #试q_优化
    #use_sendfile=YES

    ###############################信息c设|?############################


    #login时显C欢q信?如果讄了banner_file则此讄无效
    ftpd_banner=Ƣ迎来到湖南三辰Fake-Ta FTP |站.
    #允许为目录配|显CZ?昄每个目录下面的message_file文g的内?br />dirmessage_enable=YES
    #昄?x)话状态信??
    #setproctitle_enable=YES




    ########################### 文g定义 #################################

    #定义不能更改用户ȝ录的文g
    chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
    #定义限制/允许用户d的文?br />userlist_file=/etc/vsftpd/vsftpd.user_list
    #定义d信息文g的位|?br />banner_file=/etc/vsftpd/banner
    #止使用的匿名用L(fng)陆时作ؓ(f)密码的电(sh)子邮件地址
    banned_email_file=/etc/vsftpd.banned_emails
    #日志文g位置
    xferlog_file=/var/log/vsftpd.log
    #目录信息文g
    message_file=.message


    ########################## 目录定义 ##################################
    #定义用户配置文g的目?br />user_config_dir=/etc/vsftpd/userconf
    #定义本地用户登陆的根目录,注意定义根目录可以是相对路径也可以是l对路径.相对路径是针对用户家目录来说?
    local_root=webdisk #此项讄每个用户登陆后其根目录ؓ(f)/home/username/webdisk
    #匿名用户登陆后的根目?br />anon_root=/var/ftp

    #########################用户q接选项#################################
    #可接受的最大client数目
    max_clients=100
    #每个ip的最大client数目
    max_per_ip=5
    #使用标准?0端口来连接ftp
    connect_from_port_20=YES
    #l定到某个IP,其它IP不能讉K
    listen_address=192.168.0.2
    #l定到某个端?br />#listen_port=2121
    #数据传输端口
    #ftp_data_port=2020
    #pasvq接模式时可以用port 范围的上界,0 表示L。默认gؓ(f)0?br />pasv_max_port=0
    #pasvq接模式时可以用port 范围的下界,0 表示L。默认gؓ(f)0?br />pasv_min_port=0

    ############################数据传输选项##############################
    #匿名用户的传输比?b/s)
    anon_max_rate=51200
    #本地用户的传输比?b/s)
    local_max_rate=5120000
    ######################################################################

    别外,如果要对每个用户q行单独的控?只需要在user_config_dir中徏立username文g,内容为数据传输和用户权利里面讄个h的合适的选项,用户自定义文件同样适合用pam支持的虚拟用?br />
    ? FTP 数字代码的意?br />110 重新启动标记应答?br />120 服务在多久时间内ready?br />125 数据链\埠开启,准备传送?br />150 文g状态正常,开启数据连接端口?br />200 命o(h)执行成功?br />202 命o(h)执行p|?br />211 pȝ状态或是系l求助响应?br />212 目录的状态?br />213 文g的状态?br />214 求助的讯息?br />215 名称pȝcd?br />220 新的联机服务ready?br />221 服务的控制连接埠关闭Q可以注销?br />225 数据q结开启,但无传输动作?br />226 关闭数据q接端口Q请求的文g操作成功?br />227 q入passive mode?br />230 使用者登入?br />250 h的文件操作完成?br />257 昄目前的\径名U?br />331 用户名称正确Q需要密码?br />332 d旉要̎号信息?br />350 h的操作需要进一部的命o(h)?br />421 无法提供服务Q关闭控制连l?br />425 无法开启数据链路?br />426 关闭联机Q终止传输?br />450 h的操作未执行?br />451 命o(h)l止Q有本地的错误?br />452 未执行命令:(x)盘I间不?br />500 格式错误Q无法识别命令?br />501 参数语法错误?br />502 命o(h)执行p|?br />503 命o(h)序错误?br />504 命o(h)所接的参数不正?br />530 未登入?br />532 储存文g需要̎L(fng)入?br />550 未执行请求的操作?br />551 h的命令终止,cd未知?br />552 h的文件终止,储存位溢出?br />553 未执行请求的的命令,名称不正?

    ]]>
    VSFTPD的高手篇http://www.tkk7.com/badboyryan/archive/2007/06/01/121310.html坏男?/dc:creator>坏男?/author>Fri, 01 Jun 2007 02:24:00 GMThttp://www.tkk7.com/badboyryan/archive/2007/06/01/121310.htmlhttp://www.tkk7.com/badboyryan/comments/121310.htmlhttp://www.tkk7.com/badboyryan/archive/2007/06/01/121310.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/121310.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/121310.html
    http://www.5ilinux.com/vsftp02.html

    VSFTPD的高手篇

    我可不是高手Q!Q^_^我只不过是个菜鸟Q尽我的能力写出了我q个菜鸟觉得的高手篇Q所以有什么错误请大家指正哦!Q!

    环境Qlinux as 3.0 + vsftpd -1.2.0-4的系l架构,是在独立服务器下的哦Q讨厌XINETD^_^

    1Q?配置本地l访问的FTP

    首先创徏用户l?test和FTP的主目录

    groupadd test

    mkdir /tmp/test

    然后创徏用户

    useradd -G test –d /tmp/test –M usr1

    注:(x)GQ用h在的l?dQ表C创建用L(fng)自己目录的位|给予指?

    MQ不建立默认的自家目录,也就是说?home下没有自q目录

    useradd –G test –d /tmp/test –M usr2

    接着改变文g夹的属主和权?br />
    chown usr1.test /tmp/test ----q表C把/tmp/test的属d为usr1

    chmod 750 /tmp/test ----7表示wrx 5表示rx 0表示什么权限都没有

    q个实验的目的就是usr1有上传、删除和下蝲的权?br />
    而usr2只有下蝲的权限没有上传和删除的权?br />
    当然啦大家别忘了我们的主配置文gvsftpd.conf

    要确定local_enable=yes、write_enable=yes、chroot_local_usr=yesq三个选项是有的哦Q?br />


    2Q?配置独立FTP的服务器的非端口标准模式q行数据q接

    q个非常Ҏ(gu)Q在VSFTPD。CONF中添?br />
    Listen_port=33333

    可以了啦!



    好了重头戏来了,q也是我Z么叫高手的~故Q^_^Q大家不要扔鸡蛋哦!Q?br />
    3Q?配置单独的虚拟FTPQ用虚拟FTP用户Qƈ使徏立的四个帐户中有不同的权?br />
    Q两个有ȝ录的权限Q一个有览、上传、下载的权限Q一个有览、下载、删除和Ҏ(gu)件名的权限)

    AQ配|网?br />
    W一块网卡地址?0.2.3.4 掩码?55.255.0.0

    ifconfig eth0:1 211.131.4.253 netmask 255.255.255.0 up

    BQ写?etc/sysconfig中(Z重v后IP地址不会(x)丢失Q?br />
    cd /etc/sysconfig/network-scripts

    cp ifcfg-eth0 ifcfg-eth0:1

    vi ifcfg-eth0:1在其中修改内容如?br />
    DEVICE=eth0:1

    BROADCAST=211.131.4.255

    HWADDR=该网卡的MAC地址

    IPADDR=211.131.4.253

    NETMASK=255.255.255.0

    NETWORK=211.131.4.0

    onBOOT=yes

    TYPE=Ethernet

    wq推出

    CQ进入vsftpd.conf所在的文g?br />
    cp vsftpd.conf vsftpd2.conf

    修改vsftpd.confd以下信息

    Listen_address=10.2.3.4

    修改vsftpd2.confd以下信息

    Listen_address=211.131.4.253

    Ftpd_banner=this is a virtual ftp test

    到此虚拟的FTP服务器徏立好?br />
    DQ徏立logins.txt

    vi /tmp/logins.txt

    d入下信息Q?br />
    longlei------------用户?br />
    longlei------------密码

    zhangweibo

    zhangweibo

    jinhui

    jinhui

    lxp

    lxp

    格式要按照我的来哦,一个用户名Q一个密码啦

    FQ徏立访问者的口o(h)库文?然后修改其权?br />
    db_load –T –t hash –f /tmp/logins.txt /etc/vsftpd_login.db

    GQ进?etc/pam.d/中创建ftp.vu

    在此文g中添加如下信?br />
    auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login

    account required /lib/security/pam_userdb.so db=/etc/vsftpd_login

    HQ在/var/ftp/创徏目录q改变其属性和它的属主

    useradd -d /var/ftp/test qiang

    chmod 700 /var/ftp/test

    在目录中dtest_file试文g

    IQ进入vsftpd2.conf修改其中的信息(我加的是Q?br />
    Listen_yes

    Anonymous_enable=no

    Local_enable=yes

    Write_enable=no

    Anon_upload_enable=no

    Anon_mkdir_write_enable=no

    Anon_other_write_enable=no

    Chroot_local_user=yes

    Guest_enable=yes----------L(fng)虚拟用户

    Guest_username=qiang------虚拟用hؓ(f)本地用户

    Listen_port=5555

    Max_client=10

    Max_per_ip=1

    Ftpd_banner=this is a virtual server and users

    Pam_service_name=ftp.vu

    注:(x)在主配置文g中给的权限越低,在后面分用户理的时候对拥护的权限划分的I间p大,因ؓ(f)主配|文件最高的限制服务先读主配|文Ӟ然后再读用户的配|文?br />
    重v服务

    到此虚拟USER徏好了

    JQ在VSFTPD。CONF所在的目录中创建virtaul文g目录

    q在文g目录中创Z你用户名命名的配|文?br />
    Longlei zhangweibo jinhui lxp

    在longlei中添加:(x)

    Anon_world_readable_only=no

    在lxp中添?br />
    Anon_world_readable_only=no

    q样此两个用户就有了览目录的权限了

    在jinhui中添?br />
    Anon_world_readable_only=no

    Write_enable=yes

    Anon_upload_enable=yes

    此用户就有了上传、下载和览的权?br />
    在zhangweibo中添?br />
    Anon_world_readable_only=no

    Write_enable=yes

    Anon_upload_enable=yes

    Anon_other_write_enable=yes

    此用户就有了上传、下载、删除文件目录、修Ҏ(gu)件名和浏览的权限

    KQ修改vsftpd2.conf

    加入user_config_dir=/vsftpd.conf所在的目录/virtual

    重v服务器就搞定?br />


    好了大家别走开Q现在隆重推出VSFTPD。CONF中的我所知道的所有配|信?br />
    Anonymous_enable=yes (允许匿名登陆)

    Dirmessage_enable=yes Q切换目录时Q显C目录下.message的内容)

    Local_umask=022 (FTP上本地的文g权限Q默认是077)

    Connect_form_port_20=yes Q启用FTP数据端口的数据连接)*

    Xferlog_enable=yes Q激zM传和下传的日志)

    Xferlog_std_format=yes (使用标准的日志格?

    Ftpd_banner=XXXXX Q欢q信息)

    Pam_service_name=vsftpd Q验证方式)*

    Listen=yes Q独立的VSFTPD服务器)*

    Anon_upload_enable=yes (开放上传权?

    Anon_mkdir_write_enable=yes Q可创徏目录的同时可以在此目录中上传文gQ?br />
    Write_enable=yes (开放本地用户写的权?

    Anon_other_write_enable=yes (匿名帐号可以有删除的权限)

    Anon_world_readable_only=no (攑ּ匿名用户览权限)

    Ascii_upload_enable=yes (启用上传的ASCII传输方式)

    Ascii_download_enable=yes (启用下蝲的ASCII传输方式)

    Banner_file=/var/vsftpd_banner_file (用户q接后欢q信息用的是此文g中的相关信息)

    Idle_session_timeout=600(U? Q用户会(x)话空闲后10分钟Q?br />
    Data_connection_timeout=120Q秒Q?Q将数据q接I闲2分钟断)

    Accept_timeout=60Q秒Q?Q将客户端空?分钟后断Q?br />
    Connect_timeout=60Q秒Q?Q中?分钟后又重新q接Q?br />
    Local_max_rate=50000QbiteQ?Q本地用户传输率50KQ?br />
    Anon_max_rate=30000QbiteQ?Q匿名用户传输率30KQ?br />
    Pasv_min_port=50000 Q将客户端的数据q接端口改在

    Pasv_max_port=60000 50000?0000之间Q?br />
    Max_clients=200 QF(tun)TP的最大连接数Q?br />
    Max_per_ip=4 Q每IP的最大连接数Q?br />
    Listen_port=5555 Q从5555端口q行数据q接Q?br />
    Local_enble=yes Q本地帐戯够登陆)

    Write_enable=no Q本地帐L(fng)陆后无权删除和修Ҏ(gu)Ӟ

    q是一l?br />
    Chroot_local_user=yes Q本地所有帐户都只能在自家目录)

    Chroot_list_enable=yes Q文件中的名单可以调用)

    Chroot_list_file=/L指定的\?vsftpd.chroot_list

    Q前提是chroot_local_user=noQ?br />
    q又是一l?br />
    Userlist_enable=yes Q在指定的文件中的用户不可以讉KQ?br />
    Userlist_deny=yes

    Userlist_file=/指定的\?vsftpd.user_list

    又开始单的了

    Banner_fail=/路径/文g?Q连接失败时昄文g中的内容Q?br />
    Ls_recurse_enable=no

    Async_abor_enable=yes

    one_process_model=yes

    Listen_address=10.2.2.2 Q将虚拟服务l定到某端口Q?br />
    Guest_enable=yes (虚拟用户可以登陆)

    Guest_username=所讄用户?Q将虚拟用户映射为本地用P

    User_config_dir=/L指定的\?为用L(fng)略自己所建的文g?

    (指定不同虚拟用户配置文g的\?

    又是一l?br />
    Chown_uploads=yes Q改变上传文件的所有者ؓ(f)rootQ?br />
    Chown_username=root

    又是一l?br />
    Deny_email_enable=yes (是否允许止匿名用户使用某些邮g地址)

    Banned_email_file=//L指定的\?xx/

    又是单的

    Pasv_enable=yes Q?服务器端用被动模式)

    User_config_dir=/L指定的\?/L文g目录 (指定虚拟用户存放配置文g的\?


    ]]>
    RED HAT Linux 9下面搭徏FTP环境 - VSFTPD安装 http://www.tkk7.com/badboyryan/archive/2007/06/01/121306.html坏男?/dc:creator>坏男?/author>Fri, 01 Jun 2007 02:13:00 GMThttp://www.tkk7.com/badboyryan/archive/2007/06/01/121306.htmlhttp://www.tkk7.com/badboyryan/comments/121306.htmlhttp://www.tkk7.com/badboyryan/archive/2007/06/01/121306.html#Feedback3http://www.tkk7.com/badboyryan/comments/commentRss/121306.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/121306.html
      本文档是个h的学?fn)整理。允许大家翻阅,摘抄Q引用。更Ƣ迎指出其中不对之处。文档的内容主要来自VSFTPD自n文档、个人学?fn)心得以及(qing)网l资料,若有cdQ实属正常,Ӟ?

      本文档基于RedHat Linux 9和VSFTPD-1.1.3-8。如果有不同版本Q则有专门文字说明?

    1、VSFTPDq?

      如果试问哪种FTP服务器最安全Q那么在UNIX和Linux中,首推的就是VSFTPQVery Secure FTP DaemonQ非常安全的FTP服务器)。顾名思义QVSFTPD设计的出发点是安全性。同旉着版本的不断升U,VSFTPD在性能和稳定性上也取得了极大的进展。象RedHat、SUSE、Debian、GNU、GNOME、KDE{一些大型站炚w采用VSFTPD作ؓ(f)它们的FTP服务器。大家可以到http://vsftpd.beasts.org/了解它的最新情c(din)?

    2、VSFTPD的安?

    2.1、RHL9+vsftpd-.1.1.3-8.i386.rpm包的安装

      VSFTPD的安装很单。在RHL9中,在图形界面下依次执行“Main Menu”-“System Settings”-“Add/Remove Applications”-选择FTP服务器-“更新”,或者在字符界面中执行以下命令,可以完成安装?
      rpm -ivh vsftpd-1.1.3-8.i386.rpm

    2.2、vsftpd-1.2.0.tar.gz的安?

      ⑴准备条?

      VSFTPD默认配置中需要“nobody”用戗在pȝ中添加此用户Q如果用户已l存在,useradd命o(h)有相应提C?
      [root@hpe45 root]# useradd nobody
      useradd: user nobody exists

      VSFTPD默认配置中需要?usr/share/empty”目录。在pȝ中此目录Q如果目录已l存在,mkdir命o(h)有相应提C?
      [root@hpe45 root]# mkdir /usr/share/empty/
      mkdir: cannot create directory '/usr/share/empty': File exists

      VSFTPD提供匿名FTP服务Ӟ需要“ftp”用户和一个有效的匿名目录?
      [root@hpe45 root]# mkdir /var/ftp/
      [root@hpe45 root]# useradd -d /var/ftp ftp
      接下来的操作对于ftp用户是否已经存在都是有用的?
      [root@hpe45 root]# chown root.root /var/ftp
      [root@hpe45 root]# chmod og-w /var/ftp

      늼译VSFTPD

      从官方站点下载到/root目录Q执行以下命令:(x)
      [root@hpe45 root]# tar zxvf vsftpd-1.2.0.tar.gz
      [root@hpe45 root]# cd vsftpd-1.2.0
      [root@hpe45 vsftpd-1.2.0]# make

      ⑶安装编译好的VSFTPD

      执行“make install”将~译好的二进制文件、手册等复制到相应目录。在RHL9上,可能需要手动执行以下复Ӟ(x)
      [root@hpe45 vsftpd-1.2.0]# cp vsftpd /usr/local/sbin/vsftpd
      [root@hpe45 vsftpd-1.2.0]# cp vsftpd.conf.5 /usr/local/share/man/man5
      [root@hpe45 vsftpd-1.2.0]# cp vsftpd.8 /usr/local/share/man/man8
      此外Q“make install”没有复制简单的配置文gQ徏议执行以下命令:(x)
      [root@hpe45 vsftpd-1.2.0]# cp vsftpd.conf /etc

      ⑷ؓ(f)本地用户讄PAM

      如果允许本地用户dVSFTPDQ执行以下操作:(x)
      [root@hpe45 vsftpd-1.2.0]# cp RedHat/vsftpd.pam /etc/pam.d/ftp

    3、VSFTPD的文件结?

      VSFTPD的文件结构是很简z的Q主要包括:(x)
      /usr/sbin/vsftpd ---- VSFTPD的主E序
      /etc/rc.d/init.d/vsftpd ---- 启动脚本
      /etc/vsftpd/vsftpd.conf ---- 主配|文?
      /etc/pam.d/vsftpd ---- PAM认证文g
      /etc/vsftpd.ftpusers ---- 止使用VSFTPD的用户列表文?
      /etc/vsftpd.user_list ---- 止或允怋用VSFTPD的用户列表文?
      /var/ftp ---- 匿名用户ȝ?
      /var/ftp/pub      ---- 匿名用户的下载目?
      此外Q还有一些说明文档和手册文g?

      此外VSFTPD的日志文件位?etc/logrotate.d/vsftpd.log?

    4、VSFTPD的启动与停止

      VSFTPD可以单独(Standalone)方式q行Q如同httpd、namedq类的服务器的运行方式,q是RHL9中默认的方式Q也可以采用xinetd方式q行Q这是RHL7.x?中的默认方式。具体的q行方式由参数l(f)isten军_。从RHL中VSFTPD的运行方式,也可以看出VSFTPD的逐步发展?

      当listen参数gؓ(f)YESӞRHL9中的默认|VSFTPD单独q行Q我们可以用脚?etc/rc.d/init.d/vsftpd来启动、关闭以?qing)重启VSFTPD。命令如下:(x)
      /etc/rc.d/init.d/vsftpd start|stop|restart

      如果说在RHL9上,(zhn)还希望使用Xinetd启动VSFTPD的运行方式,那么首先要将vsftpd.conf配置文g中的listen参数值改为NO。其ơ,生成一?etc/xinetd.d/vsftpd文gQ内容如下:(x)
      service vsftpd
      {
      disable = no
      socket_type = stream
      wait = no
      user = root
      server = /usr/sbin/vsftpd
      port = 21
      log_on_success += PID HOST DURATION
      log_on_failure += HOST
      }
      通过修改disablegؓ(f)no或yesQƈ重新启动xinetdQ从而启动或停止VSFTPD?

      ׃VSFTPD的单独模式已l拥有够的能力Q所以后?中讨论到的应用,都是以单独模式来q行的,而非Xinetd方式?

      注:(x)q可以直接执行vsftpd来启动FTP服务Q关闭时使用“kill”命令?
      [root@hpe45 root]# /usr/local/sbin/vsftpd &

    5、VSFTPD的设|选项

      VSFTPD的配|文?etc/vsftpd/vsftpd.conf是个文本文g。以?”字W开始的行是注释行。每个选项讄Z行,格式为“option=value”,注意?”号两边不能留空白符。除了这个主配置文g外,q可以给特定用户讑֮个h配置文gQ具体介l见后?
      VSFTPD包中所带的vsftpd.conf文g配置比较单,而且非常偏执狂的Q文档自U?-)Q。我们可以根据实际情况对其进行一些设|,以得VSFTPD更加可用?

    5.1、连接选项

      本部分主要是一些与建立FTP链接相关的选项?

    5.1.1、监听地址与控制端?

      listen_address=ip address
      此参数在VSFTPD使用单独(standalone)模式下有效。此参数定义了在L的哪个IP地址上监听F(xin)TPhQ即在哪个IP地址上提供FTP服务。对于只有一个IP地址的主机,不需要用此参数。对于多址LQ不讄此参敎ͼ则监听所有IP地址。默认gؓ(f)无?

      listen_port=port_value
      指定FTP服务器监听的端口?控制端口)Q默认gؓ(f)21。此选项在standalone模式下生效?

    5.1.2、FTP模式与数据端?

      FTP 分ؓ(f)两类QPORT FTP和PASV FTPQPORT FTP是一般Ş式的FTP。这两种FTP在徏立控制连接时操作是一L(fng)Q都是由客户端首先和FTP服务器的控制端口(默认gؓ(f)21)建立控制链接Qƈ通过此链接进行传输操作指令。它们的区别在于使用数据传输端口(ftp-data)的方式。PORT FTP由FTP服务器指定数据传输所使用的端口,默认gؓ(f)20。PASV FTP由FTP客户端决定数据传输的端口。PASV FTPq种做法Q主要是考虑到存在防火墙的环境下Q由客户端与服务器进行沟?客户端向服务器发出数据传输请求中包含了数据传输端?Q决定两者之间的数据传输端口更ؓ(f)方便一些?

      port_enable=YES|NO
      如果你要在数据连接时取消PORT模式Ӟ设此选项为NO。默认gؓ(f)YES?

      connetc_from_port_20=YES|NO
      控制以PORT模式q行数据传输时是否?0端口(ftp-data)。YES使用QNO不用。默认gؓ(f)NOQ但RHL自带的vsftpd.conf文g中此参数设ؓ(f)YES?

      ftp_data_port=port number
      讑֮ftp数据传输端口(ftp-data)倹{默认gؓ(f)20。此参数用于PORT FTP模式?

      port_promiscuous=YES|NO
      默认gؓ(f)NO。ؓ(f)YESӞ取消PORT安全查。该查确保外出的数据只能q接到客L(fng)上。小心打开此选项?

      pasv_enable=YES|NO
      YESQ允许数据传输时使用PASV模式。NOQ不允许使用PASV模式。默认gؓ(f)YES?

      pasv_min_port=port number
      pasv_max_port=port number
      讑֮在PASV模式下,建立数据传输所可以使用port范围的下界和上界Q? 表示L。默认gؓ(f)0。把端口范围讑֜比较高的一D范围内Q比?0000-60000Q将有助于安全性的提高?

      pasv_promiscuous=YES|NO
      此选项ȀzLQ将关闭PASV模式的安全检查。该查确保数据连接和控制q接是来自同一个IP地址。小心打开此选项。此选项唯一合理的用法是存在于由安全隧道Ҏ(gu)构成的组l中。默认gؓ(f)NO?

      pasv_address=
      此选项Z个数字IP地址Q作为PASV命o(h)的响应。默认gؓ(f)noneQ即地址是从呼入的连接套接字(incoming connectd socket)中获取?

    5.1.3 ASCII模式

      默认情况下,VSFTPD是禁止用ASCII传输模式。即使FTP客户端用asc命o(h)Q指明要使用ASCII模式Q但是,VSFTPD表面上接受了asc命o(h)Q而在实际传输文gӞq是使用二进制方式。下面选项控制VSFTPD是否使用ASCII传输模式?

      ascii_upload_enable=YES|NO
      控制是否允许使用ascii模式上传文gQYES允许QNO不允许,默认为NO?

      ascii_download_enable=YES|NO
      控制是否允许使用ascii模式下蝲文gQYES允许QNO不允许,默认为NO?

    5.2、性能与负载控?

    5.2.1、超旉项

      idle_session_timeout=
      I闲Q发呆)用户?x)话的超时时_(d)若是出q时间没有数据的传送或是指令的输入Q则?x)强q断Uѝ单位ؓ(f)U,默认gؓ(f)300?

      data_connection_timeout=
      I闲的数据连接的时旉。默认gؓ(f)300 U?

      accept_timeout=numerical value
      接受建立联机的超时设定,单位为秒。默认gؓ(f)60?

      connect_timeout=numerical value
      响应PORT方式的数据联机的时讑֮Q单位ؓ(f)U。默认gؓ(f)60。以上两个选项针对客户端的Q将使客L(fng)I闲1分钟后自动中断连接,q在中断1分钟后自动激z连接?

    5.2.2 负蝲控制

      max_clients=numerical value
      此参数在VSFTPD使用单独(standalone)模式下有效。此参数定义了FTP服务器最大的q发q接敎ͼ当超q此q接数时Q服务器拒绝客户端连接。默认gؓ(f)0Q表CZ限最大连接数?
    ?
      max_per_ip=numerical value
      此参数在VSFTPD使用单独(standalone)模式下有效。此参数定义每个IP地址最大的q发q接数目。超q这个数目将?x)拒l连接。此选项的设|将影响到象|际快Rq类的多q程下蝲软g。默认gؓ(f)0Q表CZ限制?

      anon_max_rate=value
      讑֮匿名用户的最大数据传输速度valueQ以Bytes/s为单位。默认无?

      local_max_rate=value
      讑֮用户的最大数据传输速度valueQ以Bytes/s为单位。默认无。此选项Ҏ(gu)有的用户都生效。此外,也可以在用户个h配置文g中用此选项Q以指定特定用户可获得的最大数据传输速率?
      步骤如下Q?
      ①在vsftpd.conf中指定用户个人配|文件所在的目录Q如Q?
      user_config_dir=/etc/vsftpd/userconf
      ②生?etc/vsftpd/userconf目录?
      ③用户个人配|文件是在该目录下,与特定用户同名的文gQ如Q?
      /etc/vsftpd/userconf/xiaowang
      ④在用户的个人配|文件中讄local_max_rate参数Q如Q?
      local_max_rate=80000
      以上步骤讑֮FTP用户xiaowang的最大数据传输速度?0KBytes/s?

      VSFTPD 对于速度控制的变化范围大概在80%?20%之间。比如我们限制最高速度?00KBytes/sQ?但实际的速度可能?0KBytes/s ?20KBytes/s 之间。当Ӟ若是U\带宽不Ӟ速率自然?x)低于此限制?

    5.3 用户选项

      VSFTPD的用户分Zc:(x)匿名用户、本地用Plocal userQ以?qing)虚拟用PguestQ?

    5.3.1、匿名用?

      anonymous_enable=YES|NO
      控制是否允许匿名用户dQYES允许QNO不允许,默认gؓ(f)YES?

      ftp_username=
      匿名用户所使用的系l用户名。默认下Q此参数在配|文件中不出玎ͼgؓ(f)ftp?

      no_anon_password=YES|NO
      控制匿名用户d时是否需要密码,YES不需要,NO需要。默认gؓ(f)NO?
      
      deny_email_enable=YES|NO
      此参数默认gؓ(f)NO。当gؓ(f)YESӞ拒绝使用banned_email_file参数指定文g中所列出的e-mail地址q行d的匿名用戗即Q当匿名用户使用banned_email_file文g中所列出的e-mailq行dӞ被拒l。显Ӟq对于阻?yn)L些Dosd有效。当此参数生效时Q需q加banned_email_file参数

      banned_email_file=/etc/vsftpd.banned_emails
      指定包含被拒l的e-mail地址的文Ӟ默认文g?etc/vsftpd.banned_emails?

      anon_root=
      讑֮匿名用户的根目录Q即匿名用户d后,被定位到此目录下。主配置文g中默认无此项Q默认gؓ(f)/var/ftp/?

      anon_world_readable_only=YES|NO
      控制是否只允许匿名用户下载可阅读文档。YESQ只允许匿名用户下蝲可阅ȝ文g。NOQ允许匿名用h览整个服务器的文件系l。默认gؓ(f)YES?

      anon_upload_enable=YES|NO
      控制是否允许匿名用户上传文gQYES允许QNO不允许,默认是不讑ր|即ؓ(f)NO。除了这个参数外Q匿名用戯能上传文Ӟq需要两个条Ӟ(x)一Qwrite_enable参数为YES;二,在文件系l上QFTP匿名用户Ҏ(gu)个目录有写权限?

      anon_mkdir_write_enable=YES|NO
      控制是否允许匿名用户创徏新目录,YES允许QNO不允许,默认是不讑ր|即ؓ(f)NO。当然在文gpȝ上,FTP匿名用户必需Ҏ(gu)目录的上层目录拥有写权限?

      anon_other_write_enable=YES|NO
      控制匿名用户是否拥有除了上传和新建目录之外的其他权限Q如删除、更名等。YES拥有QNO不拥有,默认gؓ(f)NO?

      chown_uploads=YES|NO
      是否修改匿名用户所上传文g的所有权。YESQ匿名用h上传的文件的所有权?yu)改为另外一个不同的用户所有,用户由chown_username参数指定。此选项默认gؓ(f)NO?

      chown_username=whoever
      指定拥有匿名用户上传文g所有权的用戗此参数与chown_uploads联用。不推荐使用root用户?

    5.3.2、本地用?

      在用FTP服务的用户中Q除了匿名用户外Q还有一cdFTP服务器所属主Z拥有账号的用戗VSFTPD中称此类用户为本地用Plocal usersQ,{同于其他FTP服务器中的real用户?

      local_enable=YES|NO
      控制vsftpd所在的pȝ的用h否可以登录vsftpd。默认gؓ(f)YES?

      local_root=
      定义所有本地用L(fng)根目录。当本地用户dӞ被更换到此目录下。默认gؓ(f)无?

      user_config_dir=
      定义用户个h配置文g所在的目录。用L(fng)个h配置文g目录下的同名文g。个人配|文件的格式与vsftpd.conf格式相同。例如定?user_config_dir=/etc/vsftpd/userconfQƈ且主Z有用户xiaowang,lisiQ那我们可以?user_config_dir的目录新增名为xiaowang、lisi的两个文件。当用户lisi dӞVSFTPD则会(x)duser_config_dir下lisiq个文g中的讑֮|应用于用户lisi。默认gؓ(f)无?

    5.3.3、虚拟用?

      guest_enable=YES|NO
      若是启动q项功能Q所有的非匿名登入者都视ؓ(f)guest。默认gؓ(f)关闭?

      guest_username=
      定义VSFTPD的guest用户在系l中的用户名。默认gؓ(f)ftp?

    5.4、安全措?

    5.4.1、用L(fng)录控?

      pam_service_name=vsftpd
      指出VSFTPDq行PAM认证时所使用的PAM配置文g名,默认值是vsftpdQ默认PAM配置文g?etc/pam.d/vsftpd?

      /etc/vsftpd.ftpusers
      VSFTPD止列在此文件中的用L(fng)录FTP服务器。这个机制是?etc/pam.d/vsftpd中默认设|的?

      userlist_enable=YES|NO
      此选项被激zdQVSFTPD读取userlist_file参数所指定的文件中的用户列表。当列表中的用户dFTP服务器时Q该用户在提C入密码之前就被禁止了。即该用户名输入后,VSFTPD查到该用户名在列表,VSFTPDq接禁止掉该用P不会(x)再进行询问密码等后箋步聚。默认gؓ(f)NO?

      userlist_file=/etc/vsftpd.user_list
      指出userlist_enable选项生效后,被读取的包含用户列表的文件。默认值是/etc/vsftpd.user_list?

      userlist_deny=YES|NO
      军_止q是只允许由userlist_file指定文g中的用户dFTP服务器。此选项在userlist_enable 选项启动后才生效。YESQ默认|止文g中的用户dQ同时也不向q些用户发出输入口o(h)的提C。NOQ只允许在文件中的用L(fng)录FTP服务器?
      
      tcp_wrappers=YES|NO
      在VSFTPD中用TCP_Wrappersq程讉K控制机制Q默认gؓ(f)YES?

    5.4.2、目录访问控?

      chroot_list_enable=YES|NO
      锁定某些用户在自家目录中。即当这些用L(fng)录后Q不可以转到pȝ的其他目录,只能在自家目??qing)其子目?下。具体的用户在chroot_list_file参数所指定的文件中列出。默认gؓ(f)NO?

      chroot_list_file=/etc/vsftpd/chroot_list
      指出被锁定在自家目录中的用户的列表文件。文件格式ؓ(f)一行一用户。通常该文件是/etc/vsftpd/chroot_list。此选项默认不设|?

      chroot_local_users=YES|NO
      本地用户锁定在自家目录中。当此项被激zLQchroot_list_enable和chroot_local_users参数的作用将发生变化Qchroot_list_file所指定文g中的用户不被锁定在自家目录。本参数被激zdQ可能带来安全上的冲H,特别是当用户拥有上传?shell讉K{权限时。因此,只有在确实了解的情况下,才可以打开此参数。默认gؓ(f)NO?

      passwd_chroot_enable
      当此选项ȀzLQ与chroot_local_user选项配合Qchroot()容器的位|可以在每个用户的基上指定。每个用L(fng)容器来源?etc/passwd中每个用L(fng)自家目录字段。默认gؓ(f)NO?

    5.4.3、文件操作控?

      hide_ids=YES|NO
      是否隐藏文g的所有者和l信息。YESQ当用户使用"ls -al"之类的指令时Q在目录列表中所有文件的拥有者和l信息都昄为ftp。默认gؓ(f)NO?

      ls_recurse_enable=YES|NO
      YESQ允怋?ls -R" 指o(h)。这个选项有一个小的安全风险,因ؓ(f)在一个大型FTP站点的根目录下?ls -R"?x)消耗大量系l资源。默认gؓ(f)NO?

      write_enable=YES|NO
      控制是否允许使用M可以修改文gpȝ的FTP 的指令,比如STOR、DELE、RNFR、RNTO、MKD、RMD、APPE 以及(qing)SITE。默认gؓ(f)NOQ不q自带的单配|文件中打开了该选项?

      secure_chroot_dir=
      q选项指向一个空目录Qƈ且ftp用户Ҏ(gu)目录无写权限。当vsftpd不需要访问文件系l时Q这个目录将被作Z个安全的容器Q用户将被限制在此目录中。默认目录ؓ(f)/usr/share/empty?

    5.4.4、新增文件权限设?

      anon_umask=
      匿名用户新增文g的umask 数倹{默认gؓ(f)077?

      file_open_mode=
      上传档案的权限,与chmod 所使用的数值相同。如果希望上传的文g可以执行Q设此gؓ(f)0777。默认gؓ(f)0666?

      local_umask=
      本地用户新增档案时的umask 数倹{默认gؓ(f)077。不q,其他大多数的FTP服务器都是?22。如果?zhn)的用户希望的话,可以修改?22。在自带的配|文件中此项pZ022?

    5.5、提CZ?

      ftpd_banner=login banner string
      此参数定义了login banner stringQ登录欢q语字符Ԍ。用户可以自行修攏V预讑րgؓ(f)无。当ftpd_banner讄后,取代系l原来的Ƣ迎词?

      banner_file=/directory/vsftpd_banner_file
      此项指定一个文本文Ӟ当用者登入时Q会(x)昄此该文g的内容,通常为欢q话语或是说明。默认gؓ(f)无。与ftpd_banner相比Q?banner_file是文本文件的形式Q而ftpd_banner是字串格式。banner_file选项取代ftpd_banner选项?

      dirmessage_enable=YES|MO
      控制是否启用目录提示信息功能。YES启用QNO不启用,默认gؓ(f)YES。此功能启用后,当用戯入某一个目录时Q会(x)查该目录下是否有message_file选项所指定的文档,若是有,则会(x)出现此文档的内容Q通常q个档案?x)放|欢q话语,或是对该目录的说明?

      message_file=
      此选项Q仅在dirmessage_enable选项ȀzL生效。默认gؓ(f).message?

    5.6、日志设|?

      xferlog_enable=YES|NO
      控制是否启用一个日志文Ӟ用于详细记录上传和下载。该日志文g由xferlog_file选项指定。默认gؓ(f)NOQ但单配|文件中ȀzL选项?

      xferlog_file=
      q个选项讑֮记录传输日志的文件名。默认gؓ(f)/var/log/vsftpd.log?

      xferlog_std_format=YES|NO
      控制日志文g是否使用xferlog的标准格式,如同wu-ftpd一栗用xferlog格式Q可以重C用已l存在的传输l计生成器。然而,默认的日志格式更为可L。默认gؓ(f)NOQ但自带的配|文件中ȀzM此选项?

      log_ftp_protocol=YES|NO
      当此选项ȀzdQ所有的FTPh和响应都被记录到日志中。提供此选项Ӟxferlog_std_format不能被激zR这个选项有助于调试。默认gؓ(f)NO?

    5.7、其他设|?

      setproctitle_enable=YES|NO
      YESQVSFTPD在pȝq程列表中显C每个会(x)?session)的状态。也是_(d)q程报告显C每个vsftpd?x)话在做什?挂v、下载等)Q如用ps -ef|grep ftp。出于安全的目的Q可以考虑此选项关闭。NOQ进E报告只昄一个vsftpdq程在运行。默认gؓ(f)NO?

      text_userdb_names=YES|No
      当用者登入后使用ls -al 之类指o(h)Ӟ目录列表的用户和l信息域Q默认是出现拥有者的UIDQ而不是该档案拥有者的名称。若是希望出现拥有者的名称Q则此功能开启。默认gؓ(f)NO?

      user_localtime=YES|NO
      默认为NO。YESQVSFTPD昄目录列表时用你本地时区的时间。默认是昄GMT旉。同P由ftp命o(h)“MDTM”返回的旉g受此选项影响?

      check_shell=YES|NO
      此选项仅对不用PAM方式的VSFTPD生效。当此选项关闭后,当本地用L(fng)录时QVSFTPD不会(x)?etc/shells文g以寻找一个有效的用户shell。默认ؓ(f)YES?

      nopriv_user=
      指定一个用P当VSFTPD不想要什么权限时Q用此用户w䆾。这用户最好是一个专用的用户Q而不是用户nobody。在大多数的机器上,nobody用户被用于大量重要的事情。默认gؓ(f)nobody?

      pam_service_name=
      指明VSFTPD使用用PAM验证服务时的PAM配置文g名。默认gؓ(f)ftp?

    6、VSFTPD应用

      本部分介lVSFTPD的具体应用方法?

    6.1、允许匿名用户上传文?

      在vsftpd.conf文g中修Ҏ(gu)增加以下选项Q?
      write_enable=YES
      anon_world_readable_only=NO
      anon_upload_enable=YES
      anon_mkdir_write_enable=YES

      然后创徏供匿名用户上传文件的目录Qƈ讑֮权限Q?
      # mkdir /var/ftp/incoming
      # chmod o+w /var/ftp/incoming
      ׃匿名用户QftpQ上传文Ӟ需要对incoming目录q行操作Q而incoming为root所有,匿名用户QftpQ对于incoming来说是其他用P所以要加入其他用户QoQ的写权限?

    6.2、限制用户在自家目录

      在默认配|中Q本地用户可以切换到自家目录以外的目录进行浏览,q在权限范围内进行上传和下蝲Q这无疑是个不安全因素?
      我们可以讄chrootQ让本地用户d后只能访问自家目录,无法讉K其他目录。相关的选项有三个:(x)chroot_local_user、chroot_list_enable、chroot_list_file。限制用户在自家目录有两U做法:(x)
      1、限制所有的本地用户在自家目?
      chroot_local_user=YES
      q种做法Q可能会(x)带来一些安全性上的冲H。参见前面的chroot_local_user选项描述?
      2、限刉分本地用户在自家目录
      chroot_local_user=NO
      chroot_list_enable=YES
      chroot_list_file=/etc/vsftpd.chroot_list
      ?etc/vsftpd.chroot_list文g中加入要限制的本地用户名。注意一个用户名一行?

    6.3、配|高安全U别的匿名FTP服务?

      VSFTPD自带的简单配|文件已l自U是偏执狂了Q这里看看能否更加偏执一些,。有些选项默认已经采用安全性的讄Q这里就不再写出了?

      #只允许匿名访问,不允许本地用戯?
      anonymous_enable=YES
      local_enable=NO

      #使用ftpd_banner取代VSFTPD默认的欢q词Q免得泄漏相关信?
      ftpd_banner=Welcome to this FTP Server
      #只让匿名用户览可阅ȝ文gQ不可以览整个pȝ
      anon_world_readable_only=YES
      #隐藏文g的所有者和l信息,匿名用户看到的文件的所有者和l全变ؓ(f)ftp
      hide_ids=YES

      #取消写权?
      write_enable=NO
      anon_upload_enable=NO
      anon_mkdir_write_enable=NO
      anon_other_write_enable=NO

      #使用单独模式Qƈ指定监听的IP地址
      listen_address=ip address
      #对连接进行控Ӟq有时旉Q那根据具体情况再说了?
      connect_from_port_20=YES
      pasv_min_port=50000
      pasv_max_port=60000
      #控制q发敎ͼ限定每个IP地址的ƈ发数Q这个嘛Q根据用戯已定了?
      max_clients=numerical value
      max_per_ip=numerical value
      #限定下蝲速度Q具体限多大Q就q戯己定了,80KB/sQ也很快了吧?
      anon_max_rate=80000

      #启用详细的日志记录格?
      xferlog_enable=YES

    6.4、基于IP地址的虚拟FTP服务?

      假定服务器有两个IP地址Q?92.168.0.1?92.168.0.2。VSFTPD是徏立在192.168.0.1上的Q现在我们在192.168.0.2上再提供一个虚拟FTP服务器。如何在一台服务器上用多个IP 地址Q请参考相x档?

      1、创拟FTP服务器的根目录?
      mkdir -p /var/ftp2/pub
      保/var/ftp2?var/ftp2/pub目录的拥有者和l均为rootQ掩码ؓ(f)755?

      2、增加虚拟FTP服务器的匿名用户帐号。原先的FTP服务器用系l用户ftp作ؓ(f)其匿名用户帐受我们要增加一个ftp2用于虚拟FTP服务器?
      useradd -d /var/ftp2 -M ftp2

      3、创拟FTP服务器的配置文g。复制原来的vsftpd.conf作ؓ(f)虚拟FTP服务器的配置文gQƈ修改相关参数?
      cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd2.conf
      新添或修改以下参敎ͼ(x)
      listen=YES
      listen_address=192.168.0.2
      ftp_username=ftp2

      注:(x)׃VSFTPD默认是监听所有的IP地址Q当我们讑֮ZIP的虚拟FTP服务器时Qؓ(f)防止原来的FTP服务器与虚拟FTP服务器发生监听上的冲H,原FTP服务器需要指定监听的IP地址。在q里Q原来的配置文g中就要设|listen_address=192.168.0.1?

      4、启动虚拟FTP服务器?

      /etc/rc.d/init.d/vsftpd脚本在启动时Q扫?etc/vsftpd/目录下所有的*.conf文gQ按?*.conf文g的先后,依次启用vsftpdq程Q每个vsftpdq程对应一?conf文g。即Q“ls /etc/vsftpd/”列表的ơ序与“ps -aux |grep vsftpd”中的顺序一栗当然了Q“ps -aux | grep vsftpd”中也显C出vsftpd所使用的配|文Ӟ从中也可以看哪个vsftpdq程对应哪个FTP服务器。如果没有列出配|文Ӟ那就是默认的 vsftpd.confQ那么该q程也就是原来的FTP服务器进E?
      ׃W?步中虚拟FTP服务器的配置文g被命名ؓ(f)vsftpd2.conf文gQ所以我们可以用/etc/rc.d/init.d/vsftpd脚本同时启动或关闭原FTP服务器和新加的虚拟FTP服务器?
      以下命o(h)单独启动虚拟FTP服务器:(x)
      /usr/sbin/vsftpd /etc/vsftpd/vsftpd2.conf &
      单独关闭虚拟FTP服务器,用“ps -aux | grep vsftpd”查E号Q再用kill指o(h)杀死虚拟FTP的进E?

    6.5、虚拟用L(fng)配置

    6.5.1、VSFTPD的虚拟用户介l?

      VSFTPD的本地用hw是pȝ的用P除了可以dFTP服务器外Q还可以dpȝ使用其他pȝ资源Q而VSFTPD的虚拟用户则?FTP服务的专用用P虚拟用户只能讉KFTP服务器资源。对于只需要通过FTP对系l有d权限Q而不需要其他系l资源的用户或情冉|_(d)采用虚拟用户方式是很适合的?
      VSFTPD的虚拟用户采用单独的用户?口o(h)保存方式Q与pȝ账号Qpasswd/shadowQ分,q大大增Zpȝ的安全性?VSFTPD可以采用数据库文件来保存用户/口o(h)Q如hash;也可以将用户/口o(h)保存在数据库服务器中Q如MySQL{。VSFTPD验证虚拟用户Q则采用PAM方式。由于虚拟用L(fng)用户?口o(h)被单独保存,因此在验证时QVSFTPD需要用一个系l用L(fng)w䆾来读取数据库文g或数据库服务器以完成验证Q这是guest用户Q这正如同匿名用户也需要有一个系l用户ftp一栗当Ӟguest用户也可以被认ؓ(f)是用于映虚拟用戗?
      配置虚拟用户分ؓ(f)几部分:(x)guest用户的创建、用?口o(h)的保存、PAM认证配置、vsftpd.conf文g讄{。具体的配置Ҏ(gu)Q参考下面小节。注Q在后面的例子中Q假定存在虚拟用户xiaotong和xiaowang?

    6.5.2 用户创徏和目录设|?

      在系l中dvsftpdguest用户Q作拟用户在pȝ中的代表?

      useradd vsftpdguest

      当虚拟用L(fng)录后Q所在的位置为vsftpdguest的自家目?home/vsftpdguest。如果要让虚拟用L(fng)录到/var/ftp{其他目录,修改vsftpdguest的自家目录即可?

    6.5.3、配|文件的讄

    6.5.3.1、基本设|?

      在vsftpd.conf配置文g中,加入以下参数Q?
      guest_enable=YES
      guest_username=vsftpdguest

    6.5.3.2、虚拟用L(fng)权限配置?

      VSFTPD-1.2.0d了virtual_use_local_privs参数Q当该参数激z(YESQ时Q虚拟用户用与本地用户相同的权限。当此参数关闭(NOQ时Q虚拟用户用与匿名用户相同的权限,q也是VSFTPD-1.2.0之前版本对虚拟用h限的处理Ҏ(gu)。这两者种做法相比Q后者更加严g些,特别是在有写讉K的情形下。默认情况下此参数是关闭的(NOQ?
      下面先介lvirtual_use_local_privs=NOӞ即VSFTPD-1.2.0之前版本对虚拟用h限的配置Ҏ(gu)Q?

      ①控制虚拟用h览目?
      如果让用户不能浏览目录,但仍可以Ҏ(gu)件操作,那么需要执行以下二个步骤:(x)一Q配|文件中Qanon_world_readable_only=YES。二Q虚拟用L(fng)录的权限改ؓ(f)只能由vsftpdguest操作Q?
      [root@hpe45 vsftpd]# chown vsftpdguest.vsftpdguest /home/vsftpdguest
      [root@hpe45 vsftpd]# chmod 700 /home/vsftpdguest
      ②允许虚拟用户上传文?
      write_enable=YES
      anon_upload_enable=YES
      ③允许虚拟用户修Ҏ(gu)件名和删除文?
      anon_other_write_enable=YES
      ׃以上选项的设|同样会(x)对匿名用L(fng)效。如果不惛_名用戯机拥有同L(fng)权限Q最好是止匿名用户d?

      在VSFTPD-1.2.0中当virtual_use_local_privs=YESӞ只需write_enable=YESQ虚拟用户就可以拥有写权限?

    6.5.3.3、虚拟用L(fng)其他配置

      ①限定虚拟用户在自家目录?

      chroot_local_user=NO
      chroot_list_enable=YES
      chroot_list_file=/etc/vsftpd.chroot_list
      ?etc/vsftpd.chroot_list文g中加入xiaotong和xiaowang?
      或者,chroot_local_user=YES

      ②虚拟用L(fng)个h配置?

      如果惌个别的虚拟用h有自q别的配置Q同样可以徏立虚拟用L(fng)个h配置文g。在主配|文件中加入Q?
      user_config_dir=/etc/vsftpd/vsftpd_user_conf
      生成/etc/vsftpd/vsftpd_user_conf目录Q在该目录下建立与特定虚拟用户同名的文gQ?
      [root@hpe45 vsftpd]# mkdir vsftpd_user_conf
      [root@hpe45 vsftpd]# cd vsftpd_user_conf
      [root@hpe45 vsftpd_user_conf]# touch xiaowang
      然后在xiaowang文g中就可以加入专对xiaowang生效的选项讄了?
      注:(x)如果在个人配|文件中加入chroot_local_user=YES是无效的?

    6.5.3.4、虚拟用户个人目录设|?

      大家可以发现Q无论是哪个虚拟用户Q登录后所在的目录都是/home/vsftpdguestQ即都是guest_username用户的自家目录。下面,介绍如何为每个虚拟用户徏立自家目录?
      一U作法是在虚拟用L(fng)个h配置文g中用local_root选项指定虚拟用户的自家目录。以xiaowangZQ在W上步的基础上,首先/etc/vsftpd/vsftpd_user_conf/xiaowang文g中加入:(x)
      local_root=/home/xiaowang
      新徏xiaowang目录Qƈ权限设为vsftpdguestQ?
      [root@hpe45 home]# mkdir xiaowang
      [root@hpe45 home]# chown vsftpdguest.vsftpdguest ./xiaowang

    6.5.4、MySQL保存虚拟用户

      本节介绍如何虚拟用L(fng)用户名和口o(h)保存在MySQL的数据库中。这主要分二个部分,一是将用户和口令保存在数据库,二是讄相应的PAM 认证。ؓ(f)了方便论qͼ做如下假定:(x)数据库vsftpdvuQ表usersQ字Dname和passwd用于保存虚拟用户的用户名和口令;Z安全Q只授权 vsftpdguest读vsftpdvu数据库的users表?

      1、虚拟用L(fng)用户?口o(h)的保存。这部分在MySQL数据库中完成。首先,创徏数据库vsftpdvu以及(qing)表usersQƈ插入虚拟用户xiaotong、xiaowang。执行以下命令:(x)
      [root@hpe45 vsftpd]#mysql -p
      mysql>create database vsftpdvu;
      mysql>use vsftpdvu;
      mysql>create table users(name char(16) binary,passwd char(16) binary);
      mysql>insert into users (name,passwd) values ('xiaotong',password('qqmywife'));
      mysql>insert into users (name,passwd) values ('xiaowang',password('ttmywife'));
      mysql>quit

      然后Q授权vsftpdguest只能读vsftpdvu数据库的users表。执行以下命令:(x)
      [root@hpe45 vsftpd]#mysql -u root mysql -p
      mysql>grant select on vsftpdvu.users to vsftpdguest@localhost identified by 'i52serial0';
      mysql>quit

      如果要验证刚才的操作是否成功可以执行下面命o(h)Q?
      [root@hpe45 vsftpd]#mysql -u vsftpdguest -pi52serial0 vsftpdvu
      mysql>select * from users;
      如果成功Q将?x)列出xiaotong、xiaowang和加密后的密码?

      2、设|PAM认证。这里我们要用到一个利用mysqlq行pam验证的开源项目(http: //sourceforge.net/projects/pam-mysql/Q。首先从|站下蝲它的E序包pam_myql-0.5.tar.gzQ复制到/root目录中。在~译安装之前Q要保mysql-devel的RPM包已l安装在你的机器上,如果没有请从RHL安装光盘中安装该包。然后,执行以下命o(h)Q?
      [root@hpe45 root]#tar xvzf pam_mysql-0.5.tar.gz
      [root@hpe45 root]#cd pam_mysql
      [root@hpe45 pam_mysql]#make
      [root@hpe45 pam_mysql]#make install
      make installq一步可能会(x)出现错误Q那只好手动该目录下生成的pam_mysql.o复制?lib/security目录下?
      接下来,我们要设|vsftpd的PAM验证文g。打开/etc/pam.d/vsftpd文gQ加入以下内容:(x)
      auth required pam_mysql.o user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2
      account required pam_mysql.o user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2
      上面涉及(qing)到的参数Q只要对应前面数据库的设|就可以明白它们的含义。这里需要说明的是crypt参数Qcrypt=0Q口令以明文方式Q不加密Q保存在数据库中Qcrypt=1Q口令用UNIXpȝ的DES加密方式加密后保存在数据库中Qcrypt=2Q口令经qMySQL?password()函数加密后保存?/p>

    ]]>
    Linux操作_֍推荐 VI使用技巧介l?/title><link>http://www.tkk7.com/badboyryan/archive/2007/04/30/114796.html</link><dc:creator>坏男?/dc:creator><author>坏男?/author><pubDate>Mon, 30 Apr 2007 07:48:00 GMT</pubDate><guid>http://www.tkk7.com/badboyryan/archive/2007/04/30/114796.html</guid><wfw:comment>http://www.tkk7.com/badboyryan/comments/114796.html</wfw:comment><comments>http://www.tkk7.com/badboyryan/archive/2007/04/30/114796.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.tkk7.com/badboyryan/comments/commentRss/114796.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/badboyryan/services/trackbacks/114796.html</trackback:ping><description><![CDATA[ <p>一、vi基本命o(h) </p> <p>1Q光标命?</p> <p>左h 上j 下k 右l </p> <p>nG --n敎ͼ该命令立即光标跛_指定行;n为空Q光标蟩到文件最后一行?</p> <p>Ctrl+G--光标所在位|的行数和列数报?</p> <p>w,b--使光标向前或向后跌一个单?</p> <p> <br />2Q编辑命?</p> <p>(n)dd 删除 </p> <p>(n)yy 复制 </p> <p>i 光标前插?</p> <p>a 当前字母后插?</p> <p>r 在当前光标处替换 </p> <p>cw 替换光标所在处的单词(从光标开始处Q?</p> <p>dw 删除光标所在处的单?</p> <p>x 删除Q右Q?</p> <p>X 删除Q左Q?</p> <p>u 撤销 </p> <p>. 重复上次操作 </p> <p>o 插入新行 </p> <p>J 合ƈ两行 </p> <p>A 行尾 </p> <p>:.,3w /tmp/xx </p> <p>:r /tmp/xx </p> <p> <br />3Q查扑֑?</p> <p>f 查找 </p> <p>/ 查找 </p> <p>4Q复制粘贴命?</p> <p>(n)yy 拯n行到剪切?</p> <p>p _脓(chung)(? </p> <p>P _脓(chung)Q当前) </p> <p> <br />二、vi选项讄 </p> <p> <br />vi是一个强大的~辑器,它不仅可以用来处理我们^时的文本工作Q还可以用来写程序文件。在用viq行E序~辑Ӟ它可以实现语法加亮显C、自动羃q、括号匹配等~辑功能。ؓ(f)控制不同的编辑功能,vi 提供了很多内部选项?</p> <p> <br />利用 :set 命o(h)可以讄选项。基本语法ؓ(f)Q?</p> <p> <br />: set option 讄选项 option </p> <p> <br />常见的功能选项包括Q?</p> <p> <br />autoindent 讄该选项Q则正文自动~进 </p> <p> <br />ignorecase 讄该选项Q则忽略规则表达式中大小写字母的区别 </p> <p> <br />number 讄该选项Q则昄正文行号 </p> <p> <br />ruler 讄该选项Q则在屏q底部显C光标所在行、列的位|?</p> <p> <br />tabstop 讄?Tab 键蟩q的I格数。例?set tabstop=nQn默认gؓ(f)8 </p> <p> <br />1Q语法加亮显C?</p> <p> <br />: syntax on 该命令在vi中打开语法加亮昄的功能。这样以后在输入的字W中Qvi׃(x)自动的识别出关键字,字符串以?qing)其他的一些语法元素,q以不同的颜色来昄出来?</p> <p> <br />2Q自动羃q?</p> <p> <br />在vi中自动羃q的选项一般有以下的几U:(x) </p> <p> <br />autoindent: 在这U羃qŞ式中Q新增加的行和前一行有相同的羃qŞ式?</p> <p> <br />smartindent: 在这U羃q模式中Q每一行都和前一行有相同的羃q量Q同时能够正的识别出{和}Q当遇到双括号Q}Q,则取消了~进形式。此外还增加了识别C语言关键字的功能。如果一行是?开头的Q那么这U格式将?x)被?gu)对待而不采用~进格式。这U羃q格式强于autoindent?</p> <p> <br />cindentQ这是C语言的羃qŞ式,采用q样的羃q方式的E序语言有:(x)CQC++,Java{。当采用q种~进格式Ӟvi׃(x)自动的采用标准的C语言形式。这U羃q格式强于smartindent?</p> <p> <br />可以用如下命令进行羃qŞ式的讄Q?</p> <p> <br />Qset autoindentQaiQ?</p> <p> <br />Qset smartindentQsiQ?</p> <p> <br />Qset cindentQciQ?</p> <p> <br />3Q显C?</p> <p> <br />Qset numberQnuQ?昄行号 </p> <p> <br />: set nonumber (nonu) 不显C?</p> <p> <br />在每个用L(fng)目录下,都有一个vi的配|文?.vimrc"(没有的话可以自己创徏)。用户可以编辑它Q输入以上命令,使这些设|在每次vi旉有效。例如:(x)?vimrc文g中加入如下设|行Q?</p> <p> <br />set nu #昄行号 </p> <p> <br />set nonu #不显C?</p> <p> <br />set ic #查找时不考虑大小?</p> <p> <br />set noic #查找时考虑大小?</p> <p> <br />set smartindent #自动~进 </p> <p> <br />syntax on Q语法加?</p> <p> </p> <p>原文链接: <a >http://tech.ccidnet.com/art/302/20070428/1073137_1.html</a><br /></p> <img src ="http://www.tkk7.com/badboyryan/aggbug/114796.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/badboyryan/" target="_blank">坏男?/a> 2007-04-30 15:48 <a href="http://www.tkk7.com/badboyryan/archive/2007/04/30/114796.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一ơ性成功编译Linux内核Q?/title><link>http://www.tkk7.com/badboyryan/archive/2007/04/27/114044.html</link><dc:creator>坏男?/dc:creator><author>坏男?/author><pubDate>Fri, 27 Apr 2007 04:46:00 GMT</pubDate><guid>http://www.tkk7.com/badboyryan/archive/2007/04/27/114044.html</guid><wfw:comment>http://www.tkk7.com/badboyryan/comments/114044.html</wfw:comment><comments>http://www.tkk7.com/badboyryan/archive/2007/04/27/114044.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.tkk7.com/badboyryan/comments/commentRss/114044.html</wfw:commentRss><trackback:ping>http://www.tkk7.com/badboyryan/services/trackbacks/114044.html</trackback:ping><description><![CDATA[ <p>一ơ即大功告成 Linux内核升全过E?<br /><br /></p> <p id="TBPingURL">Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1583735<br /><br /><br /><br />今天l于成功的编译了linux-2.6.18的内核,是在redhat9 2.4.20-8的内核基上进行的Q?br /><br /><br />作者:(x)飘扬 来源Q飞飞博客 发布旉Q?007.04.18 <br /> <br />׃开发环境需要在linux-2.6内核上进行,于是准备Ҏ(gu)的虚拟机上的Linuxpȝ升。没惛_q一弄就׃两天旉Q反复装pȝQ辛苦啊~~Q,ȝ把Linuxpȝ?.4.20-8内核成功升C2.6.18内核?</p> <p> <br />|上虽然有很多介lLinux内核升的文章,不过要么q时Q下载链接失效;要么表达不清Q不知所云;更可气的是很多文章在转蝲q程中命令行都有错误。刚开始我是在这些“攻略”的指点下来升的,以致于浪费了很多旉?</p> <p> <br />现在Q费周折,升成功Q心情很爽,性也来写个“升U攻略”吧Q于是特意又在虚拟机上重新安装一个LinuxpȝQ再来一ơ完的升Q边升边记录这些步骤,写成一Linux内核升记实录(可不是回忆录啊!Q,和大家一起分享~~Q?</p> <p> <br />首先说明Q下面带#L(fng)行都是要输入的命令行Q且本文提到的所有命令行都在l端里输入。接下来Q让我们一起开始精彩的Linux内核升之旅吧! </p> <p> <br />一、准备工?</p> <p> <br />启动LinuxpȝQƈ用根用户dQ进入终端模式下?</p> <p> <br />1、查看Linux内核版本 </p> <p># uname -a </p> <p>如果屏幕昄的是2.6.xQ说明你的已l是2.6的内核,也用不着看下文了Q该q什么干什么去吧!~~~如果昄的是2.4.xQ那恭喜你,闯关通过Q赶快进行下一步?</p> <p> <br />2、下?.6内核源码 </p> <p>下蝲地址Q?a >http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2</a></p> <p> <br />3、下载内核升U工?</p> <p>(1)下蝲module-init-tools-3.2.tar.bz2 </p> <p> <a >http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-3.2.tar.bz2</a> </p> <p>(2)下蝲mkinitrd-4.1.18-2.i386.rpm </p> <p> <a >http://ayo.freshrpms.net/fedora/linux/3/i386/RPMS.core/mkinitrd-4.1.18-2.i386.rpm</a> </p> <p>(3)下蝲lvm2-2.00.25-1.01.i386.rpm </p> <p> <a >http://ayo.freshrpms.net/fedora/linux/3/i386/RPMS.core/lvm2-2.00.25-1.01.i386.rpm</a> </p> <p>(4)下蝲device-mapper-1.00.19-2.i386.rpm </p> <p> <a >http://ayo.freshrpms.net/fedora/linux/3/i386/RPMS.core/device-mapper-1.00.19-2.i386.rpm</a> </p> <p> <br />(2.6.18内核和这4个升U工h都有备䆾Q如果以上下载地址失效Q请留下你的邮箱Q我l你发过? <br /><a >http://www.fly2.cn/guestbook</a><br />二、配|工?</p> <p> <br />好啦Q?.6内核?个升U工具都下蝲完了(一个也不行Q如果没有下载齐全,请不要尝试下面的步骤Q升U是不会(x)成功?Q下面回到Linuxpȝ中开始配|工作吧?</p> <p> <br />4、将下蝲好的内核?个升U工具都拯?usr/src文g夹下。怎么拯׃用我教了吧~~~~不会(x)拯的去撞墙吧!~~呵呵Q?</p> <p> <br />5、拷贝完毕,开始解压新内核Q具体操作请依次执行以下命o(h)Q?</p> <p># cd /usr/src (q入?usr/src目录下,如果已经?usr/src目录下,可不执行该命? </p> <p># rm –rf linux (删除linux文g夏V值得一提的是,如果内核先前从未~译q,则没有这个文件夹Q此命o(h)行可略过) </p> <p># tar jvxf linux-2.6.18.tar.bz2 (解压新内? </p> <p># ln -s linux-2.6.18 linux (重新生成linux文g? </p> <p> <br />6、安装module-init-tools工具?</p> <p>?usr/src目录下,依次执行下列命o(h)Q(ZhiQiaoQ最好先看下READMEQ?</p> <p># tar jvxf module-init-tools-3.2.tar.bz2 (解压module-init-tools) </p> <p># cd module-init-tools-3.2 (?usr/src目录q入module-init-tools目录? </p> <p>#./configure --prefix=/ Q?-prefix=/若重新配|文件把文g攑ֈ指定的目录下Q?/p> <p># make moveold </p> <p># make all install </p> <p>#./generate-modprobe.conf /etc/modprobe.conf </p> <p> <br />7、安装另外三个升U工?</p> <p>回到/usr/src目录下,依次执行下列3个命令来安装另外三个升工具Q?</p> <p># rpm -ivh --nodeps mkinitrd-4.1.18-2.i386.rpm (注意Q这里一定要加入--nodeps参数Q下? QZhiQiaoQnodeps不验证组件的兌性)</p> <p># rpm -ivh --nodeps lvm2-2.00.25-1.01.i386.rpm </p> <p># rpm -ivh --nodeps device-mapper-1.00.19-2.i386.rpm </p> <p> <br />如果不更C上几个升U包Q在后面~译内核时会(x)提示以下错误Q?</p> <p>mkinitrd failed </p> <p>make[1]: *** [install] Error 1 </p> <p>make: *** [install] Error 2 </p> <p> <br />8、配|内栔R项。有点繁琐,~~希望一ơ成功哦~~?</p> <p># cd linux-2.6.18 (q入?usr/src/linux-2.6.18目录? </p> <p># make mrproper (该命令可保源代码目录下没有不正的.o文g) </p> <p># make menuconfig Q配|内核各选项Q?</p> <p> <br />此时?x)出C个图形界面,列出了所有的内核配置选项Q有的选项下还有子选项Q你可以用方向键来选择Q用Y键来定。经q我多次试验Q大多数选项默认pQ以下几个选项必须选择Q请认真核对下面每一个选项Q否则编译很有可能前功尽弃)Q?</p> <p> <br />(1)Loadable Module support选项中,一定要选上“Module unloading”和“Automatic kernel module loading”这两项Q?</p> <p>(2)Device Drivers--->Block Devices中一定要选上Loopback device supportQ?</p> <p>Device Drivers--->Multi-device support(RAID and LVM)”处要选上“device mapper support”; </p> <p>Device Drivers--->Graphics support? 一定要选上?Support for frame buffer devices”; </p> <p>Device Drivers --->;USB support --->选上”USB Mass Storage support”(如果是在实环境中Q想要更多USB支持Q就全选吧。我的是在虚拟机中,用不着了) </p> <p>Device Drivers --->; Network device support --->;Ethernet (10 or 100Mbit) --->; <*>; AMD PCnet32 PCI support </p> <p>(3) File system--->Q以?个选项是关于ext2和ext3文gpȝ配置Q全部选上Q?</p> <p>Second extended fs support </p> <p>Ext2 extended attributes </p> <p>Ext2 POSIX Access Control Lists </p> <p>Ext2 Security Labels </p> <p>Ext3 journalling file system support </p> <p>Ext3 extended attributes </p> <p>Ext3 POSIX Access Control Lists </p> <p>Ext3 Security Labels </p> <p>JBB (ext3) debugging support </p> <p>File system--->DOS/FAT/NT Filesystems --->选上?NTFS file system support”; </p> <p>File Systems --> Miscellaneous filesystems ---><*> Compressed ROM file system support (cramfs) </p> <p> <br />注意Q?</p> <p>ext2和ext3文gpȝ配置很重要,也是必需的,如果对Ext3、Ext2文g的支持直接编译进内核Q在你reboot时机器就?x)当掉,出现如下错误信息Q?</p> <p>kernel panic : no init found ,try passing init = option to kernel..... </p> <p>或者是Q?</p> <p>VFS:Cannot open root device "hdxy" or unknow-block(0,0) </p> <p>Please append a correct "root=" boot option </p> <p>kernel panic:VFS:Unable to mount root fs on unknown-block(0,0) </p> <p>或者是Q?</p> <p>mount: error 19 mounting ext3 </p> <p>pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed: 2 </p> <p>umount /initrd/proc fail: 2 </p> <p>Freeing unused kernel memory: 244k freed </p> <p>Kernel panic ?not syncing: No init found. Try passing init = option to kernel </p> <p>Q我的机器就是在重启之后出现W三U错误,q不ȝl,郁闷死,只好重装了~~~Q?</p> <p> <br />Q?Q如果你在vmware下重新编译内核,盘用的是scsi的,以下选项必选:(x) </p> <p>Device Drivers --->SCSI device support ---><*>SCSI disk support </p> <p>Device Drivers--->SCSI device support--->SCSI low-level drivers--->;<*>; BusLogic SCSI support </p> <p> <br />三、编译工?</p> <p> <br />OKQ繁杂的配置工作完成了,xQ编译前的准备工作都做好了! </p> <p>9、开始编译啦……:(x) </p> <p>?usr/src/linux-2.6.18目录下,执行以下命o(h)卛_~译。编译需要一D|_(d)l自己倒杯茶耐心{候吧Q?</p> <p># make dep Q徏立编译时所需的从属文件。注意:(x)如果内核从未~译q,此步可蟩q) </p> <p># make clean Q清除内核编译的目标文gQ?</p> <p># make bzImage Q注意大写。这一步才真正~译内核Q(ZhiQiaoQ这步大U花了我10分钟旉Q配|:(x)512M内存Q?.8G CPUQ?</p> <p>内核~译成功后,?x)?usr/src/linux/arch/i386/boot目录中生成一个新内核的映像文件bzImage。如果用make zImage~译Q内核很大的话,pȝ?x)提CZ使用make bzImage命o(h)来编译,所以我直接用make bzImage来编译?</p> <p># make modules Q编译可加蝲模块Q?QZhiQiaoQ这步大U花?0分钟旉Q?/p> <p># make modules_install Q安装可加蝲模块Q?</p> <p>安装成功后,pȝ?x)?lib/modules目录下生成一?.6.18子目录,里面存放着新内核的所有可加蝲模块?</p> <p># make install Q安装新内核Q?</p> <p> <br />注意Qmake install的时候可能会(x)出现如下错误信息Q?</p> <p>No module BusLogic found for kernel 2.6?8 </p> <p>mkinitrd failed </p> <p>此问题一般只出现在SCSI盘QVMWARE+REDHAT架构中,因ؓ(f)BusLogic被编译进了内核而不是一个module的Ş式(2.4内核的Buslogic模块即静态编译进内核也不行)。解x式是直接可以BusLogic.o文g复制q去Q?</p> <p># cp /usr/src/linux-2.6.18/drivers/scsi/BusLogic.o /lib/modules/2.6.18/kernel/drivers/scsi </p> <p>不过别忘讎ͼ复制q后再执行一下make install?</p> <p>Q如果make menuconfigӞ把BusLogic模块选成M--Module模式--׃?x)出现这个提C。) <br /> <br />ZhiQiaoQ这里我是按上面所说的Ҏ(gu)做的l果在启动时出现关于BusLogic的错误,后来我将虚拟机的盘换成了IDE的,成功升QVmware默认的硬盘是SCSI的,有很多h不知道怎么Ҏ(gu)IDE的,具体Ҏ(gu)可以参考四、启动新内核 </p> <p>10、将新内核和System.map文g拯?boot目录下,依次执行以下命o(h)Q?</p> <p># cp /usr/src/linux-2.6.18/arch/i386/boot/bzImage /boot/vmlinuz-2.6.18 </p> <p># cp /usr/src/linux-2.6.18/System.map /boot/System.map-2.6.18 </p> <p># cd /boot Q进入boot目录Q?</p> <p># rm –rf System.map (删除原来的连? </p> <p># ln -s System.map-2.6.18 System.map (重新建立q接) </p> <p> <br />11、修改Grub启动理?</p> <p>如果没有错误的话, 下面开始修改grub配置文gQ不要告诉我你用的liloQ?</p> <p>?boot目录下,执行以下命o(h)Q?</p> <p># new-kernel-pkg --mkinitrd --depmod --install 2.6.18 Q这时候你?boot下生成一个initrd-2.4.12.imgQƈ且你的grub.conf也作了相应更改) </p> <p> <br /># df Q查看根目录在那个分区,下一步要用到。注意,q里根分Z时boot的那?0M的分区,而一般是你最大的那个分区Q也是?”,千万不要搞错哦。我的ؓ(f) /dev/hda2Q?</p> <p> <br /># vi grub/grub.conf QZhiQiaoQ此处应该ؓ(f)/grub/grub.confQ?/p> <p>q入grub.conf文gQ找到如下信息:(x) </p> <p>default=1 </p> <p>timeout=10 </p> <p>splashimage=(hd0,0)/grub/splash.xpm.gz </p> <p>title Red Hat Linux (2.6.18) </p> <p>root (hd0,0) </p> <p>kernel /vmlinuz-2.6.18 ro root= LABEL=/ </p> <p>initrd /initrd-2.6.18.img </p> <p>做两处修改:(x) </p> <p>Q?Q?default=1改ؓ(f)default=0Q不改的话,重启之后默认q入2.4内核Q?</p> <p>Q?Q?kernel行的“LABEL=/”换成根目录所在的分区Q上一步查看的是Q?</p> <p>此步很重要,修改错误会(x)可能Dq不ȝl,我把我修改后的grub.conf文g列出来,不明之处Q可以对照修改:(x) </p> <p>default=0 </p> <p>timeout=10 </p> <p>splashimage=(hd0,0)/grub/splash.xpm.gz </p> <p>title Red Hat Linux (2.6.18) </p> <p>root (hd0,0) </p> <p>kernel /vmlinuz-2.6.18 ro root=/dev/hda2 </p> <p>initrd /initrd-2.6.18.img </p> <p>title Red Hat Linux (2.4.20-8) </p> <p>root (hd0,0) </p> <p>kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ </p> <p>initrd /initrd-2.4.20-8.img </p> <p> <br />12QOKQ大功告成!赶快重启Q看看升U后?.6内核? <br /><br />13Q下一步该做什么呢Q我的qqQ?47863130<br /></p> <p> <br />我编译以后成功运行看看我的版本号Q下?br /><br /><img alt="redhat9上面的linux-2.6.18的内? src="http://www.tkk7.com/images/blogjava_net/badboyryan/14948/o_rdt.bmp" align="center" /><br /> </p> <br /> <br /> <p id="TBPingURL"> </p> <img src ="http://www.tkk7.com/badboyryan/aggbug/114044.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.tkk7.com/badboyryan/" target="_blank">坏男?/a> 2007-04-27 12:46 <a href="http://www.tkk7.com/badboyryan/archive/2007/04/27/114044.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux2.6.9内核如何~译http://www.tkk7.com/badboyryan/archive/2007/04/26/113748.html坏男?/dc:creator>坏男?/author>Thu, 26 Apr 2007 04:50:00 GMThttp://www.tkk7.com/badboyryan/archive/2007/04/26/113748.htmlhttp://www.tkk7.com/badboyryan/comments/113748.htmlhttp://www.tkk7.com/badboyryan/archive/2007/04/26/113748.html#Feedback2http://www.tkk7.com/badboyryan/comments/commentRss/113748.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/113748.htmlredhat9
    2.6.9内核

    1、越来越多的Linuxer开始对处在测试中?.6内核产生了兴,实它非常具有吸引力Q众多的Ҏ(gu)让人眼花R乱。我也从2.4全面转到?.6内核之下Qn受着新特性带来的新鲜体验。不q不兄弟在~译新内核时或多或少的遇C一些问题,看来新娘的盖 头也不是那么Ҏ(gu)揭开的:(x))
    因此我打写一些文章来介绍~译新内核时的一些应该注意的地方Q以减少兄弟们在~译新内核时的麻烦?br />׃我的水^十分有限Q写q样的文章实在是勉ؓ(f)光。文中肯定有错误疏失之处Q还请兄弟们多多包涵Q?
    W一部分Q准备:(x) ?使用新的内核首先当然要取得新内核的源码,内核的官方网站是http://www.kernel.org 在上面可以得到最新的内核?.6的更新是相当快的Q你可以在命令行下用finger @kernel.org命o(h)来快速得到当前最新的内核列表。在q篇文章中我以2.6.0-test6?准?下蝲了内核源码之后,?们要使用
    tar jxvf linux-2.6.0-test6.tar.bz2来提取源码,如果你下载的是以tgzl尾的压~包׃用zxvf参数?解压。我强烈你不要?/usr/src/linuxq个目录来存放源码,因ؓ(f)使用q个目录你需要手工在/usr/include目录下作一些符号链接,q?实在不是一个好L?所以我你ؓ(f)源码单独Z个目录,q里我们的目录是/src/linux-2.6.0-test6?br /> 要编译与正常q行新的内核你需 要升U一些Y件包Q这些信息在源码目录下的Documentation/Changes文g中,
    h据你的实际情况选择升。这其中我强调一下你应该升 Module-Init-ToolsQ不要被你当前系l中depmod -V输出的版本号qh(在RH9?它的输出?.4.22,感觉好象要比Changes中所要求的要高,实际上它们用不同的版本规则)。新?Module-Init-Tools在下面的|址中取得:(x)
    http: //www.kernel.org/pub/linux/kernel/people/rusty/modules/ 我用的?.9.14?br />如果你下载的是源?br />使用如下步骤q行~译 ./configure --prefix=/ make moveold
    q一步会(x)你以前的insmod, modprobe, rmmod?lsmod
    重命名ؓ(f)insmod.old,modprobe.old, rmmod.old lsmod.old。   ?make make install
     然后使用 ./generate-modprobe.conf /etc/modprobe.conf
    原来的/etc/modules.conf转换?etc/modprobe.conf
    如果你用devfspȝ你还需要复制modprobe.devfs ?etc目录下?/p>

    当你升完相兌Y件包之后Q准备工作就完成了Q下面我们将q入到编译阶Dc(din)?
    W二部分
    ~译Q?br /> 2.6的buildpȝ?.4有很大的不同Q实际上是更加简单与方便了?/p>

    W一步我们要q入源码目录 cd /src/linux-2.6.0-test6
    make mrproper

    q?时我们就已经在源码目录下?make mrproper是用来清除一些老的配置文g、过时的已编译文Ӟ打补丁遗留的备䆾文g{工作的?/p>

    如果你是从官方网站下载ƈ且是W一ơ编译这一步可以不 作。事实上q你以前编译过Q在打了一些补丁或者重新更改设|后再次~译也可?作这一步,q方面的内容我将在以后的补遗中作解释?br />现在你只按步就般的?不用考虑它?下面我们可以进行内核的配置了?

    先介l一下新内核中的囑Ş界面配置工具Q?br />新内怸有两个GUI配置工具Q过ȝmake xconfig
    现在是一个用QT库作为界面方案的配置工具?Q所以你要用它必需先安装QT库。一般的发行版光盘中都包含了q个软g包?br />另一个是make gconfigq是一个用GTK库作为界面方案的工具 Q同样你要用它?yu)p先安装GTK库?br />q两个工具与原来的GUI工具在界面上有很大的变化Q更加符合一般图形界面程序的使用?fn)惯?而传l的
     控制台配|工具menuconfig则没什么太大的变化基本上保持了原来的样子,不喜Ƣ花里糊哨的GUI工具的兄弟还是用q个吧:(x))
     ?面我们就?开始配|内怺Q新内核的buildpȝ有一个新的特性,它会(x)在启动配|工hd你当前的pȝ配置Q从而保持与你当前配|相同的选项。??2.4中它则是配置为默认选项的。这个特性其实是Z方便你以后的升工作Q在内核Ҏ(gu)变化不大的情况下可以直接以当前的选项为基 从而省去逐项配置的麻 烦。但׃我们现在是从2.4来升U的Q它们之间的差别太大了,所以这反而会(x)l我们造成ȝ?br />有两U方法可以让2.6以默认选项来启动配|工P
    W一U就 是将你当前的配置文g也就?boot/config-XXXU除Q另一U是在执行配|工具前先执行make  defconfig.我推荐这U方法?

    ?.6中还d了几个以调试为目的的make选项Q它们是allyesconfig、allnoconfig、allmodconfig分别表示?所有选项加蝲为y、将所有选项加蝲为n、将所有选项加蝲为m。它们是为内核开发h员与试人员准备的,与我们的关系不大?下面我们开?配置内核Q这里用的工具为menuconfig?br />首先在命令行模式下执行:(x) make menuconfig 在闪q几行字之后出C如图1 的界?/p>

    内核选项


    ?界面的上部是配置工作的用说明,
    使用头键在 各选项间移动,使用enterq入下一层菜单,每个选项上的高亮字母是键盘快h式,
    使用它可以快速的到达 你想讄的菜单项上?br />在括号中
    按y这个项目编译进内核中,
    按M~译为模块,
    按NZ选择?br />按?打印这个选项的帮助信息,
    按esc返回到上层菜单?/p>

     GUI工具的基本概 念也与之cM我们׃详细讨论了?br />在后面我主要用menuconfig来设|各个选项Q选项的次序以它ؓ(f)准,其它工具中各选项也基 本与之对 应?

    W一?Code maturity level options (代码成熟度选项) 按enterq入后选项如下

    [*] Prompt for development and/or incomplete  code/drivers 默认情况下是选择的,q将?x)在讄界面中显C在开发或者还没有完成的代码与驱动.你应该选择它,因ؓ(f)有许多设备可能必 需选择q个选项才能q行配置Q实际上它是安全的?
    [*] Select only drivers expected to compile cleanly 选择q个选项你将不会(x)看到一 些已知的存在问题的驱动程序选项Q默认的情况下也是选择的。如果你有设备没有找到驱动选项Q你可以这一去掉,或许可以找到相?驱动了,不过它可能是有BUG的?br />[*] Select only drivers that don't need compile-time external firmware 如果你不需要在内核对一?外部讑֤的固件作map支持选择它,q也是默认选项?/p>

     W二?General setup 其中的选项如下

    [*] Support for paging of anonymous  memory q个选项你的内核支持虚拟内存Q也是让你的计机好象拥有比实际内存更?多的内存I间用来执行很大的程序。默认是选择 的?
    [*] System V IPC E提供通信机制Q这ɾpȝ中各q程间有交换信息与保持同步的能力。有些程序只有在选Y的情况下才能q行Q?所以不用考虑Q这里一定要选?br /> [ ] BSD Process Accounting q里选择Y会(x)让内ؓ(f)用户层的q程建立一个帐?q程通过一个特D的pȝ 调用来通知内核)Q当E序退出时内核?x)将q程的相关信息记录到帐目文g中,主要包括q程的创建时间?创徏者,内存占用{信息。如果你 需要就Y吧:(x))
    [*] Sysctl support q将提供一个接口让你可以动态的更改一些核心参C变量Q而不需要重新启动系l。打开q个选项会(x) 增加内核的体U至?KB。如果你的内总用制作安装与恢复pȝpȝ盘那么可以不选,以减对内存的占用?
    [ ] Kernel .config support  q将?x)把内核的配|信息与相关的文档说明编译进内核中,以后可以使用一些工h提取它用来重新构建内核,一般不用选它?
    [ ] Remove  kernel features (for embedded systems) ---> q个选项会(x)把一些特性从内核中移除,以减内怽U。对于桌面用hԌq可不是一 个好LQ所以不要选它。至于其中的内容我会(x)在以后的补遗中介l?/p>

     W三?Loadable module support (可加载模块选项) 光项如下Q?br /> [*] Enable loadable module support q?个选项可以让你的内核支持模块,模块是什么呢Q模块是一段代码Q编译后可在pȝ内核q行?动态的加入内核Q从而ؓ(f)内核增加一些特性或是对某种gq行?持。一般一些不常用到的驱动或特性可以编译ؓ(f)模块以减内核的体积。在 q行时可以用modprobe命o(h)来加载它到内怸?在不需要时q可以移???一些特性是否编译ؓ(f)模块的原则是Q不怋用的Q特别是?pȝ启动时不需要的驱动可以其~译为模块,如果是一些在pȝ启动时就要用到的驱动比如说文件系l,pȝȝ的支持就不要~ؓ(f)模块?Q否在无法启动系l?当然q有一些变通的Ҏ(gu)Q我以后?x)提?
    [ ] Module unloading q个选项可以让你卸蝲不再使用的模块,如果不?的话你将不能卸蝲M模块(有些模块一旦加载就不能卸蝲Q不是否选择了这个选项)。不选择q个选项?x)让你的内核体积减小一?
    [ ]  Module versioning support (EXPERIMENTAL) q个选项让你可以用其它版本内怸~译的模块,不过q不可靠Q所以一般我们不选择?
     [*] Automatic kernel module loading 一 般情况下Q如果我们的内核在某些Q务中要用一些被~译为模块的驱动或特性时Q我们要先?modprobe命o(h)来加载它Q内核才能用。不q,如果你?择了q个选项Q在内核需要一些模块时它可以自动调用modprobe命o(h)来加载需要的?块,q是个很的Ҏ(gu),当然要选Y喽:(x))

    W四?Processor type and features Subarchitecture Type (PC-compatible) q是一个比较新?Ҏ(gu),主要的目的是使Linux可以支持多种PC标准Q一般我们用的PC机是遵@所谓IBM兼容l构(pc/at)。这个选项可以让你选择一些其它架?。我们一般选择PC-compatible可以了?Processor family (Pentium-4/Celeron(P4-based)/Xeon) q个不用我讲了吧Q你是什么CPU选什 么吧Q?

    [ ] Generic x86 support q个选项提供了对X86pdCPU最大的兼容性,用来支持一些很见的x86体系的CPUQ它可能?x)降低一些系 l性能。所以如果你的CPU能够在上面的列表中找到就不要选这个吧?
    [ ] HPET Timer Support q?也是一个新的特性,HPET是intel制定的新 的用以代替传l的8254(PIT)中断定时器与RTC的定时器Q全U叫作高_ֺ事g定时器。如果你有一台较新的机器选它吧,一般它是一个安?的选项Q即使你的硬件不支持HPET也不?x)造成问题Q因为它?x)自动?254替换?
    [*] Symmetric multi-processing support q个也不用多讲了吧,如果你用多处理器系l就选吧Q如果你和我一样用一个单CPUpȝq是把它请出d?( Maximum number of CPUs (2-255) q里?来配|让Linux最多支持几路CPUQ根据你的需要选择?
    [*] Preemptible Kernel q?可是个新Ҏ(gu),几乎所有介l?.6的文章都?x)提刎ͼq就 是可抢先式内核。也是说被一些优先很高的程序可以先与一些低优先U的E序执行Q即使这些程序是 在核心态下执行(q实际上仍然不是 真正的抢先式内核)。从而减内核潜伏期Q提高系l的响应。当然在一些特D的点的内核是不可抢先的Q比如内怸的调度程 序自w在执行 时就是不可被抢先的。这个特性可以提高桌面系l、实时系l的性能Q所以还是选上吧?
    [*] Machine Check Exception ?果你的系l出?一些问题比如CPUq热Q内核将?x)在屏幕上打印相关信息来提醒你。这个功能是需要硬件支持的。你可以查看/proc/cpuinfo看看?否有mce?志,有的话就选吧。如果你十分十分的不q,选了它之后出现问题,可以在启动时加nomce参数来关闭它?br />[*] Check for non-fatal errors  on AMD Athlon/Duron / Intel Pentium 4 ?开q个选项会(x)查你机器上可能存在的问题Q如果有一个非致命错误出现会(x)自动的修复ƈ?记录Q这可以帮助你查出程序出现问题的原因Q是一个不错的选项Q?当然它只能用在AMD Athlon/Duron / Intel Pentium 4q类CPU上。如?你正好在用它们中的一个你选吧?
    [*] check for P4 thermal throttling interrupt. 如果打开q个选项Q在P4的CPU温度q高(也就是P4 的温控装|v作用)时会(x)在屏q上昄出相关的信息Q根据你的情况选择吧?
    < > Toshiba Laptop support q?个选项是针对ToshibaW记本的 Q可以用来访问Toshiba的系l管理模式,也就是可以直接设|BIOS。不q要注意它只在Toshiba自己?BIOS中v作用。假如你有一台Toshiba W记本,可惜它的BIOS是Phoenix的,那这个选项仍然是梁山军?---无用Q?
    < > Dell laptop support q个同上面的选项基本相同Q自q 着办吧Q?
    < > /dev/cpu/microcode - Intel IA32 CPU microcode support q个选项让你可以更新Intel IA32pd处理器的微代码,当然 你还必须在文件系l选项中选择devfs才能正常的用它。如果你把它译ؓ(f)模块你还需要在modprobe.conf中加上这一行alias char-major-10- 184 microcode 内核本nq不带有微代码的二进制文Ӟ你可以到q个|址d到新的信?
    < > /dev/cpu/*/msr - Model-specific register  support q个选项桌面用户一般用不到Q它主要用在Intel的嵌入式CPU中的Q这个寄存器的作用也依赖与不同的CPUcd而有所不同Q一般可?用来改变一些CPU原有物理l构的用途,但不同的CPU用途差别也很大?
    < > /dev/cpu/*/cpuid - CPU information support q会(x)?dev/cpu 中徏立一pd的设备文Ӟ用以让过E去讉K指定的CPU。一般不用选?
    < > BIOS Enhanced Disk Drive calls determine boot disk  (EXPERIMENTAL) q将可以打开实模式下BIOS中的增强盘讑֤服务Q以军_从哪个磁盘上启动。这一般是安全的,不过大多数BIOS提供商都?有实现这个特性?High Memory Support (off) 如果你有大容量的内存(过4G)你要选它Q以使内核可以用这部分内存。偶是没q命啦这?分永qؓ(f)OFFQ如果你有你O(jin)N吧?br />[ ] Math emulation 在你的CPU上如果没有数学协处理器的话,打开q个选项可以让内核模拟一个,以提 升Q点计能力,不过慢的可以。如果你使用的不是古董CPU的话(486SX以前?q一你永远都不需要?
    [*] MTRR (Memory Type Range  Register)support 在Intel p6家族的处理器?Ppro?PII和更新的)有一个内存类型范围寄存器Q可用来控制处理器访问的内存范围。打开?一般可以提升显卡的昄性能Q所以我们当然要在这说Y喽:(x))

    W五?Power management options (ACPI, APM)(高甉|理)

    [*] Power  Management support 如果你想让你的Linux支持高甉|理(也就是^常我们说的Yx、系l休眠等)需要选择它?
    [ ] Software Suspend  (EXPERIMENTAL) ?择这个选项你可以挂起你的计机(有点象XP中的休眠)Q打开q项功能后,你可以用swsusp或者shutdown -z 来挂起你 的计机。这L(fng)l会(x)你当前正在q行的工?也就是当前内存中的内?作成一个镜象保存到你的交换分区中,在你下一ơ启动时使用启动 参数 “resume=/dev/你的交换分区”,内核׃(x)上一ơ的工作内核从镜象文件中恢复到内存,q可以大大提高系l的启动速度。当你不x 复上ơ的工作 时向内核传递参数“noresume"。不q系l启动后你的交换分区不可以使用Q你可以使用mkswap命o(h)来重新格式化你的交换?区。这个功能不需?高甉|理的支持。很不错的功能,我一直有用,大家也来试试吧:(x))
    [ ] Suspend-to-Disk Support q个选项与上?的功能基本相同,不过更灵zM些,可以通过下面的子选项来指定一个专用的交换分区来保存内存镜象?
    () Default resume partition 与上 面的选项配合Q来指定保存镜象的分区?
    ACPI (Advanced Configuration and Power Interface) Support ---> 从这里进入ACPI甉|理?配置界面Q要注意ACPI与APM不能同时使用Q如果你同时配置了这两者,那么在系l启动时如果发现一个可工作的ACPI讑֤那么APM被关闭Q?ACPI?x)被加蝲Q?br />[*] ACPI Support q个选项应该不用我多说了Q要惌你的pȝ使用ACPI来管理你的电(sh)源就要选上它,另外要想让它起作?Q你q要在系l中安装acpid守护E序?br />[*] Sleep States (EXPERIMENTAL) ?择这个选项可以使你的系l具有挂L(fng)功能Q也是说你可以 暂时中断你的工作Q让你的pȝ处与一U低?sh)能消耗的状?sleep state)Q你此时的系l状态会(x)保存在内存或者磁盘上(取决于挂L(fng)深度)Q?当你需要时再恢复到正常的工作状态。但׃各种pȝ之间的差别,目前q项?能ƈ不完善。只有很的讑֤可以完美的支持这个特性,所?不徏议一般用户用它?
    < > AC Adapter q是用来支持Udpȝ中的交流适配器的Q以指示当前pȝ是不是在使用交流?sh),对于台式Z需 要这个选项?
    < > Battery q个选项用于通过/proc/acpi/battery来向用户提供Udpȝ中的甉|状态信息。同上面那个选项一样对台式机没 有作用?br /> <*> Button q个选项用于注册Z甉|按钮的事Ӟ比如power, sleep{,当你按下按钮时事件将发生Q一个守护程序将??proc/acpi/eventQƈ执行用户在这些事件上定义的动作比如让pȝx?
    <*> Fan q个选项提供对系l风扇的控制支持Q可以通过用户?的程序来对系l风扇进行控?比如打开Q关闭,d当前风扇的运行状态等Q不q只有极数的硬件支持它)?
    <*> Processor 打开q个选项 让你的pȝh处理IDIE状态的能力Q也是说可以让你的处理器在I闲时节省电(sh)能。个个选项是一定要选的?br /><*> Thermal Zone  当你的系l温度过高时QACPI可以利用q个选项来控制你的系l,?qing)时调整pȝ的工作状态以保护你的CPUQ非常棒的一个特性一定要选呀Q要 不然也就不用使用ACPI了?当然q需要硬件的支持)
    < > ASUS/Medion Laptop Extras q主要是为ASUS生的笔记本?sh)脑准备的,以提供对q?些系l上那些额外的按钮们的支持,用户可以通过它们来打开或者关闭LCD的背光,调整亮度、定制LED的闪烁指C等功能。用户可以?q?proc/acpi/asus来改变这些设|?
    < > Toshiba Laptop Extras q个选项是对ToshibaW记本提供特别支持的Q它的作用同上面的选项基本 相同Q如果你有一台这L(fng)本本的话选它吧?br /> [ ] Debug Statements 如果选择它当ACPI出现错误时会(x)打印l的信息Q这会(x)增加内核 的体U大U?0kQ如果没有必要还是不要选它吧?br /> [ ] Relaxed AML 选择它的话ACPI译器将?x)放村֯AML的错误检查,一些笔记本?sh)脑可能需 要它才能正常的用ACPI(一些糟p的桌面机可能也需要它Q如果你的系l用ACPI时出现问题不妨选上它试?

     



    ]]>
    GIS家园http://www.tkk7.com/badboyryan/archive/2006/08/29/66338.html坏男?/dc:creator>坏男?/author>Tue, 29 Aug 2006 00:43:00 GMThttp://www.tkk7.com/badboyryan/archive/2006/08/29/66338.htmlhttp://www.tkk7.com/badboyryan/comments/66338.htmlhttp://www.tkk7.com/badboyryan/archive/2006/08/29/66338.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/66338.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/66338.htmlhttp://www.gissky.net/blog/index.html

    ]]>
    ArcGis9在windowsXPsp2安装Ҏ(gu)http://www.tkk7.com/badboyryan/archive/2006/08/29/66337.html坏男?/dc:creator>坏男?/author>Tue, 29 Aug 2006 00:40:00 GMThttp://www.tkk7.com/badboyryan/archive/2006/08/29/66337.htmlhttp://www.tkk7.com/badboyryan/comments/66337.htmlhttp://www.tkk7.com/badboyryan/archive/2006/08/29/66337.html#Feedback0http://www.tkk7.com/badboyryan/comments/commentRss/66337.htmlhttp://www.tkk7.com/badboyryan/services/trackbacks/66337.html在WinXp sp2安装ArcGIS9,?x)出现动态库注册p|问题Q以下是修改办法Q希望对各位有用

    Ҏ(gu)由“杜杜先生”提供:(x)
    1. U除Windows XP的SP2Q然后安装ArcGIS 9.0?
    2. 点击“我的电(sh)脑”,选择“属性”菜单?
    3. 点击“高U”页。选择“启动与恢复”下的“设|”按钮。?
    4. 选择默认操作pȝQ如? "Microsoft Windows XP Professional" /fastdetect /NoExecute=OptIn 
    5. 点击“编辑” 按钮打开boot.ini 文gQ将其中的“?NoExecute=OptIn”改为?NoExecute=AlwaysOff”。?
    6 保存文gQ重新启动计机?
    7. 安装完ArcGIS以后Q将 boot.ini 文g讄改回来,以重新激zL据执行保护的安全选项。?


    ]]>
    վ֩ģ壺 ޾ñĻ| ëƬaëƬѹۿ| Ƭ| Ƭѹۿ92ƵƵ| 99þۺϾƷ| Ʒר߲| 99޾Ʒ242| ³Դվav| avۺպ| ձ߿ѹۿ| ϸëƬ| һƵ| 3pˬִƵ| ؼAƬëƬѿ| ձƵ߹ۿ| ëƬ벥| 69avƵ| ĻӰԺƵ| ˳Ƶ߹ۿ| һav| ޾þþþþ77777 ޾ƷAAƬѽ | պVAĻ| ۺɫ¶| ۺϵ| һ| ˳ŮƬ߲| ߹ۿAVպAV| þҹ޾Ʒ| ޾ƷƵ| 99Ʒaѿ| ɫ7777Ƶ߹ۿ| ձaƬѿ| ˾þô߽| һ| ۺavһ| Ƭѹۿþ| þþþþþõѲ| ĻmvѸƵ7 | þóѵӰ| vƷƵ400| ߹ۿƵ|