看板 ntucrc 關於我們 聯絡資訊
※ [本文轉錄自 Linux 看板] 發信人: tigerssh.bbs@bbs.sayya.org (小宏), 看板: Linux 標 題: Re: Knoppix, from en to tw 發信站: SayYA 資訊站 (Thu Apr 17 21:19:20 2003) 轉信站: Ptt!news.ntu!news.mcu!newsfeed.nthu!ctu-peer!ctu-reader!news.nctu!SayY ※ 引述《kpchiao (kpc)》之銘言: > 有沒有網友願意提供如何從原始的knoppix-en 中文化的步驟 ? > 謝謝! > Although there is bv1al Chinese version, it is a great job. But > I'd like to do it myself. Anyone can help me out of this? 以下是我自己的中文化過程,如果有錯誤的地方,還請多多指教! 有一點多… 壹、修改之前: 一、使用光碟開機(因為後面有其他設定需要,建議使用"knoppix 2 lang=tw"的參數,進入 文字模式即可;如有滾輪鼠也可再加上wheelmouse)。 二、在硬碟上分割一個至少4G的分割區(/dev/hda1)及一個1G的swap區(/dev/hda2)。 三、mount /dev/hda1 /mnt/hda1 四、mkdir /mnt/hda1/knxsource 五、mkdir /mnt/hda1/knxmaster 六、cp -Rp /KNOPPIX /mnt/hda1/knxsource (大概要十多分鐘吧!) 七、複製/cdrom/KNOPPIX 裡的所有檔案(除了KNOPPIX這個將近 700M Byte檔之外) 到 /mnt/hda1/knxmaster。 八、startx(在要修改的系統中進入x-window) 九、開一個koncole 十、chroot /mnt/hda1/knxsource/KNOPPIX /bin/bash 十一、mount -t proc /proc proc 貳、開工(以下都是在chroot下工作): 一、修改 /etc/locale.gen en-US ISO8859-1 zh-TW Big5 二、移除軟體 1.先將以下的軟體名稱存成一個檔案(例如remove.txt),再使用dpkg -P `cat remove.txt` ,把設定檔也一併清掉) 2.移除列表 dillo gq isdn-config isdnactivecards isdnutils isdnlog isdnlog-data isdnutils-xtools isdnvboxclient isdnvboxserver mutt libidn9 x3270 gqcam freeciv-gtk freeciv abiword-common abiword-gtk imaze tetex-base tetex-bin tetex-extra psi xfonts-intl-european xfonts-intl-japen mozilla-locale-de-at openoffice-de-en falconeye xbattle koffice koffice-i18n-de euro-support-console euro-support-x euro-support kde-i18n-de kde-i18n-cs kde-i18n-da kde-i18n-es kde-i18n-fr kde-i18n-it kde-i18n-ja kde-i18n-nl kde-i18n-pl kde-i18n-ru kde-i18n-tr auctex gettext-el emacs21 lftp ftp 三、新增軟體(我習慣用aptitude安裝軟體^^) 1.先編輯/etc/apt/sources.list 我的設定檔如下: # See sources.list(5) for more information, especialy # Remember that you can only use http, ftp or file URIs # CDROMs are managed through the apt-cdrom tool. # Unstable deb http://linux.cdpa.nsysu.edu.tw/Debian/debian unstable main contrib non-free deb http://linux.cdpa.nsysu.edu.tw/Debian/debian-non-US unstable/non-US main contrib non-free deb http://ftp.us.debian.org/debian unstable main contrib non-free deb http://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free # Sources deb-src http://linux.cdpa.nsysu.edu.tw/Debian/debian unstable main contrib non-free deb-src http://linux.cdpa.nsysu.edu.tw/Debian/debian-non-US unstable/non-US main contrib non-free deb-src http://ftp.us.debian.org/debian unstable main contrib non-free deb-src http://non-us.debian.org/debian-non-US unstable/non-US main contrib non-free # Security updates for "stable" deb http://linux.cdpa.nsysu.edu.tw/Debian/debian-security stable/updates main contrib non-free #deb http://security.debian.org/ stable/updates main contrib non-free #deb http://security.debian.org/ testing/updates main contrib non-free # Stable deb http://linux.cdpa.nsysu.edu.tw/Debian/debian stable main contrib non-free deb http://linux.cdpa.nsysu.edu.tw/Debian/debian-non-US stable/non-US main contrib non-free 2.vi /etc/resolv.conf (dns server 的ip) 3.apt-get update (要等一陣子,如果是在學網內,建議將us的來源取消,不然我的經驗 是----常常連不上或等很久) 4.apt-get upgrade 5.apt-get dist-grade 6.apt-get install aptitude 7.安裝(利用aptitude) gftp gcc-3.0-base kde-i18n-zhtw rxvt-beta-ml ttf-arphic-bkai00mp ttf-arphic-bsmi00lp xcin ncftp openoffice.org-debian-files openoffice.org openoffice.org-bin openoffice.org-l10n-en dfontmgr ftp kmidi flashplugin-nonfree 四、在 /etc/X11/Xsession 的最後exit 0之前加入: #if LANGUAGE=zh_TW.Big5 then export XMODIFIERS="@im=xcin" if [ "$LANGUAGE" == "zh_TW.Big5" ]; then export LC_ALL="zh_TW.Big5" export XMODIFIERS="@im=xcin" exec xcin& fi 五、mv /etc/X11/Xsession.d/45xsession /etc/X11/Xsession.d/45xsession-org 1.在 startkde() 之前加入: #if LANG="zh_TW.Big5" then exec xcin in background if [ "$LANG" == "zh_TW.Big5" ]; then if [ "$XMODIFIERS" == ""]; then XMODIFIERS="@im=xcin" export XMODIFIERS fi exec xcin& fi 2.修改[ -z "$HOME" -o "$HOME" = "/" ] && HOME="/home/knoppix" 成為[ -z "$HOME" -o "$HOME" = "/" ] && HOME="/home/RUNWHO" 3.修改FREESPACE="$(df -k /home/knoppix | awk '/^\/|^rootfs/{print $4}')" FREESPACE="$(df -k /home/RUNWHO | awk '/^\/|^rootfs/{print $4}')" 六、mv /etc/init.d/xsession /etc/init.d/xsession-org 1.修改USER=knoppix 成為USER=RUNWHO 七、在 /etc/init.d/knoppix-autoconfig 1.修改 (1)[ -n "$LANGUAGE" ] || LANGUAGE="de" 成為 [ -n "$LANGUAGE" ] || LANGUAGE="tw" (2)#hwclock $UTC -s 成為 hwclock -s --localtime 2.加入: (1)在### localization之前: # Check if use USB disk to config case "$CMDLINE" in *usbconf*) USBCONF="yes"; ;; esac # Check if user "root" been set case "$CMDLINE" in *root*) USERROOT="yes"; ;; esac (2)在if [ -n "$AUTOMOUNTER" ]; then 之前: # Check for USB flash disk(or CF card reader on /dev/sda1) if [ "$USBCONF" == "yes" ] ; then echo -n "${CRE}${BLUE}Checking ${MAGENTA}/dev/sda1${BLUE} for KNOPPIX configuration ...${NORMAL}" if mount -t auto -o ro /dev/sda1 /mnt/hd >/dev/null 2>&1; then for i in [Kk][Nn][Oo][Pp][Pp][Ii][Xx].[Ss][Hh]; do if [ -f /mnt/hd/$i ]; then echo "" FOUND_CONFIG="yes" # LCDcheck="nx" echo " ${GREEN}KNOPPIX Configuration file found in /dev/sda1, executing ${MAGENTA}$i${GREEN}.${NORMAL}" echo "6" > /proc/sys/kernel/printk /mnt/hd/$i /mnt/hd || true echo "0" > /proc/sys/kernel/printk break fi done umount /mnt/hd 2>/dev/null fi fi (3)在最後exit 0之前: Source1="/etc/init.d/xsession-org" Target1="/etc/init.d/xsession" Source2="/etc/X11/Xsession.d/45xsession-org" Target2="/etc/X11/Xsession.d/45xsession" if [ "$USERROOT" == "yes" ]; then sed -e "s/RUNWHO/root/" $Source1 > $Target1 sed -e "s/RUNWHO/root/" $Source2 > $Target2 else sed -e "s/RUNWHO/knoppix/" $Source1 > $Target1 sed -e "s/RUNWHO/knoppix/" $Source2 > $Target2 fi chmod 755 $Target1 chmod 755 $Target2 八、在/etc/X11/XF86Config-4.in內加入文鼎字型的Fontpath。 九、移除除了K10xsession S90knoppix-halt S90knoppix-reboot S00knoppix-autoconfig 等之外,所有在 /etc/rc*.d/內的連結,除非有想跑其他的服務程式。 十.修改 /etc/profile 中 [ -n "$LANG" ] || LANG="de_DE@euro" 成為 [ -n "$LANG" ] || LANG="zh_TW.Big5" 十一、修改/etc/xcinrc: (define gen_inp_default '((AUTO_COMPOSE YES) (AUTO_UPCHAR YES) (AUTO_FULLUP NO) ==>YES (SPACE_AUTOUP NO) ==>YES (SELKEY_SHIFT NO) ==>YES (SPACE_IGNORE NO) ==>YES (SPACE_RESET YES) (AUTO_RESET NO) ==>YES (WILD_ENABLE YES) (SINMD_IN_LINE1 NO) (END_KEY NO) (QPHRASE_MODE 0) ; 1:shift, 2:ctrl, 4:alt, 8:fallback (DISABLE_SEL_LIST "NONE") (KEYSTROKE_REMAP "NONE") (BEEP_WRONG YES) (BEEP_DUPCHAR NO) ==>YES (TSI_FNAME "/usr/lib/tabe/tsi.db") (HINT_SELECT NO) (HINT_TSI NO))) '((DEFAULT_IM "cj") ==> "liu5" (DEFAULT_IM_MODULE "gen_inp") (DEFAULT_IM_SINMD "DEFAULT") ==>"phone" (PHRASE "default.phr") (CINPUT (cj simplex phone dayi3 wubi_b5 bimsphone chewing array30 bimspinyin jyutping0 jyutping zh_hex)) ==>在 cj 之前加入 liu5,並將bimspinyin刪除 (FONTSET "-sony-*-24-*-iso8859-1,-eten-*-medium-r-*-24-*-c-*-big5-0") ==>字型大小改為16 加入的設定: (define liu5@big5 '((SETKEY 9) (INP_CNAME "嘸蝦米%%嘸"))) 刪除的設定: (define bimspinyin@big5 '((SETKEY 9) (MODULE "bimsphone"))) 十二、修改/usr/sbin/saveconfig的顯示訊息為中文 zh_TW*) TITLE1="儲存 KNOPPIX 設定" MESSAGE1="請選擇要儲存的設定項目:" MESSAGE2="請放入一塊已格式化過(dos 或 ext2)的空白、可儲存的軟碟。" MESSAGE3="儲存資料中……" MESSAGE4="請選擇欲儲存設定檔的目錄(資料夾):" E1="個人設定檔(桌面、程式設定)" E2="網路設定(LAN, Modem, ISDN, ADSL)" E3="圖形介面設定檔(XF86Config)" E4="其他系統設定檔(例如印表機等等…)" E5="(${DESKTOPKB}kB)所有的桌面檔案" ERROR="無法儲存 KNOPPIX 設定檔……" ;; 以下的是在最後幾行 zh_TW*) SUCCESS="KNOPPIX的設定已成功儲存了!\n你的設定檔將在下次開機時使用\n\"knoppix(或root) myconfig=$DIRECTORY\",\n或是 \"knoppix(或root) myconfig=scan\"(自動尋找)\n參數後重新載入。" ;; 參、修改及設定一些程式的起啟值 因為在原來的KNOPPIX 光碟中,進入x-window之前,會有一些預設的程式設定被複製到 使用者目錄中,但某些不符合我的使用習慣,且有些圖示沒連結好,因此在這裡我將光碟開 機後自行產生的/etc/X11/Xsession.d/45xsession及/etc/init.d/xsession複製到自製光碟 檔案目錄中的相關位置後,在文字模式中(因此在前面建議用 knoppix 2 參數進入,如果已 進入x-window內,請退出到文字模式;什麼!已進入 runlevel 5,那只好請您重新開機了 ^^,記得不要再打錯了喔!)。 步驟如下: 一、cp /etc/X11/XF86config-4 /mnt/hda1/knxsource/KNOPPIX/etc/X11/ 二、cp /etc/init.d/xsession /mnt/hda1/knxsource/KNOPPIX/etc/init.d/ 三、退出x-window 四、在文字模式下: chroot /mnt/hda1/knxsource/KNOPPIX /bin/bash 五、mount -t proc /proc proc (如果已 mount 過了,略過) 六、startx 七、修改選單的圖示連結。 八、啟動openoffice 1.選tools-->options-->language settings-->language--> locale setting 選chinese(traditional) 然後最下方有一個Asia language support把enable選起來 中間的Westen選English(USA) Asia 選Chinese(Traditional) 2.選tools-->options-->Text Document-->Basic Fonts(Asian) 字形全部選文鼎PL中楷 3.選tools-->options-->Text Document-->Basic Fonts(Western) 字形也全部選文鼎PL中楷 (否則開啟文件後,還得自己選一次) 九.設定好之後,退出x-window,將剛剛設的一些程式的啟始值(在/home/knoppix內)tar 起來,放著備用。 十、umount /proc 十一、exit 或 ctrl-D 肆、開始製作image檔 一、修改開機選項參數 (一)先將boot.img mount 1.make /mkboot 2.mount -o loop /mnt/hda1/knxmater/KNOPPIX/boot.img /mkboot 3. cd /mkboot (二)vi /mkboot/syslinux.cfg 1.在所有的項目中加入 wheelmouse noapic 參數 (直接使用滾輪鼠) 2.修改 lang=us 成為 lang=tw 3.修改initrd=miniroot.gz 成為initrd=minisys.gz (三)加入: LABEL root KERNEL vmlinuz APPEND ramdisk_size=100000 init=/etc/init lang=tw noapic wheelmouse apm=power-off hda=scsi hdb=scsi hdc=scsi hdd=scsi hde=scsi hdf=scsi hdg=scsi hdh=scsi vga=791 initrd=minisys.gz nomce quiet BOOT_IMAGE=root root (四)mv miniroot.gz minisys.gz (五)開機logo 1.製作一個640*400 16色的影像,命名為logo.png 2.pngtopnm <logo.png >logo.pnm 3.ppmtolss16 <logo.pnm >logo.16 (做好的檔案最好小於50k) 5.cp logo.16 /mkboot/logo.16 (六)開機選項的說明(f2) 利用kwrite修改f2這個檔案 二、為了重新製作方便及修改,將一些檔案移至自行建立的目錄中,並做好相關的連結。 1.mkdir /mnt/hda1/knxmaster/Mysetup 2.mv /mnt/hda1/knxsource/KNOPPIX/etc/xcinrc /mnt/hda1/knxmaster/Mysetup/ 3.mv /mnt/hda1/knxsource/KNOPPIX/usr/lib/xcin/tab/big5 /mnt/hda1/knxmaster/Mysetup/ 4.cd /mnt/hda1/knxsource/KNOPPIX/etc 5.ln -s /cdrom/Mysetup/xcinrc ./xcinrc 6.cd /mnt/hda1/knxsource/KNOPPIX/usr/lib/xcin/tab 7.ln -s /cdrom/Mysetup/big5 ./big5 8.加入嘸蝦米的liu5.tab或大易的dayi.tab到/mnt/hda1/knxmaster/Mysetup/big5內 9.為了做實驗用: (1)cd /mnt/hda1 (2)ln -s /mnt/hda1/knxmaster/Mysetup ./ 10.為了能使用root啟動,利 開機時自動將root的目錄連結到 ramdisk 內(因為我不會修改如何不建立root目錄^-^) vi /mnt/hda1/knxmaster/Mysetup/mkrootdir -------------------------------------------------------------------- #!/bin/bash #add by tigerssh mkdir /home/root rmdir /root ln -s /home/root /root ------------------------------------------------------------------- 存檔之後,再chmod +x /mnt/hda1/knxsmaster/Mysetup/mkrootdir 11.如果為了能顯示 windows 的 partition 上的中文檔名 vi /mnt/hda1/knxmaster/Mysetup/addfstab-big5 ------------------------------------------------------------------- #!/bin/bash # 將 fat16 fat32 NTFS 的 partition 加上 iocharset=big5 以便顯示中文檔名 #list=`fdisk -l |grep -E " 4 "\|" 6 "\|" 7 "\|" b "\|" c "\|" e " |awk \dd list=`fdisk -l |grep -E "FAT16"\|"FAT32"\|"NTFS" |awk '{print $1}'` for i in $list do grep -Ev "^$i " /etc/fstab >> /ramdisk/fstab grep -E "^$i " /etc/fstab|sed 's/noauto,/iocharset=big5,noauto,/' \ >> /ramdisk/fstab mv /ramdisk/fstab /etc/fstab done ------------------------------------------------------------------- 存檔之後,再chmod +x /mnt/hda1/knxsmaster/Mysetup/addfstab-big5 12.vi /mnt/hda1/knxmaster/KNOPPIX/knoppix.sh ------------------------------------------------------------------- #!/bin/bash /cdrom/Mysetup/mkrootdir /cdrom/Mysetup/addfstab-big5 ------------------------------------------------------------------- 14.將自己的設定檔案移到/mnt/hda1/knxmaster/Mysetup內 三、移除 /mnt/hda1/knxsource/KNOPPIX/etc/*- 四、移除/mnt/hda1/knxsource/KNOPPIX/var/mail/* 五、移除/mnt/hda1/knxsource/KNOPPIX/home內的目錄以及 .rr_moved 六、rm -f /mnt/hda1/knxsource/KNOPPIX/var/cache/apt/archives/*.deb (也可先mv 到不是/mnt/hda1/somewhere/下備用) 七、mkisofs -R -l -V "KNOPPIX.net filesystem" -hide-rr-moved -v /mnt/hda1/knxsource/KNOPPIX | /usr/bin/create_compressed_fs - 65536 > /mnt/hda1/knxmaster/KNOPPIX/KNOPPIX (以上是一行) 八、做好後可以用軟碟開機測試一下,dd if=/mnt/hda1/knxmaster/KNOPPIX/boot.img of=/dev/fd0 九、開機後如果沒問題,做出一個完整可開機的iso image檔: mkisofs -pad -l -r -J -v -V "KNOPPIX" -b KNOPPIX/boot-en.img -c KNOPPIX/boot.cat -hide-rr-moved -o /mnt/hda1/knoppix.iso /mnt/hda1/knxmaster (以上是一行) 十、燒錄: 1.先測試燒錄器在那個位置,cdrecord -scanbus 2.cdrecord -v -eject -speed=8 dev=0,1,0 /mnt/hda6/knoppix.iso ^^^^^修改這裡 十一、大功告成 參考資料:1.bv1al 前輩所作的光碟,可在 ftp://cle.linux.org.tw/pub/iso/KNOPPIX/bv1al/內下載。 2.http://imil.au.edu.tw/~chiao/FAQ/make_knoppix_boot.html 3.http://gnubox.dyndns.org:8080/~sunil/knoppix.php 4.http://www.knoppix.net/docs/index.php/KnoppixRemasteringHowto -- ※ Origin: SayYA 資訊站 <bbs.sayya.org> ◆ From: 61-225-236-111.hinet-ip.hinet.net -- ※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw) ◆ From: 140.112.244.56