iT邦幫忙

0

異機還原抓不到CPU數量與核心數~

公司有台舊的IBM Server(大約五年前購買的),利用Acronis True Image 做Windows 2003 Server全影像備份,再還原到新的Server IBM X3650 M2 雙CPU四核心,
Driver一切都正常,但是看[工作管理員]的CPU執行緒,照理說要有八顆CPU執行緒,但是卻只有一個CPU執行緒;去[裝置管理員]的[電腦]Driver下面顯示[Advanced Configuration Power Interface(ACPI) PC],欲更新驅動程式,僅多一個選項[標準PC]但就是找不到有選項可選擇[ACPI Multiprocessor PC],由於Server上有很重要的ERP系統,希望不要以重灌的方式去解決,各位前輩,高手們還有什麼樣的解決方式可供小弟參考,謝謝!

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
6
Ray
iT邦大神 1 級 ‧ 2010-04-25 22:39:23
最佳解答
  1. 這是因為您用了 Acronis True Image 來備份的緣故. ATI 的設計是給 Desktop 用戶使用的, 原廠「預期」Desktop 用戶只會用單 CPU 的電腦, 所以不管原來的 HAL 是哪一種, 備份時通通換成 Standard PC 的 HAL.

  2. 正確的做法應該是用 Acronis Backup & Recovery™ Server for Windows 來備份, 才不會造成 HAL 錯亂.

  3. 您的問題很難解, 因為微軟只允許從 ACPI HAL 更換為 Non-ACPI, 但卻不允許反過來換. 最好的辦法是重裝, 其次是嘗試修復. 原版光碟開機後, 在等待按 <F6> 的畫面如果按下 <F5> 的話 (隱藏密技), 可以更換光碟開機用的 HAL, 但不確定這樣是否可以幫您換掉 HDD 裡面的 HAL.

  4. 最好的辦法是自己重做 Sysprep (如果原機的開機 HDD 還在的話).

cmwang iT邦大師 1 級 ‧ 2010-04-26 11:31:16 檢舉

raytracy兄提的方法是純M$派的解法,以鵝搞*nix者非正規的解法通常是拿個灌好*nix順便copy好常用hal的拇指碟(其實也只有ACPI multi processor PC相關那幾個檔而已),來個boot from USB HDD,直接copy到windows\system32就了事了(要順便來個NTFS clone/resize也可以),沒有意外的話通常5分鐘內就可以收工了(最好還可以開發票請款)....

6
cmwang
iT邦大師 1 級 ‧ 2010-04-21 14:53:14

不要$$的solution:M$的knowledge base中就有教人如何用光碟片上的hal/ntoskrnl替換HD上的檔案了,可是得自己研究一下....
要$$的solution:找人support一下,其實也是做上面描述的動作而已....

6
James
iT邦大師 6 級 ‧ 2010-04-21 15:14:03

中國人寫的小工具 Windows ACPI Choose
我都是用在pc上,不敢用在server上。
另外微軟提供的標準作法應該是使用安裝光碟誰行修復安裝,可以保留已經安裝的第三方程式

12
dscwferp
iT邦高手 1 級 ‧ 2010-04-22 10:24:11

異機還原 是 災難還原 的 一個方法
但 不能拿來做 "換機器升級" 用啦!
尤其是對 ERP SERVER來講
ERP SERVER 最大要求是 穩定
這樣 "異機還原" 來升級硬體
不知有多少內傷在裡面
然後再來頭痛醫頭 腳痛醫腳嗎?
不是 全新安裝 其 穩定度 會好嗎?
建議您重灌比較好!

arbilin iT邦新手 5 級 ‧ 2010-04-22 18:30:39 檢舉

我會考慮,這也是個方式,但是這是香港那邊的IBM經銷商這麼處理的,我跟他們協調看看,看可否重新安裝,謝謝!另外請問各位還有更好的方式嗎?^^

arbilin iT邦新手 5 級 ‧ 2010-04-22 18:32:55 檢舉

另外不知各位是否有試過用光碟開機修復的方式去讓系統重抓Driver是否可行?

4
josejose
iT邦新手 4 級 ‧ 2010-04-25 18:00:16

Hi~ 您好,這個問題我有在客戶那邊遇過也是他們重要的ERP系統,不過客戶用的是Symantec Backup Exec,那時候是過幾個方式,CPU對調(參考伺服器原廠所遇過的問題的Solution)或是更新到SP2,都無效,故最後請求客戶給我1小時的時間進行測試:
1.借一顆SCSI HD,將原HD抽出,重新安裝NOS,安裝完成後,成功的抓到2顆CPU
後續等了約一年才有時間進行重裝的作業程序,大概如下:
1.請客戶通知使用者斷線時間
2.進入Single user mode後,備份資料庫
3.重新安裝作業系統,安裝所有更新
4.之後再將資料庫切回正常模式,Web Server指回原資料庫伺服器
5.測試後皆正常
因此應該除了重裝,應無第二選擇,流程熟悉的話,最快2小時內可以完成,
主要是看伺服器等級,規格好的話,安裝作業系統快(主要為此部分浪費時間),
再來就是看能不能說服客戶,讓他排時間進行該工程囉~

以上為親身經歷,提供給你參考~

4
plusjason
iT邦新手 5 級 ‧ 2010-04-25 19:44:19

你可以試試FARSTONE的終極備份還原 伺服器版 .
Total Backup Recovery Server 還支援
1.硬碟備份後,可還原備份映像於同一電腦,達到復原之效果,並提供支援異機還原
選項,可將備份之映像檔還原至VM等虛擬平台或其他相容之不同硬體環境。
2.提供虛擬映像的轉換,可將磁碟備份映像轉化成VMware格式(支援映像檔轉換為
VMDK格式)的映像在虛擬機中使用。
3.支援P2V and V2P。

2
jay0123
iT邦高手 1 級 ‧ 2010-04-28 11:58:43

單核轉雙核或多核

原理:
在 windows 下單核心是 acpi uniprocessor pc, kernel load halaacpi.dll
在 windows 下雙核心是 acpi multiprocessor pc, kernel load halmacpi.dll
它們使用的 kernels 是不同的, 如果問題是來自 hal files 沒更新
轉換前需要確定在 system32 目錄下有 halacpi.dll, halmacpi.dll halaacpi.dll 這三個檔案
沒有的話從 windows cd 或是 sp2.cab 解壓縮到 %systemroot%\system32\
並在 C:\BOOT.INI 內容 [operating systems ]
修改成如下:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional(ACPI)" /hal=hal.dll /kernel=Ntoskrnl.exe /noexecute=optin /fastdetect
轉換至雙核心時需要更新 kernel,

方法一:
利用98開機片進到DOS模式,並輸入下列指令
cd c:\windows\system32
ren ntkrnlpa.exe ntkrnlpa.old
ren ntoskrnl.exe ntoskrnl.old
ren hal.dll hal.old
cd c:\windows\driver cache\i386
expand sp2.cab -F:halmacpi.dll c:\windows\system32
expand sp2.cab -F:ntkrpamp.exe c:\windows\system32
expand sp2.cab -F:ntkrnlmp.exe c:\windows\system32
cd c:\windows\system32
ren halmacpi.dll hal.dll
ren ntkrpamp.exe ntkrnlpa.exe
ren ntkrnlmp.exe ntoskrnl.exe
重開機

方法二:
如果沒有98開機片,或是不熟悉DOS介面,也可以用XPE進入WINDOWS
在重開機前,先到C:\WINDOWS\Driver Cache\i386
找到SP2.CAB檔,用解壓縮軟體解出
halmacpi.dll
ntkrpamp.exe
ntkrnlmp.exe
三個檔案,然後在C底下創一個ACPI的資料夾,把這三個檔案放到裡面
利用XPE開機光碟進到WINDOWS,重新命名C:\windows\system32底下的
ntkrnlpa.exe
ntoskrnl.exe
hal.dll
把副檔名改為OLD
把 C:\ACPI 的三個檔案COPY到\windows\system32
改名
halmacpi.dll=>hal.dll
ntkrpamp.exe=>ntkrnlpa.exe
ntkrnlmp.exe=>ntoskrnl.exe
刪除ACPI資料夾,重開機即可

cmwang iT邦大師 1 級 ‧ 2010-04-28 13:21:04 檢舉

jay0123提到:
方法一:
利用98開機片進到DOS模式,並輸入下列指令

方法沒錯,不過您忽略了如果是NTFS格式時Win98是無法讀寫C:\windows\system32的....

外獅佬 iT邦大師 1 級 ‧ 2010-04-28 17:19:51 檢舉

用XP、Vista或7的開機片,進入修復模式也可以吧...XDD

我要發表回答

立即登入回答