2008年3月5日 星期三

LinuxBIOS with X Server Inside

使用linuxBIOS 6秒內開到busybox shell,8秒內開完進入X11(KDrive)


教學網址如下:
http://www.linuxabordo.com.br/wiki/index.php?title=LinuxBIOS_Graphical

GRUB(GNU GRand Unified Boot loader)

GRUB(GNU GRand Unified Boot loader)
前言:
GRUB 的載入可以分為三個階段 stage1,stage1.5 和 stage2
1.BIOS 會將硬碟的 MBR( 前512 bytes的開機管理程式)讀進記憶體中.這就是第一階段 (stage1) 他將有能力繼續做stage1.5以及stage2.
2.第一點五階段 (stage1.5) 會去找尋我的系統上 /boot 磁區.並且讀取 /boot 磁區上一些相關資料,所以此時已可以認識filesystem.
3.第二階段 (stage2) 會顯示 GRUB menu 以及 command 環境.GRUB的使用者介面允許使用者選取作業系統核心或將伊些參數傳給核心(kernel).
4.第二階段 (stage2) 會等待使用者選取一個作業系統核心(kernel 和 initrd)並將他讀入記憶體中.接下來就將控制權交由作業系統管理了.

GRUB 設定
#cat /etc/boot/grub/grub.conf
--------------------------------------------------------------------------------------------------
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,1)
# kernel /boot/vmlinuz-version ro root=/dev/hda2
# initrd /boot/initrd-version.img
#boot=/dev/hda
default=0
timeout=10
password --md5 $1$0BqX5/$D/MgNxFsg8oOsPsVz8EAN.
splashimage=(hd0,1)/boot/grub/splash.xpm.gz

#for console system from serial port
#serial = 1,9600n8 (ttyS1, 9600 bd, no parity, 8 bits)
title Red Hat Linux (2.4.18-3)
root (hd0,1)
kernel /boot/vmlinuz-2.4.18-3 ro root=/dev/hda2 #console=ttyS1,9600 #for console system from serial port
initrd /boot/initrd-2.4.18-3.img
title Win2000
rootnoverify (hd0,0)
chainloader +1
--------------------------------------------------------------------------------------
說明:
I.預設開機選項,每個 title 代表一項開機選單 (而這裡 0 代表 RedHat Linux,1 代表 Win2000 )
default=0

II.開機選單等待時間(10表示10秒)
timeout=10

III.GRUB 密碼,詳細設定請看"註"說明
password --md5 $1$0BqX5/$D/MgNxFsg8oOsPsVz8EAN.

IV.選單的背景圖示,詳細設定請看"註"說明
splashimage=(hd0,1)/boot/grub/splash.xpm.gz

V.開機選單
title Red Hat Linux (2.4.18-3)

VI.設定 H.D 的 root paraition 所在位置.
第一個參數是開機 H.D BIOS setting 中的硬碟開機順序,不管是 IDE 或 SCSI H.D 皆是 hdx (x 是依據 BIOS setting 中的硬碟開機順序,0:第一顆,1:第二顆...........依序下去,這裡是設定成第一顆 H.D)
第二個參數就是開機 H.D root 的 partition (0:第一個 partition ,1:第二個 partition ...........依序下去)
root (hd0,1)
這個順序其實是參考了 /boot/grub/device.map 檔案
#cat /boot/grub/device.map
#this device map wasgenerated by anaconda
(fd0) /dev/fd0
(hd0) /dev/hda


VII.kernel,ramdisk 所在位址
kernel /boot/vmlinuz-2.4.18-3 ro root=/dev/hda2
initrd /boot/initrd-2.4.18-3.img

VIII.其他非 Linux 開機選單
title Win2000
不同於 root ,它並不會先驗證檔案系統
rootnoverify (hd0,0)
用來載入 Microsoft 的作業系統(如:DOS,Windows...)
chainloader +1

IVV.將開機以及核心信息轉向至 ComPort 來輸出,詳細設定請看"註"說明
serial = 1,9600n8 (ttyS1, 9600 bd, no parity, 8 bits)
或者
serial --unit=1 --speed=9600 --word=8 --parity=no --stop=1
terminal --timeout=10 serial console
當然核心這邊也要加入參數才能將信息轉向至 ComPort
kernel /boot/vmlinuz-2.4.18-3 ro root=/dev/hda2 console=ttyS1,9600

kernel /boot/vmlinuz-2.4.18-3 ro root=/dev/hda2 console=ttyS1,9600n8

註:
1.GRUB 設定檔
GRUB 設定檔是寫入就立即生效,不須像LILO需再回寫至MBR.
除非GRUB本來就不存在MBR,此時就要下指令
#grub-install /dev/hda
回寫至MBR
當我們的 H.D 裝置順序有誤錯時.要先修改 /boot/grub/device.map 檔案中硬碟的順序.
#cat /boot/grub/device.map
#this device map wasgenerated by anaconda
(fd0) /dev/fd0
(hd0) /dev/hda
請確定你要安裝的 GRUB 的 H.D 順序在 hd0
或者在使用 grub-install 加上參數--recheck
#grub-install --recheck /dev/hda

2.安裝系統後設定GRUB的密碼
GRUB的密碼是經過MD5的加密所以無法在grub.conf直接設定
所以有個指令用來幫我們的將密碼以MD5加密的方式呈現
#grub-md5-crypt
將加過密的密碼寫到/boot/grub/grub.conf檔,類似如下
password --md5 $1$0BqX5/$D/MgNxFsg8oOsPsVz8EAN.
設password對於一般boot選項是不會有差異的
如果你要對 boot 選項加參數,如進入signal user mode 時必須鍵入密碼,才能對 boot 選單加參數
就如同 lilio.conf 設定檔加入 restricted 一樣

3.GRUB 如何進入signal mode
在GRUB選單鍵入p打密碼(沒有設定密碼就不需要了),鍵入e 進行編輯,在kernel 選單鍵入e 進行編輯,後面再加 1(signal mode),2,3(level 3for text mode),5(level 5 for Xwindow) 等參數進入不同的runlevel.鍵入b去啟動系統

4.修改GRUB 的背景圖
看過 grub.conf 設定檔的會發現 splashimage=(hd0,1)/boot/grub/splash.xpm.gz 這一段設定,將他解開就是所們所看到的圖示了.所以我們也可以將自己的圖壓縮後覆蓋原先的 /boot/grub/splash.xpm.gz
方法如下:
grub 的背景圖是一張640x480.14色的xpm 檔案.準備好一張640x480 大小的圖,拿到Linux 用Gimp 編輯一下.我們要用gimp 把它存成14色並轉成xpm 檔案格式.首先最有問題的就是怎麼存成14色,我們用Gimp 打開圖片,對著圖片按右鍵「圖像」-->「模式」-->「索引色…」選下去,會跳出一個視窗…在視窗最上面有一個「產生最優它的調色盤」,後面有你目前圖片的顏色數,把你的顏色數改成14,然後按下「確定」. 這樣就完成更改成14色了.改好顏色之後的存檔,對著圖片按右鍵「檔案」-->「另存新檔…」會跳出視窗,視窗下方的「決定檔案類型」請按下選項…選擇「Xpm」.然後「確定」.圖檔即成.
再來改grub.conf 找出splashimage=(hd0,1)/grub/splash.xpm.gz
其中(hd0,1)指的就是你的/boot 目錄,所以預設圖檔位置是/boot/grub/splash.xpm.gz,假設我把圖檔放在/boot/xpm/phoenix.xpm 這個檔,我就把該行改成splashimage=(hd0,1)/xpm/phoenix.xpm 存檔離開,重開就行了.
note: splashimage 的圖檔可壓縮也可不壓縮,預設是一幅壓縮的圖檔,這裡的範例是使用不壓縮比較簡單.如果要壓縮,指令是gzip -9 xxx.xpm,然後就會變成xxx.xpm.gz 的壓縮圖檔了.壓縮後檔案大小大約只有原來的三分之一.

5.開機以及核心信息轉向
1. 安裝完你的作業系統
2.修改你的 BIOS(如果你的有支援 ) BIOS Redirection Port to [Serial 1 or Serial 2]
3. 還又修改你的 /boot/grub/grub.conf
default=0
timeout=10
#splashimage=(hd0,1)/boot/grub/splash.xpm.gz
serial --unit=0 --speed=19200
terminal --timeout=15 serial console
title linux
root (hd0, 0)
kernel /vmlinuz ro root=/dev/hda3 console=ttyS0,19200,vt100 #or ttyS1
initrd /initrd.img
其中黑色粗體字就是要加的設定.
這三行和GRUB輸出有關
#splashimage=(hd0,1)/boot/grub/splash.xpm.gz 因為文字模式下無法顯示任何圖片,所以要將這一行刪除或者註記(#)
serial --unit=1 --speed=19200
--unit 決定你的資料要從哪一個 comport 出去,unit=0(/dev/ttyS0),unit=1(/dev/ttyS1)
--speed 決定了傳輸速度
下面還有其他的參數可使用
--word=8 傳輸字元可以為7或8 bits
--parity =no 需要同位元檢查的就選 yes
--stop=1 需要停止位元就選 1
terminal --timeout=15 serial console
接下來這一行就會將 kernel 的訊息輸出至 comport
kernel /vmlinuz ro root=/dev/hda3 console=ttyS0,19200,vt100

4. 系統預設不能使用 comport 來登入系統 ,所以要修改一下 /etc/inittab, :
# Run gettys in standard runlevels
co:2345:respawn:/sbin/agetty ttyS0 19200 vt100
c1:2345:respawn:/sbin/agetty ttyS1 19200 vt100
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
加入黑色粗體的來允許系統能使用 comport 登入系統

5. 由於 PAM 的限制所以 root 無法使用 comport 登入系統 ,所以還是要修改一下 /etc/securetty:
ttyS0
ttyS1

6. 接下來要將 Null Modem 接在兩方的電腦, Linux 重新開機就可以不需要螢幕.所有的資料都將透過 comport 來傳送.

6.OS無法開機
當安裝完OS重開機時有時只會看到GRUB的提示字元就停住了,這有可能是不小心把grub裝錯硬碟,這時只能使用原光碟機開機來進行修復,如果還能進到 GRUB 本身提供bash like的操作介面,我們可以先手動將OS開起來再修改相關的設定
GRUB開機有4個步驟
I.指定磁碟機及分割區
#root (hd0,0)
II.指定開機核心及root file system
#kernel root=LABEL=/
III.載入initrd
#initrd
IV.執行開機
#boot
開機以後再修改grub相關設定
由於GRUB提供bash like的介面,當你在選擇kernel 及initrd-image檔名時可以試著按下tab鍵就可以自動幫你找出檔名
note:
對GRUB來說,GRUB上的磁碟機為第一顆硬碟為hd0,然後以此類推比如說系統上有hda sda sdb sdc,Grub如果在hda上面,對grub來說hda=hd0 sda=hd1 sdb=hd2 sdc=hd3假如我的系統是在sda上,/boot 在第一個分割區上那指定磁碟機的時候就是#roo (hd1,0)

更多的 GRUB 的使用請參考下面的網站.
http://www.gnu.org/software/grub/manual/
...........

額外的開機選項

額外的開機選項
這個附錄將討論在 Red Hat Linux 安裝程式中可使用額外的開機與核心開機選項。
要使用任何在此討論的開機選項,請在安裝時的 boot: 提示符號輸入您想要的指令。
例如:
boot: text

開機時的指令參數
askmethod
這個指令會要您選取從 Red Hat Linux CD-ROM 開機後,您想要使用的安裝方式。

apic
這個指令運用在 Intel 440GX 晶片組的 BIOS 經常遇到的程式錯誤,而它只會由安裝程式的核心所執行。

apm=allow_ints
這個指令會改變系統中止的服務是如何處理的(這也許對某些筆記型電腦是必要的)。

apm=off
這個指令會停用 APM (Advanced Power Management)。 這是有用的,因為有些 BIOS 的電源管理功能不正常,而且很容易導致當機。

apm=power_off
這個指令將使得 Red Hat Linux 預設為關閉(電源關閉)系統。 這對於不是預設關機的 SMP 系統很有用。

apm=realmode_power_off
當試著要關閉(關閉電源)機器時,有些 BIOS 會當機。 這個指令的作法從 Windows NT 更改為 Windows 95 的方式。

dd
這個參數將會在安裝程式中提示您使用驅動程式的磁片。

dd=url
這個參數將會在安裝程式中提示您使用所指定的 HTTP,FTP 或 NFS 網路位址的驅動程式映像檔.

display=IP:0
這個指令將允許遠端顯示的傳送。 在這個指令中,要以您想要顯示的系統之 IP 位址取代 IP。
在您想要顯示的系統上,您必須執行指令 xhost +remotehostname,這裡的 remotehostname 就是您執行顯示來源的主機名稱。 使用 xhost +remotehostname 指令將會限制存取遠端的顯示終端機,而不允許沒有特定授權的任何人或系統做遠端存取。

driverdisk
這個指令執行與 dd 指令相同的功能,而且也會提示您在 Red Hat Linux 安裝程式中使用驅動程式磁片。

expert
這個指令會開啟下列特殊的特色:允許可移除式媒體的的磁碟分割,提示要驅動程式磁片。

ide=nodma
這個指令停用所有 IDE 裝置上的 DMA,這適用於當您有 IDE 相關的問題時。

isa
這個指令會提示您輸入 ISA 裝置的組態設定。

linux upgradeany
這個指令將解除對 /etc/redhat-release 檔案的檢查,假如 /etc/redhat-release 檔案的預設值已更改,當您試著要升級為 Red Hat Linux 9 時,也許會找不到您 Red Hat Linux 的安裝。

lowres
這個指令強制圖形安裝程式以較低解析度(640x480) 的模式執行。

mediacheck
這個指令給您測試安裝來源(如果是以 ISO 安裝的方式)之完整性的選項。 在您試著要安裝前,驗證 ISO 影像檔是否完整,將幫助您避免安裝過程中經常遇到的問題。

mem=xxxM
這個指令將會覆寫核心偵測系統所得到的記憶體容量。 這在有些只偵測到 16MB 記憶體的舊系統上以及有些顯示卡的顯示記憶體與主要記憶體共享的較新系統上很有用。 當執行這個指令時,請以記憶體容量的百萬位元組取代 xxx。

nmi_watchdog=1
這個指令啟用嵌入的核心停頓偵測器。 這個指令可以使用來除錯強制的核心鎖定。 藉由執行定期的 NMI (Non Maskable Interrupt) 中斷,核心可以監控任何 CPU 的鎖定,並視需要列印出除錯的訊息。

noapic
這個指令告知核心不要使用 APIC 晶片。 這個指令對於某些有不當的 APIC(例如 Abit BP6)或有問題 BIOS 的主機板也許很有用。

noacpi
這個指令告知核心不要使用 ACPI.

noathlon
這個指令告知核心停用 Athlon 的最佳化設定,這樣將對於某些晶片組無法正常使用 Athlon 最佳化時很有用。

noht
這個指令停用超執行緒(hyperthreading) (使用於 SMP 系統)。

nofb
這個指令停用 frame buffer 的支援,並且允許安裝程式在文字模式下執行,這個指令對於存取某些螢幕讀取硬體也許是必要的.

nomce
這個指令停用在 CPU 執行的自我診斷檢查。 核心是預設啟用 CPU 上的自我診斷(稱為 Machine Check Exception)。 在有些舊的 Compaq 機器,這個檢查太常執行,所以也許需要停用它。

nopass
這個指令停用傳送鍵盤與滑鼠的資訊到安裝程式的第二階段。 這適用於當執行網路安裝時在第二階段測試鍵盤與滑鼠的設定畫面。

nopcmcia
這個指令忽略系統中的任何 PCMCIA 控制卡。

noprobe
這個指令停用硬體偵測,而由使用者提供硬體資訊。

noshell
這個指令停用在安裝過程中虛擬主控台 2 的 shell。

nousb
這個指令停用安裝過程中載入 USB 支援。 假如安裝程式在這個過程的初期容易當機,這個指令也許很有用。

nousbstorage
這個指令停用安裝程式管理程式中 usbstorage 模組的載入。 它也許會有助於在 SCSI 系統上的裝置順序。

reboot=b
這個指令會更改核心試著要重新啟動系統的方式。 假如在系統關機時發生核心當機,這個指令會使系統重新開機。

rescue
這個指令將會執行救援模式。請參考 Red Hat Linux 用戶自訂手冊 以取得更多關於救援模式的相關資訊。

resolution=
告知安裝程式要執行的顯示模式。 可輸入任何標準的解析度,例如 640x480, 800x600, 1024x768 等等。

serial
這個指令會開啟序列主控台的支援。

skipddc
這個指令會略過在有些系統造成問題的 ddc 螢幕偵測。

text
這個指令會停用圖形安裝程式,然後強制安裝程式以文字模式執行。

updates
這個指令會提示您放入含有更新(程式修正)的軟碟片。 假如您是執行網路安裝,並且已將更新影像檔內容放置在伺服器中的 RHupdates/ 中,您則不需要使用這個指令。

vnc
這個指令允許你從一部 VNC 伺服器進行安裝

vncpassword=
這個指令設定使用來連線到 VNC 伺服器的密碼

更多的核心參數選項請參考
/usr/src/linux/Documentation/kernel-parameters.txt
.......

2008年3月3日 星期一

聯博全球高收益債券基金

聯博全球高收益債券基金AT股美元(投資於非投資等級之高風險債券且配息可能涉及本金)

台灣經過這一陣子的股市/基金三溫暖後,很多人都漸漸的意識到資產分配的重要性了吧^^
這支債券基金,我個人是覺得還不錯啦,拿出來跟大家分享一下囉^^大家可以參考參考一下.
專家建議空頭時最好是債7股3的比例,我個人是比較喜歡穩定的月配息,所謂的落袋為安麻.

聯博全球高收益債券基金AT股美元
成立於2002/9/26
基金種類:境外投資類型:高收益債
風險等級:RR3年化標準差7.31貝塔值-1.26
投資產業:高收益公司債券,新興市場強勢貨幣,新興市場當地貨幣,現金
持股分佈:美國29%,其他:26%,巴西7%,土耳其5%,俄羅斯5%,南非3%,委內瑞拉3%...等等.


配息情況:每月月底固定配息
2006/1/31-2008/2/28 每個月每單位配息0.0289美元
2004/5/28-2005/12/30 每個月每單位配息0.0318美元
2004/2/27-2004/4/30 每個月每單位配息0.0375美元
2003/8/31-2004/1/30 每個月每單位配息0.0426美元
2003/2/28-2003/7/31 每個月每單位配息0.0464美元
2002/10/31-2003/1/31 每個月每單位配息0.0521美元


原則上從2006年到目前為止已經連續2年每個月配息情況,算是相當穩定,
但如果是從2002年開始看,則有配息逐漸下降的感覺@@
我比較過很多家配息的高收益債券,只有這家是歷年來努力表現出穩定配息上.
會有一種比較安心的感覺@@

如果是想要走短線,這支完全不行喔,3年來的淨值,最高是5,最低大約快到4.4,扣掉匯差,
應該是會虧很慘.這支基金建議走中,長線操作,買起來賺利息就好^^

以每單位配息0.0289美元,淨值4.57美元來算的話,年報酬率約7.5886%唷!
也就是說,假設你投資50000塊台幣,以1(美金):32(台幣)來算的話,單位淨值如上的4.57美元,約可買到50000/32/4.57=341.9037個單位
每個月可以領到,以1:31贖回, 341.9037*0.0289*31=306元的利息^^

想單純評估報酬率的話,同樣的假設投資50000台幣,以1(美金):32(台幣),單位淨值3.61美元,每月單位配息0.0289美元的話,每年報酬率=(0.0289/3.61)*12=9.6%囉!


如果保守型的投資人想要以債券利息買一個月3000的定期定額基金的話,
則需要投入50萬台幣(不含手續費),則每個月大約有約3060元的利息可以投基金囉^^

最後請注意,這些都是以過去的紀錄來推算的,基金公司並沒有配息保證,匯差,手續費都必需自己注意,
因為也是很有可能領到了利息,但賠掉本金喔!
還有它畢竟是公司債,所以風險性也是相當的高的唷!

最後,這支基金名稱的後面會有加上A,A2,AT,B,它的意思是
A代表手續費前收,B代表手續費後收,A2代表不配息,只能除權,AT代表可以選擇除權或除息

(除權)或(除息)
除權就是每月增加單位數, 再滾入投資
除息就是每月配息, 會把錢匯入你的活儲帳戶!


參考資料
DM:http://www.aig.com.tw/DB/fund/1042.pdf
聯博基金投資人須知:http://www.aig.com.tw/DB/fund_5/34.pdf
聯博基金公開說明書:http://www.aig.com.tw/DB/fund_5/31.pdf

聯博投顧網址:http://www.acmfunds.com/

一個小故事讓我們明白資金流通的意義

“又是炎熱小鎮慵懶的一天。太陽高掛,街道無人,每個人都債台高築,靠信用度日。這時,從外地來了一位有錢的旅客,他進了一家旅館,拿出一張1000 元鈔票放在櫃檯,說想先看看房間,挑一間合適的過夜,就在此人上樓的時候---- 店主抓了這張1000 元鈔,跑到隔壁屠戶那裡支付了他欠的肉錢...