07年04月08日 Sunday , 1,010 次点击 , 评论

2007-03-06 08:26

Ubuntu6.10初装的时候使用系统自带的ADSl方案设置时一切正常,但是使用”sudo apt-get dist-upgrade”升级之后出现ADSL设置无效的现象,主要表现为: 使用”sudo pppoeconf”设置之后,使用”pon dsl-provider”拨号之后发现并没有连接成功。需要说明的是在升级前设置的ADSL在升级之后仍然可以正常使用,只是升级之后再进行新的ADSL设置就会出现这种问题。

但是至今还没有找到解决方案,既然此路不通,索性抛开系统自带的ADSL方案,另辟蹊径。

这里推荐一个Linux下使用很广泛的pppoe工具:rp-pppoe

首先到”http://www.roaringpenguin.com/en/penguin/openSourceProducts/rpPppoe”下载最新的”rp-pppoe-3.8.tar.gz”。然后解压缩到任意一个文件夹中,在终端机中进入解压后的目录,首先输入”su root”,获得超级用户权限;然后输入”./go”,进入编译、安装、设置一条龙过程:

此处输入ADSL帐号的用户名

For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethn, where ‘n’ is a number. (default eth0):
这里输入 eth0 ,或直接回车,这是ADSL相连的网卡的名字

这里输入 no ,或直接回车,

这里输入 server,即让系统自动分配ip地址

这里输入你的 ADSL 帐号的密码

这里输入 0

如果输入的信息正确,输入 y ,完成配置,否则,输入 n 重新输入。

这时候rp-pppoe已经安装成功了。
完成后使用命令:
sudo pppoe-start 启动 PPPOE 客户端软件,进行连接,如果成功,将出现 Connected;
sudo pppoe-stop 断开和ISP的连接
pppoe-status 查看当前连接的状态
sudo pppoe-setup 进行新的ADSL设置

如果使用”./go-gui”,则会安装带有图形界面的ADSL拨号端。

以后使用这个工具即可。

Tags :
分类 : 计算机
Top
07年04月08日 Sunday , 990 次点击 , 评论

2007-03-01 18:44

《晴朗》发行的时候,我还在读高中,一晃数年过去了,又迎来了《北京的冬天》。 老狼无疑是八九十年代校园民谣黄金时代的代表,有着怀旧情调的人大多会喜欢这种音乐。我听歌从来是好听就听,连歌词都不看更不用说去管是哪个歌手唱的了,所以知道的歌手也不多,但在我能想起来的那几个歌手中,老狼有着朴实的风格和低沉但不老迈、伤感但不悲切的声音,是最适合唱校园民谣的。

我以前从不承认单单喜欢哪一个歌手,虽说比较偏爱老狼。因为觉得是好歌就听呗,为什么非要拘泥于哪一个人?谁唱的好听就听谁的,反正又不追星。但是现在想通了一些东西,与其说是喜欢这个歌手,倒不如说是喜欢他的风格,一个歌手如果有种独特的风格的话,就会有那么一群人去接受他,实际上是接受他的风格。

所以好多问题随之也都迎刃而解,比如以前就很难理解为什么很多歌手的歌很难听也有那么多人趋之若鹜,当然,这里面有很多肤浅的东西不在我谈论的范围,略去不表。

Tags :
分类 : 青梅煮酒
Top
07年04月08日 Sunday , 7,739 次点击 , 评论

目前在Linux下面fcitx算是最好的中文输入法了,但是安装的时候总是问题很多。

(一)

如果是Ubuntu系统,使用”sudo apt-get install im-switch fcitx”,然后”sudo im-switch -s fcitx”,如果能成功的话当然很好,但是这样做有两个问题,一是Ubuntu源上的fcitx的版本很老,二是这样做未必就可行,因为有时候安装之后在执行上面第二条命令的时候系统提示”update-alternatives: Cannot find alternative `/etc/X11/xinit/xinput.d/fcitx’.”,而这时候查看该文件夹,发现fcitx文件确实是存在的。

第二种方法也是通用的方法,到fcitx官方网站下载源码包,然后编译安装,这种情况通常会遇到一个问题,就是在make的时候说找不到X11/xpm.h,这是因为有个组件没有安装,使用”sudo apt-get install xlibs-dev”就可以了。

当然在它的网站上也有编译好的安装文件的包,用它安装也行,如果可以的话。

第四种方法是下载fcitx的deb包然后使用它安装。

以上第一和第四种方法只能用于Ubuntu和Debian,第二和第三种在所有的Linux系统中均可行。

(二)

我在使用上述四种方法的时候都会遇到提示”update-alternatives: Cannot find alternative `/etc/X11/xinit/xinput.d/fcitx’.”,只好使用以下办法:

前提是上面四种办法都会遇到这种情况,而且/etc/X11/xinit/xinput.d/中fcitx文件确实是存在的。那么:
修改/etc/X11/Xsession.d/95xinput(如果没有就新建):

export XMODIFIERS=”@im=fcitx”
export XIM=fcitx
export XIM_PROGRAM=fcitx
export GTK_IM_MODULE=”XIM”
export QT_IM_MODULE=”XIM”
fcitx

保存并重新启动X,fcitx就自动使用了,这种情况下系统默认的scim也就没用了,使用”sudo apt-get remove scim”卸载它。

(三)

如果情况是提示找不到fcitx文件但它确实不存在,那么任意位置新建立一个文件叫 fcitx,内容(取自ubuntu 软件包里的fcitx)如下:

XIM=fcitx
XIM_PROGRAM=/usr/bin/fcitx
XIM_ARGS=”"
GTK_IM_MODULE=XIM
QT_IM_MODULE=XIM
DEPENDS=”fcitx”

复制到 /etc/X11/xinit/xinput.d/再使用”sudo im-switch -s fcitx”试试看。

(四)

如果是英文的Locale,需要修改一下/etc/gtk-2.0/gtk.immodules:

sudo gedit /etc/gtk-2.0/gtk.immodules

找到

“/usr/lib/gtk-2.0/2.4.0/immodules/im-xim.so”
“xim” “X Input Method” “gtk20″ “/usr/share/locale” “ko:ja:th:zh”

改成

“/usr/lib/gtk-2.0/2.4.0/immodules/im-xim.so”
“xim” “X Input Method” “gtk20″ “/usr/share/locale” “en:ko:ja:th:zh”

也就是多了一个 en:

分类 : 计算机
Top
07年04月08日 Sunday , 1,817 次点击 , 评论

2007-02-27 23:04

Linux交换分区用以补充内存容量的不足,可以极大提高系统性能。 我不知道交换分区是不是在安装系统的时候就自动激活的,因为在重装系统时发现在磁盘分区的时候交换分区还需要在右键菜单上手动选择激活,初装的时候是什么都没有做的。

重装系统后为保持账户的向前继承,将所有原来做过修改的系统配置文件都覆盖了硬盘中新装的该文件,其中包括磁盘挂载的fstab文件,重新启动系统后发现系统性能非常低,察看交换分区占用时发现是零占用,说明交换分区没有激活。

使用”sudo swapon /dev/hdc1″后交换分区被激活,说明交换分区一切正常。

重新启动系统,交换分区没有自动激活,还需要使用上面的命令手动激活,说明fstab文件有问题。

“sudo gedit /etc/fstab”打开该文件,发现交换分区的第一个字段变成了一个UUID,这是重装前的系统留下的,将这第一个字段删掉,换成”/dev/hdc1″,保存后重新启动系统交换分区即可自动激活。

需要说明的是每个人的磁盘分区情况不一样,交换分区对应的名称也就不一样,我的放在第一个磁盘的第一个分区上,所以为”hdc1″,查看自己的交换分区对应的名称可以使用”swapon -s”。

Tags :
分类 : 计算机
Top
07年04月08日 Sunday , 1,377 次点击 , 评论

2007-02-21 11:50

interface可以说是一种纯的abstract类,它定义了一种完全抽象的、根本不提供实现的类。任何程序,只要使用了这个interface就知道它有什么数据成员和方法可以使用了,仅此而已。所以interface会被用作定义类之间的协议(protocol)。

定义一个interface,只需将class关键词换成interface就行了,如:
interface Face{
}
创建一个使用了某个interface的类,使用implements关键词,即:
class ManFace implements Face{
}

interface的数据成员默认都是static和final的。
interface里面的方法默认都是public的,所以即使定义interface时没有说明,这些方法也是public权限的,那么在implements一个interface的时候,其中定义interface中的方法时就要声明它们为public的,否则会出错。

interface还是一种能将一个对象上传到多个基类的手段,所以它提供了“多重继承”的功能。将多个类的接口合并在一起的行为叫多重继承,这些接口之间用逗号相连,如:
class ManFace implements Face,Ear,Nose{
}
尽量避免在合并的多个接口中存在同名的方法,当然,这些同名的方法实际上是同一个方法的情况除外。

Tags :
分类 : 编程
Top