﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-sk8boy-随笔分类-Linux</title><link>http://www.blogjava.net/sk8boy/category/4317.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 15 Sep 2007 19:43:40 GMT</lastBuildDate><pubDate>Sat, 15 Sep 2007 19:43:40 GMT</pubDate><ttl>60</ttl><item><title>suse第一个终端下的图片效果</title><link>http://www.blogjava.net/sk8boy/archive/2007/09/15/145408.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Sat, 15 Sep 2007 10:58:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2007/09/15/145408.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/145408.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2007/09/15/145408.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/145408.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/145408.html</trackback:ping><description><![CDATA[<p>在suse中设置用字符界面启动，第一个终端下面有特效。今天无意中看到在哪里可以改。记下来。<br />
/etc/sysconfig/bootsplash<br />
<br />
## Path:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System/Boot<br />
## Description: selects bootsplash graphics theme<br />
## Type:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; string<br />
## Default:&nbsp;&nbsp;&nbsp;&nbsp; SuSE-SLES<br />
# Choose the bootsplash theme. It should be based in<br />
# /etc/bootsplash/themes/<br />
THEME="SuSE-SLES"<br />
## Path:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System/Boot<br />
## Description: enables/disables bootup graphics<br />
## Type:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; yesno<br />
## Default:&nbsp;&nbsp;&nbsp;&nbsp; yes<br />
#<br />
# SPLASH can be set to "no" to turn off the splash-screen on console 1<br />
# at boot time (after kernel load).<br />
#<br />
# SPLASH=no to disable the splash screen<br />
#<br />
# SPLASH=yes to show the splash screen<br />
#<br />
SPLASH="yes"</p><img src ="http://www.blogjava.net/sk8boy/aggbug/145408.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2007-09-15 18:58 <a href="http://www.blogjava.net/sk8boy/archive/2007/09/15/145408.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Java编程实现支持中文的Base64编码转换</title><link>http://www.blogjava.net/sk8boy/archive/2007/09/15/145403.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Sat, 15 Sep 2007 10:40:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2007/09/15/145403.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/145403.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2007/09/15/145403.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/145403.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/145403.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 网上有很多源代码可以实现Base64编码的转换，但是主要是对中文转换的时候有问题。后来在网上找了很多资料，发现原来在Java默认的实现机制中，内部使用UTF-16编码，而所有算法是针对英文UTF-8的。因此，在对中文字符串转换的过程中会出现截取错误。后来在源代码的基础上进行了小的调整，最好可以实现Base64编码。下面贴出一个实现代码：&nbsp;&nbsp;1package&nbsp...&nbsp;&nbsp;<a href='http://www.blogjava.net/sk8boy/archive/2007/09/15/145403.html'>阅读全文</a><img src ="http://www.blogjava.net/sk8boy/aggbug/145403.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2007-09-15 18:40 <a href="http://www.blogjava.net/sk8boy/archive/2007/09/15/145403.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>test使用帮助</title><link>http://www.blogjava.net/sk8boy/archive/2007/08/12/136141.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Sun, 12 Aug 2007 02:38:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2007/08/12/136141.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/136141.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2007/08/12/136141.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/136141.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/136141.html</trackback:ping><description><![CDATA[suse:~ # help test<br>test: test [expr]<br>&nbsp;&nbsp;&nbsp; Exits with a status of 0 (true) or 1 (false) depending on<br>&nbsp;&nbsp;&nbsp; the evaluation of EXPR.&nbsp; Expressions may be unary or binary.&nbsp; Unary<br>&nbsp;&nbsp;&nbsp; expressions are often used to examine the status of a file.&nbsp; There<br>&nbsp;&nbsp;&nbsp; are string operators as well, and numeric comparison operators.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; File operators:<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -a FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file exists.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -b FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is block special.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -c FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is character special.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -d FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is a directory.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -e FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file exists.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -f FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file exists and is a regular file.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -g FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is set-group-id.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -h FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is a symbolic link.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -L FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is a symbolic link.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -k FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file has its `sticky' bit set.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -p FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is a named pipe.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -r FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is readable by you.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -s FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file exists and is not empty.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -S FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if file is a socket.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -t FD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if FD is opened on a terminal.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -u FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the file is set-user-id.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -w FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the file is writable by you.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -x FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the file is executable by you.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -O FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the file is effectively owned by you.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -G FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the file is effectively owned by your group.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -N FILE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the file has been modified since it was last read.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FILE1 -nt FILE2&nbsp; True if file1 is newer than file2 (according to<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; modification date).<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FILE1 -ot FILE2&nbsp; True if file1 is older than file2.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FILE1 -ef FILE2&nbsp; True if file1 is a hard link to file2.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; String operators:<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -z STRING&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if string is empty.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -n STRING<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; STRING&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if string is not empty.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; STRING1 = STRING2<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the strings are equal.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; STRING1 != STRING2<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the strings are not equal.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; STRING1 &lt; STRING2<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if STRING1 sorts before STRING2 lexicographically.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; STRING1 &gt; STRING2<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if STRING1 sorts after STRING2 lexicographically.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; Other operators:<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -o OPTION&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if the shell option OPTION is enabled.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ! EXPR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; True if expr is false.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; arg1 OP arg2&nbsp;&nbsp; Arithmetic tests.&nbsp; OP is one of -eq, -ne,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -lt, -le, -gt, or -ge.<br>&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp; Arithmetic binary operators return true if ARG1 is equal, not-equal,<br>&nbsp;&nbsp;&nbsp; less-than, less-than-or-equal, greater-than, or greater-than-or-equal<br>&nbsp;&nbsp;&nbsp; than ARG2.<img src ="http://www.blogjava.net/sk8boy/aggbug/136141.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2007-08-12 10:38 <a href="http://www.blogjava.net/sk8boy/archive/2007/08/12/136141.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SuSE安装Oracle 9i后无法自动启动数据库</title><link>http://www.blogjava.net/sk8boy/archive/2007/07/15/130408.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Sun, 15 Jul 2007 10:26:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2007/07/15/130408.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/130408.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2007/07/15/130408.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/130408.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/130408.html</trackback:ping><description><![CDATA[在SuSE Linux Enterprise Server 9上安装Oracle9i后，及时使用了安装了<a href="http://ftp.novell.com/partners/oracle/sles-9/orarun-1.8-109.15.i586.rpm">orarun-1.8-109.15.i586.rpm</a>包，也无法正常启动。<br><br>后来跟踪了启动的Shell脚本，最后发现是需要更改$ORACLE_HOME/bin/dbstart文件。在该文件中，定义变量PFILE：<br>PFILE=${ORACLE_HOME}/dbs/init${ORACLE_SID}.ora<br>其中，在Oracle9i中已经通过spfile${ORACLE_SID}.ora。因此，将PFILE变量修改为：<br>PFILE=${ORACLE_HOME}/dbs/spfile${ORACLE_SID}.ora<br>同时，为了可以在关机的时候关闭数据库，同时在$ORACLE_HOME/bin/dbshut文件中对应的位置也需要修改PFILE文件的定义。<br><br>另外，还有一种方法，就是生成pfile。用sqlplus连接数据库，<br>conn / as sysdba<br>create pfile from spfile;<br>这样，就会参考${ORACLE_HOME}/dbs/spfileora9i.ora生成initora9i.ora这个pfile。这样就不用改启动脚本文件了。<br><br>以上两种方法已经证明都可以正常工作。<img src ="http://www.blogjava.net/sk8boy/aggbug/130408.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2007-07-15 18:26 <a href="http://www.blogjava.net/sk8boy/archive/2007/07/15/130408.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>自己修改的SuSE下Oracle 10g的启动脚本</title><link>http://www.blogjava.net/sk8boy/archive/2007/06/05/122061.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Tue, 05 Jun 2007 01:50:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2007/06/05/122061.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/122061.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2007/06/05/122061.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/122061.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/122061.html</trackback:ping><description><![CDATA[在SuSE下，由于SuSE特有的脚本管理方法，Should-Stop和Default-Stop选项被忽略了。同时，在脚本开始处执行/etc/rc.status脚本，可以通过调用rc_status -v检查启动命令的执行结果并彩色显示出来。<br><br>#!/bin/bash<br>#<br># /etc/init.d/oracle<br>#<br>### BEGIN INIT INFO<br># Provides:<br># Required-Start: $network $syslog<br># Should-Start:<br># Required-Stop:<br># Should-Stop:<br># Default-Start: 3 5<br># Default-Stop: 0 1 2 4 6<br># Description: Startup/shutdown script for oracle listener and instance;<br>### END <br>. /etc/rc.status<br>rc_reset<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>start() <br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #when system stop redhat&nbsp; check /var/lock/subsys/oracle <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #to make sure oracle is running.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; touch /var/lock/subsys/oracle<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # start tsnlisnter&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Start tsnlisnter:"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "lsnrctl start" &gt;/dev/null 2&gt;/dev/null <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # start database<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Start Oracle database instance:"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "echo \"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CONN / AS SYSDBA<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; STARTUP<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exit \"|sqlplus /NOLOG" &gt;/dev/null 2&gt;/dev/null <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # start enterprise manager<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Start Enterprise Manager:"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "emctl start dbconsole" &gt;/dev/null 2&gt;/dev/null <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #start isqlplus<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Start isqlplus"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "isqlplusctl start"&gt;/dev/null 2&gt;/dev/null <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>}<br>stop()<br>{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #when system stop redhat&nbsp; check /var/lock/subsys/oracle <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; #to make sure oracle is running.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rm -rf /var/lock/subsys/oracle<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # shutdown database<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Shutdown Oracle database instance:"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "echo \"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CONN / AS SYSDBA<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SHUTDOWN immediate<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exit \"|sqlplus /NOLOG"&gt;/dev/null 2&gt;/dev/null<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # stop tsnlisnter<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Stop tsnlisnter:"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "lsnrctl stop"&gt;/dev/null 2&gt;/dev/null<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # stop enterprise manager<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Stop Enterprise Manager:"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "emctl stop dbconsole" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # stop isqlplus<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo -n "Stop isqlplus:"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; su - oracle -c "isqlplusctl stop" <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rc_status -v<br>}<br>case "$1" in<br>start)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; start<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "Oracle Start at:" `date` &gt;&gt;/var/log/oracle.log<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;;<br>stop)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; stop<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "Oracle Stop at:" `date` &gt;&gt;/var/log/oracle.log<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;;<br>restart)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "Oracle Restart at:" `date` &gt;&gt;/var/log/oracle.log<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; stop<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; start<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;;<br>*)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "Usage: $0 { start | stop| restart }"<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; exit 1<br>&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ;;<br>esac<br>rc_exit<img src ="http://www.blogjava.net/sk8boy/aggbug/122061.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2007-06-05 09:50 <a href="http://www.blogjava.net/sk8boy/archive/2007/06/05/122061.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>成功上传文件后的自动操作</title><link>http://www.blogjava.net/sk8boy/archive/2006/04/12/40737.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Wed, 12 Apr 2006 14:10:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2006/04/12/40737.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/40737.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2006/04/12/40737.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/40737.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/40737.html</trackback:ping><description><![CDATA[为了使FTP用户成功上传文件之后，可以执行某个脚本程序，使其可以根据上传的内容（如多媒体）做相应的操作。最初有这个想法的时候，我们系统上默认安装的是vsftpd。找遍了相关的资料，也没有找到描述vsftpd可以实现相关功能。感谢irc.pchome.net上nok兄弟，告诉了我可以使用pure-ftpd来实现上面的功能。<br /><br />经过2天的学习和探索，终于测试成功！期间，发现了一些问题，也都一一解决了：）<img src ="http://www.blogjava.net/sk8boy/aggbug/40737.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2006-04-12 22:10 <a href="http://www.blogjava.net/sk8boy/archive/2006/04/12/40737.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>pure-ftpd对虚拟用户的支持</title><link>http://www.blogjava.net/sk8boy/archive/2006/04/11/40350.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Mon, 10 Apr 2006 16:27:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2006/04/11/40350.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/40350.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2006/04/11/40350.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/40350.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/40350.html</trackback:ping><description><![CDATA[<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">1</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．简介</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">自从</span>
				<span lang="EN-US">
						<font face="Courier New">0.99.2</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">版本开始，</span>
				<span lang="EN-US">
						<font face="Courier New">pure-ftpd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">就开始支持虚拟用户。虚拟用户方式十分类似</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">，将用户的相关信息，如口令、姓名、</span>
				<span lang="EN-US">
						<font face="Courier New">uid</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">、目录等，存入文件。但是该文件只适用于</span>
				<span lang="EN-US">
						<font face="Courier New">FTP</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">这意味着，可以为</span>
				<span lang="EN-US">
						<font face="Courier New">FTP</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">设置虚拟用户，而不需要在系统中添加系统用户。同时，可以为这些用户单独设置配额、</span>
				<span lang="EN-US">
						<font face="Courier New">ratio</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">、带宽等限制。很多虚拟用户可以共享同一个系统用户的属性，因此建议为这些虚拟用户单独创建一个系统用户，从而方便管理。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">首先，可以在系统中添加相应的用户和组，如</span>
				<span lang="EN-US">
						<font face="Courier New">ftpuser</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">和</span>
				<span lang="EN-US">
						<font face="Courier New">ftpgroup</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">。如：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">groupadd ftpgroup</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">useradd -g ftpgroup -d /dev/null -s /etc ftpuser</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">可以使用</span>
				<span lang="EN-US">
						<font face="Courier New">”pure-pw”</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">来创建虚拟用户。虚拟用户的信息以每个用户一行的方式存放在相应的文件中，其格式如下所示：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<font face="Courier">
										<span lang="EN-US">&lt;account&gt;:&lt;password&gt;:&lt;uid&gt;:&lt;gid&gt;:&lt;gecos&gt;:&lt;home directory&gt;:&lt;upload</span>
										<span lang="EN-US" style="mso-fareast-font-family: 宋体">
										</span>
										<span lang="EN-US">bandwidth&gt;:&lt;download bandwidth&gt;:&lt;upload ratio&gt;:&lt;download ratio&gt;:&lt;max number</span>
										<span lang="EN-US" style="mso-fareast-font-family: 宋体">
										</span>
										<span lang="EN-US">of connections&gt;:&lt;files quota&gt;:&lt;size quota&gt;:&lt;authorized local IPs&gt;:&lt;refused</span>
										<span lang="EN-US" style="mso-fareast-font-family: 宋体">
										</span>
										<span lang="EN-US">local IPs&gt;:&lt;authorized client IPs&gt;:&lt;refused client IPs&gt;:&lt;time</span>
										<span lang="EN-US" style="mso-fareast-font-family: 宋体">
										</span>
										<span lang="EN-US">restrictions&gt;</span>
								</font>
						</font>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">其中，除了帐号、口令、</span>
				<span lang="EN-US">
						<font face="Courier New">uid</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">、</span>
				<span lang="EN-US">
						<font face="Courier New">gid</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">和</span>
				<span lang="EN-US">
						<font face="Courier New">home</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">目录之外，其它的可以是空值。</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">2</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．创建一个用户</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">接下来，我们来创建一个新的用户。</span>
				<span lang="EN-US">
						<font face="Courier New">pure-pw</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">的语法规范如下：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pw useradd &lt;login&gt; [-f &lt;passwd file&gt;] -u &lt;uid&gt; [-g &lt;gid&gt;]</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>-D/-d &lt;home directory&gt; [-c &lt;gecos&gt;]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-t &lt;download bandwidth&gt;] [-T &lt;upload bandwidth&gt;]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-n &lt;max number of files&gt;] [-N &lt;max Mbytes&gt;]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-q &lt;upload ratio&gt;] [-Q &lt;download ratio&gt;]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-r &lt;allow client host&gt;[/&lt;mask&gt;][,&lt;allow client host&gt;[/&lt;mask&gt;]]...]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-R &lt;deny client host&gt;[/&lt;mask&gt;][,&lt;deny client host&gt;[/&lt;mask&gt;]]...]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">     </span>
												<span style="mso-spacerun: yes"> </span>[-i &lt;allow local host&gt;[/&lt;mask&gt;][,&lt;allow client host&gt;[/&lt;mask&gt;]]...]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-I &lt;deny local host&gt;[/&lt;mask&gt;][,&lt;deny local host&gt;[/&lt;mask&gt;]]...]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-y &lt;max number of concurrent sessions&gt;]</font>
								</font>
						</span>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm">
						<span lang="EN-US">
								<font size="2">
										<font face="Courier">
												<span style="mso-spacerun: yes">      </span>[-z &lt;hhmm&gt;-&lt;hhmm&gt;] [-m]</font>
								</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">假设我们要创建</span>
				<span lang="EN-US">
						<font face="Courier New">joe</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">这样一个虚拟用户，则可以使用如下命令：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pw useradd joe -u ftpuser -d /home/ftpusers/joe</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">其中，</span>
				<span lang="EN-US">
						<font face="Courier New">-u</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">将虚拟用户</span>
				<span lang="EN-US">
						<font face="Courier New">joe</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">同系统用户</span>
				<span lang="EN-US">
						<font face="Courier New">ftpuser</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">关联在一起。</span>
				<span lang="EN-US">
						<font face="Courier New">-d</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">参数使</span>
				<span lang="EN-US">
						<font face="Courier New">joe</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">只能访问其</span>
				<span lang="EN-US">
						<font face="Courier New">home</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">目录。而如果想让他访问整个文件系统，可以用</span>
				<span lang="EN-US">
						<font face="Courier New">-D</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">选项。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">这时，如果</span>
				<span lang="EN-US">
						<font face="Courier New">pure-ftpd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">启动时加入</span>
				<span lang="EN-US">
						<font face="Courier New">-j(--createhome)</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">选项，则不需要创建</span>
				<span lang="EN-US">
						<font face="Courier New">/home/ftpuser/joe</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">目录。系统会在该用户第一次登陆时自动创建。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<font face="Courier New">-z</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">选项运用用户在一天当中指定的时间段连接服务器。如</span>
				<span lang="EN-US">
						<font face="Courier New">-z 0900-1800</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">，则该用户只能在上午</span>
				<span lang="EN-US">
						<font face="Courier New">9</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">点到晚上</span>
				<span lang="EN-US">
						<font face="Courier New">6</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">点之间连接服务器。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<font face="Courier New">-r</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">选项或</span>
				<span lang="EN-US">
						<font face="Courier New">-R</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">选项，可以限制用户从指定</span>
				<span lang="EN-US">
						<font face="Courier New">IP</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">和掩码连入服务器</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<font face="Courier New">-y</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">，用户同一时间的并发连接数。</span>
				<span lang="EN-US">
						<font face="Courier New">’’</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">或者</span>
				<span lang="EN-US">
						<font face="Courier New">0</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">意味着不限制</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<font face="Courier New">-f</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">，默认虚拟用户的信息会被存放在</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件中，通过该选项可以改变该文件的位置。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">用户的口令会根据系统对加密方式的支持情况，选择一个最安全的方式进行加密。</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">3</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．更改一个用户</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">同</span>
				<span lang="EN-US">
						<font face="Courier New">pure-pw adduser</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">唯一不同的是，使用</span>
				<span lang="EN-US">
						<font face="Courier New">pure-pw usermod</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">不是创建一个用户，而是更改已经存在用户的某些属性。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">重置某些属性的语法如下：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; -n ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用文件配额</span>
						</font>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; -N ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用文件大小配额</span>
						</font>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; -q '' -Q ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用</span>
								<span lang="EN-US">
										<font face="Courier">ratio</font>
								</span>
						</font>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; -t ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用下载带宽限制</span>
						</font>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; -T ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用上传带宽限制</span>
						</font>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; &lt;-i,-I,-r or -R&gt; ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用</span>
								<span lang="EN-US">
										<font face="Courier">IP</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">过滤</span>
						</font>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; -z ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用时间段约束</span>
						</font>
				</p>
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<font size="2">
								<span lang="EN-US">
										<font face="Courier">pure-pw usermod &lt;user&gt; -y ''</font>
								</span>
								<span style="FONT-FAMILY: 'Courier New'; mso-ascii-font-family: Courier; mso-hansi-font-family: Courier; mso-bidi-font-family: 宋体">：禁用并发数限制</span>
						</font>
				</p>
		</div>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">4</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．删除一个用户</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">删除一个用的命令语法是：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pw userdel &lt;login&gt; [-f &lt;passwd file&gt;] [-m]</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">这时，用户的信息会被从指定的</span>
				<span lang="EN-US">
						<font face="Courier New">passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件中删除，但是用户的</span>
				<span lang="EN-US">
						<font face="Courier New">home</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">目录会被保留，需要手工删除。</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">5</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．改变用户口令</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">更改一个用户口令的语法是：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pw passwd &lt;login&gt; [-f &lt;passwd file&gt;] [-m]</font>
						</span>
				</p>
		</div>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">6</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．显示用户信息</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件中记录的信息不方便用户的阅读，因此</span>
				<span lang="EN-US">
						<font face="Courier New">pure-ftpd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">提供了显示用户信息的命令。其语法是：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pw show &lt;login&gt; [-f &lt;passwd file&gt;]</font>
						</span>
				</p>
		</div>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">7</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．提交更改</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">可以通过上面提到的命令，或者以手工方式对</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件进行修改，从而创建、修改和删除一个虚拟用户信息。但是，只有提交这些更改时，</span>
				<span lang="EN-US">
						<font face="Courier New">pure-ftpd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">访问才能生效。</span>
		</p>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">提交更改，意味着系统会根据</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">（或者指定的其它文件）来创建一个</span>
				<span lang="EN-US">
						<font face="Courier New">pure-ftpd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">可读的二进制格式的文件</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.pdb</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">。通常，通过下面的命令：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pw mkdb</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">可以通过</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件自动创建</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.pbd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件。但是，如果需要指定特定的文件，可以通过下面的方式来实现：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pw mkdb /etc/accounts/myaccounts.pdb -f /etc/accounts/myaccounts.txt</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">这时，没有必要去重启</span>
				<span lang="EN-US">
						<font face="Courier New">pure-ftpd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">服务，对虚拟用户进行的更改可以更新。同时，也可以通过</span>
				<span lang="EN-US">
						<font face="Courier New">-m</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">选项，在对</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件进行修改的时候自动进行提交。</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">8</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．打开对虚拟用户的支持</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">使得</span>
				<span lang="EN-US">
						<font face="Courier New">pure-ftpd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">支持虚拟用户，需要在编译的时候加入选项</span>
				<span lang="EN-US">
						<font face="Courier New">--with-puredb</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">。这时，可以通过在启动服务是的</span>
				<span lang="EN-US">
						<font face="Courier New">’-l’</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">参数来设置。如：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">/usr/local/sbin/pure-ftpd -j -lpuredb:/etc/pureftpd.pdb &amp;</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">可以在后台，以自动创建虚拟用户</span>
				<span lang="EN-US">
						<font face="Courier New">home</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">目录，用</span>
				<span lang="EN-US">
						<font face="Courier New">puredb</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">的方式来支持虚拟用户。</span>
		</p>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">9</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．转换系统用户</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">可以通过如下命令，将系统用户转换为虚拟用户：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pwconvert</font>
						</span>
				</p>
		</div>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 0cm; mso-char-indent-count: 0">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">如果以</span>
				<span lang="EN-US">
						<font face="Courier New">root</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">用户运行该命令，系统用户的口令一并被转入虚拟用户配置文件。如：</span>
		</p>
		<div style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 4pt; BACKGROUND: #bad4ff; PADDING-BOTTOM: 1pt; MARGIN-LEFT: 17.85pt; BORDER-LEFT: windowtext 1pt solid; MARGIN-RIGHT: 0cm; PADDING-TOP: 1pt; BORDER-BOTTOM: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">
				<p class="a" style="BACKGROUND: #bad4ff; MARGIN: 0cm 0cm 0pt">
						<span lang="EN-US">
								<font face="Courier" size="2">pure-pwconvert &gt;&gt; /etc/pureftpd.passwd</font>
						</span>
				</p>
		</div>
		<h3 style="MARGIN: 13pt 0cm">
				<font size="5">
						<span lang="EN-US">10</span>
						<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">．环境变量</span>
				</font>
		</h3>
		<p class="a0" style="MARGIN: 0cm 0cm 0pt">
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">默认的情况下，如果指定了环境变量</span>
				<span lang="EN-US">
						<font face="Courier New">PURE_PASSWDFILE</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">，则虚拟用户的</span>
				<span lang="EN-US">
						<font face="Courier New">passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件位置由该变量的值指定。否则，默认是</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.passwd</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">。用样，</span>
				<span lang="EN-US">
						<font face="Courier New">PURE_DBFILE</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">环境变量用来指定</span>
				<span lang="EN-US">
						<font face="Courier New">pdb</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">文件的位置。默认是</span>
				<span lang="EN-US">
						<font face="Courier New">/etc/pureftpd.pdb</font>
				</span>
				<span style="FONT-FAMILY: 宋体; mso-ascii-font-family: 'Courier New'; mso-hansi-font-family: 'Courier New'">。</span>
		</p><img src ="http://www.blogjava.net/sk8boy/aggbug/40350.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2006-04-11 00:27 <a href="http://www.blogjava.net/sk8boy/archive/2006/04/11/40350.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux-NTFS RPMs Documentation</title><link>http://www.blogjava.net/sk8boy/archive/2006/04/06/39585.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Thu, 06 Apr 2006 06:49:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2006/04/06/39585.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/39585.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2006/04/06/39585.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/39585.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/39585.html</trackback:ping><description><![CDATA[<p>转载（<a href="http://www.linux-ntfs.org/content/view/127/63/">http://www.linux-ntfs.org/content/view/127/63/</a>）<br /><br />This documentation should help you choosing the right RPM for your kernel and Linux distribution, and assist you in installing (and testing) it. </p>
		<h2>Which RPM</h2>
		<p>It is important to install exactly the same version of NTFS kernel module as the kernel you have installed. Below are some simple instructions to help you find the file you need.<br /><br />A quick way to find the version is to use the <a href="http://data.linux-ntfs.org/rpm/whichrpm">'whichrpm' script</a>. Save the file and run it. Then go to the install section. </p>
		<pre class="code">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">    chmod </span>
						<span style="COLOR: #000000">700</span>
						<span style="COLOR: #000000"> whichrpm<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    ./whichrpm<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				</div>
				<br />
				<br />The script, above, just automates what we will do next. First we need to decide which release you have. Run this command: </pre>
		<pre class="code">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
						<br />
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">    cat /etc/redhat-release<br /></span>
				</div>
				<br />
				<br />and you will probably see one of the following responses: </pre>
		<pre class="code">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    Fedora Core release </span>
						<span style="COLOR: #000000">3</span>
						<span style="COLOR: #000000"> (Heidelberg)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    Fedora Core release </span>
						<span style="COLOR: #000000">4</span>
						<span style="COLOR: #000000"> (Stentz)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    Fedora Core release </span>
						<span style="COLOR: #000000">5</span>
						<span style="COLOR: #000000"> (Bordeaux)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    Red Hat Linux release </span>
						<span style="COLOR: #000000">9</span>
						<span style="COLOR: #000000"> (Shrike)<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				</div>
		</pre>
		<p>
				<br />Next find out your kernel version: </p>
		<pre class="code">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    uname -r<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				</div>
		</pre>
		<p>
				<br />You should see a response something like one of these: </p>
		<pre class="code">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
						<span style="COLOR: #000000">2.4.18</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">3</span>
						<span style="COLOR: #000000">   <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
						<span style="COLOR: #000000">2.4.18</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">17.7</span>
						<span style="COLOR: #000000">.x<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
						<span style="COLOR: #000000">2.4.22</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">1.2115</span>
						<span style="COLOR: #000000">.nptl<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span>
						<span style="COLOR: #000000">2.6.8</span>
						<span style="COLOR: #000000">-</span>
						<span style="COLOR: #000000">1.521</span>
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						</span>
				</div>
		</pre>
		<p>
				<br />The version might also have one of the following suffixes: </p>
		<pre class="code">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    smp<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    bigmem<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    hugemem<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    BOOT<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				</div>
		</pre>
		<p>
				<br />
				<img src="http://data.linux-ntfs.org/red.png" />
				<b>Note:</b> If the result ends with smp then you have a multi-processor computer (you probably already knew that).<br /><br />Next find out what sort of processor you have. This command will ask which kernel rpm was installed for you.<br /><br /><img src="http://data.linux-ntfs.org/red.png" /><b>Note:</b> If your version number had a suffix, then use it here, e.g. replace kernel with kernel-smp, or kernel-bigmem. </p>
		<pre class="code">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee">
						<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />
						<span style="COLOR: #000000">
								<br />
								<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    rpm -q --queryformat </span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000">%{ARCH}\n</span>
						<span style="COLOR: #000000">"</span>
						<span style="COLOR: #000000"> kernel<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span>
				</div>
		</pre>
		<p>
				<br />Most people will have an i686 processor (a recent Pentium computer). Other options are athlon, i586 or i386.<br /><br />Next download the RPM. Follow the links for 
</p>
		<table width="100%" border="0">
				<tbody>
						<tr>
								<td width="5%">
								</td>
								<td width="95%">* Fedora 4 (Stentz)<br />* Fedora 3 (Heidelberg)<br />* Fedora 2 (Tettnang)<br />* Fedora 1 (Yarrow)<br />* RedHat Enterprise 4 (Nahant)<br />* RedHat Enterprise 3 (Taroon)<br />* RedHat 9 (Shrike)<br />* RedHat 8.0 (Psyche)<br />* RedHat 7.3 (Valhalla)<br /></td>
						</tr>
				</tbody>
		</table>
		<br />When you have downloaded the RPM, we will continue with the installation instructions. <h2>Install</h2><p>You must be root for the rest of the commands. The examples will continue as if you downloaded kernel-ntfs-2.4.18-14.i686.rpm.<br /><br /><img src="http://data.linux-ntfs.org/red.png" /><b>Note:</b> Newer NTFS RPMs have names like </p><pre class="code"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    kernel-module-ntfs-</span><span style="COLOR: #000000">2.6.8</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1.541</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">2.1.17</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">.fc</span><span style="COLOR: #000000">.1.2</span><span style="COLOR: #000000">.i586.rpm<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div></pre><p><br />Next install the rpm: </p><pre class="code"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000">    rpm -ihv kernel-ntfs-</span><span style="COLOR: #000000">2.4.18</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">14</span><span style="COLOR: #000000">.i686.rpm<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    Preparing...      ############################### </span><span style="FONT-WEIGHT: bold; COLOR: #800000">[</span><span style="COLOR: #800000">100%</span><span style="FONT-WEIGHT: bold; COLOR: #800000">]</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />       </span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">:kernel-ntfs  ############################### </span><span style="FONT-WEIGHT: bold; COLOR: #800000">[</span><span style="COLOR: #800000">100%</span><span style="FONT-WEIGHT: bold; COLOR: #800000">]</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div></pre><p><br />There should be no errors, just some '#'-charakters.<br /><br /><img src="http://data.linux-ntfs.org/red.png" /><b>Note:</b> newer NTFS RPMs will also print a message telling you if install succeeded.<br /><br />If something goes wrong see the <a href="http://www.linux-ntfs.org/content/view/124/60/">Help Section</a>.<br /><br />This is the only command we actually needed, but we'll go on and test what we have done.<br /><br />Next load the kernel module </p><pre class="code"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    /sbin/modprobe ntfs<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div></pre><p><br />There should be no output. If there are a lot of error messages see the Help Section.<br /><br />The next command, dmesg prints the kernel logs. We search them for NTFS using grep. </p><pre class="code"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    dmesg | grep NTFS<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    NTFS driver v1</span><span style="COLOR: #000000">.1.22</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">[</span><span style="COLOR: #800000">Flags: R/O MODULE</span><span style="FONT-WEIGHT: bold; COLOR: #800000">]</span><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div></pre><p><br />We can now check that the kernel really understands NTFS. The output may vary slightly, but you are looking for the entry ntfs. </p><pre class="code"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: #000000"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    cat /proc/filesystems<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   rootfs<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   bdev<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   proc<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   sockfs<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   tmpfs<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   shm<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   pipefs<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            ext3<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            ext2<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   ramfs<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    nodev   devpts<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />            ntfs<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span></div></pre><p><br /> </p><h2>Mount</h2><p>Mounting an NTFS Volume is covered in more detail in Section 4 <a href="http://wiki.linux-ntfs.org/doku.php?id=faq">of the Linux-NTFS FAQ (in the Wiki)</a>.<br /><br />First you need to know which device your NTFS Volume is on and you need to create a directory as a mount point. </p><pre class="code">    /sbin/fdisk -l
</pre><p><br />The output might look like: </p><pre class="code">    Disk /dev/hda: 64 heads, 63 sectors, 4465 cylinders
    Units = cylinders of 4032 * 512 bytes

       Device Boot    Start       End    Blocks   Id  System
       /dev/hda1             1      2125   4283968+  07  NTFS/HPFS
       /dev/hda2          2126     19851  35735616   0f  Win95 Ext'd (LBA)
       /dev/hda5   *      2126      4209   4201312+  83  Linux
       /dev/hda6          4210      4465    516064+  82  Linux swap
          

    mkdir /mnt/windows
    mount /dev/hda1 /mnt/windows -t ntfs -r -o umask=0222
    ls -l /mnt/windows

    ...
    -r-xr--r-- 1 root root  9719 Aug 24 1996 ansi.sys
    -r-xr--r-- 1 root root 15252 Aug 24 1996 attrib.exe
    -r-xr--r-- 1 root root 28096 Aug 24 1996 chkdsk.exe
    -r-xr--r-- 1 root root  5175 Aug 24 1996 choice.com
    ...
</pre><p><br />Hopefully everything is working for you now.<br /><br /><img src="http://data.linux-ntfs.org/red.png" /><b>Note:</b> Now, please read <a href="http://wiki.linux-ntfs.org/doku.php?id=faq">the NTFS FAQ (Frequently Asked Questions, in the Wiki)</a>, especially if you want to know: 
</p><table width="100%" border="0"><tbody><tr><td width="5%"></td><td width="95%">* How to change the owner or permissions of the mounted partition (Section 4.9) * How to have Linux mount the partition automatically at boot time (Section 4.10) </td></tr></tbody></table><h2>Uninstall</h2><p>If you wish to remove the NTFS RPM, first list all the RPMs with ntfs in their name. You output might look something like this: </p><pre class="code">    rpm -qa | grep -i ntfs

    kernel-module-ntfs-2.6.9-1.667smp-2.1.20-0.fc.1.2
</pre><p><br />Then, cut and paste the name into the rpm erase command: </p><pre class="code">    rpm -e kernel-module-ntfs-2.6.9-1.667smp-2.1.20-0.fc.1.2
</pre><img src ="http://www.blogjava.net/sk8boy/aggbug/39585.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2006-04-06 14:49 <a href="http://www.blogjava.net/sk8boy/archive/2006/04/06/39585.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>流媒体服务器Helix安装</title><link>http://www.blogjava.net/sk8boy/archive/2006/04/04/39166.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Tue, 04 Apr 2006 06:39:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2006/04/04/39166.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/39166.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2006/04/04/39166.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/39166.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/39166.html</trackback:ping><description><![CDATA[<p>      为了充分教研室服务器的资源，打算在服务器上安装一个流媒体点播系统。为此，选择使用Real公司的Helix产品。只要有合适的License，Helix可以支持绝大多数的流媒体格式，包括：<br />RealNetworks:          RealAudio (.rm, .ra), RealVideo (.rm, .rmvb), RealPix (.rp),RealText (.rt), Multi-Rate Container (.mrc)<br />Macromedia:             Flash (.swf)<br />Microsoft:                 Windows Media (.asf, .wma, .wmv)<br />Apple:                      QuickTime (.mov)<br />Standards-Based:      MPEG-4, MP3<br />Image Formats:         GIF (.gif), JPEG (.jpg, jpeg), PNG (.png)<br />Other:                      AU (.au), AIFF (.aif, .ief), WAV (.wav)<br /><br />      教研室的服务器安装的是Fedora Core 4 x86_64系统，开始只找到了Helix Server 9.0.2.794。安装之后，运行时提示错误：<br /><br />* Heartbeat Failure 1 (Step 3)</p>
		<p>-------------------------------------------------------------------------------<br />*** Helix Server Heartbeat Failure Report<br />When: 04-Apr-06 14:09:41<br />Environment: linux-2.2-libc6-i586-server, , 9.0.2.794<br />* Heartbeat Failure 2 (Step 3)</p>
		<p>-------------------------------------------------------------------------------<br />*** Helix Server Heartbeat Failure Report<br />When: 04-Apr-06 14:10:04<br />Environment: linux-2.2-libc6-i586-server, , 9.0.2.794<br />* Heartbeat Failure 3 (Step 3)</p>
		<p>
				<br />Helix Server not responding normally...<br />Heartbeat check disabled<br />* Heartbeat Failure 4 (Step 3)<br />* Heartbeat Failure 5 (Step 3)<br />* Heartbeat Failure 6 (Step 3)<br />* Heartbeat Failure 7 (Step 3)<br /><br />在网上找了很多相关的资料，都没解决这个问题。后来考虑可能时系统版本的问题，于是下载了Helix Server 11.0.1.1884。在这个版本自带的文档中介绍了遇到上述问题时，可以在配置文件结尾加入如下3行代码：<br />&lt;List Name="IPBindings"&gt;。<br />      &lt;Var Address_01="<strong>any</strong>"/&gt;<br />&lt;/List&gt;<br />其中，any指得是服务器的IP地址。但是，按照这种方式修改，在我们的服务器上依然存在上面的问题，不知道其它版本的Linux系统是否可以解决。遇到相同问题的人可以尝试一下这种办法。<br /><br />         在11这个版本中，启动时已经不会出现这个问题了。但是当服务启动了之后，我在本地计算机上无法访问。但是在服务器上通过localhost可以正常使用。这个问题可能是防火墙的问题，于是加入了相应的规则，但是依然无法访问。后来，经过翻阅资料，得知如果是服务器上有多个网卡，需要对其进行绑定。否则，只能通过localhost来访问。原来是这样，在服务器上通过浏览器，在管理员界面加入了相应的规则。重启服务，哈哈，终于可以访问了！<br /><br />         最后，可以在sample页面对支持的流媒体格式进行测试。在测试的时候，还有一些小的插曲。因为我们现在多数人用的是暴风影音，像我就根本没有安装realplayer。所以，开始是出现rmvb格式的媒体无法观看的问题。后来重新安装了realoneplayer之后解决了上述问题。另外一个让我弄了一个多小时的问题是，无法播放MP3格式的文件。最后，把用来播放MP3的插件——mp3fformat.so的文件从Plugins目录移出，重启系统，再移入，重启系统。后来就可以播放了。具体原因还不知道为什么：？不管怎么样，最后是大功告成了，可以正常使用了。<br /><br />         接下来的任务就是设置加载点，使用ftp目录中的媒体来供教研室的同学访问了。<br /><br />PS：Helix似乎不支持中文，所以接下来可能要作一件事情，就是如何将中文文件名可以被使用。</p><img src ="http://www.blogjava.net/sk8boy/aggbug/39166.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2006-04-04 14:39 <a href="http://www.blogjava.net/sk8boy/archive/2006/04/04/39166.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux常用命令</title><link>http://www.blogjava.net/sk8boy/archive/2006/03/31/38423.html</link><dc:creator>思考</dc:creator><author>思考</author><pubDate>Fri, 31 Mar 2006 03:19:00 GMT</pubDate><guid>http://www.blogjava.net/sk8boy/archive/2006/03/31/38423.html</guid><wfw:comment>http://www.blogjava.net/sk8boy/comments/38423.html</wfw:comment><comments>http://www.blogjava.net/sk8boy/archive/2006/03/31/38423.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sk8boy/comments/commentRss/38423.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sk8boy/services/trackbacks/38423.html</trackback:ping><description><![CDATA[<p>dmesg   查看启动信息<br />chkconfig   配置启动信息<br />setup         图形化的安装配置信息<br /><br />makewhatis    为man手册页建立索引<br />whatis            以完整字符匹配的方式查询man手册页<br />apropos         查询man手册页<br /><br />updatedb      建立和更新slocate的数据库<br />slocate         以更安全的方式向用户提供在整个文件系统中搜索有权限的文件<br />locate            slocate的符号连接，在GNU Linux下<br />whereis         定位源文件、二进制文件和手册页<br /><br />rpm -ivh      安装RPM包<br />rpm -e         删除RPM包<br />rpm -qpl      RPM包中的文件内容<br />rpm -qa      查询系统中已经安装的RPM包信息<br /><br />ntpdate -u    根据指定网络时间服务器的时间更新系统时间<br /><br />mount -t vfat -o CHARSET=cp936<br />                     可以显示Windown FAT32系统中的中文</p><img src ="http://www.blogjava.net/sk8boy/aggbug/38423.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sk8boy/" target="_blank">思考</a> 2006-03-31 11:19 <a href="http://www.blogjava.net/sk8boy/archive/2006/03/31/38423.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>