Tuesday, May 22, 2007

PCBSD: Intel显卡上使用宽屏分辨率

要在Intel系列的显卡上使用宽屏,尤其是9XX系列的,需要自己动手修改一些东西。下面是我在Dell Latitude 620(Intel945GM芯片)上测试的结果,大致也适用于其他的Intel显示芯片。步骤如下:

1. 下载并编译、安装915resolution 程序。
对于915或者更早的显卡,可以直接使用ports进行安装。
a. “开始”》“系统”》“终端程序”(或者是叫K-console什么的,忘记中文名称了),打开一个命令行窗口。
b. 运行“su”,然后输入root帐号密码,准备以root身份进行安装。
c. cd /usr/ports/sysutils/915resolution
d. make install clean

对于945GM芯片的用户,目前请不要直接使用上面的安装方式,因为ports里面的是0,5.1版,还不支持945GM,你需要这里下载0.5.2版的源码包然后编译、安装。
URL:http://www.geocities.com/stomljen/915resolution-0.5.2.tar.gz
步骤如下:

a. 解压:tar -zxvf 915resolution-0.5.2.tar.gz
b. 安装:make && make install (需要root权限)

2. 安装完成后,运行:915resolution -l,列出所有可能的模式:

# 915resolution -l
Intel 945GM VBIOS Hack : version 0.2

Chipset: 945GM

Mode 30 : 640x480, 8 bits/pixel
Mode 32 : 800x600, 8 bits/pixel
Mode 34 : 1024x768, 8 bits/pixel
Mode 38 : 1280x1024, 8 bits/pixel
Mode 3a : 1600x1200, 8 bits/pixel
Mode 3c : 1920x1440, 8 bits/pixel
Mode 41 : 640x480, 16 bits/pixel
Mode 43 : 800x600, 16 bits/pixel
Mode 45 : 1024x768, 16 bits/pixel
Mode 49 : 1280x1024, 16 bits/pixel
Mode 4b : 1600x1200, 16 bits/pixel
Mode 4d : 1920x1440, 16 bits/pixel
Mode 50 : 640x480, 32 bits/pixel
Mode 52 : 800x600, 32 bits/pixel
Mode 54 : 1024x768, 32 bits/pixel
Mode 58 : 1280x1024, 32 bits/pixel
Mode 5a : 1600x1200, 32 bits/pixel
Mode 5c : 1920x1440, 32 bits/pixel
Mode 60 : 1280x770, 8 bits/pixel
Mode 61 : 1280x770, 16 bits/pixel
Mode 62 : 1280x770, 32 bits/pixel
Mode 63 : 512x771, 8 bits/pixel
Mode 64 : 512x771, 16 bits/pixel
Mode 65 : 512x771, 32 bits/pixel
3. 选择其中的一个和你当前的分辨率一样的mode的代码,16 bits或者是32bits色深的。例如我的系统修改前是1024x768,而我想使用1280x800的分辨率,我使用如下的命令:

915resolution 45 1280 800

命令结束后再次运行 915resolution -l,你会看到mode 45已经变成1280x800了。

这里是915resolution的一些用法指南,可以参考一下:http://www.geocities.com/stomljen/readme.html

4. 编辑/etc/rc.local文件,添加如下语句:
/usr/sbin/915resolution 45 1280 800

5. 编辑/etc/X11/xorg.conf,找到LOAD DRI一行,在此行的最前面加一个#,将此行注释掉。你或许并不需要这一步,在其他任何资料上都没有看到,但对我的945来讲,Load DRI会在log里报错,我只有将它去掉。

6. 重启系统,如果分辨率没有自动改为你设置的模式的话,在桌面上右键单击,然后”重新配置桌面“》”显示“,选择你需要的分辨率即可。

下面是一些相关的资源,如果你的安装不顺利的话,可以参考一下。

检查/var/log/Xorg.0.log文件,查看其中的报错信息。
http://www.geocities.com/stomljen/
http://www.freebsd.org/doc/en_US.ISO8859-1/articles/laptop/article.html
http://forums.pcbsd.org/viewtopic.php?t=8196

Wednesday, May 16, 2007

WINXP+PCBSD双启动安装指南

鉴于目前的实际情况,可能很大一部分使用/学习PCBSD的人都还需要WinXP,双启动就成了一个很自然的选择。

对于新手来说,如果你的机子性能还可以的话(1G或者更多内存,2G或更快的CPU),我推荐先用VMWare虚拟机软件安装PCBSD体验一下,毕竟一个全新的操作系统还是需要一定的时间来适应的,尤其是对于PCBSD这类的非主流操作系统来说,和windows的差别还是相当大的,尤其是平时习惯的一些软件在新系统下可能都没了。

言归正传,要想双启动,你的硬盘上至少需要8GB的磁盘空间,一张PCBSD的安装盘。本文假定你已经有一个安装好的XP系统。

第一步:备份现有系统上的那些对你至关重要的文件,存放在移动硬盘或者网络硬盘上,或者任何其他存储介质。重要重要!!

第二步:为PCBSD准备磁盘空间。

这里你需要一个空白的分区,不小于8GB,而且要是一个主分区,不能是扩展分区。为了保证这一点,你可以先删除这个分区(删除操作会使该分区上的所有数据丢失),然后重新创建一个主分区。步骤如下:

1.点击“开始”》“运行”,输入“diskmgmt.msc",确定后出现磁盘管理界面。在窗口中会列出当前系统中所有的磁盘和分区情况。
2. 右键单击你想要删除的分区的图标,选择”删除分区“(或者”删除逻辑磁盘“)即可。然后那部分空间会变成自由空间。
3. 在自由空间上右键单击,选择”创建分区“,在分区类型中选择”主分区(Primary Partition)“,不必勾选格式化选项,反正安装PCBSD的时候会格式化。

至此,空间准备的操作就已经完成,可以进行PCBSD的装了。

第三步:安装PCBSD
详细的安装步骤请参考“PCBSD安装”中的另一篇文章。这里只提一下安装过程中需要注意的一个地方。

在选择安装介质的时候,请不要勾选“使用整个磁盘”的选项,否则会将整个磁盘格式化,导致数据丢失,你的XP系统也无法使用。你需要点击从而选中原来删除的那个分区(在第二步中腾出来的那部分空间),如下图。(图片被编辑过)
http://www.mediamax.com/auctionweb/Hosted/gfd.gif

第四步:安装完成。
PCBSD的安装完成后,直接重启,应该就可以看到启动选择菜单了。系统会自动分配F2给原来的XP系统,并以DOS来显示。现在你就可以通过F1或者F2来选择系统进行启动了。

Enjoy!

PCBSD下如何安装软件

PCBSD下的软件是通过.PBI格式发布的,安装和在Windows下一样,安装时有图形界面的向导,你只需接受协议,然后点击“下一步”就行了。所以软件安装的关键就在于如何找到/得到你想要的PBI文件。

想要浏览/查找pbi格式的软件,到www.pbidir.com网站,那里是PCBSD的官方软件发布站点,汇集了所有开发好的以及正在开发中的PBI软件;同时你也可以查看一个PBI的wishlist,并且把自己希望但目前并没有的软件添加到wishlist中,或许某个developer会感兴趣也不一定。

另外,由于一些授权协议方面的原因,一些软件的PBI包从官方的站点上删除了,但是你可以在这个站点找到:www.pbis.in. 请注意自己是否有相应的授权。

另外,如果你对PBI很有兴趣的话,可以尝试自己创建一个PBI软件。这里有一篇英文的教程,出自Dru Lavigne教你如何利用已有的FreeBSD软件包和PCBSD提供的PBI Creator程序来创建自己的PBI软件。

Building Binary PC-BSD Packages

*PCBSD是FreeBSD的一个小的变体,但他们的内核基本是相同的,所以FreeBSD的软件包都可以用在PCBSD上的,只是要在命令行下安装。

Monday, May 14, 2007

PCBSD FAQ (不定期更新)

Q. 可以自定义PCBSD的安装软件包吗?
A. 不可以。默认情况下PCBSD是作为一个完整的安装包来安装的。你可以在安装完成后使用pkg_delete命令来删除一些你不想要的软件。但是不建议这样做,因为你很可能把KDE桌面环境搞坏掉。

Q. 我的电脑上已经安装了Windows系统,安装PCBSD会影响我的程序和数据吗?如何才能保留原来的数据?
A. 如果你的硬盘上还有剩余空间(未分区的空间,free space,不是某个分区未用完剩下的空间),那就不要把PCBSD安装到Windows分区上,否则你原来的数据丢失。

Q. PCBSD和FreeBSD的区别是什么?
A. 见下表:


PC-BSD FreeBSD
默认桌面环境
KDE 无 (用户需自行安装)
应用程序安装 PBIs (就像Windows), Ports, Packages Ports, Packages
64 位架构
兼容 内核级支持(Native)
支持平台 x86 (包括 Pentium® 和 Athlon™) x86 (包括 Pentium® 和 Athlon™), amd64 compatible (包括 Opteron™, Athlon™64, 和 EM64T), UltraSPARC®, IA-64, PC-98 以及 ARM 架构
应用程序集成 一般
系统安装 PC-BSD 系统安装向导
sysinstall (基于文本的安装工具)
Linux 兼容性 可选 可选
内核 FreeBSD FreeBSD
最小安装要求 i686 CPU, 128MB 内存 和 4GB 硬盘空间 非常小
对称多处理器 优化 可选
目标群体 桌面 (也可兼作服务器
服务器

Q. 如果我忘记了root帐号的密码怎么办?
A. 在系统启动出现倒计时后按空格键停止计时(也可以直接按6,如果你足够快的话),然后按6,出现提示符,输入 "boot -s",进入单用户模式,出现#符后,运行 "/sbin/mount -a" 命令,然后"passwd root",即可重设root的密码。完成后reboot,重新启动。

补充一下:在PCBSD1.3里,在启动选择菜单里直接选择4即可进入单用户模式。进去以后直接运行mount -a命令,然后即可passwd root来修改root的密码。

Q. PCBSD 下如何进行中文输入?
A. 请参考此连接: http://pcbsd.bokee.com/tb.b?diaryId=15269431

Q。如何让英文的PCBSD系统正确显示中文字符?
A。 首先,需要添加简繁体中文支持程序。通过pkg_add程序添加zh_CN-kde-i18n-3.5.5.tbz和zh_TW-kde-i18n- 3.5.5.tbz两个程序包.它们都在PCBSD第二张ISO的LANG文件夹下;第二,再通过Settings >> regional & accessibility >> country & language程序来添加中文语言支持;第三,修改你自己的home文件夹下的.profile文件,将其中的LANG=和LC_CTYPE=设置为 zh_CN.UTF8.
另外,关于系统和语言以及LOCALE的关系,chinaunix.net上有一篇比较好的文章可以参考,虽然这个问题并无直接的联系.URL: http://linux.chinaunix.net/bbs/viewthread.php?tid=894403&extra=page%3D1

Q。为什么将LC_TYPE设置为中文编码以后FIREFOX的菜单栏字体会变化,模糊?
A.在"开始>>设置>>控制中心>>外观与主题>>GTK字体与风格"中 选中"在GTK应用程序中使用我的KDE字体",保存,重新登录即可.

Tuesday, May 08, 2007

PCBSD安装新手指南

如果你准备将PCBSD安装到你的机子上,请先下载ISO文件,然后刻录成光盘进行安装。

如果你想使用VMware Workstation进行虚拟机下的安装,只需下载ISO文件即可。安装中文版需要两张ISO,英文版的话一张即可。

我的测试是在虚拟机下进行,物理安装时大同小异。

1. 装好光盘,启动机器




2. PCBSD启动、自检


3. 来到安装界面。选择图形化安装



4. 下一项,选择安装时的系统语言。
默认是英语,你可以选择简体中文
第二选项时键盘的格式,保持默认即可。
第三个是时区设置,在下拉菜单下选择Asia/Shanghai (亚洲/上海)



5. 这一步选择安装类型。我们选择“Fresh install”,全新安装。




6. 系统类型选择,选择“workstation/Laptop”,工作站/笔记本类型




7. License,勾选“I Agree”



8. 添加管理员账户(root),设置密码。第二个是添加一个普通账户,并设置密码。这里的Shell选项是设定你以后使用的命令行工具,如果你对这个 BSD/Linux下的命令行不熟悉的话,选择sh/bash好了,因为这个比较常见,资料也比较多。但对于BSD家族来讲,SH则是最常见的。这里我选 择了SH。




9. 下一步,选择安装设备,即硬盘。这里默认是单系统安装,所以选择了“Use entire disk”,使用全部硬盘。注意,选择了这一项的话,安装时会格式化硬盘,导致数据丢失,要当心!
同时也要选择下面一个:“Install PCBSD bootloader”,安装pcbsd的启动程序。



10. 接下来,系统就会自动分区并进行安装,重启后PCBSD就算安装成功了。


安装进行中.....


安装完成


重启后PCBSD的缺省界面(使用的是非root账户登陆)

FCITX -- PCBSD下的中文输入

经过一天的努力,总算是把这个东西搞定了。今天可以 在 PCBSD下写这篇日志了。这里简要说一下大概的过程 :

1. 程序名称 fcitx。你可以去www.fcitx.org上下载 ,目前最新版本为 3.4.2
2. 功能: 中文输入
3. 下载后 用tar -zxfv 解压,然后编译运行./configure
4. 如果编译过程中遇到 类似“undefined reference to libiconv”的错误,那么在congiure时加入选项 --libdir=/usr/local/lib,或者指定你自己的 libiconv。so的路径

5. 然后 make && make install && make clean
6. 完成后,修改自己的home目录下的 .profile文件,加入下面几行:(这里我用的是SH shell,其他shell的语法可能有所不同)

LANG=zh_CN.Gb2312
export LANG
LC_CTYPE=zh_CN.Gb2312
export LC_CTYPE
LC_COLLATE=POSIX
export LC_COLLATE
GTK_IM_MODULE=xim
export GTK_IM_xim
XMOIFIERS="@im=fcitx"
export XMODIFIERS

完成后保存、推出。重新登录即可。

要进行中文输入时,首先运行fcitx,按ctrl+空格 切换到中文输入状态。

要了解它的用法,请到它的网站下载相关说明。源码包中也有说明

有问题请留言,谢谢 !

(用下来感觉不错~~)

PCBSD下字体美化

默认安装下,PCBSD的字体显示效果很差,尤其是中文环境下。
但要改变却也很容易。先看一下效果图:


点此看大图:http://pcbsd.bokee.com/photo/view.fcgi?id=6141676&mode=4&mode=3

下面是字体设置的一些关键步骤:
1. 下载字体
到http://fundawang.lcuc.org.cn/wqy/下载文泉译点阵字体源码包,一搬是一个.tar.gz结尾的文件。
(如果你看到这篇文章不是太晚,可以试试:http://fundawang.lcuc.org.cn/wqy/wqy-bitmapfont-bdf-all-nightly_build.tar.gz)
2. 解压,运行 tar -zxvf wqy-bitmapfont-bdf-all-nightly_build.tar.gz
3. 在“开始 > 设置 > 系统管理”中找到字体安装程序,将解压出的字体安装
另外,你也可以把windows下的字体文件也拷贝过来,进行安装。
4. 在“开始 > 设置 > 外观与主题”中选择字体,然后逐一设置即可
5. 题外话:我使用的是FireFox2.0版,用它来看中文网站的话,需要再设置一下(编辑 〉选项 > 内容),在高级选项中禁止网页自己选择字体即可。

如果你设置时遇到什么问题,请留言。谢谢!

PCBSD Tips之TCPDUMP

TCPDUMP 是BSD以及其他UNIX上的一个功能强大的抓包工具。 和SNIFFER或者Etheral比起来,它的功能并不逊色,只是界面远不如前两者那么友好。但他的优点在于无处不在:shipped with Operating System。

在使用TCPDUMP时需要root权限,另外一点就是需要Kernel中启用的bpf(默认已经启用)。

开始抓包之前,请先使用ifconfig -a 确认机器的网络接口,比如ed0,rl0 等等。

tcpdump -i ed0

开始在ed0接口上进行抓包。-i 用于指定网络接口。期间按下Ctrl+t可以查看抓获的数据包的数量,Ctrl+c停止。

tcpdump -w dumpfilename -i ed0,将输出重定向到dumpfilename文件中。

上面得到的文件是不能使用普通的编辑器察看的,只有tcpdump自己或者其它类似的抓包工具可以查看。

tcpdump -r dumpfilename | more,此命令查看捕获的数据包文件

如果只想抓某一类型的包,可使用:

tcpdump -i ed0 broadcast
tcpdump -i ed0 ARP
tcpdump -i ed0 ICMP

捕捉某两台特定的主机之间的数据:

tcpdump -i ed0 host SRV1 and SRV2
tcpdump -i ed0 src host SRV1 and dst host SRV2

tcpdump -i ed0 udp port 25

tcpdump本身对带有很多关键字,比如 ‘and’,‘or’,‘not’等等,使用这些Key words可以构建很多自定义的抓包过滤器,比如

tcpdump -i ed0 net 192.168.1.0 and not arp

(文章出自BSD Hacks by Dru Lavigine)