發信人: "Swergar \(深海公子\)" <kin@yick.org>, 看板: Linux
標 題: Re: 可以自己改KNOPPIX嗎?
發信站: Another Netscape Collabra Server User (Thu Jan 2 15:44:09 2003)
轉信站: SayYa!ctu-reader!ctu-peer!news.csie.ncyu!news2.ncyu!news.ccu!news.nsysu
Origin: 61.18.7.162
對於這一個「免安裝、免硬碟、立即享用 Linux」的單一片光碟(內含約 1.7G 各種軟體) KNOPPIX 這裡就不再多做介紹了, 有興的人自己去抓來玩.
以下想跟有興趣自製 KNOPPIX 的朋友分享一些我的經驗.
就是怎樣抓來一片 KNOPPIX 光碟後, 把它重新改造成更好用或更個人化, 帶著它加上一個 USB 行動碟, 以後全世界的電腦都是你可以立即上手的電腦
了.
( KNOPPIX 對 USB 讀卡機(或大姆哥)是可以即插即用)例如到國外, 如果沒有帶一台 Notebook 的話, 光帶這片 KNOPPIX加一個 USB 碟, 就很夠用了
!
首先當然你要去 download 或者由別人給你一片 KNOPPIX 光碟.(download 點: 可以到原 KNOPPIX 站裡列的各站, 如
ftp://ftp.uni-kl.de/pub/linux/knoppix/ 或國內 ftp://cle.linux.org.tw/mirror/KNOPPIX/ 以及先前有加入 mirror 的國內各站忘了 URL ?)
電腦的 RAM 越多越好, 有 256M 或以上是比較理想的.
在硬碟上開個 512M 或更大的 swap準備一個 partition(例如 /dev/hdb7), 最好有 5G 以上比較好搬東弄西的.再來一個 partition(例如 /dev/hdb8)
準備 3G 好了, 可以放以後你做出來的不同版本 ISO 檔.
好!現在開始進行 ---------------------->
用 KNOPPIX 光碟開機
將 /KNOPPIX 用 cp -Rp 到硬碟, 如
mount /mnt/hdb7
cp -Rp /KNOPPIX /mnt/hdb7/KNOPPIX-sys
這個 /mnt/hdb7/KNOPPIX-sys 目錄就是之後要來大改系統用的
這個 copy 要好一陣子(幾十分鐘 ?), 因為有 1.7G 左右的 data
再來 mkdir /mnt/hdb7/KNOPPIX-boot
這個是要來放主系統檔案以外的東東, 如開機 image 檔或其它自己要加的程式、阿里不達的東東.
拷備 /cdrom/KNOPPIX/ 下的所有東東(除了
/cdrom/KNOPPIX/KNOPPIX ←這個不要copy)
到 /mnt/hdb7/KNOPPIX-boot
現在要開挖了!請注意!!!
要 exit 到完全退出 shell, 就是在純文字 mode 只出現
根目錄提示符號, 再進行以下動作, 否則它會出現一堆
bash: /dev/null: Permission denied
開始 ========>
chroot /mnt/hdb7/KNOPPIX-sys
mount -t proc /proc proc
dpkg -r --force-depends koffice (強制刪除 KDE office)
dpkg --purge koffice (澈底清除殘遺)
(我不喜歡也不用 KDE, 因為可說華而不實, 所以盡可能把 KDE 一些
沒用的東果都砍掉, 留 game 及 kstars, 這樣可以裝很多我想要的東東)
dpkg -r xxxyyyzzz (再清除某些你不要的東東)
dpkg -i /opt/aabbcc-123.deb
(可以事先將要裝的 debian packages cp 到
/mnt/hdb7/KNOPPIX-sys/opt/ 下面, 這時就可以直接 dpkg -i 來裝)
update-menus (刪除、安裝後, 建立新的 menu)
巡視一下 /etc/rc*.d
用 debian package 新裝某些 daemon 的話, 它會生一些蛋蛋出來, 最好
讓 rc1.d --- rc5.d 都只剩 K10xsession 以免做出來的光碟一開機就會跑
一些不必要的 service (除非你刻意要跑)
rc0.d 只要 K10xsession S90knoppix-halt
rc6.d 只要 K10xsession S90knoppix-reboot
rm /etc/*-
要清掉 /etc 底下的 passwd- group- ……之類的 *-
這是安裝某些 debian package 時(例如加入日文輸入轉換用的 canna)
它會自動新增 user 造成的, 如果不清將來的光碟開機後的系統會有無
法新增 user 的問題(當然也可以手動刪除link)
最後要離開前記得要
umount /proc
再
exit
結束 <========
現在就可以開使製作新的系統檔 KNOPPIX 的 image
mkisofs -R -l -V "KNOPPIX-cloop" -hide-rr-moved \
-v /mnt/hdb7/KNOPPIX-sys | create_compressed_fs - 65536 \
>> /mnt/hdb7/KNOPPIX-boot/KNOPPIX
(以上三行是要連著一行當指令下)
要等上十幾分鐘才會完成(我是用 850MHz + 256M + 7200RPM swap 512M)
階段結束 <------------------------------
接著並不需要燒成光碟才能知道結果, 只要用軟碟開機就可以檢測
剛才所做的結果了.
cd /mnt/hdb7
ln -s KNOPPIX-boot KNOPPIX
就是要讓 hdb7 產生一個叫 KNOPPIX 的目錄, 這樣用軟碟開機後
它會從 /dev/hda1, hda2, hda3......一一去找有沒有叫 KNOPPIX
的目錄, 找到了, 就會以它當成 KNOPPIX cdrom 來用
開機軟碟的製作法是
dd if=/cdrom/KNOPPIX/boot-en.img of=/dev/fd0
修改軟碟
/KNOPPIX/boot-en.img
syslinux.cfg
DEFAULT vmlinuz
APPEND lang=tw ramdisk_size=100000 init=/etc/init noapic apm=power-off \
hda=scsi hdb=scsi hdc=scsi hdd=scsi hde=scsi hdf=scsi hdg=scsi hdh=scsi \
vga=normal initrd=miniroot.gz quiet BOOT_IMAGE=knoppix 2 desktop=icewm
TIMEOUT 220
原 lang=us 改為 tw 以便產生起始 i18n
vga=791 改為 normal 這是為了避免某些顯示卡在 buffer mode 有問題
BOOT_IMAGE=knoppix 改為 knoppix 2 開機進入 text mode
BIOS 記得設成 floppy 開機.
上面說過的系統修改過程, 包括要改 KNOPPIX 開機自動設定檔
/etc/init.d/knoppix-autoconfig
若為德國原版, 要加以下這個 tw 項, 若抓 candyz 版, 要改一下.
tw)
# Taiwan version
COUNTRY="tw"
LANG="zh_TW.Big5"
LANGUAGE="zh_TW.Big5" (要加這一行)
KEYTABLE="us"
XKEYBOARD="us"
KDEKEYBOARD="us"
CHARSET="iso8859-1" (原 big-5 改成 iso8859-1)
XMODIFIERS="@im=xcin"
;;
# Set clock (Local time is more often used than GMT)
#hwclock -s
hwclock -s --localtime (要加上 --localtime 否則某些和時間計算有
關的程式(如 xplns)會把系統時間當成 UTC )
另外以下這個我也把它改掉
# Write KNOPPIX config files for other scripts to parse
# Standard variables/files
echo "LANG=\"$LANG\"" > /etc/sysconfig/i18n
echo "COUNTRY=\"$COUNTRY\"" >> /etc/sysconfig/i18n
#echo "LANG=\"$LANG\"" >> /etc/sysconfig/i18n
(不瞭解為何要用兩個 LANG ? 把它 mark 掉似乎也沒有不良影響)
echo "LANGUAGE=\"$LANGUAGE\"" >> /etc/sysconfig/i18n
echo "CHARSET=\"$CHARSET\"" >> /etc/sysconfig/i18n
echo "XMODIFIERS=\"$XMODIFIERS\"" >> /etc/sysconfig/i18n
之後也可以在這個程式裡另外加上一些你想要的東東, 像加上偵
測老鼠是否為 PS/2, 若是, 再問是否是滾輪鼠, 因為 default
並沒有支援 wheel mouse, 既始跑 mouseconfig 設也沒用!
(USB 滾輪鼠沒問題)
所以我在開機過程加上這一項, 可以為 XF86Config-4 加上滾輪鼠
的參數
Option "Protocol" "IMPS\2"
Option "ZAxisMapping" "4 5"
滾輪才有效.
以及詢問是不是用 LCD 螢幕, 我是改成水平(35.0-58.0)、垂直頻率
(55.0-75.0), 並且 mark 掉 XF86Config-4 那些 ModeLine, 這樣可
以讓多數 LCD 會有較好的顯示。
測試水平、垂直頻率可以先不跑 startx, 只跑 X <Enter> 看看螢幕
網格是不是均勻、穩定,若是, 那頻率就是設對了。
( 如果你的螢幕是大於 1024x768 的, 請於光碟開機後自行跑 xf86cfg 或
xf86cfg -textmode -xf86config /etc/X11/XF86Config-4
重新設定 XF86Config-4
)
如果是抓原版的 KNOPPIX, 要自己加上 xcin 及文鼎字型, 也要把
字型的 path 加到 XF86Config-4.in 裡, 這樣光碟開機後自動產生的
XF86Config-4 就會有含入文鼎字型 path.
( 建議把 xcinrc, /usr/lib/xcin/tab/ 之下的 big5(及 gb2312)搬
到 /mnt/hdb7/KNOPPIX-boot/ 另開目錄存放, 再 link /cdrom/my_directory
過來 /mnt/hdb7/KNOPPIX-sys/
這樣之後如果要改輸入法設定, 或增加輸入法(嘸蝦咪/大易)
, 只要重做 ISO 檔, 不必重做 /mnt/hdb7/KNOPPIX-sys/ 這個重大工程.
包括一些 rc 檔, 如 icewm 下的 toolbar, menu, preferences 或
一些將來可能比較會改變的, 都不要寫死在 /mnt/hdb7/KNOPPIX-sys/
而用 link 到 /cdrom/my_directory(自己取個名字)
)
另外, 並不是所有的東東都有 debian package 可以裝, 要自行 compile
, 所以建議還是執行 /usr/local/bin/knx-hdinstall 把 KNOPPIX 安裝
到硬碟上(至少準備 3G 以上比較好操作吧!)
如果你是抓比較新的 KNOPPIX 它已經有英文版的 knx-hdinstall, 否則
它是德文的. 你可以到 ftp://cle.linux.org.tw/mirror/KNOPPIX/tw/
下找我先前轉成英文的 knx-hdinstall
安裝到硬碟後的 KNOPPIX 首先遇到的問題是 /root(光碟執行沒有) 與
/home/root 簡單的方法是 rm -fr /home/root ; ln -s /root /home/root
裝在硬碟的好處是, 它和光碟執行版有 99% 的相同, 所以在硬碟上試成功
的, 幾乎可以確定裝到光碟後一定可以用。
它可以用來做前試驗, 例如要裝 debian package 時某些狀況是有 dependence
的問題, 就可以一一找齊, 再安裝、試用. 或者直接把別的 distribution 裡
的 binary 直接 tar 過來用.
例如改用 RedHat 7.3 裡的 rxvt-2.7.8 可直接用 binary, 而 telnet 也怪
怪的, 改用 RedHat 7.3 裡的 telnet
或者 KNOPPIX 並不完全支援你的硬體時, 可以試著把驅動程式裝上來試.
等一切都 OK 後, 再用前述的 chroot 過去 dpkg -i ...... 或者將自己
compile 出來的東東直接 copy 過去.
最後
mount /mnt/hdb8 準備放燒光碟用的 ISO 檔
cd /mnt/hdb7/KNOPPIX-boot/
mkisofs -l -r -J -V "KNOPPIX-aabbcc" -hide-rr-moved -v \
-b KNOPPIX/boot-en.img -c KNOPPIX/boot.cat \
-o /mnt/hdb8/KNOPPIX-aabbcc.iso .
(請注意!上面一行最後這邊有個句點, 就是要把當下的目錄做成 ISO)
這個很快, 大概兩分鐘(?) 之後就可以用
cdrecord -v -eject -speed=10 dev=0,1,0 /mnt/hdb8/KNOPPIX-aabbcc.iso
把它燒出來(上述是 IDE CDRW 接在 /dev/hdd 用十倍速燒 )
OK, 大致上的操作就是這樣, 若有遺漏、錯誤的, 還請指教.
有興趣的話, 大家都來做一張自己的 KNOPPIX 光碟.
"低逃" <harddisk@bbs.ee.ntu.edu.tw> 撰寫於郵件新聞:449Jb3$IbX@bbs.ee.ntu.edu.tw...
我想要在KNOPPIX加入一些自己想用的程式和設定~
可以解開KNOPPIX的ISO~ 加入檔案再直接燒錄回去嗎~
會不會有不能開機的問題呢?
謝謝~~