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

<channel>
	<title>WilliamGates Blog &#187; FTP</title>
	<atom:link href="http://blog.williamgates.biz/tag/ftp/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.williamgates.biz</link>
	<description>四片叶子的三叶草</description>
	<lastBuildDate>Fri, 11 Nov 2011 14:32:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>巧用FTPRush删除Linux主机上的乱码文件</title>
		<link>http://blog.williamgates.biz/2008/02/use-ftprush-to-delete-files-with-chaos-code-name/</link>
		<comments>http://blog.williamgates.biz/2008/02/use-ftprush-to-delete-files-with-chaos-code-name/#comments</comments>
		<pubDate>Sun, 03 Feb 2008 07:59:40 +0000</pubDate>
		<dc:creator>WG</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[技术心得]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://blog.williamgates.biz/2008/02/03/124</guid>
		<description><![CDATA[　　如你所知，折腾的人永远有折腾得的事情好做，比如我今天想要试试看IPower的解压功能，一不小心解了一个中文名的文件到了用户根目录，解压出文件权限是644，文件名是一堆乱码……用FTPRush删除无效，重命名无效，移动也无效；PhpSpy的文件管理功能删除、重命名、移动也全都无效。 　　网上搜索Linux下删除乱码文件的方法，内容一大堆，但无一不需要使用Shell；唯一我可以使用的办法，就是用PhpSpy执行命令，用输入输出重定向来把ls输出的文件名直接导给rm命令；但是怎么试验都不成功，毕竟我只能执行一行命令，没法用vi（需要编辑ls生成的文件）。后来偶然看到有人说FTP可以删除，我试过了没用啊？难道有什么地方忽略了？ 　　我突然想到我的FTPRush是Unicode版的，而FTPRush的列表命令有一个编码的选择。打开工具-站点管理窗口-双击你的站点-目录列表方式-站点目录的字符集-选择WE/latin1(850)（大部分没有设置过locale的主机应该是这样），然后再登录FTP，发现乱码变了样子；删除之，一下子就成功了！ 　　结论：用FTP方式可以删除大部分乱码文件，除非有真正的系统不能接受的字符；但是删除的时候要确保你列出的文件名是正确的，这时候就需要把列表方式的编码设置正确。 Related posts: 慎改Android的Hosts文件 在国行双网机（如i909/i809）上使用Android Market购买app研究小结 再谈不要乱改Android的hosts文件]]></description>
			<content:encoded><![CDATA[<p>　　如你所知，折腾的人永远有折腾得的事情好做，比如我今天想要试试看IPower的解压功能，一不小心解了一个中文名的文件到了用户根目录，解压出文件权限是644，文件名是一堆乱码……用FTPRush删除无效，重命名无效，移动也无效；<a href="http://www.4ngel.net/project/phpspy.htm">PhpSpy</a>的文件管理功能删除、重命名、移动也全都无效。<br />
　　网上搜索Linux下删除乱码文件的方法，内容一大堆，但无一不需要使用Shell；唯一我可以使用的办法，就是用<a href="http://www.4ngel.net/project/phpspy.htm">PhpSpy</a>执行命令，用输入输出重定向来把ls输出的文件名直接导给rm命令；但是怎么试验都不成功，毕竟我只能执行一行命令，没法用vi（需要编辑ls生成的文件）。后来偶然看到有人说FTP可以删除，我试过了没用啊？难道有什么地方忽略了？<br />
　　我突然想到我的FTPRush是Unicode版的，而FTPRush的列表命令有一个编码的选择。打开<strong>工具</strong>-<strong>站点管理窗口</strong>-双击你的站点-<strong>目录列表方式</strong>-<strong>站点目录的字符集</strong>-选择<strong>WE/latin1(850)</strong>（大部分没有设置过locale的主机应该是这样），然后再登录FTP，发现乱码变了样子；删除之，一下子就成功了！<br />
　　结论：用FTP方式可以删除大部分乱码文件，除非有真正的系统不能接受的字符；但是删除的时候要确保你列出的文件名是正确的，这时候就需要把列表方式的编码设置正确。</p>
<p>Related posts:<ol>
<li><a href='http://blog.williamgates.biz/2011/09/do-not-edit-hosts-of-android-unless-necessary/' rel='bookmark' title='慎改Android的Hosts文件'>慎改Android的Hosts文件</a></li>
<li><a href='http://blog.williamgates.biz/2011/10/how-to-purchase-android-apps-use-i809-at-mainland-china/' rel='bookmark' title='在国行双网机（如i909/i809）上使用Android Market购买app研究小结'>在国行双网机（如i909/i809）上使用Android Market购买app研究小结</a></li>
<li><a href='http://blog.williamgates.biz/2011/11/do-not-and-do-not-edit-hosts-of-android/' rel='bookmark' title='再谈不要乱改Android的hosts文件'>再谈不要乱改Android的hosts文件</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.williamgates.biz/2008/02/use-ftprush-to-delete-files-with-chaos-code-name/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Linux下多FTPD的共存，以及突破glftpd的chroot</title>
		<link>http://blog.williamgates.biz/2006/07/mulit-ftpd-under-linux/</link>
		<comments>http://blog.williamgates.biz/2006/07/mulit-ftpd-under-linux/#comments</comments>
		<pubDate>Sun, 09 Jul 2006 17:22:59 +0000</pubDate>
		<dc:creator>WG</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[技术心得]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[glftpd]]></category>
		<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://blog.williamgates.biz/2006/07/10/25</guid>
		<description><![CDATA[　　新接手一台FTP Server，其上本来的FTPD为vsftpd+ncftpd，vs做前台，仅提供匿名下载，nc做后台，仅给管理员使用。nc很不稳定，效率不高，功能单薄，我准备换成glftpd。但是糟糕的是，ncftpd原来只有一个管理员账号，所有的文件都属于这个用户，而且很多文件权限不是755，甚至只有644。有root当然可以chmod和chown，但是，原来1.5T的数据，且不是高速更新的FTP，如何chown？ 　　glftpd安装的时候，被我装在了 /jail 下，选择了“封闭环境”安装。但是当我尝试把别处的目录mount到它下面的时候，就遇到权限的问题，不仅不能删除很多来自ncftpd的文件，甚至部分文件根本无法访问。最糟糕的是，glftpd下载的时候会写文件（我后来才知道可以关掉这个功能），每下载一次，它会把该文件的GID加一，以方便计算下载总数。 　　于是我们的问题就归结成了，如何让glftpd获得UID不是100（新建用户默认值）的文件的所有权？ 　　翻看glftpd的文档，发现了一个本来应该不相干的内容：如何突破glftpd的chroot。我们都知道glftpd是用root启动的，但是启动后它会立刻换成较低权限的用户去运行，并且将该用户的root限定在某一个固定的目录下（在我的安装中，默认是“封闭环境”的根目录，即 /jail ）有的人需要突破这种限制，比如访问上层目录下的文件。我本来想用mount解决这个问题的，但是它的步骤说明吸引了我： 1. Change all instances of /site to /glftpd/site in your config file 把glftpd.conf配置文件中所有的路径都换成绝对路径，在此，我是 /jail/glftpd 2. Add the pwd_path and grp_path settings to the config file: pwd_path /glftpd/etc/passwd grp_path /glftpd/etc/group 修改passwd和group文件的路径，配置文件中默认没有这两行的 3. Change datapath from /ftp-data to /glftpd/ftp-data 还是改路径 4. Edit /glftpd/etc/passwd and change every user&#8217;s homedir [...]]]></description>
			<content:encoded><![CDATA[<p>　　新接手一台FTP Server，其上本来的FTPD为vsftpd+ncftpd，vs做前台，仅提供匿名下载，nc做后台，仅给管理员使用。nc很不稳定，效率不高，功能单薄，我准备换成glftpd。但是糟糕的是，ncftpd原来只有一个管理员账号，所有的文件都属于这个用户，而且很多文件权限不是755，甚至只有644。有root当然可以chmod和chown，但是，原来1.5T的数据，且不是高速更新的FTP，如何chown？<br />
　　glftpd安装的时候，被我装在了 /jail 下，选择了“封闭环境”安装。但是当我尝试把别处的目录mount到它下面的时候，就遇到权限的问题，不仅不能删除很多来自ncftpd的文件，甚至部分文件根本无法访问。最糟糕的是，glftpd下载的时候会写文件（我后来才知道可以关掉这个功能），每下载一次，它会把该文件的GID加一，以方便计算下载总数。<br />
　　于是我们的问题就归结成了，如何让glftpd获得UID不是100（新建用户默认值）的文件的所有权？<br />
　　翻看glftpd的文档，发现了一个本来应该不相干的内容：如何突破glftpd的chroot。我们都知道glftpd是用root启动的，但是启动后它会立刻换成较低权限的用户去运行，并且将该用户的root限定在某一个固定的目录下（在我的安装中，默认是“封闭环境”的根目录，即 /jail ）有的人需要突破这种限制，比如访问上层目录下的文件。我本来想用mount解决这个问题的，但是它的步骤说明吸引了我：<br />
<span id="more-25"></span></p>
<blockquote><p>
1. Change all instances of /site to /glftpd/site in your config file<br />
把glftpd.conf配置文件中所有的路径都换成绝对路径，在此，我是 /jail/glftpd</p>
<p>2. Add the pwd_path and grp_path settings to the config file:<br />
pwd_path /glftpd/etc/passwd<br />
grp_path /glftpd/etc/group<br />
修改passwd和group文件的路径，配置文件中默认没有这两行的</p>
<p>3. Change datapath from /ftp-data to /glftpd/ftp-data<br />
还是改路径</p>
<p>4. Edit /glftpd/etc/passwd and change every user&#8217;s homedir from /site to /glftpd/site.<br />
修改passwd文件，将家目录改成绝对路径</p>
<p>5. Edit /glftpd/ftp-data/users/default.* and change the HOMEDIR line from /siteto /glftpd/site.<br />
修改新建用户的默认家目录</p>
<p>6. You also need to change paths in some help files in /glftpd/ftp-data/help,possibly some more in /glftpd/ftp-data/text.<br />
我看了所有的这些文件，应该没什么要改的</p></blockquote>
<p>后面是最关键的：</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">Make a user, lets say root
site adduser root root *@127.0.0.1
site grpadd wheel root group (or root, depending on the OS you are running)
&nbsp;
Now go edit /glftpd/etc/passwd, you will see that glftpd has the 0:0 uid and gid
just give it 10:100 or 20:200 and give root 0:0, also change root's homedir -
default is /site, change it to /.
&nbsp;
Now edit the group file and move the number of glftpd to 100 or 200 and change roots to 0.</pre></div></div>

<p>　　看到了么，我就是在这发现了突破口！原来glftpd的用户也是可以自定义UID和GID的，那么我只要修改passwd文件，让所有的管理员都拥有root（这样不安全）或者原来的数据所有者（ncftpd的管理员帐户）的GID和UID就行了。我就是这么做的</p>
<p>　　这样，我既可以访问 /jail 以上的目录（/home/ftp/），不用mount了，也可以继续使用原来的数据，不用chmod和chown了。只要使用相同UID和GID的帐号，两个FTPD完全可以共存。（本来准备把所有文件下载再上传呢……谢天谢地）</p>
<p>　　要说明的是，你当然可以使用0:0做你的管理员帐号的UID和GID，但是这样不太安全，加上glftpd一直有chroot泄漏的传言（据说已修复），所以还是设定一个特定的用户为妙。另外，这样不再能使用glftpd的一个特色功能：设定用户的delown和renameown权限，因为所有用户看起来都一样了。但经过实际实验，基于路径的权限分配是没有问题的，基于flag的权限分配也很正常，但是有可能会在site who的时候，看到一个本不属于某个组的成员，显示在这组里（比如我的一个DirAdmin显示成SuperAdmin），但是不会真正拥有权限，放心。</p>
<p>Related posts:<ol>
<li><a href='http://blog.williamgates.biz/2011/10/how-to-purchase-android-apps-use-i809-at-mainland-china/' rel='bookmark' title='在国行双网机（如i909/i809）上使用Android Market购买app研究小结'>在国行双网机（如i909/i809）上使用Android Market购买app研究小结</a></li>
<li><a href='http://blog.williamgates.biz/2011/11/do-not-and-do-not-edit-hosts-of-android/' rel='bookmark' title='再谈不要乱改Android的hosts文件'>再谈不要乱改Android的hosts文件</a></li>
<li><a href='http://blog.williamgates.biz/2011/09/do-not-edit-hosts-of-android-unless-necessary/' rel='bookmark' title='慎改Android的Hosts文件'>慎改Android的Hosts文件</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.williamgates.biz/2006/07/mulit-ftpd-under-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>再见了，FTPer的生活</title>
		<link>http://blog.williamgates.biz/2006/04/goodbye-the-life-as-ftper/</link>
		<comments>http://blog.williamgates.biz/2006/04/goodbye-the-life-as-ftper/#comments</comments>
		<pubDate>Fri, 28 Apr 2006 13:00:42 +0000</pubDate>
		<dc:creator>WG</dc:creator>
				<category><![CDATA[LilyStudio]]></category>
		<category><![CDATA[心情文字]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[心情]]></category>
		<category><![CDATA[散文]]></category>

		<guid isPermaLink="false">http://blog.williamgates.biz/2006/04/28/20</guid>
		<description><![CDATA[　　大家也许已经习惯了我的资源发布帖子，但这一次，我要带给大家的不是什么资源，而是一个告别。 　　很小的时候就接触过FTP软件，那时候是用来更新163个人主页的，当时从没想过可以有自由开放的FTP供大家下载（公众网上本来就没有多少这样的服务器）。大一刚入学的时候，我第一次接触到了校园网FTP，才明白资源原来也是可以这样分享的，当时的著名FTP，比如音乐收录几近完美的cos，下动漫的cot，游戏的Lilystudio’s，电影的Thephy，怎么也连不上的FTP2，都是我常去的乐园，当时从未想过这些资源是从哪里来的，也从未想过自己会去做这些事情。 　　后来，误打误撞进了百合工作室，又莫名其妙地混到了几个公众网资源论坛的账号，加上手头几台闲置的服务器，出于好奇和激情，就做起FTPer来。 　　从上个学期开始，到现在已经快一年了，从一开始的只运行了很短时间的法学院FTP，到工作室FTP，再到新的服务器——244，再到现在的media，我一共做过4台FTP服务器的总管理员，另外做过yaoge123两台服务器的管理员。FTPD从Serv-U到Gene6，又换了很多版本，客户端也从FlashFXP到FTPRush，后来还自己掏钱买了一份正版的FTPRush的Lifetime upgradable License。这段时间的生活，我付出了很多，也学到了很多。 　　每天，我上公众网各论坛看最新的资源列表，把其中有价值的内容记录下来，去相应的FTP下载到服务器上，对所有的文件进行一遍sfv重新校验，然后上传到media上，然后整理资源帖子并且发布，上传介绍图片。每天上传的流量常常在数GB。虽然这个过程可以用自动脚本来完成，但那样不能保证资源的质量，也失去了FTPer的乐趣。更多的工作，比如整理数以十万计的电子图书，甚至十多万首MV，根本不是脚本可以做到的事情，需要手工来进行。但即使这样，我也能乐在其中。 　　说到乐趣，最令人欣慰的莫过于自己发布的资源被别人称赞，别人所需求的东西我刚好能提供。被别人需要的感觉，正是一个FTPer的幸福所在。 　　但是，除此之外，还有很多其他的事情需要去面对。管理FTP花费了太多精力，占去了我自习甚至部分上课的时间；过多的上网时间，让我结识了很多朋友，但减少了与人当面的接触，身边的朋友减少了；有的时候，面对网友自私的、几乎不可能完成的要求，我不知道如何去回答；有的时候，面对无端的指责，甚至质问和辱骂，我也会火冒三丈。除了这些以外，还有更多不足为外人道的困难和挫折，可以说，FTP耗尽了我大部分的精力和热情，但是我不后悔。 　　直到现在，当我选择离开的时候，才明白为什么有些朋友的FTP更受欢迎：大众需要的才是我们要提供的。我们的资源大多是高质量的0day标准格式，特别是电影、音乐等，但又有多少同学真正会使用这些资源、需要这些内容？有些朋友的服务器终日客满，就是因为充分考虑了大家的需要。所以说，从FTPer的生活中我悟到的最重要的道理就是，只有你做的事情别人需要，你付出的努力才会有回报。 　　在此，我要向那些还在继续坚持的、为大家提供服务的FTPer致敬。不管你所拥有的是一台个人机器，很少的十几G资源，还是千兆的带宽，数G的内存，上T的内容，只要你在坚持为别人服务，你都是伟大的。 　　本来还有很多的话想说，本想发发牢骚，或者说些感伤的话，但是发现自己什么都不必说，只要南大的校园网络环境越来越好，南大的同学能越来越体会到校园网的好处，而不是整天咒骂它，就很值得我们高兴了。 　　好了，我该走了，虽然我为管理FTP的工作付出了很多，并没有完全得到我想要的结果，但是我却因此得到了更多我不曾预想的收获。虽然我辞去了这几台服务器的管理职务，但是我还是愿意为大家回答电脑问题，我还是会做教程，会帮助需要帮助的人。虽然以后我上百合的时间会少很多，但我还是百合工作室的一员，我也是百合永远的拥护者，正如我所敬仰的一位作家所说， 　　百合，是我的水印图案。 No related posts.]]></description>
			<content:encoded><![CDATA[<p>　　大家也许已经习惯了我的资源发布帖子，但这一次，我要带给大家的不是什么资源，而是一个告别。</p>
<p>　　很小的时候就接触过FTP软件，那时候是用来更新163个人主页的，当时从没想过可以有自由开放的FTP供大家下载（公众网上本来就没有多少这样的服务器）。大一刚入学的时候，我第一次接触到了校园网FTP，才明白资源原来也是可以这样分享的，当时的著名FTP，比如音乐收录几近完美的cos，下动漫的cot，游戏的Lilystudio’s，电影的Thephy，怎么也连不上的FTP2，都是我常去的乐园，当时从未想过这些资源是从哪里来的，也从未想过自己会去做这些事情。</p>
<p>　　后来，误打误撞进了百合工作室，又莫名其妙地混到了几个公众网资源论坛的账号，加上手头几台闲置的服务器，出于好奇和激情，就做起FTPer来。</p>
<p>　　从上个学期开始，到现在已经快一年了，从一开始的只运行了很短时间的法学院FTP，到工作室FTP，再到新的服务器——244，再到现在的media，我一共做过4台FTP服务器的总管理员，另外做过yaoge123两台服务器的管理员。FTPD从Serv-U到Gene6，又换了很多版本，客户端也从FlashFXP到FTPRush，后来还自己掏钱买了一份正版的FTPRush的Lifetime upgradable License。这段时间的生活，我付出了很多，也学到了很多。<br />
<span id="more-20"></span><br />
　　每天，我上公众网各论坛看最新的资源列表，把其中有价值的内容记录下来，去相应的FTP下载到服务器上，对所有的文件进行一遍sfv重新校验，然后上传到media上，然后整理资源帖子并且发布，上传介绍图片。每天上传的流量常常在数GB。虽然这个过程可以用自动脚本来完成，但那样不能保证资源的质量，也失去了FTPer的乐趣。更多的工作，比如整理数以十万计的电子图书，甚至十多万首MV，根本不是脚本可以做到的事情，需要手工来进行。但即使这样，我也能乐在其中。</p>
<p>　　说到乐趣，最令人欣慰的莫过于自己发布的资源被别人称赞，别人所需求的东西我刚好能提供。被别人需要的感觉，正是一个FTPer的幸福所在。</p>
<p>　　但是，除此之外，还有很多其他的事情需要去面对。管理FTP花费了太多精力，占去了我自习甚至部分上课的时间；过多的上网时间，让我结识了很多朋友，但减少了与人当面的接触，身边的朋友减少了；有的时候，面对网友自私的、几乎不可能完成的要求，我不知道如何去回答；有的时候，面对无端的指责，甚至质问和辱骂，我也会火冒三丈。除了这些以外，还有更多不足为外人道的困难和挫折，可以说，FTP耗尽了我大部分的精力和热情，但是我不后悔。</p>
<p>　　直到现在，当我选择离开的时候，才明白为什么有些朋友的FTP更受欢迎：大众需要的才是我们要提供的。我们的资源大多是高质量的0day标准格式，特别是电影、音乐等，但又有多少同学真正会使用这些资源、需要这些内容？有些朋友的服务器终日客满，就是因为充分考虑了大家的需要。所以说，从FTPer的生活中我悟到的最重要的道理就是，只有你做的事情别人需要，你付出的努力才会有回报。</p>
<p>　　在此，我要向那些还在继续坚持的、为大家提供服务的FTPer致敬。不管你所拥有的是一台个人机器，很少的十几G资源，还是千兆的带宽，数G的内存，上T的内容，只要你在坚持为别人服务，你都是伟大的。</p>
<p>　　本来还有很多的话想说，本想发发牢骚，或者说些感伤的话，但是发现自己什么都不必说，只要南大的校园网络环境越来越好，南大的同学能越来越体会到校园网的好处，而不是整天咒骂它，就很值得我们高兴了。</p>
<p>　　好了，我该走了，虽然我为管理FTP的工作付出了很多，并没有完全得到我想要的结果，但是我却因此得到了更多我不曾预想的收获。虽然我辞去了这几台服务器的管理职务，但是我还是愿意为大家回答电脑问题，我还是会做教程，会帮助需要帮助的人。虽然以后我上百合的时间会少很多，但我还是百合工作室的一员，我也是百合永远的拥护者，正如我所敬仰的一位作家所说，</p>
<p>　　百合，是我的水印图案。 </p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.williamgates.biz/2006/04/goodbye-the-life-as-ftper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

