让Ubuntu不在设备变化时将网卡重新编号

如果你和我一样, 常常把硬盘在不同的电脑上插来插去, 或许会烦恼于网卡命名 eth0/eth1, wlan0/wlan1 之类的问题. 如果不喜欢更改电脑后 Ubuntu 自动累加这个计数, 可以用下面的方法设置一下:

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等东西也不用重新配置啦 🙂

Ubuntu 多网环境自动路由表(区别教育网内外) + 分享到多张网卡网络的实现

首先, 感谢 @BOYPT @jimmy_xu_wrk @tjmao @yegle 等朋友的帮忙!

1, 多网环境, Felix 的环境是 VPN over cernet2 + cernet 双网.

2, 自动路由表, 采用 www.nic.edu.cn 的官方 Free IP 数据.
以下是 Felix 用 Python 写的一个小小的自动生成脚本:

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 两个文件
然后给他们加上执行权限

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 如下:

--- 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;
Continue reading Linux 下 Dropbox 的通用更新脚本修改版 – 支持代理

继续我的Ubuntu之旅 (2)

恩,作为笔记系列的文章,内容会比较混乱.
这段时间以来,作为Ubuntu双十版的小白鼠,虽然挂彩数次,不过也在 @yegle @tjmao @poplarch @BOYPT @liangsuilong @jimmy_xu_wrk 等等推友的帮助下搞定重生.
以下是这段时间来发现的好东西:

1, @tualatrix 大大的notify脚本(Felix降碳版)

#!/bin/bash
# Copyright: TualatriX  GPL v3
# Website: http://imtx.cn/archives/1516.html
# Please add the following line to ~/.bashrc to enable the bash completion support
# 	complete -o filenames -F _root_command notify
$* && \
notify-send "\"$*\" finished successfully" || \
notify-send "\"$*\" failed"

并在 ~/.bashrc 里加入:

complete -o filenames -F _root_command notify

以适应bash的自动完成功能. 原文在此
这玩意着实好用, 不过本猫发现10.04及以上版本会出现找不到notify-send命令,这时只需要

# apt-get install libnotify-bin

就好.

Continue reading 继续我的Ubuntu之旅 (2)

[译] Ubuntu 10.04 开机黑屏问题的解决方案

译者注: Felix 遇到了nVidia和Intel 915显卡的问题, 用Google到的方法解决了. 今天看到这篇文章, 介绍的方法与我用的一样, 而且更全更详细, 因此翻译出来给遇到同样问题的朋友参考:)

有许多用户反应, 在最新版Ubuntu 10.04安装前后出现黑屏现象. 似乎问题在于一些显卡驱动的不兼容, 尤其是一些ATI和nVidia显卡(并不奇怪XD). 出问题的也有一些Intel显卡. 这片文章将给出一种方法, 你或许可以用这个方法让显卡正确工作起来.

从CD启动

这一节介绍如何解决LiveCD启动时的显卡驱动问题. 或许由于显卡的不同, 问题会很复杂, 不过希望如下介绍能给你一个有效的方向来检查问题:)
1, 在安装屏幕按F6,然后插入一个选项(取决于您的显卡,下面会列出)
2, 在安装后第一次启动时, 按e来编辑GRUB菜单
3, 使用方向键定位, 删除 quietsplash, 并再次插入那个选项.
4, 按 Ctrl + X 来启动系统

取决于不同的显卡,建议的选项如下:
较老的 Intel 显卡: i915.modeset=1 或者 i915.modeset=0
nVidia显卡: nomodeset
ATI显卡: acpi=off 和/或 radeon.modeset=0
其他显卡: xforcevesa

希望这样可以使您的显卡正常工作起来. 如果成功, 请继续往下看, 下一节将介绍怎么让这些设置永久生效.

Continue reading [译] Ubuntu 10.04 开机黑屏问题的解决方案

[译]使用Unclutter在空闲时自动隐藏鼠标指针(Ubuntu)

Unclutter是一个十分简单的小工具, 它的man page上是这样介绍的:
unclutter在鼠标指针一段时间不动后从屏幕上把它隐藏,这样它就不会妨碍到您正在看的屏幕区域了.
不要把事情弄复杂,下面就来安装它吧!(输入下面的命令或者单击 这里 都可以安装)

sudo aptitude install unclutter

这样就安装完成了.最后我们需要做的是配置它,并让它自动运行.依次展开”系统 > 首选项 > 启动应用程序”
使用这里的设置,可以让unclutter开机自动启动.单击”添加”并填写三个文本框即可.”名称”可以写”Unclutter”,命令可以参考:

unclutter -display 0:0 -idle 5

然后在备注里写上任何你想写的话,比如”在鼠标指针不活动时隐藏鼠标指针.”
你可以在man信息里获得unclutter更多参数和功能的介绍(命令:man unclutter),上文给出的命令意味着:在默认桌面下,当鼠标不活动达5秒后,自动隐藏鼠标指针.

译者: Felix Yan
原文地址: http://ubuntu-tutorials.com/2008/07/07/auto-hide-your-mouse-pointer-when-idle-with-unclutter/

继续我的Ubuntu之旅 (1)

自从2008年6月心血来潮用上了Ubuntu, 到现在两年时光飞逝. 开始的时候为个输入法焦头烂额了好久(8.04 LTS), 后来又驱动不起我的稀有华硕声卡, 后来不知什么时候”想通了”回去尝鲜Win7, 过了一年多又换回Ubuntu(原因是机子鬼使神差的装不上Win7了, Win也不会给出详细的Log来供你分析错误)…
8.04到10.04, LTS到LTS的跨越, 升级的也绝不仅仅是版本号. 7秒的开机速度(SSD)和插到别的机子上引导, 驱动全部装好, 都是Win很难达到的优势. 某次驱动起了一块难缠的3G网卡, 事后别人问起却忘记了具体方法, 方觉早应该把这样一些细节记录下来.

以下便是这次用Ubuntu数月以来又学到的一部分”新”东西, 已经单独开文说过的这里也不再赘述了.

先给个目录:
1, terminal显示GBK/GB2312等编码的文本
2, nvidia驱动和开源驱动/mesa之间的恩怨情愁
3, 多语言界面
4, 共享网络给别人用
5, 防御arp攻击

1, terminal显示GBK/GB2312等编码的文本

比如telnet登陆白云黄鹤论坛

$ telnet bbs.whnet.edu.cn

显示出满屏幕的菱形里面套问号, 让人不禁内牛满面. 解决方法:

$ luit -encoding gbk telnet bbs.whnet.edu.cn

这样就很和谐了~~
此外,xrgsu提示的乱码服务器错误信息,也可以用编码GB2312正常显示. 唯有一点不解,GB2312正常显示,而GBK却乱码…

Continue reading 继续我的Ubuntu之旅 (1)

开启 Teredo 通道, 提前感受 IPv6 (for 非教育网用户)

当初Win7刚要出来时,Felix对其“DirectAccess”功能感到十分向往,从网上找到资料,发现这只是 Teredo 的一个应用。在其他平台上,也一样可以轻易开启 Teredo 从而访问 IPv6 资源。

×××希望各位公网用户不要再使用高校的isatap通道打开ipv6了,教育网的ipv6带宽很有限,而教育网的ipv4却不能出国,因此教育网ipv6是高校学生们获取我朝以外资源最实惠的途径了!×××

Windows XP(SP1+):

netsh interface ipv6 install
netsh interface ipv6 set teredo client

Windows Vista/7:

netsh int ter set state client

Debian/Ubuntu Linux:

sudo apt-get install miredo

Redhat/Fedora Linux:

su -c 'yum install miredo'
su -c 'service miredo-client start'
Continue reading 开启 Teredo 通道, 提前感受 IPv6 (for 非教育网用户)

在 Ubuntu Lucid 下请回 Sun Java6 Jre, 赶走 OpenJDK

Ubuntu Lucid 将 sun-java6-jre 系列包移出了源,java软件用 openjdk 系列包提供支持。然而在某些软件(比如FreeRapid)的使用中,openjdk还是喜欢出一些莫名其妙的错误(比如栈溢出),因此考虑请回sun-java6-jre。

具体方法很简单,首先添加 Ubuntu Karmic 的multiverse源:

sudo gedit /etc/apt/sources.list

在底部添加

deb http://ftp.sjtu.edu.cn/ubuntu/ karmic multiverse

保存退出后

sudo apt-get update && sudo apt-get install sun-java6-jre

完毕!

Continue reading 在 Ubuntu Lucid 下请回 Sun Java6 Jre, 赶走 OpenJDK

Ubuntu 下 fcitx 小企鹅输入法 相关资料存档

fcitx相关资料存档,包括安装/英文环境处理方法/乱码处理/美化。

一、fcitx安装

1, 卸载scim:

sudo apt-get purge scim

2, 安装fcitx:

sudo apt-get install fcitx im-switch

3, 设置fcitx为默认输入法:

sudo im-switch -s fcitx -z all_ALL
im-switch -s fcitx -z all_ALL

4, 新建文本文件 /etc/X11/Xsession.d/95fcitx_start:

sudo gedit /etc/X11/Xsession.d/95fcitx_start

并粘贴如下内容:

export LC_CTYPE=zh_CN.UTF-8
export XMODIFIERS=@im=fcitx
export XIM=fcitx
export XIM_PROGRAM=fcitx
fcitx

并且赋予执行权限。命令:

sudo chmod +x /etc/X11/Xsession.d/95fcitx_start

重新启动X(按下Ctrl+Alt+Backspace),或者重新启动系统后,小企鹅输入法应该就可以用了。

Continue reading Ubuntu 下 fcitx 小企鹅输入法 相关资料存档
QR Code Business Card