Slax本地化:U盘上的Linux中文套件

Slax是一个基于Slackware而形成的套件,它的主要用途是Linux桌面应用,而且支持LiveCD和LiveUSB。它预装的是Kde3。4。1和KWord(KOffice中的字处理器)。它的桌面简洁大方,速度很快。又十分方便。所以我将用它来实现一个中文化的U盘Linux 套件。

1、U盘启动的方式选择

U盘的启动方式有许多种,其中主要有[USB-HDD],[USB-FD],[USB-CDROM]。对于我的IBM 40GB移动硬盘来说,[USB-HDD]是正确的。大家知道,硬盘有分区表,而软盘没有分区表。而[USB-HDD]方式就是从U盘分区表中读出引导记录从而完成启动。所以,大多数的U盘应选择[USB-HDD]方式启动。

2、如何从U盘启动

我选择syslinux而不是lilo或grub。经过我的个人的兼容性测试,lilo不能在相当一部分计算机上成功引导,而grub似乎完全不能从USB上工作。于是我选择了syslinux,一个工作在FAT16上的引导器。

注意:syslinux 不能工作在FAT32的分区上,而且分区大小不能超过128M。原因是多数计算机BIOS使用的INT13调用不能处理超过一定大小的分区。于是我的移动硬盘就如此分区:第一个分区(SDA1)只有128M,而且是 FAT16。第二个分区(SDA5)和第三分区(SDA6)就有20G。

这是分区的详细信息代码:

      
      Device Boot Start End Blocks Id System 

/dev/sda1 * 1 13 104391 6 FAT16 

/dev/sda2 14 4863 38957625 f W95 Ext'd (LBA) 

/dev/sda5 14 2435 19454683+ b W95 FAT32 

/dev/sda6 2436 4863 19502878+ b W95 FAT3

安装方法

在建立文件系统之后,syslinux /dev/sda1(Linux下要求解除挂载)或syslinux iWin98下i盘是第一个分区)。在第一个分区/dev/sda1下建立一个SYSlinux.cfg内容如下代码:

 

      
      prompt 1 
timeout 300 d
isplay SYSlinux.msg 
default slax 
label slax 
kernel vmlinuz 
append root=/dev/ram0 rw
initrd=initrd.gz init=linuxrc 
load_ramdisk=1 prompt_ramdisk=0
ramdisk_size=4444 max_loop=255 nocd

内容的意义就是使用vmlinuz和initrd.gz引导。另外你可自定义同目录下SYSlinux.msg的内容,这个信息将在启动时被显示:

 

      
      Welcome to Slax Chinese Version!

3、安装Slax

从http://slax.lin ux-live.org/download.php下载Slax Standard Edition。这个版本里有KDE3.4,kmplayer,一个KDE的音频播放器和KWord,还有K征服者用来上网。

典型界面

1.使用指令:"mount -o loop slax-5.0.6.iso /mnt/cdrom",把ISO文件挂载到/mnt/cdrom目录,进入/mnt/cdrom/boot目录,复制vmlinuz和 initrd.gz文件到/mnt/sda1(移动硬盘的第一个分区,以后省略说明)。

2.在/mnt/sda5中建立目录slax,把/mnt/cdrom下所有文件和目录复制到/mnt/sda5/slax:cp -rf /mnt/cdrom/* /mnt/sda5/slax/

这就完成安装。

3.本地化

先介绍下如何在Slax上安装自定义软件:

Slax的SQUASHFS

SQUASHFS是一个实行压缩的文件系统。Slax使用它来安装根目录。在base目录中,slax有一些基本的mo(SQUASHFS映象文件扩展名)文件。如KDE,X,基础库等等。如果你要查询哪个文件或哪个目录属于哪个mo文件,请到/mnt/live/memory查找(Slax自带)。Slax提供了创建,修改和使用SQUASHFS module的方法。

创建模块

把Slackware的tgz安装包转换成mo:tgz2mo application.tgz application.mo

如果要在修改安装包之后建立模块:

 

      
      installpkg -root /tmp/package application.tgz

进入/tmp/package进行修改,完成后制作模块:

 

      
      dir2mo /tmp/package module.mo

修改模块

将模块释放到:/tmp/directory mo2dir module.mo /tmp/directory

修改完之后,创建模块:dir2mo /tmp/directory module.mo

使用模块

Slax运行时挂载mo:

uselivemod /path/module.mo

slax/modules目录中的mo文件将被自动挂载

注意:SQUASHFS有时不太稳定,要特别注意避免如下几种情况:

1.太多层次的重叠。A文件被A.mo所拥有,新来的B.mo也有一个A文件把A.mo所覆盖。

2.太少的内存空间,mo挂载时需要内存,模块太多内存太少时 会导致一系统的问题。

开始工作

Slax-5.0.6的一个BUG:/etc/profile.d/slax.sh自作聪明的加入export

LC_ALL=c,删除它。

下载firefly字体(http://cle.linux.org.tw/Slackware/s...11-noarch-1.tgz) 后,安装它,生成fc.cache和fonts.dir等等,等到万事具备时:

代码:

 

      
      mkdir -p /tmp/package/usr/local/font 

cp -rf /usr/local/font/* /
tmp/package/usr/local/font 

mo2dir /tmp/package /mnt/
sda5/slax/modules/fonts.mo

安装Xorg.6.8.2-firefly版本(下载地址:http://cle.linux.org.tw/Slackware/s...

1.Firefly.tgz):

代码:

 

      
      installpkg --root /tmp/package 
x11-6.8.2-i486-1.Firefly.tgz 

cd /tmp/package/etc/X11/ 

cp /etc/X11/xorg.conf . 
# 把符合你显卡配置的xorg.conf复制到这里来 

cd /tmp/package 

mo2dir /tmp/package /mnt/sda5
/slax/modules/xorg682.mo

安装fcitx:

 

      
      tgz2mo fcitx.tgz /mnt/sda5/slax/modules/fcitx.mo

安装kde-i18n-zh_CN-3.4.1-noarch-1.tgz(KDE中文化)

http://ftp.cgu.edu.tw/Linux/Slackwa....1-noarch-1.tgz

tgz2mo kde-i18n-zh_CN-3.4.1-noarch-1.tgz /mnt/sda5/slax/modules/kde.mo

同样的方法,可以下载并安装XMMS,firefox,thunderbird等等。

一些细节

为了使KMplayer能播放RMVB,下载

代码:

 

      
      http://www1.mplayerhq.hu/MPlayer
/re...0050412.tar.bz2 

tar -jxvf essential-20050412.tar.bz2 

mv essential-20050412 /usr/lib/win32 

rm -rf /tmp/package 

mkdir -p /tmp/package/usr/lib/win32 

cp -rf /usr/lib/win32/* 
/tmp/package/usr/lib/win32 

dir2mo /tmp/package/usr/lib/win32 
/mnt/sda5/slax/modules/codecs.mo

这样KMPlayer就能完美播放各种各样的视频文件

我的/etc/gtk/gtkrc.zh_CN文件:

代码:

 

      
      style "gtk-default-zh-cn" 
{ 

fontset = "-adobe-helvetica-medium-r-
normal--12-*-*-*-*-*-iso8859-1, 

-*-*-medium-r-normal--12-*-*-*-*-*-gbk-0,
*-r-*" 

} 

class "GtkWidget" style"gtk-default-zh-cn"

我的profile.d/lang.sh

代码:

 

      
      export LC_ALL=zh_CN.gbk 

export G_BROKEN_FILENAMES=1 

export XMODIFIERS="@im=fcitx"

自动启动fcitx

在/root/.kde/Autostart/中加入文件fcitx.desktop,文件内容如下:

代码:

 

      
      [Desktop Entry] 

Encoding=UTF-8 

Name=fcitx 

Name[zh_CN]=fcitx 

GenericName=输入法 

Exec=fcitx 

Icon=fcitx 

Type=Application 

Terminal=0 

X-KDE-StartupNotify=false 

X-KDE-AuthorizeAction=shell_access
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值