返回列表 发帖
IDE RAID卡

IDE RAID卡在linux上的应用

raid卡几乎已经成为服务器的标准配置了,raid卡不但可以大大提高数据的安全,还可以大幅提高硬盘读写性能,从而提供服务器的整体性能和可靠性.linux很早就提供对raid的支持,不但支持raid卡,也支持软raid,不过软raid实在是比不上硬raid.早期的raid卡都是用于scsi系统的,性能好,可惜价格甙?而且scsi硬盘也大大贵过ide硬盘.近年来,市场上出现了ide raid卡,配合新一代的高速ide硬盘的降价,一些入门级的服务器和工作站开始考虑采用ide raid系统.

ide raid系统相对scsi raid而言,性能稍差,但价格相当低廉,实在是DIY友的利器.

ide raid卡的代表是promise fasttrak100.我就以此为例,介绍IDE RAID卡在linux上的应用.
linux的2.4.x核心开始支持ide raid卡promise fasttrak系列产品.但有少少问题,可能会导致有些型号工作不稳定,推荐使用promise公司提供的驱动.
promise提供单cpu的驱动ftrh71_120b5.zip(ftp://ftp.promise.com/Controllers/IDE/Linux/ftrh71_120b5.zip)
它提供对fasttrak100TX2/LP/100的支持,可用在redhat 6.2和redhat 7.x上.

promise提供多cpu的驱动FTv120b3RHsmp.TAR(ftp://ftp.promise.com/Controllers/IDE/Linux/FTv120b3RHsmp.TAR)它提供对fasttrak100TX2/66/100的支持,可用在redhat 6.2和redhat 7.0上.如果你的promise ide raid卡上的芯片是PDC20262和PDC20265,厂家建议你用redhat 7.0,因为可启动的scsi模块只支持单cpu,不支持smp.

我用单cpu的驱动来介绍安装.
你需要两张空白的,用dos格式化的软盘.解压文件ftrh71_120b5.zip后,可以看到几个文件.看到disk1.img和disk2.zip了吧.
可在dos下用rawrite.exe工具来把disk1.img写进disk1软盘中.

linux用户就更好办:
dd if=disk.img of=/dev/fd0
要注意先不要把软盘mount上.

接下来,解压disk2.zip,把生成的文件拷贝到disk2软盘中.如果你有一个安装好的linux系统,想把fasttrak的驱动加进系统,从disk2软盘上找到scsi_mod.o和ft.o两个模块.
insmod scsi_mod.o
insmod ft.o
用lsmod检查一下是不是加载成功.
如果你想在新的ide raid系统上安装新的linux系统的话,就要麻烦一点.首先在ide raid卡的cmos中选择raid方式和其它设置,如块的大小等.把disk1软盘插进软驱,开始安装.disk1软盘包含了redhat的启动部分,可以当作redhat 7.x的安装启动软盘.

正常安装系统
当系统安装接近完毕,显示"Congratulations"的时候按Ctrl+Alt+F2进入命令行模式更换disk2软盘

chroot /mnt/sysimage
mount -t vfat /dev/fd0 /mnt/floppy
cd /mnt/floppy
./setup-ft

完成后按Ctrl+Alt+F1,会到正常安装模式,继续进行完成安装.大功告成!

TOP

汉化

前言

为了写这篇文章,我参考了internet上大量的文章,结合自己多年的使用实践经验才写出来,目的是让大家不用满世界找资料,参考本文就有一个大致了解,并能选择地进行汉化。

  由于参考文章太多,大多又经过多此转载,所以没有列出文章来源,我只能多谢各位前辈的工作,本文也是GPL,欢迎使用,转载,只希望标明出处。

Linux的中文输入概述:

  汉字输入上, GB 与 Big5 的输入由于历史与习惯的原因, 已截然分化成两种, 这就是在大陆最流行的Chinput 和 在台湾最流行的 XCIN, 它们都经历了自定义协议阶段, 目的是配合外挂式中文平台, 最终向国际化标准协议靠拢, 即支持XIM协议(日语输入软件kinput2也经历了漫长的过程). 在中文平台TL-ZWinPro下使用Chinput, 它的XIM协议和原来的协议能够无缝接合使用.

  目前Chinput已成为大陆最流行的Linux中文输入软件. 它被众多的Linux中文平台所采用:

  TurboLinux 中文版6.0,Xteam Linux 3.2,BluePoint Linux 2.0

  ZhXWin: 由宫敏博士开发的Linux下的中文平台

  Chinput 以CXterm的输入引擎为基础, 支持中文GB/GBK/Big5, 日文和韩文输入. 后又增添了李振春先生的智能拼音输入, 使输入法日臻完备. 它具有独特的无边界窗口, 浏览输入模式, 单双行输入模式, 颜色字体可配置性. 如果配合中文平台 TL-ZWinPro, 它可以根据窗口当前的编码自动输入GB/GBK/Big5.极大地方便了中文用户的网上冲浪, 如浏览网页时的输入,上BBS时输入, 都有可能需要同时输入GB和Big5编码, 这时您不必要重新启动Chinput, 便可以输入这两种不同的编码.

XIM 协议

  Chinput 对X11R6的国际化输入提供了标准接口, 即XIM接口. Chinput 所使用的Locale是zh_CN, 定义的输入服务器名称是"Chinput", 所以 在客户程序找不到 Chinput 时, 应设置XMODIFIERS为"@im=Chinput".

  XIM 的输入风格(preedittype)共有四种: on the spot, over the spot, off the spot, root window, "on the spot" 是在Client软件的当前 输入处输入, "over the spot" 是在当前输入处之上有一预编辑窗口提供 输入, "off the spot" 是在输入窗口的下方提供预编辑取和输入状态显示 区, "root window" 是在独立于输入软件的窗口中(该窗口为根窗口的子 窗口)输入. 可以看出, "root window" 是比较适合汉字输入的. Chinput 目前只支持根窗口输入风格(root-window style). 如果有必要, 其它的输入风格也将被陆续加入.

  XIM 支持与原协议无缝结合, 对用户来说是不透明的. 当用户在中文平台上使用XIM支持的软件时,原协议对该应用软件自动失效. 这要求中文平台需要作特殊处理, 才能避免两种协议的冲突.

  支持软件(运行前设置LC_ALL=zh_CN.EUC, LANG=zh_CN.EUC)

  nxterm, 修改源码. 中文显示需中文平台支持

  xemacs, 编译:configure --with-xim=xlib

  rxvt2.60, 编译:configure --enable-xim --enable-gb, 运行: rxvt -im Chinput -pt Root

  netscape: 需改动Netscape.ad, 部份输入区有问题:

  Netscape*fontList: -*-helvetica-bold-r-*-*-*-140-*-*-*-*-iso8859-*;-*-gb13000.1993-1:

  vim 资源文件 .gvimrc(.vimrc):


:set fileencoding=prc
:set guifontset=-sony-fixed-medium-r-normal--16-120-100-100-c-80-iso8859-1,
-tlc-song-medium-r-normal-*-16-*-*-*-*-*-gb13000.1993-1
qt-1.44(i18n patched)/KDE: setenv XMODIFIERS @im=Chinput

  gtk/gnome: 设置 fontset

  gimp: 须修改资源文件

  Motif: 设置 fontset

  一、Linux下的中文终端

  Linux 下现在用户可以有许多中文终端可用, 比如 CXterm, rxvt, kvt, 即使是普通的 xterm, 在中文平台下也可以成为中文终端. 在这些中文终端之中, 最好用的当属 CXterm.CXterm 自带中文输入方法, 当然在中文平台下也可以使用中文平台所带的输入方法. 比如在TurboLinux下使用Chinput中的智能拼音是最好的选择. 此外, 除了支持GB外, CXterm还可以支持中文Big5 编码, 日语EUC编码和韩语EUC编码(尽管实际上使用它作日韩语终端 的人比较少).

  CXterm 是上BBS的最佳选择之一, 它也可以用来和 jvim一起编辑汉字文件.

  rxvt 也是支持中/日/韩双字节编码的终端, 它与CXterm不同的是, rxvt本身不带输入部分, 但它支持XIM输入或在中文平台上使用.

  cce也非常好用,不象union还需要重新编译内核.大家可从网上下载cxterm或cce的rpm包安装即可.

  unicon 3.0.2当然有它的好处,如支持中文目录,文件名显示.

  二、安装中文字库

  方案一:安装中文TrueType字体

  XFree86 4.x可以比较好的支持TrueType字体。TrueType字体可以无级缩放,显示效果非点阵字体可比。为了达到Microsoft Windows那样的漂亮字体效果,我们可以安装中文TrueType字体。最简单的方法就是直接使用Windows下的中文字体。

  注意:Windows的TTF字体是Microsoft公司的商业软件,这里使用它主要是用于学习和教育目的,不可非法使用。


mkdir /usr/share/fonts/default/TrueType
cp /mnt/c/windows/fonts/simsun.ttf /usr/share/fonts/default/TrueType
cd /usr/share/fonts/default/TrueType
ttmkfdir > fonts.dir

  因为ttmkfdir对Windows字体的编码识别有问题,因此需要手动修改一下。编辑fonts.dir文件,将


simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-ascii-0

  修改为


simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-gb2312.1980-0

  然后设置可缩放字体

cp fonts.dir fonts.scale

  设置编码文件

cp /usr/X11R6/lib/X11/fonts/encodings/encodings.dir .

  因为我们修改了字体名称,所以不能再用xfs了,必须指定字体路径。

  编辑/etc/X11/XF86Config-4文件,将默认的xfs部分注释起来,再加上所需要的字体路径,如下所示:(#表示注释行,以下同)

Section "Files"
# FontPath "unix/:7100"
FontPath "/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/misc"
FontPath "/usr/X11R6/lib/X11/fonts/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
FontPath "/usr/share/fonts/default/Type1"
FontPath "/usr/share/fonts/default/TrueType" (关键)
EndSection

  还有在该文件的Modules部分,请加上xtt模块,同时必须取消freetype模块,两模块不可同时使用。

  例如:

Section "Module"
Load "GLcore"
Load "dbe"
# Load "dri"
Load "extmod"
Load "glx"
Load "pex5"
Load "record"
Load "xie"
Load "v4l"
# Load "freetype"
Load "xtt" (关键)
Load "type1"
Load "speedo"
EndSection

  运行/etc/rc.d/init.d/xfs stop

  再运行/usr/sbin/setup,取消xfs在启动时的加载。

  方案二:

  我喜欢简单,所以直接用bluepoint linux 2.0的一些rpm包

rpm -Uhvbluepoint-release-2.0-1BP.noarch.rpm
rpm -UhvXFree86-zhfont-3.3.5-1.i386.rpm

  需要这些软件的人可到http://www.linuxaid.com.cn/engineer/hubertzou/下载。

  关闭xfs,修改/etc/X11/XF86Config-4:


Section "Files"
# FontPath "unix/:7100"
FontPath"/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath"/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath"/usr/share/zhfont/X11/"
FontPath"/usr/X11R6/lib/X11/fonts/chinese/"
FontPath"/usr/X11R6/lib/X11/fonts/misc/"
FontPath"/usr/X11R6/lib/X11/fonts/75dpi/"
EndSection

  相关问题:

  有网友说在XFree864.0.2下可以不关闭XFS因为某此程序如 realplayer只认默认的 fixed 字体.关掉XFS会出错说找不到字体.

  我也试过了,其实在XFree 86 4.0.1里面也可以不用关。只要在/etc/X11/XF86Config-4里面加上TrueType字体的路径就可以了。这样写:

Section "Files"
FontPath "unix/:7100"
FontPath "/usr/share/fonts/default/TrueType"
FontPath "/usr/share/zhfont/X11/"
EndSection

  这是就不要动xfs相关的部分了。

  本方法只可用于redhat 6.2,redhat 7.0以及mandrake 7.0等版本得汉化,但遗憾得是,目前只支持xfree86 3.3.6,xfree86 3.3.6不支持得显卡只能寻求它法了.

  1、选择显卡驱动(如XF86_SVGA,视你的显卡而定)

  下载下列rpm软件包(可从http://www.linuxaid.com.cn/engineer/hubertzouhttp://www.bluepoint.com.cn下载).

  1)XFree86-SVGA-3.3.6-6BP.i386.rpm

  2)XFree86-zhfont-3.3.5-1.i386.rpm

  3)bluepoint-release-1.0-1BP.noarch.rpm

  4)cxwin-tools-1.0-4BP.i386.rpm


rpm -Uhv XFree86-SVGA-3.3.6-6BP.i386.rpm
rpm -Uhv XFree86-zhfont-3.3.5-1.i386.rpm
rpm -Uhv bluepoint-release-1.0-1BP.noarch.rpm
rpm -Uhv cxwin-tools-1.0-4BP.i386.rpm

  2、修改/etc/X11/XF86Config如下:

#FontPath "/usr/X11R6/lib/X11/fonts/TrueType"
#FontPath "unix/:-1"
FontPath"/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath"/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath"/usr/X11R6/lib/X11/fonts/encodings:unscaled"
FontPath"/usr/share/zhfont/X11/"
FontPath"/usr/X11R6/lib/X11/fonts/misc"
FontPath"/usr/X11R6/lib/X11/fonts/75dpi"
FontPath"/usr/X11R6/lib/X11/fonts/100dpi"
EndSection

  3、修改/etc/X11/ChineseConfig

CodingSystem GB2312

  4、重启动Xwindow,就可用中文输入和用netscape浏览中文网站,big5也可以正确显示.如需进一步汉化kde,最好安装bluepoint linux 2.0带得kde软件,至少要它的qt-1.44bp修改kde的字体设置,把默认code改为简体中文即可, 重启动kde后,所有的东西全是中文的,菜单,书签...,中文输入也很好用, 注意:用kde的人最好再安装bluepoint的三个blinp包:

blinp-0.1-4BP.i386.rpm
blinp-ccetab-0.1-6BP.i386.rpm
blinp-kde-0.1-1BP.i386.rpm

TOP

用蓝点rpm包进行汉化

如果你的显卡在XFree86 3.3.6上运行良好,而你有不打算在汉化上自找麻烦的话,直接用bluepoint linux的rpm包来进行汉化,用不了几分钟.

三、bluepoint汉化

  如果你的显卡在XFree86 3.3.6上运行良好,而你有不打算在汉化上自找麻烦的话,直接用bluepoint linux的rpm包来进行汉化,用不了几分钟.

  本方法只可用于redhat 6.2,redhat 7.0以及mandrake 7.0等版本得汉化,但遗憾得是,目前只支持xfree86 3.3.6,xfree86 3.3.6不支持得显卡只能寻求它法了.

  1、选择显卡驱动(如XF86_SVGA,视你的显卡而定)

  下载下列rpm软件包(可从http://www.linuxaid.com.cn/engineer/hubertzouhttp://www.bluepoint.com.cn下载).

  1)XFree86-SVGA-3.3.6-6BP.i386.rpm

  2)XFree86-zhfont-3.3.5-1.i386.rpm

  3)bluepoint-release-1.0-1BP.noarch.rpm

  4)cxwin-tools-1.0-4BP.i386.rpm

rpm -Uhv XFree86-SVGA-3.3.6-6BP.i386.rpm
rpm -Uhv XFree86-zhfont-3.3.5-1.i386.rpm
rpm -Uhv bluepoint-release-1.0-1BP.noarch.rpm
rpm -Uhv cxwin-tools-1.0-4BP.i386.rpm

  2、修改/etc/X11/XF86Config如下:

#FontPath "/usr/X11R6/lib/X11/fonts/TrueType"
#FontPath "unix/:-1"
FontPath"/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath"/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath"/usr/X11R6/lib/X11/fonts/encodings:unscaled"
FontPath"/usr/share/zhfont/X11/"
FontPath"/usr/X11R6/lib/X11/fonts/misc"
FontPath"/usr/X11R6/lib/X11/fonts/75dpi"
FontPath"/usr/X11R6/lib/X11/fonts/100dpi"
EndSection

  3、修改/etc/X11/ChineseConfig

CodingSystem GB2312

  4、重启动Xwindow,就可用中文输入和用netscape浏览中文网站,big5也可以正确显示.如需进一步汉化kde,最好安装bluepoint linux 2.0带得kde软件,至少要它的qt-1.44bp修改kde的字体设置,把默认code改为简体中文即可, 重启动kde后,所有的东西全是中文的,菜单,书签...,中文输入也很好用, 注意:用kde的人最好再安装bluepoint的三个blinp包:

blinp-0.1-4BP.i386.rpm
blinp-ccetab-0.1-6BP.i386.rpm
blinp-kde-0.1-1BP.i386.rpm

TOP

炎黄中文输入和Chinput的安装方法

四、炎黄中文输入

  * 适用环境:RedHat7.x,必须安装qt2和kdelibs2
  * RPM包的编译环境:
  * kernel 2.4.2
  * glibc-2.2.2-3
  * gcc(-c++)-2.96-77(RH)
  * XFree86-4.0.2-11
  * QT-2.3.0
  * KDE-2.1
  * 安装

  1)使用以下命令行:


rpm -Uvh --force rf-xim-input-2.1-2.i386.rpm

  2)然后重新登录当前用户。

  本包中自带中文点阵字体(14),并自动设置环境变量,在RH7.1(beta)下无需其它任何设置。

  * 用法:

  Ctrl+空格:进入/取消中文输入状态

  Ctrl+Shift:切换中文输入法

  在中文输入状态下,按

  Alt+1:智能拼音输入法

  Alt+2:GBK拼音输入法

  Alt+3:国标区位输入

  Alt+4:五笔字型输入法

  KDE用户可以点击桌面右下角的图标选择输入法。

  * 关于五笔输入法:

  rf-xim-input中的五笔输入法码表文件是一个文本文件,您可以任意添加自己的词组,每个词组占一行,格式请查看文件/usr/local/rfinput/lib/wbx.mb

  * 已知的问题:

  如果出现意外而使得rf-xim-input中止运行,可能使得它无法再次启动。此时请用以下方法解决:

  在控制台输入命令:

ps -A│grep rfinput

  如果有输出的话,用命令:

  kill -s SIGKILL  

  此时KDE2可能会报应用程序崩溃信息,确定即可。

  然后再次启动rf-xim-input,如果还无法运行,等一会再试即可重新运行。

  * 关于src.rpm:

该包可以在qt-2.2.3/qt-2.2.4/qt-2.3.0(for RedHat,qt安装在/usr/lib/qt-2.x.x下)下编译通过。如果编译程序无法找到库的头文件,请修改Makefile。

  五、Chinput的安装方法:

  下载到Chinput-3.0.1.tar.gz

pth-1.3.7-1.i386.rpm
unicon2-im.tar.gz
zh_CN

  1、首先安装pth

rpm -Uhv pth-1.3.7-1.i386.rpm

  2、接着,tar zxvf unicon2-im.tar.gz

mv unicon2 /usr/lib/

  3、编译新 locale,以 root 身份执行:localedef -f GB2312 -i zh_CN zh_CN.gb2312,若无错误提示,则编译成功,在 /usr/lib/locale 下会增加 zh_CN.gb2312 目录。

  4、确定在 /usr/lib/gconv/gconv-modules 文件中包含了 alias GB2312-1980// EUC-CN// 一行,若没有,加入它。在redhat7.1b2中已有

"alias GB2312// EUC-CN//"
"alias csGB2312// EUC-CN//"
"alias CN-GB// EUC-CN//"

  但我还是加上"alias GB2312-1980// EUC-CN//"

  5、好,我们开始安装Chinput

tar zxvf Chinput-3.0.1.tar.gz
cd Chinput-3.0.1
make
make install

  6、进入usr/lib

ln -s libstdc++-2-libc6.1-1-2.9.0.so libstdc++-libc6.1-2.so.3

  7、再修改 /usr/lib/ZWinPro/Chinput.ad 文件:

  由于 XFree86 没有自带的 BIG5 码字体,若你不需要输入 BIG5 码字符,则对 Chinput.ad 做以下调整:


...
chinput.gblocale= zh_CN.gb2312
chinput.big5locale= zh_CN.gb2312
...
chinput.gbfont = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0
chinput.big5font = -*-*-medium-r-normal--16-*-*-*-c-*-gb2312.1980-0

  注意:在 Chinput.ad 的字体定义中,不能出现空格,这是由于 Chinput 的限制。

TOP

GNOME和KDE的汉化

六、REDHAT 7.0中GNOME的汉化

  GNOME的中文显示RedHat 7.0采用glibc2.2和XFree86 4.0.1,对国际化的支持有了很大的进步。GNOME是优秀的桌面平台,也是目前Linux使用的对国际化支持最好的桌面平台之一。这里我主要讲如何实现在RedHat 7.0下面显示和输入简体中文。

  为了简单起见,仅仅讲述GB2312编码的字符集。

  因为XFree86 4.0.1对显卡的支持不如XFree86 3.3.6广泛,所以RedHat 7.0里面同时保留了XFree86 3.3.6,可以用xdpyinfo查看XFree86的版本号.方法

xdpyinfo │ grep release │ sed s/^.*[^[:digit:]]//

  看看结果是不是4001或者4002,如果不是,表明版本不是4.0.x

  1:升级glibc

  RedHat 7.0自带的glibc版本为2.1.92,是2.2的测试版,bug比较多。后来RedHat公司提供了glibc的升级文件。为了系统的稳定和更好的支持中文,应该将glibc升级到2.2-9版本或更高。下载地址:ftp://ftp.gnuchina.org/pub/ISO/RedHat/updates/7.0/i386

  最好将glibc,glibc-devel,glibc-profile都升级到2.2.9

  升级方法:

rpm -Uvh glibc-2.2-9.i386.rpm


  2:设置中文locale

  Linux采用locale技术以实现对多语言的支持。因此首先要设置中文locale。

  如果你使用的是bash,那么请编辑~/.bash_profile文件,加上

export LC_ALL=zh_CN
export LANG=zh_CN

  然后运行. .bash_profile或者重新登录账号以使设置生效。

  编辑~/.i18n文件,内容为:

LANG="zh_CN"

  3:测试中文locale

  在控制台上运行date命令,如果你能看到乱码证明中文locale已经生效。

  此时运行startx进入GNOME桌面,你将看到任务栏上的时间已经变成中文显示了。如果你默认的不是GNOME桌面则可以运行switchdesk gnome切换到GNOME桌面。

  4:显示Windows下的中文文件名

  如果你还装了中文Windows 95/98/Me,那么现在就可以显示中文文件名了。RedHat 7.0采用2.2.16的内核,可以支持简体中文代码页。使用方法:在mount后加选项-o codepage=936,iocharset=cp936。为了永久生效,可以修改/etc/fstab文件。例如我的/etc/fstab文件内容为:

LABEL=/ / ext2 defaults 1 1
/dev/hda1 /mnt/c vfat defaults,codepage=936,iocharset=cp936 0 0
/dev/hda7 /mnt/d vfat defaults,codepage=936,iocharset=cp936 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
none /proc proc defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
/dev/hda10 swap swap defaults 0 0

  5:安装中文TrueType字体(参看前文)

  6:设置GNOME的TrueType中文字体

  为了使我们设置的TrueType字体能够在GNOME下面使用,必须修改GNOME的资源配置文件。

  编辑/etc/gtk/gtkrc.zh_CN文件,设置字体如下:

style "gtk-default-zh-cn" {
fontset = " -misc-simsun-medium-r-normal--14-0-0-0-p-0-*-* "
}
class "GtkWidget" style "gtk-default-zh-cn"

  再编辑/etc/gnome/gtkrc.zh_CN文件,将所有的FontSet设置为:

fontset = "-misc-simsun-medium-r-normal--14-*-*-*-*-*-gb2312.1980-0"

  此时运行startx进入GNOME桌面,就可以看到漂亮的TrueType中文字体啦!

  七、kde2.1.1的汉化

  KDE 2.1.1 于今年3月26日发行的最新版本. 该版本包括了linuxforum成员Rigel为 KDE 2.1 写的中文补丁. 同时 KDE 中文翻译队伍的负责人Wan Jian 修正了有问题的 po 文件, 这样 KDE 2.1.1 就成了第一个无需补丁支持简体中文的 KDE 版本.

  我得到消息后,第一时间下载到kde2.1.1的软件包,我用的是redhat 7.1B2版本,在网站上没有提供redhat 7的rpm包,我只有用bz2软件包了。

  我已经安装了qt-2.2.4的rpm包,所以就可以直接开始安装,其他同志最好用qt-2.3。注意:我用的是qt-2.2.4的rpm包,如果用qt-2.3的tgz版本,请注意修改相应部份.(PATH,QTDIR)

  首先,安装kde2.1.1

  首先把下载的bz2包拷贝到/usr/local/kde下,用bunzip2和tar解包,如:

bunzip2 kdelibs-2.1.1.tar.bz2
tar xvfkdelibs-2.1.1.tar

  注意:安装kde必须安装kdelibs和kdebase,强烈要求安装kdesupport,其它都为选装,我当然全装了,我的机器为celeron 600,128M,足足用了两个晚上才编译完,怕麻烦的人还是等rpm包吧!!

  修改~/.bash_profile

PATH=/usr/local/sbin:/usr/sbin:/sbinPATH:
$HOME/bin:/usr/local/bin:/usr/lib/qt-2.2.4/bin:/usr/local/kde/bin
BASH_ENV=$HOME/.bashrc
USERNAME="root"
QTDIR="/usr/lib/qt-2.2.4"
KDEDIR="/usr/local/kde/"
export USERNAME BASH_ENV PATH QTDIR KDEDIR
export LANG=zh_CN.GB2312
export LC_ALL=zh_CN.GB2312
export XMODIFIERS=@im=Chinput

  进入/usr/local/kde/kdelibs目录

./configure
make
make install

  编译极耗时间,去喝喝茶吧!

  接着编译其它软件包,完成后修改~/.xinitrc

rm ~/.xinitrc
cat >.xinitrc
startkde
Ctrl-D

  接着,参照前文,安装中文字库和chinput。最后,调整kde,重启动后,用startx进入kde.修改字符集,改选字符,退出再进入kde,一切正常,所有的菜单都显现汉字,不过小问题总是有的, 都算不错了。用gedit编辑中文,用mozilla上网,一切都棒极了,mozilla的书签中文显示也很正常。

TOP

打印

1、 如何打印中文 postscript 文件?

2、我能打印中文 postscript 文件, 可是还是不能从 xxx 程序中打印中文!?

3、我是如何打印中文的

八、中文打印

  在 linux 下打印是件麻烦事, 中文打印由甚. 为什么哪? 将屏幕上看到的文字印到纸上, 要经过两步:

  1)应用程序生成postscript 文件;

  2)将该文件送到打印机 (直接或通过 ghostscript). 让我们先从第二步看起.

1、 如何打印中文 postscript 文件?

  最大的问题是一般打印机不支持或不带中文字体. 一般我们使用 ghostscript, 但ghostscript 对中文字体的支持也不是很完美. 大多数情况下需要打补丁. 目前有以下几种解决方案:

  1)直接 patch ghostscript 使其支持 truetype 字体. 可参看该网站. 这是目前最为简单的方法. 缺点是需要 > 6.0 版的 ghostscript, 该版目前还没有以GPL施放, 任何 linux 都不会预装, 需要自己下载安装.

  2)使用 CID 字体. CID 是 adobe 为亚洲文字设计的字体, 打破了 type1 字体只能容纳 256 个字符的限制. ghostscript (> V5.5?) 直接支持 CID 字体, 无需补丁. 可参看同一网站如何设置. 本来这应该是最好的方案, 因为不要打补丁.可惜 CID 字体太少了.

  3)Patch ghostscript 使其支持 VFlib, 通过 VFlib 支持 truetype 字体. 优点是支持老的 ghostscript 版本 (中文有 for 5.5 的 patch, 日文甚至有 for 4.x的), 支持字体变形等. 缺点是需要额外安装 VFlib. Turbolinux 6.0 以上及CLE v0.9p1以上均使用了该方法. 可以到它们相应的软件包中找补丁.

  4)陈向阳的 gbpfb 包, 将中文 truetype 字体转换成 type1 pfb 字体, 由于type1字体只能容纳 256 个字符的限制, 一个 truetype 字体将会生成 30-40个 pfb 字体, 再由一个前端文件控制. 当年这是我们中国人唯一知到的打印中文 postscript文件的方法. 我还记得用此法第一次从 netscape 打印出中文的惊喜. Turbolinux4.x 以下及蓝点等中文发布均使用了该方法. 但现在与前述的 1-3 法相比, 显得有些简陋, 存在一些难以克服的毛病, 已经越来越少的被使用了. 如果您想要可以在上面提到的几个中文 linux 中找到.

  5)在 postscript 文件中内嵌中文点阵字体. 优点是连 ghostscript 都不需要了,直接送到任何支持 postscript 的打印机上就可打印. 缺点是生成的文件庞大,打印出的质量欠佳.

  最后, 使用 1-4 法都需要通过 ghostscript 将文件发往打印机. 有两种用法:

  直接使用, 如:

gs -q -dBATCH -sDEVICE=printer-type -sOutputFile=lpr -
或设置 filter 使 lpr 自动调用 ghostscript.

2、我能打印中文 postscript 文件, 可是还是不能从 xxx 程序中打印中文!?

  这就需要我们看看打印过程的第一步, 即应用程序生成postscript 文件. 目前有多少 linux 下的程序能生成支持中文的 postscript 文件? 少只又少, 真正不需要任何补丁就能 work 的我知道的有三个: netscape/mozilla/abiword(>=0.12).

  主要问题是很少有程序能正确处理中文 font. 在 UNIX/LINUX 世界没有统一的打印API, 任何程序想打印, 必须自己写 code 生成 postscript 文件, 很难想像所有程序员都原意并有能力考虑中文 postscript 字体问题. 现在 gnome-print 和 QT printer class 都是试图产生一个公用 API 以便应用程序不必自己处理生成 postscript的问题. 可惜二者都处于起步阶段, 仅仅聚焦于 type1 字体, 还没顾的上考虑中文的问题. 也就是说目前所有 GNOME/KDE 应用程序, 只要使用这两个 API, 都不能生成正确的中文 postscript 文件, 不能印出中文字. 台湾有人(见CLE的QT包)写了 QT printer 的patch, 但还不是很完善; 没听说有 gnome-print 的中文 patch.

3、我是如何打印中文的

  我用的是ghostscript-6.0-1.i386.rpm和gbpfb-1.1-2.i386.rpm来进行中文打印。想要该软件的人可再http://www.linuxaid.com.cn/engineer/hubertzou/获得。

  需要提醒的是,要先安装ghostscript-6.0-1.i386.rpm,用qs -help测试一下后再安装gbpfb-1.1-2.i386.rpm.

  再netscape或mozilla中的print command中把lpr改为ns2cps - │ lpr

  这样,就可以用netscape来打印中文html和中文txt文件了。

  至于其它的方法,我没有试过,但为了提供尽量多的方法,所以也提供给大家。

TOP

Mozilla和glibc

上网冲浪最重要的软件莫过于浏览器了。Linux下常用的浏览器有Netscape、Lynx等。这里我要向各位推荐的是Netscape的新一代浏览器核心——Mozilla。

glibc 2.2的一个重要方面就是彻底国际化,比如wchar_t内码为4字节Unicode(UCS-4)。

  九、Mozilla的汉化

  上网冲浪最重要的软件莫过于浏览器了。Linux下常用的浏览器有Netscape、Lynx等。这里我要向各位推荐的是Netscape的新一代浏览器核心——Mozilla。Mozilla完全符合最新W3C标准,目前最新版0.8.1无论是从功能还是稳定性上来说都已经做的相当不错了。

  1、下载Mozilla 0.8.1

  下载地址http://www.mozilla.org

  2、安装

tar zxvf mozilla-i686-pc-linux-gnu-0.8.1.tar.gz
cd mozilla
./mozilla

  这时mozilla就启动了。现在我们来做一些配置工作。首先选择Edit--Preferences,弹出对话框,选择Appearance--Fonts,在Language Encoding中选择Simplified Chinese,然后将Serif、Sans Serif、Monospace都选择misc-simsun-gb2312.1980-0字体。Size设为14。

  有些站点可以自动识别语言。这可以通过以下方法实现:

Navigator--Languages--Add...

  选择Chinese/China [zh-cn]

  点击Move Up,将中文语言放在最上面。

  最后点OK完成配置,然后退出Mozilla。(注意:这一点很重要,因为mozilla退出时会改写配置文件。如果没有退出mozilla做以下操作将无效!)

cd mozilla/defaults/pref,编辑unix.js

  找到这样两行

pref("font.min-size.variable.zh-CN", 16);
pref("font.min-size.fixed.zh-CN", 16);

  改为

pref("font.min-size.variable.zh-CN", 12);
pref("font.min-size.fixed.zh-CN", 12);

  这样可以使网页看上去美观多了。

  3、最后是对输入法的配置

cd ~/.mozilla

  在里面找到pref.js文件,在文件最后加上这样一行

pref("xim.input_style","over-the-spot");


  然后运行mozilla,就可以显示效果很好的中文网页了!显示效果一点不比IE 5.0差。

  为了方便,可以在panel中增加mozilla的启动图标。mozilla有一个bug,当xmms正在播放的时候不能启动,因此启动mozilla时需要停止xmms。

  为了方便中文识别,可以选择View--Character Coding--Auto-Detect--Simplified Chinese以后mozilla会自动识别中文代码页面。

  十、glibc 2.2的汉化实验

  glibc 2.2的一个重要方面就是彻底国际化,比如wchar_t内码为4字节Unicode(UCS-4)。对于最新国家标准18030-2000的支持更是自然而然的事。

  我的兴趣所在却是UTF-8。试验UTF-8的条件终于成熟了。

  第一件事,去http://dickey.his.com/xterm/xterm.html取来最新的 xterm 源码包,

tar zxf xterm.tar.gz
./configure --enable-wide-chars
make

  得到 xterm 执行码。调出一个新的 xterm 窗口,


./xterm -u8 -fn 9x18U &

  在这个 xterm 窗口中,理论上说,所有的Unicode文件都能显示,中文自不例外。假如手头一时找不到UTF-8编码的文件,转一个很容易。比如 A.GBK是一个国标文件,用 iconv -f GBK -t UTF-8 A.GBK >A.UTF-8马上得到一个UTF-8文件。看一下对不对, cat A.UTF-8

  第二件事,造一个使用UTF-8的中文环境。

  先拿两个文件来,

cp /usr/share/i18n/charmaps/UTF-8.gz .;
gunzip UTF-8.gz cp /usr/share/i18n/locales/zh_CN


  由这两个文件便可以生成UTF-8中文环境,

localedef -v -c -f ./UTF-8 -i ./zh_CN /usr/lib/locale/zh_CN.UTF-8

  有了这一中文环境,就可以选用了,

LC_ALL=zh_CN.UTF-8; export LC_ALL

  如何证明呢,看时间, date +%c结果是 2000年11月09日星期五EST下午10点39分15秒甚至ls -l也显示出中文月份。至于中文输入,chinput,cce就可搞定!

TOP

不知道这些是不是只适用于redhat呢?slack行吗

TOP

好长啊,不知什么时候才看完啊

TOP

返回列表