iT邦幫忙

1

pst檔損壞無法使用scanpst無法修復

pst

各位好

我有一個PST檔(2013版)損壞,大小40G,使用微軟的scanpst無法修復,scanpst在檢查完後進行修復時會出現以下訊息'因為發生錯誤,所以修復停止,已對所掃描的檔案進行修改'。

想請問各位是否有其它解決方法呢?
或是有推薦的修復軟體?(免費的佳)

我知道不正常關閉outlook會損壞PST檔,可是我遇到的幾乎都是大小超過20G的情況比較多...是檔案越大損壞機率越高嗎?

謝謝~

丹尼 iT邦研究生 4 級 ‧ 2018-03-03 14:23:11 檢舉
沒錯
你可以找其他檔案 或者用更高階版本去開看看 記得要先copy
40GB 啊,我建議的做法是找一個 SSD,然後把PST檔案放到 SSD,再進行修復
不然,光掃描完就會花掉一天的時間,修復又要等好幾天,這樣的速度是很難讓人接受的,所以找個SSD來處理吧,還有,檔案越大損壞機率越高是真的,而且PST要定期壓縮與修復,不然也很有機會出現莫名其妙的問題
4
raytracy
iT邦大神 1 級 ‧ 2018-03-03 21:43:52

Outlook 預設的 PST 檔案大小限制:

Outlook 2002 以前: 2GB
Outoook 2003/2007: 20GB
Outlook 2010/2013/2016: 50GB (可透過 Registry 調整)

但是, 即便低於上述限制, 也不代表微軟保證你的 PST 一定完整無缺; 試想: 一個軟體, 動不動就開啟高達數十 GB 的檔案, 而且還長時間不關檔 (從上班到下班都被開著), 如果中間電腦有甚麼閃失, 這長達數十 GB 的檔案, 還有可能從頭到尾, 每一個 Byte 都安好無恙嗎?

專業的 PST 修復軟體幾乎都要花錢買, 就是因為業者看準了, 使用者沒有這個認知和備份習慣, 加上 PST 內容幾乎都是重要資訊, 不能遺失, 所以咬定你非得狠心付錢不可....

這案例告訴大家, PST 沒有想像中可靠, 每日備份是唯一救贖..
與其等到損壞後再來著急, 不如事先花點精神和成本把他顧好..

我建議的做法是固定時間進行封存,可以按季度年度去做
封存後的PST檔案可以異機備份,而郵件主機本身要保留1-2個年度的郵件備存,封存完的PST要做一次壓縮以及修復掃描,這樣才能確保萬無一失,小弟這方面有近二十年的經驗,就算中綁架還沒遇過備份郵件缺失的狀況

2
wwx
iT邦好手 1 級 ‧ 2018-03-04 11:32:09

可以試試清除表頭後再用scanpst

pst檔格式
http://www.five-ten-sg.com/libpst/rn01re05.html
檔頭前面幾個有說明的內容

0000  signature       [4 bytes] 0x4e444221 constant
000a  indexType       [1 byte]  0x0e       constant
01cd  encryptionType  [1 byte]  0x01       in this case
00a8  total file size [4 bytes] 0x270400   in this case

往往scanpst無法修復的原因是因為它依據表頭描述去處理,
因此可以把檔頭位置 0007~0013 (共 13 bytes)
都清成 0x20 的內容後再用scanpst
這樣它就會重新掃描所有郵件同時重建表頭

還沒做過壓縮的情形下:
(刪除的郵件已經清空)
缺點是原本已刪除的郵件也會救回來~ 想要刪有點麻煩,要重看一遍
優點是原本已刪除的郵件也可以救回來~ 感謝主

不熟練的話切記備份後再作!!!
上一次成功的經驗是30多GB,這個40G請挑戰看看吧!

看更多先前的回應...收起先前的回應...
Benchm iT邦新手 5 級 ‧ 2018-03-05 10:16:11 檢舉

這招感覺滿厲害的.

tzengno1 iT邦新手 5 級 ‧ 2018-05-04 11:12:52 檢舉

請教W大,怎麼清除表頭,我剛好也有需要救一個大的PST檔

wwx iT邦好手 1 級 ‧ 2018-05-05 11:20:53 檢舉

只要有HEX的編輯器就可以做了,
不過因為檔案很大
因此不太適合用UltraEdit那種
會先轉出一個完整HEX文字檔來處理的作業方式...

所以我是用WinHEX
https://ithelp.ithome.com.tw/upload/images/20180505/20071545n0zwaaUUhc.png

修改圖中紅框的13bytes後
重新用scanpst就可以了

tzengno1 iT邦新手 5 級 ‧ 2018-05-07 09:40:00 檢舉

W大 請問清成0x20的意思是把紅框的值都變成00嗎

wwx iT邦好手 1 級 ‧ 2018-05-08 09:19:44 檢舉

0x20代表就是hex 20
圖中紅框都改成 20
其實就是要讓檔頭錯誤重建,
我猜改成 FF 應該也可以

不過 00 可能就不太確定了,
因為有可能認為資料是0筆...(沒試過)
通常 0 比較有初始/起始值的意義存在

tzengno1 iT邦新手 5 級 ‧ 2018-05-08 11:51:35 檢舉

感謝W大,我後來也是打20 不過,還是救不回來,那個PST檔是因為磁碟壞軌導致損壞的

wwx iT邦好手 1 級 ‧ 2018-05-09 09:39:50 檢舉

如果一開始先複製pst檔時就發現~才不會浪費時間

這種情形可以用硬拷略過壞軌的方式將pst檔複製出來,
應該還是可以救,只是位於壞軌上的郵件內容會有亂碼

0
ks1217
iT邦研究生 5 級 ‧ 2018-03-09 13:52:24

我們公司很經常性發生超過47.5GB的PST檔導致Outlook無回應,通常經過 修復>封存(分年度)>壓縮 後就可以正常運作,
如果您的PST檔無法修復, 可以試著

  1. 先開啟另一台電腦的Outlook再去開起(Mount)這個PST檔, 假設可以開起來, 趕快做封存到另一個PST檔, 先把資料倒出來.可能可以救回大部份郵件.
  2. 開一個新的pst檔, 用Import方式, 把這個40gb PST檔import到新的PST檔內,可能可以救回大部份郵件.
  3. 假設連Mount或import都無法使用這個40gb PST檔...可以把檔案複製到另一台試試看嘍.

目前經驗, 低於45GB的PST檔案很少會無法修復的,你的才40GB, 應該是可以的, 或是把防毒軟體關掉? 如果User急用Outlook, 先開一個新的PST檔讓他收發郵件, 這個40GB PST檔再搬到其他空餘電腦處理.

我要發表回答

立即登入回答