-
Recent Posts
Categories
- algorithm (1)
- automation (3)
- c++ (2)
- cloud (1)
- design (6)
- git (2)
- java (10)
- jenkins (1)
- linux (17)
- python (6)
- search engine (1)
- security (1)
- server (3)
- tech watch (6)
- test (3)
- troubleshooting (7)
- Uncategorized (2)
- virtualization (3)
Archives
- March 2012 (4)
- February 2012 (6)
- January 2012 (2)
- November 2011 (5)
- October 2011 (1)
- August 2011 (3)
- July 2011 (8)
- June 2011 (10)
- May 2011 (4)
- April 2011 (6)
- March 2011 (1)
Links
Monthly Archives: April 2011
Intel core 2笔记本上成功安装mac osx86
今天按照下面链接的步骤,在windows 7 x64上,使用virtual box 4.0.6版本成功安装了mac osx86. http://lifehacker.com/#!5583650/run-mac-os-x-in-virtualbox-on-windows 安装的时候要注意几点: 1.使用动态分配大小的虚拟磁盘比固定大小的虚拟磁盘要慢很多,最好使用固定大小的,能节省将近1个小时的安装时间。 2.mac装起来比较大,安装完就站8G多的磁盘空间。因此分配的空间要大于8G,我分的是12G。 3.安装的时候进到:Select a Destination界面前,可以看到屏幕的最上面有一个菜单, 需要点击”Disk Utility”,清理掉找到的虚拟磁盘。这步很快。若没有使用Disk Utility来清理磁盘,那么在select a destination的时候看不到能选择的目标磁盘。 4.选择destination, 点击continue后,一点要点击“customize”来选择boot loader和kernel, 我的boot loader选择的是功能比较少的一个Chameleon,kernel选择的是最新的一个。注意boot loader, kernel都只能选择一个, 多选了服务启动不了。 5.安装前的磁盘校验可以skip掉,但第1次最好做下检查。 6.第1次启动的时候,我安装安装前的说明,加了-f参数启动,不知道不加这个参数能否启动。
Running sonar in Jenkins/hudson: org.dom4j.DocumentFactory cannot be cast to org.dom4j.DocumentFactory
When we run sonar:sonar in Jenkins/hudson with maven, we get the following error: org.dom4j.DocumentException: org.dom4j.DocumentFactory cannot be cast to org.dom4j.DocumentFactory Nested exception: org.dom4j.DocumentFactory cannot be cast to org.dom4j.DocumentFactory I googled the message, and find it is a known problem for … Continue reading
open source tools/libraries used in Google Chrome 10
Here’s va list open source tools/libraries used in Chrome 10 David M. Gay’s floating point routines homepage dynamic annotations homepage Netscape Portable Runtime (NSPR) homepage Network Security Services (NSS) homepage purify headers homepage google-glog’s symbolization library homepage valgrind homepage xdg-mime … Continue reading
Posted in Uncategorized
Leave a comment
wget批量下载文件详解:如何下载qcon,tcon 2011,oscon 2009/2010的所有slides
1.下载 qcon beijing 2011的所有pdf文件 wget `curl -s http://www.qconbeijing.com/schedule.html | sed ‘s/<\/a>/\n/g’ | sed ‘s/.*href=”\([^"]*\)”.*$/\1/’ | grep download | sed ‘s/download/http:\/\/www.qconbeijing.com\/download/g’ ` 命令详解: curl下载到schedule.html,内容输出到stdout, 第1个sed把链接的结束标签替换为换行, </a>替换为换行, 以确保每行只有一个链接。 第2个sed找到所有的href=””中间的内容,并输出; grep download 找到所有的 download/xxxx.pdf的链接, 最后一个sed把download替换为文件的全路径, 比如 网页中的 download/panxiaoliang.pdf 链接会被替换为 http://www.qconbeijing.com/download/panxiaoliang.pdf 举例,schedule.html网页中有这样的一行,其中第2个href的地址是需要提取出来,并且补充baseurl的: <td><p align=”center”><a … Continue reading
debian 6.0(Squeeze)硬盘安装
在linode上搭起来了服务器,根据淘宝朋友的推荐,选了debian操作系统。考虑到软件的多样性,os对网络的依赖度,在笔记本上选择装上debian发行版,下载了debian的8张DVD,这样就不用基于网络安装软件了, 直接挂载iso。 原本debian的网络安装很方便,谁让我们在TG。 由于光驱不太好用,就试着从硬盘安装squeeze, squeeze比原先的woody,etch好装了不少, 从windows安装还是不如ubuntu,自动的iso挂载也只能挂载fat32分区的, 由于fat32分区存不了4G的dvd iso,只能放安装的CD ISO,debian里面的第1张CD里面没有gnome/kde,我安装时选了X window,装X Window是从网络安装的,花了1个多小时,还是宽带是5M的,不然不可想象要花多长时间。 如果能用光驱,建议用刻盘来安装。 总结一下安装步骤: 1. 准备好grub。由于我的操作系统是windows 7, grub用起来不如XP方便,就先装了Maxdos 8,然后把grub4dos解压后放到fat32分区。 如果是Windows NT/2000/XP直接修改C:\boot.ini,增加这样一行: C:\GRLDR=”Start GRUB” 把grub的引导菜单加入到启动项中很方便。 2. 准备一个fat32分区,把安装的iso cd拷贝到某个fat32分区的根目录。 iso cd可以从任一一个镜像下载,如: http://ftp.nl.debian.org/debian-cd/6.0.1a/amd64/iso-cd/ http://mirrors.sohu.com/debian-cd/6.0.1a/amd64/iso-cd/ (中国访问这个比较快) http://mirrors.163.com/debian-cd/6.0.1a/amd64/iso-cd/ (中国访问这个比较快) 由于硬盘上都是ntfs分区,我就拿usb的分区(fat32)来访iso cd。 同时下载 debian硬盘安装需要的3个引导文件(这步很重要)vmlinuz, initrd.gz, boot.img.gz,拷贝到c:\盘根目录 我用的是amd64,从这里取: … Continue reading
Hash tree (tiger tree)在大量文件实时同步中的应用
大型集群系统常需要进行多个服务器的大量文件的内容同步。 传统的文件同步方案有rsync(单向) 和 unison(双向)等,它们需要扫描所有文件后进行比对,差量传输。文件扫描计算摘要是非常耗时的,我用rsync同步maven中央仓库的内容,每次同步都要花至少几十分钟的时间计算本地的文件摘要后,才会开始从远程取新的内容。 在受控的服务器(有权限管理)的环境中,可以通过Hash Tree,就是tiger tree来实现变化文件的同步。 Sun的ZFS,Amazon的Dynamo中都有用到这种结构。 可参考 http://en.wikipedia.org/wiki/Hash_tree http://blog.daviesliu.net/2008/04/24/sync/ 简言之,Hash Tree是将所有数据的摘要信息存储成树状结构,每个节点的Hash是其所有子节点的Hash的Hash,叶子节点的Hash是其内容的Hash。这样一旦某个节点发生变化,其Hash的变化会迅速传播到根节点。需要同步的系统只需要不断查询根节点的hash,一旦有变化,顺着树状结构就能够在logN级别的时间找到发生变化的内容,马上同步。 Linux下可利用2.6内核的新特性inotify来自动感知某个目录内文件发生变化的信息,当应用程序感知到变化时,更新Hash tree的所有父节点。Windows下可使用文件系统的hook来感知文件的变化。 在需要同步时,若发现根目录的Hash值有变化,顺着目录结构往下找即可有变化的文件,再做同步。
Posted in algorithm
Leave a comment