折腾了一下conky配置, 目前暂时对自己折腾出来的效果比较满意啦.
效果:
Continue reading 晒一下我的 conky
Year: 2010
找回 Ubuntu Natty 里 Compiz 0.9.2.1 版本丢失的附加特效包
Compiz 更新到 0.9 虽然已经过去挺长时间了, 但是 Ubuntu 源似乎一直没有打算把 plugins-extra 也跟上更新到0.9.2.1版本. 搜索了一阵, 在 LinuxQuestion 找到了一个可行的编译方法以配合系统源里的compiz.
步骤:
1, 到 http://releases.compiz-fusion.org/0.9.2.1/ 下载合适版本的plugins-extra.
传送门: http://releases.compiz-fusion.org/0.9.2.1/compiz-plugins-extra-0.9.2.1.tar.gz
2, 解压之:
1 2 |
tar xzvf compiz-plugins-extra-0.9.2.1.tar.gz cd plugins-extra |
3, 执行下面的命令:
1 2 |
mkdir build && cd build cmake .. |
4, 编辑 CMakeCache.txt
1 |
gedit CMakeCache.txt |
5, 查找下面的内容:
1 |
CMAKE_INSTALL_PREFIX:PATH=/usr/local |
替换为
1 |
CMAKE_INSTALL_PREFIX:PATH=/usr |
Continue reading 找回 Ubuntu Natty 里 Compiz 0.9.2.1 版本丢失的附加特效包
让Ubuntu不在设备变化时将网卡重新编号
如果你和我一样, 常常把硬盘在不同的电脑上插来插去, 或许会烦恼于网卡命名 eth0/eth1, wlan0/wlan1 之类的问题. 如果不喜欢更改电脑后 Ubuntu 自动累加这个计数, 可以用下面的方法设置一下:
1 2 |
sudo mv /lib/udev/rules.d/75-persistent-net-generator.rules /lib/udev/rules.d/75-persistent-net-generator.rules.disabled sudo mv /etc/udev/rules.d/70-persistent-net.rules /etc/udev/rules.d/70-persistent-net.rules.disabled |
这样重启后, 第一张有线网卡总是 eth0, 第一张无线网卡一定是 wlan0 了, conky等东西也不用重新配置啦 🙂
[多图]Windows 平台 OpenVPN (IPv4/IPv6) 简明使用教程
1, 如果是IPv4用户, 可以到官网(http://openvpn.net/)下载安装最新版OpenVPN, 并跳过下面的 5 – 6 步
如果是IPv6用户, 可以到官网下载2.1.1版本(http://openvpn.net/release/openvpn-2.1.1-install.exe)的OpenVPN(IPv6补丁最高支持到2.1.1版本的OpenVPN)
然后到github(https://github.com/downloads/jjo/openvpn-ipv6/openvpn.exe-2.1.1-ipv6-0.4.11.zip)下载IPv6补丁.
2, 如果无法访问上述地址(如教育网用户), 可以访问http://m.uudisc.com/user/felixonmars/files/3671029下载OpenVPN 2.1.1及其IPv6补丁包.
3, Win7 用户下载后不要直接打开, 需要使用管理员权限运行.
4, 按照提示安装 OpenVPN 客户端软件
C语言课程设计的一点资料(TC)
恩, 因为Teacher要求对图形/文件/工程熟练掌握, 我把这些东西总结一下吧
1, 图形
使用图形库,首先引入
1 |
#include<graphics.h> |
头文件graphics.h, 以及在编译环境里勾上图形库(作用是tcc编译时加入lib/graphics.lib)
基本操作请参考: http://www.bccn.net/Article/kfyy/vc/jszl/200708/5808.html
2, 文件
这个,书上够详细了,就略吧..
推荐一个方便调试的方法: 用scanf/printf调试输入输出成功后,直接在程序开始处加上
1 2 |
freopen("debug\\in.txt","r",stdin); freopen("debug\\out.txt","w",stdout); |
即可使输入输出全部文件化(不用做其他改动,比较方便).
3, 工程
- 每一个C源文件都要建立一个与之名字一样的H文件,里面仅仅包括该C文件的函数的声明和注释(接口说明等),其他的什么也不会有,比如变量的定义等等不应该有;
- 建立一个所有的文件都要共同使用的头文件,里面就是放那些需要的系统头文件,比如
12#include<stdio.h>#include<stdlib.h> - 每个C源文件应该包含自己的头文件以及那个共同使用的头文件
- 主文件main.c里面包含所有的头文件(包括那个共同使用的文件),main.c里面的函数可以再做一个头文件,也可以直接放在文件的开头部分声明就可以了
RunTC – 在任意平台的任意IDE中调用TurboC编译运行C程序
本项目已建立在 Google Code: http://code.google.com/p/runtc/
某些学校(比如某猫所在的HUST)的C课程设计作业仍然需要用TC及其graphics.h完成, 由于”不能忍受”那个糟糕的IDE, 本猫写了这么个小脚本, 可以在任意平台使用.
ChangeLog
r4 – Alpha 2 整合 run.bat 到主脚本, 不需要手动安装 – 2010/9/14
r3 – 修复长文件名支持, 修复带空格的路径支持, 修复非.c扩展名支持 – 2010/9/14
r2 – Alpha 1 基本实现功能 – 2010/9/13
安装使用说明(以 Geany 为例):
Windows:
下载安装 Geany: http://www.geany.org/Download/Releases
进入页面后下载 Windows Binaries 的 Full Installer including GTK, 安装过程不再赘述.
下载安装 Dosbox: http://www.dosbox.com/download.php?main=1
进入页面后下载 Windows 版本, 安装过程不再赘述.
下载 Turbo C++ 3.0: http://www.xdowns.com/soft/38/121/2006/Soft_21504.html
下载后解压到任意目录(目录名建议不要有空格和中文)
下载 run.bat 放到 TC 的 BIN 目录.
下载地址: http://runtc.googlecode.com/files/run.bat
例如: TC解压到了 C:\TC3
则把 run.bat 放到 C:\TC3\BIN\
下载 tcrun.exe 放到自己记得的地方.
下载地址: http://runtc.googlecode.com/files/tcrun.exe
然后在 tcrun.exe 所在路径新建一个文本文件, 输入以下的内容:
1 2 |
TC=<TC的安装路径> DOSBOX=<DOSBOX的安装路径> |
示例:
1 2 |
TC=C:\TC3 DOSBOX=C:\Program Files\DOSBox-0.74 |
保存时类型选择”所有文件 (*.*)”, 然后输入文件名: tcrun.conf
注意: Program Files 之类的中间有空格的路径, 请参照示例在两头加上引号.
然后打开Geany, 打开任意一个C程序, 然后单击”生成”菜单中的”设置生成命令”
把 2. 生成 后面的 命令
1 |
gcc -Wall -o "%e" "%f" |
修改为
1 |
C:\tcrun.exe "%f" |
如果把tcrun.exe放在了不同的目录, 请参照修改.
现在, 按下 F9, 就可以自动调用dosbox+tc跑起你的C程序了!
Continue reading RunTC – 在任意平台的任意IDE中调用TurboC编译运行C程序
Pingcheck – 用Ping检查网络通断并即时通知
使用方法:
1 |
python pingcheck.py <目标> |
比如
1 |
python pingcheck.py 8.8.8.8 |
简单的小脚本…跨平台…分别用了pynotify和pywin32库来执行通知, 因此需要安装相应的库才可以使用.
用ping检查网络通断,并且在通断情况改变时提示用户…
下载地址:
脚本(任意平台): http://movieinfofetch.googlecode.com/files/pingcheck.py
Windows下的已编译版本(需要VC2005运行库): http://movieinfofetch.googlecode.com/files/pingcheck.exe
Continue reading Pingcheck – 用Ping检查网络通断并即时通知
继续我的Ubuntu之旅 (3)
恩,在开头先提醒各位小白鼠: ppa:network-manager/ppa 和 ppa:xorg-edgers/ppa 是两门毒药, 慎装!!
(因为它们的杯具, Felix 重装系统了 =.=||)
这段时间小纠结了一下路由表/服务器方面的问题, 下面是一部分最近的笔记
照例先给个目录:
1, Ubuntu 10.04 Server 短按电源键热关机:
2, Xorg版本过新导致nvidia驱动不加载的workaround
3, HUST/Tsinghua/SJTU的 6in4 tunnel 开启方法
4, 三种HUST能使用的Linux下的锐捷认证工具(mystar/xrgsu/mentohust)
5, 更通用的路由表脚本
1, Ubuntu 10.04 Server 短按电源键热关机:
Ubuntu 10.04 Server 默认没有安装acpid, 先装上:
1 |
sudo apt-get install acpid |
然后编辑 /etc/acpi/events/powerbtn:
1 |
sudo vi /etc/acpi/events/powerbtn |
找到下面这行:
1 |
action=/etc/acpi/powerbtn.sh |
修改为:
1 |
action=/sbin/poweroff |
然后重启,就大功告成啦:)
参考: http://linux.chinaunix.net/bbs/thread-1113446-1-1.html
Continue reading 继续我的Ubuntu之旅 (3)
Ubuntu 多网环境自动路由表(区别教育网内外) + 分享到多张网卡网络的实现
首先, 感谢 @BOYPT @jimmy_xu_wrk @tjmao @yegle 等朋友的帮忙!
1, 多网环境, Felix 的环境是 VPN over cernet2 + cernet 双网.
2, 自动路由表, 采用 www.nic.edu.cn 的官方 Free IP 数据.
以下是 Felix 用 Python 写的一个小小的自动生成脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
import re import urllib a=urllib.urlopen('http://www.nic.edu.cn/RS/ipstat/internalip/real.html').read() b=re.compile("([\d\.]+)\s+[\d\.]+\s+([\d\.]+)") c=b.findall(a) m=["#!/bin/bash","OLDGW=$1","NEWGW=$2","route del -net 0.0.0.0 netmask 0.0.0.0","route add -net 0.0.0.0 netmask 0.0.0.0 gw $NEWGW"] n=["#!/bin/bash"] for d in c: m.append("route add -net "+d[0]+" netmask "+d[1]+" gw $OLDGW") n.append("route del -net "+d[0]+" netmask "+d[1]) e=open('gtwcernet',"w") e.write("\n".join(m)) e.close() f=open('gtwcernetd',"w") f.write("\n".join(n)) f.close() |
会在当前目录生成 gtwcernet 和 gtwcernetd 两个文件
然后给他们加上执行权限
1 2 |
chmod +x gtwcernet chmod +x gtwcernetd |
前一个是启用自动路由表
Usage: gtwcernet <教育网网关> <VPN/电信网网关>
后一个是禁用自动路由表
Usage: gtwcernetd
Continue reading Ubuntu 多网环境自动路由表(区别教育网内外) + 分享到多张网卡网络的实现
Linux 下 Dropbox 的通用更新脚本修改版 – 支持代理
源脚本来自 http://forums.dropbox.com/topic.php?id=12153, 但是不能支持代理服务器, 主要问题是它的”联网检测”用的是ping, Felix将其改成了wget然后判断页面上是否有forums
Patch 如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
--- a/dbupdate +++ b/dbupdate @@ -37,7 +37,7 @@ declare -r useCount="http://bit.ly/dbupdate_count"; declare -r nIcon="/usr/share/icons/hicolor/64x64/apps/dropbox.png"; declare -r userAgent="Mozilla/5.0 (X11; U; Linux i686; $LANG; rv:1.9.1.3) Gecko/20090924 Ubuntu/9.10 (karmic) Firefox/3.5.3"; -declare -r internetTest="ping -c3 -w10 www.dropbox.com | grep -c '64 bytes'" ; +declare -r internetTest="wget -qO - http://www.dropbox.com | grep -c 'forums'" ; bit="auto"; testing=0; q="-q"; @@ -292,7 +292,7 @@ #test connectivity printf "Checking for connectivity to Dropbox servers..."; -if [ `eval $internetTest` -lt 3 ]; then { +if [ `eval $internetTest` -lt 1 ]; then { echo " FAIL."; echo "Failed to connect to \"www.dropbox.com\""; exit 1; |