May 23, 2010
最近学校网络中心疯狂查封小路由器,我们实验室不幸被查封。看来以后用路由上网是不太可能了。解决方法可以用 iptables 做个路由器,然后根据学校查路由的方法写防查规则,但是查路由的方法有很多种,也不知道学校是如何查的,于是这种方法就放弃了。用 squid 搭代理服务器也是很有可能被查出来的,目前比较方便的解决方法就是用 ssh 隧道方式作代理了,这种发法应该室查不出来的。 不过对于 ssh -D 所得到的 socks5 代理肯定是没有路由上网方便。毕竟不是全局代理,有些软件是用不了代理的,这就需要把 socks5 代理转换成全局的代理。对于 windows 来说很简单,装上 Proxifier 就可以了。 对于 Linux 则麻烦一些,需要 redsocks 这个程序。安装后,在 redsocks 目录下,建立 redsocks.conf 文件: base { log_debug = on; log_info = on; //日志文件,调试时可指定为标准错误”stderr” log = “file:/home/hedaors/redsocks/socks.log”; // 是否以后台模式运行 daemon = on redirector = iptables; } redsocks { //local_ip设置为0.0.0.0则可共享,设备为127.0.0.1则只能在本机使用 local_ip = 0.0.0.0 local_port [...]
October 7, 2009
1. Phonopy 简介 Phonopy 是一个由 python 实现的的晶体声子分析程序。它是目前提供了 VASP 的 Wien2k 的接口用来计算原子受力。它的主要功能有: 计算声子色散谱; 计算声子态密度,包括分立态密度; 声子热力学性质,包括自由能,热容量,焓; Phonopy 通过力常数的方法计算声子谱。力常数由计算原子在超晶胞中被移动后的受力得到(Parlinsk-Li-Kawasoe 方法)。 同样类型的程序还有 phon, fropho, phonon. 其中 phonon 是商业软件,卖的很贵,fropho 和 phonopy 的代码其实都是来自于 phon, fropho 是为了代替 phon 而开发的,目的是为了使用 phon 更方便,phon 和 fropho 主要都是由 fortran 开发的,而现在 fropho 已经停止开发,由 python 开发的 phonopy 代替了 fropho, phonopy 在使用上更为方便,在计算量上更为减少。因为 phon, fropho 和 phonon 在移动原子位置时都是一次只移动一个原子的一个方向,而 phonopy 则可以一次移动一个原子的多个方向,所以和其它程序相比, [...]
September 30, 2009
在英文 Linux 下的浏览器里的 flash 输入框输入中文时会出现乱码,但是把中文复制过去却没有问题。这个问题在 亦歌,gtalkd gadget 等程序里都会出现。 但在中中文 Linux 下就没有这个问题 。 如果不想把 linux 的默认语言换为中文的话,可以通过一个有点点 dirty 的方式解决。 我平时该要用 firefox ,由是我在 /usr/bin/firefox 里的开头加上了一行 LANG=zh_CN.UTF-8 , 即为 #!/bin/sh LANG=zh_CN.UTF-8 即将 firefox 在临时的中文环境下启动,这样 flash 里输入中文就不会出乱码了。
July 15, 2009
自从用了 ssh -D 代理后(可参考本 blog 右边的链接),便再也不用为点击某个链接被重置的情况烦恼啦。我在 Linux 使用 ssh -D 连接代理服务器时过一段时间总会断线,于是我就用 expect 写了一个脚本,不担可以防上 ssh 断线,还可以自动输入密码 关于 expect 我摘录一段在 中文维基 上的介绍: Expect是Unix系统中用来进行自动化控制和测试的软件工具,由Don Libes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fsck,rlogin,tip,ssh等等。该工具利用Unix伪终端包装其子进程,允许任意程序通过终端接入进行自动化控制 有些 linux 系统里可能没有 expect , 你可以自己安装 在 debian/ubuntu 里 : apt-get install expect 在 opensuse 里:zypper in expect 在 fedora 里: yum install expect 当然还有一些其它发行版都有自己的安装方式。 你可以新建一个文件,比如 sshgfw , 将如下代码复制进去。 #!/usr/bin/expect set timeout 60 [...]
February 21, 2009
今天用 expect 写了一个自动 telnet 登陆服务器的小脚本,以前还不知道 expect 这么好用,嗯 unix tools 真是强大。 写这个脚本的起因是我们使用的计算软件的特殊需求:计算分两部分,一部分是自己小组写的计算代码,另一部分是商业软件。商业软件的计算部分耗时非常大,我们一般都是租用超级计算机来计算。而我们自己的代码则对保密性要求非常高,所以这部分代码一般都在本地运行,而同时要求本地的计算结果要实时的传送到远程的超级计算机以便进行下一步计算。 在以前我们用的都是国外的超级计算机,一般都开放了 ssh 服务,所以我们只要设定了 ssh key , 就可以很方便的自动登陆机器提交任务和传输文件了。但是现在我们租用的计算机—-曙光5000A,即去年在全球排名第十的 MagicCube,却不支持 ssh 登陆,只能用 telnet 登陆。而且它必须先登陆一个防火墙,然后再登陆主节点,但是在你第一次登陆后一定时间内不需要登陆防火墙即可登陆主节点。所以在自动登陆机器时还要做一个判断,用 expect 很容易就可以实现。 脚本代码: #!/usr/bin/expect set timeout 60 spawn /usr/bin/telnet xxx.xxx.xxx.xxx expect { "User:" { send "username\r" expect "password:" send "xxxxxx\r" expect "login" send "username\r" expect "Password:" send "xxxxxx\r" } "login" { send [...]
Filed under:
linux by admin
October 21, 2008
实验室有一个 FTP 服务器,上面的资源不算多(数据总共也就 120 G),但电子书和各种Linux下的闭源/商业软件到是很多。由于 ftp 的界面不够友好,有时想找一本电子书或软件还是挺费劲的。所有我就想做一个 ftp 搜索引擎。 由是就有了这么一个 Zoogle, 截图如下。 用起来效果还不错 计划是把校内的所有 ftp 资源和教育网上的一些常用的 ftp 资源都收录进来。目前已收录25万多条数据。不过暂时只能校内 IP 访问。 ——update—-补两个搜索结果图 注:这个搜索引擎的程序是基于开源软件 W-cyclone 稍加改动做成的。是淅江大学的 weichao 开发的,基于 GPL V2 协议。可以去 这里 下载。
September 4, 2008
今天收到一封来自 CodeWeavers 的 Email ,大意是说,现在crossover office 限量免费,赶紧注册一下就可以得到一份免费的 CrossoverOffice , 结果注册以后却出现下面这个提示。。。 在这个伟大的国度什么事情都能碰到啊。。。
August 2, 2008
今天把 ibus 这个输入法框架给装上了,其间得到了作者的不少指导,现在这个框架还没有完全成熟,但是已经达到可用的地步了。 ibus 主要由 python 来完成,作者好像是个 python 的 fans . 据作者说亮点主要在架构上, 采用cs结构,所有输入引擎都是单独的进程,可以防止引擎之间互相影响, 同时可以轻松实现引擎的随时加载和卸载。 我的机器比较老,如果把 GBK 超大字符集和模糊拼音支持都打开的话,则上屏速度有点慢,估计使用现在主流配置的机器应该没问题。 上两上图吧。
Filed under:
linux by admin
August 1, 2008
今天上 scim-python 主页,意外发主页下面多了一个 link ( ibus ) 。 是 scim-python 的作者 Shawn.P.Huang 写的。 到现在我大概知道有了 3 个下一代输入法框架了,另外两个是 huzheng ( stardict 的作者 )写的 scim2, 还有是 suzhe 的 imbus 。总的来说,我更看好 ibus ,imbus 一直也没有什么进展,scim2 也一样不怎么的。而 ibus 好像进展挺迅速,从 scim-python 的品质来看,ibus 估计也不会差。
Filed under:
linux by admin
July 26, 2008
以前也算半个Linux Geek了吧,在Linux下使用Vmware/Vbox来虚拟Windows,其实这的确是一种无奈,需要使用网银,上学校里的特殊网页,浏览老师的doc/ppt等。不过虚拟机下的Windows效率的确不行,做很多事情都比较卡(因为我的机器是三年前买的HP Pavilion ze2201),而且我喜欢到迅雷看看上去看电影(这个应该是我见过的速度最快,最清晰的在线影院了),但是我的虚拟机里不但非常卡,而且画面很不清晰。 而对于Linux我确实很喜欢,而且很依赖,用Linux有一种上隐的感觉。最后我决定把系统转换一个角色:Windows+Vmware+Linux 。发现这样是一个不错的选择,首先Linux的精华主要体现在命令行,而不在于他的图行界面。而且Linux下的图行驱动一直不是很理想(我用的是ATI的显卡-_-)。而Windows 对原生硬件驱动支持好,也比较适合做宿主系统。还有我感觉用Windows Live Writer 写博很好,Linux下缺少一个类似的软件。但是缺点是需要小心病毒木马之类的(为此我还专门买了个卡巴 40 块一年,也不算贵吧)。 确定了方案以后面临的就是虚拟机软件选择的问题了,一般在Windows上虚拟Linux主要有三个Vmware, Virtualbox, colinux , 其中colinux效率比较高,但是也比较复杂,我也懒得搞 毕竟我只是需要一个linux 文本界面就足够了,不会占太多资源,占资源多的事情我都会放到实验室的机器上去做。Virtualbox是一个新秀,速度非常快,但这是牺牲Host系统性能为代价的,也许强悍的机器感觉不出来,但我的机器上反映就非常明显,并且它是把Host系统的内存一下全部分给虚拟机,感觉这样系统内存会浪费掉。所以综合考虑,我决定使用Vmware,Vmware Server 是免费的,但是它不支持共享文件夹(这个其实可以用samba来代替),而且在我机器上具卡。而用Vmware workstation 就好多了,其实这个也可以免费用的,先去申请一个试用号,装完系统以后每次都用vmplayer启动就行了,或者如果不怕费事,每个月都去注册个新试用序列号:-) 当然你还可以选择使用注册机(但其实没这个必要)。 我原来把Linux做桌面时一直是使用opensuse的(其间偶尔偿试其它版本如ubuntu,fedora,arch等),这个系统非常优秀,非常稳定,对硬件支持非常好,我尤其喜欢的是它能自动设置我的屏幕dpi为85,而其它分版确ý要自已设置,而windows我却不知道如何去设置。如果用KDE的话速度最是没得说,启动程序基本上是即点即开,不知道为什么总有个说它慢 (也许他们用的都是gnome?) Debian也是我喜欢的系统,但它对硬件的支持上不如suse,所以我就没用它做桌面,但是因为我现在要在虚拟机中装Linux所以就无所谓硬件支持啦,而且Debian升级,安前软件真是太方便了,所以我决定方案为Windows XP(我这机器上不了vista)+Vmware+Debian. 系统的安装可谓是轻车熟路,很快就装好了(debian etch),装完之后装上vmware tools就可以使用共享文件夹了,如果使用图形界面的话还可以自动捕获、释放鼠标。然后对debian进行一些简单的配置就可以使用了,但是直接在虚拟机里使用的话有很多不方便的地方,需要经常ctrl+alt释放鼠标,而且共享剪切板也不方便,所以我选择将vmware在后台运行,然后开个putty ssh上去。 我平时主要使用Emacs, 但是在putty中却把右边的alt键给拦截了,所以这里用到了一个AutoHotkey来解决这个问题,我把右边的Alt皱皱键映射为左边的,而且为了方便我把caps lock 和右边的ctrl键互换了,当然这只是在putty窗口里有效。 这里告诉大家一个debian下emacs23 的源,(我实在不想自已编译) deb http://emacs.orebokech.com etch main 我的AutoHotkey配置文件 #IfWinActive ahk_class PuTTYRAlt::LAltCapsLock::RCtrlRCtrl::CapsLock#IfWinActive 其实我这么做也是受了pluskid的影响 最后贴上截图一张。