Linux下的压缩文件系统

始于工作的需要,开始寻找如何在Linux系统上实现“压缩文件系统”,就像使用NTFS的压缩功能一样。通过Google搜索,最终找到以下几个重要的网页:

FuseCompress
http://miio.net/fusecompress/
http://code.google.com/p/fusecompress/

Save disk space - use compFUSEd to transparently compress filesystems
http://www.linux.com/feature/137234

fuse-zip
http://code.google.com/p/fuse-zip/

compFUSED
http://www.biggerbytes.be/

All Compress Filesystem based on FUSE
http://fuse.sourceforge.net/wiki/index.php/CompressedFileSystems

发现了FUSE项目(Filesystem in Userspace)
http://fuse.sourceforge.net/

然后又看到了Linux支持ZFS的相关信息,了解到:ZFS在Linux上的实现,因为法律许可的问题,无法正常使用,而是借助于FUSE项目,建立了”ZFS ON FUSE“项目,通过将ZFS运行在“用户空间”而避免法律许可上的问题。

ZFS有一堆优秀特性,需要特别指出的是,ZFS本身就已经支持压缩(compress)技术。

ZFS相关参考:

ZFS Source Tour

ZFS on FUSE/Linux

ZFS Filesystem for FUSE/Linux

使用ZFS的十条理由

ZFS - 维基百科

Solaris ZFS 管理指南

管理和共享ZFS文件系统

ZFS时代FreeBSD系统的数据冗余策略

zfs文件系统架构解读

Using ZFS though FUSE

仍然是缓存

  Last-Modified: Wed, 13 Dec 2006 06:11:14 GMT
检查这行是否每次访问都变化。如果一直变化,说明页面是动态的,并不合适squid缓存。squid在每次请求的时候都会检查这行,判断页面是否已经过
期,并且对过期的页面重新获取。

  Cache-Control: no-store, no-cache,
must-revalidate, post-check=0, pre-check=0
这行是负责控制缓存。no-store、no-cache、must-revalidate等都是要求squid禁止缓存内容,并且在每次请求的时候都去
验证页面是否过期。

  Expires: Thu, 19 Nov 1981 08:52:00 GMT 过期时间如果大于当前时间,也会被认为是页面已经过期,需要重新获取。这样的页面也不会被缓存。

  Pragma: no-cache 这句也是禁止缓存。

RouterOS DHCP Less的保存问题

原来在IP/DHCP Server/DHCP里的Config有是否保存DHCP Less到磁盘的设置:immediately/never。
  困扰已久的问题,终于在无意间解决了。
  又一次验证了我得到的教训:“没有不可能,只有想不到。”

Windows IME 输入法

之前装的输入法,设置了快捷键Ctrl+Shift+0,输入法删除之后,这个快捷键不能设置到别的输入法上。Google了一个,发现了IME Tools这个工具,但是下载的时候杀毒软件报警,于是放弃使用,但是看到软件的介绍(如下),于是自己手动操作了一下。

1、自动删除输入法列表中不存在的输入法项目,位置:
HKEY_CURRENT_USERKeyboard Layoutpreload
2、检查注册表 HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlKeyboard Layouts
下的内容,如果某分支对应的输入法文件不存在,则删除此分支。
3、自动删除输入法从列表中删除后可能遗留的激活热键设置,位置:
HKEY_CURRENT_USERControl PanelInput MethodHot Keys

其中第三条中,发现了我自定义的两个热键的键值:00000101与00000102,删除它们,注意,要退出所有在使用输入法的程序,最好能注销一下用户,然后就可以重新设置了。

凌晨醒来

  凌晨不到六点的时候,我的意识清醒了过来,头有些痛。
  昨天睡得很早,本来还惦记得着跑步的事情,只是躺到床上以后,慢慢便没了知觉。睡梦中依稀觉得老横找我,只是头重的厉害,硬是睁不开眼睛,于是便又不管不顾的睡了起来。
  昨天邮件通知6:00-8:00停电,在停电之后,大约五分钟,我收到了报警短信,于是大脑立刻开始运转,用不到三秒钟的时间判断、猜测,应该是ROS ping报警,睁开惺忪的眼睛,看了一下手机,果不其然……
  清醒过来之后,便再也无法睡去……恍惚间,脑子里依然记得刚才少许的梦境的感觉,惶恐不安的感觉。
  我想起了LJ,不是爱情,至少现在不是。是友情吧,又或者是亲情的那种挂念。不会是我真的喜欢孤独,喜欢一个人吧?或者是我真的怕了?不敢再轻易爱别人了?抑或真的认清了其本质,甚至看多了、见多了,了解了其发展规律,对其失去了信心?又或者永远无法忘记某个人,真的要永远想着这一棵树,就这样一直逃避下去了?
  惶恐……

编译问题

  我们的系统上,为了方便,我增加了好几个bin路径到PATH变量里,之前遇到过问题,还写过一篇记录,当时总结出的经验是,自添加bin路径到PATH变量,应放在PATH的后面;然而今天发现,即使是这样,也是不能完全解决问题的,比如编译apache时,本来应该使用源代码中的工具,却调用了原来已经安装过的apache的bin目录里的apr-1-conf,而当我把原来老的apache删除之后,再用新的apache的apxs来编译php,就出问了,居然apxs是依赖于原apache的,于是乎,产生了错踪复杂、令人头痛的依赖关系……

  而当时遇到很诡异的现象,并且最终没有找到原因,而今天突然想到,可能是bash缓存的程序的路径所致,或者ld缓存的库的路径……?

  那么,以后,能不自添加路径到PATH变量,就不添加吧,这样系统也更安全些。又或者不得不添加的话,编译程序的时候,也要考虑到这一点儿了。

跳过检证安装Media Player 11

安装过WinRAR的系统,右键点wmp11-windowsxp-x86-zh-cn,有一个“释放到wmp11-windowsxp-x86-zh-cn”的选项,先将Media Player 11解压开来,然后在释放出来的目录里,依次执行以下面四个程序:
1 wmfdist11.exe

2 wmdbexport.exe

3 umdf.exe

4 wmp11.exe

就可以跳过验证,安装使用Media Player 11了。

免费、详尽的DNS检查工具/网站

http://www.checkdns.net

缓存DNS查询,解决DNS查询慢的问题

pdnsd, written by Thomas Moestl, is a proxy DNS server with permanent caching (the cache contents are written to hard disk on exit) that is designed to cope with unreachable or down DNS servers (for example in dial-in networking).
The official pdnsd homepage by the original author can be found at http://home.t-online.de/home/Moestl/, but unfortunately pdnsd is no longer being maintained by him. As far as I know I am presently the only one actively working on the code, so if you want the latest features and fixes, this is the place to get them.

主页:http://www.phys.uu.nl/~rombouts/pdnsd.html

配置起来非常简单:

1. 将example配置文件复制一份

2. 将:

server {
label= “myisp”;
ip = 58.215.76.163

IP换成自己的ISP提供的DNS地址,多个用”,”隔开

3. 最重要的一步,许多DNS不接受”ping”测试,所以要将:

uptest=if/ping 改成

uptest=query

4.  将/etc/resolv.con里的nemeserver改成127.0.0.1

PS:

pdnsd.conf是可以控制pdnsd的返回结果的,就是说,可以通过配置pdnsd来达到自定义解析结果的日的。

另外,我们使用pdnsd的根本原因是因为ISP的DNS不稳定,解析慢。pdnsd可以直接从根服务器查询开始,更不必依赖于ISP的DNS。

RouterOS配置备份与恢复

WinBox:

Files->Backup/Restore

终端:

system backup save/load name=ROS-conf-20080727.backup

export/import file=ROS-conf-20080727.conf