2009年7月13日星期一
在Linuxtoy上看到的firefox优化方法
进入.mozilla/firefox/xxxx.default
执行sqlite3 places.sqlite vacuum和sqlite3 formhistory.sqlite vacuum,然后启动firefox,速度貌似确实有了较大改善。
不过按照我对vacuum这个词的理解,貌似这个优化方法不算一劳永逸来着?
2009年7月11日星期六
Sed也要万分小心的教训
find . -exec sed -i 's/bbs\.xxxx\.xxx\.cn/111.222.333.444/g' {} \;
且不说把其中的bin和lib文件夹中的一些二进制文件改了,这个好办,重新编译生成这些二进制文件就解决了。要命的是kbs的bbs系统在boards、mail这些存放数据的文件夹里面也全部都是二进制文件,使用上面的命令之后,由于bbs.xxxx.xxx.cn与111.22.333.444相差一个字符,直接导致被修改的部分之后完全乱套。
解决办法是:
1. 对于被搞乱的版面,进入boards下相关文件夹,备份.DIR和.ORIGIN,然后
sed -i 's/111\.22\.333\.444/111.22.333.444 /g' .DIR .ORIGIN
其实就是在末尾多了个空格来达到字符数平衡,多数都能解决。
2. 对于被搞乱的邮箱,同样进入mail下相关文件夹,备份之后进行替换
sed -i 's/111\.22\.333\.444/111.22.333.444 /g' .DIR .SENT .DELETED
另外:如果在bbs文件夹里面建立一个NOLOGIN的空文件,就只有telnet 127.0.0.1可以登录,可以用来测试。
2009年7月1日星期三
更改gtk的字体和主题
其实以前没有想到有这么简单,直接修改~/.gtkrc-2.0即可。例子如下
include "/usr/share/themes/Nodoka-Silver/gtk-2.0/gtkrc"
style "user-font" {
font_name = "Microsoft YaHei 10"
}
widget_class "*" style "user-font"
gtk-font-name="Microsoft YaHei 10"
#Nodoka-silver是使用gtk-nodoka-engine的主题,只依赖gtk2。对于不想多装依赖的本人来说,比murrine引擎要好一些。
2009年6月27日星期六
2009年6月25日星期四
OpenVPN翻墙
首先想到的是tor。tor确实好配置,不过龟速实在难以忍受,于是想到了OpenVPN。目前找到了两个免费的OpenVPN服务,分别是ultravpn和alonweb。首先到alonweb的官方网站下载必要的文件,解压到家目录中。然后把解压出的alonweb.conf中的"redirect-gateway"改为"redirect-gateway def1"(如果你自己是处于一个LAN网络中已经有一个default gateway的话)。
modprobe tun,然后sudo openvpn --config alonweb.conf --ca alonweb.crt就可以启动openvpn了,不要忘了先要安装openvpn这个软件,和在alonweb的官网上注册。
然后就可以测试了,ping xxx.xxx.0.1(这是启动openvpn时提示信息最后几行中显示的),如果能ping通,就成功了一半。至此,就建立了自己的电脑到远程vpn服务器的一个隧道。如果启动openvpn时把"redirect-gateway"注释掉的话,使用route命令查看一下本地的路由表,会发现只有到xxx.xxx.0.1的连接会通过新建立的隧道,而其它通信还是通过原来的网关。但是我们用vpn的目的就是用来翻墙,所以必须要进行一些额外的配置。其第一步,就是在配置文件中设置redirect-gateway def1(刚才我们已经完成了),接下来还有2步:
1. sudo sysctl -w net.ipv4.ip_forward=1,允许内核进行ip forward
2. 设置iptables:
iptables -t nat -A POSTROUTING -s xxx.xxx.xxx.0/24 -o eth0 -j MASQUERADE
/etc/rc.d/iptables save
/etc/rc.d/iptables start
注意这里的xxx.xxx.xxx.0/24是你自己所处的实际内网的网段,与OpenVPN的输出信息完全无关。我就是在这里纠结了好长一段时间,后来想想,这里的含义应该是:由于我处于这个内网,我的所有访问必然会经过这个内网,所以只要把与这个内网的所有通信都route到隧道就可以了。
经过以上的设置,本机所有的网络通信都通过隧道进行,这显然不是最合理的。至于如何精细调节,可能就要在iptables或route上下功夫了,不在本文讨论之列。经测试,速度还是可以忍受的,比tor要快得多。
最后ps一下:alonweb是有广告的(ultraweb还没试),不过这对于我来说反而是一种安慰——自由软件事业还是需要大家的支持。
2009年5月3日星期日
用Scribefire发布blogger文章注意
然后就是发布的文章总是草稿,还需要再登入blogger控制台进行发布。
Powered by ScribeFire.
2009年5月2日星期六
更快的查看mldonkey进度的方法
以前要查看mldonkey,比较简单的方法是用web界面或第三方gui如sancho。下面介绍更简单的利用telnet查看进度的方法。
1. 编辑~/.bashrc,加入一行:
alias m='(echo "auth username password";echo vd) | nc -q 1 localhost 4000 | awk '"'"'/\[D/{print"\033[0;32m"$7"\t\033[4;31m"$8"%\033[0m\t",$14"KB/s"} /Down:/'"'"' |head'
然后source ~/.bashrc就可以用m来查看前10条进度记录了。
2. 多用户的权限配置策略
如果是单用户的话,没什么好说的,把你的用户名和密码写在上面的命令中,然后想办法保证.bashrc文件不会被别人看到就ok。
如果是多用户,假设自己是管理员user1,还有一个一般用户为user2。我想查看所有用户的进度,但是user2只能查看自己的进度。并且为了安全起见,用于查看的用户没有管理员权限,则可以如下配置用户和组:
user========group=====================admin
admin=======mldonkey==================true
user1=======mldonkey group1==============true
user2=======group2=====================false
view========group1 group2===============false
group============admin
mldonkey==========true
group1===========false
group2===========false
并把user1的默认group设置为group1,如此设置的效果为:admin基本不用;user1具有管理员权限,但是它下载的文件属于group1组,能够被view用户看到;user2只能看到自己的下载的文件,但是view用户也能看到user2下载的文件。剩下的就只需要保证.bashrc不被别人看到了,其实看到了也无所谓,大不了把我下载的文件取消了,至少无法改变我的设置
3. 可能用到的命令
以下为telnet命令:
groupadd group1 true/false #true则该组具有管理员权限
useradd user passwd group
useraddgroup user group #把user加入到group组中
userdgroup user group #设置user的默认group
chgrp num none/group #把某一个下载进程的所属组改为group,none则为只有其所属用户才能看到
以下为shell命令:
cd ~/.mldonkey && mv files.ini temp && cat temp |sed 's/mldonkey$/group1/g' > files.ini && rm temp #把以前用管理员帐号下载的文件的group值都改为group1
Powered by ScribeFire.



