PALMisLIFE 討論區

標題: Zaurus SL-C3000硬碟備份EXT3化與換裝 [列印本頁]

作者: czh    時間: 2005-1-26 21:49
標題: Zaurus SL-C3000硬碟備份EXT3化與換裝
[watermark]本文參考以下日本網站:

如何換裝硬碟與複製資料
http://www.ayati.com/kobako/c3kanso.htm

將硬碟第三區EXT3化(有好處以下會詳述)
http://noir.s7.xrea.com/archives/000131.html

拆機方法
http://www.ayati.com/kobako/c3bara.htm

閱讀前請注意
以下步驟請在頭腦清醒時進行,否則會導致系統全部清除
請務必仔細的看完並理解本文的任何一個字辭
改機是破壞保固的行為,本文作者不負任何責任
理解以上條款並同意後請再看以下內文

要準備的東西:
備份當然要準備相對容量的空間,才能完整儲存欲備份的資料
所以備份C3k的系統需要1G以上穩固安定的CF或SD卡,速度快不快無所謂
想將內建的MD換成Flash的話,建議準備1G以上的高速CF卡,預算夠的話2G更省事
拆裝C3k必須準備小起子烙鐵

備份內建硬碟中的資料:
再強調一次,頭腦真的要很清醒,否則一個步驟搞錯就會讓系統全部清空,絕對不能大意

00.移除全部的記憶卡,不要插上任何CF或SD卡

01.把電池蓋開關切到[交換時]

02.打開電池蓋

03.按住[D]與[B]兩個按鍵

04.按一下電池室中的reset

05.蓋上電池蓋

06.把電池蓋開關切到[使用時]

07.按一下電源鍵

08.待開機出現登入畫面時輸入root按enter登入,如果有被問到密碼,就是你自己在設定中使用的密碼

09.輸入 fdisk -l 確認分割區
會出現以下畫面
  1. Disk /dev/hda: 4095 MB, 4095737856 bytes
  2. 16 heads, 63 sectors/track, 7936 cylinders
  3. Units = cylinders of 1008 * 512 = 516096 bytes

  4.    Device Boot    Start       End    Blocks   Id  System
  5. /dev/hda1             1       204    102784+  83  Linux
  6. /dev/hda2           205      1020    411264   83  Linux
  7. /dev/hda3          1021      7936   3485664    c  Win95 FAT32 (LBA)
  8. /dev/hda4             1         1         0    0  Empty
  9. Partition 4 does not end on cylinder boundary.
複製代碼

其中/dev/hda就是代表內建硬碟的代號,也有可能會變成/dev/hdc或其他代號,不管是哪種代號請牢記

10.插入準備儲存備份資料的記憶卡

11.輸入 fdisk -l 再次確認分割區
這次會多出以下內容

  1. Disk /dev/hdc: 5000 MB, 5000970240 bytes
  2. 16 heads, 63 sectors/track, 9690 cylinders
  3. Units = cylinders of 1008 * 512 = 516096 bytes

  4. Disk /dev/hdc doesn't contain a valid partition table
複製代碼

以上是以空白未切割的5G MD作示範,所以內容會有點出入
這邊只需要記下/dev/hdc就是等於CF卡的代號,如果插的是SD會變成/dev/mmcda

12.輸入 fdisk /dev/hdc 開始進行磁碟分割,如果是SD就是輸入 fdisk /dev/mmcda
接下來依照以下步驟操作

  1. m        (fdisk功能顯示)
  2. p        (確認一下分割區)

  3. n        (新的分割)
  4. p        (主分割區)
  5. 3        (設定第3個分割區)
  6. 1021        (First Cylinder)
  7. 9690        (End Cylinder)#這個就是預設值直接enter即可

  8. n        (新的分割)
  9. p        (主分割區)
  10. 2        (設定第3個分割區)
  11. 205        (First Cylinder)
  12. 1024        (End Cylinder)

  13. n        (新的分割)
  14. p        (主分割區)
  15. 1        (First Cylinder)
  16. 204        (End Cylinder)

  17. p        (最後確認一下分割區)
  18. w        (寫入)
複製代碼

記憶卡如果之前已經有分割了,建議先在PC上先用磁碟管理將切割區刪除掉
一張1G空白的記憶卡應該有2658 cylinders,可是有些卡只有九百多 cylinders
這樣就無法滿足第三分割由1021開始的需求
有方法可以讓它變成2658 cylinders可是我還不能明確的掌握
等我知道正確步驟後再來修改,也歡迎知道方法的一起分享

13.這步驟下指令前記得這是記憶卡的第三磁區
所以/dev/hdc請依之前fdisk的結果做應用,如果是SD那當然還是用/dev/mmcda
之前警告說頭腦不清醒系統會全毀就是這原因,當然接下來每個步驟還是要保持頭腦清醒
如果要將第三磁區變成FAT32就下這個指令
純備分的話可以把這區資料當儲存空間,所以一定要做FAT32
  1. mkdosfs -F32 /dev/hdc3
複製代碼

如果要將第三磁區變成EXT3就下這個指令,這是有要更換HD才需要做,純備份就不需要了
  1. mke2fs -j /dev/hdc3
複製代碼


14.接下來就開始要diskcopy,務必要保持清醒的頭腦,否則會把空的資料蓋到系統上,到時哭都來不及
輸入以下指令,dd就是diskcopy,if=就是來源磁區,of=就是目的磁區

  1. dd if=/dev/hda1 of=/dev/hdc1
  2. #輸入後會等待很長一段時間,成功後會出現下面訊息
  3. 205568+0 records in
  4. 205568+0 records out
複製代碼


15.diskcopy第二磁區

  1. dd if=/dev/hda2 of=/dev/hdc2
  2. #輸入後會等待更長的一段時間,成功後會出現下面訊息
  3. 822528+0 records in
  4. 822528+0 records out
複製代碼


16.到此已經將系統磁區備份完畢
如果要驗證就輸入以下指令

  1. mount /dev/hdc1 /hdd1
  2. mount /dev/hdc2 /hdd2
複製代碼

然後用ls去看/hdd1與/hdd2的內容是否完整

17.確認資料完整後輸入以下指令

  1. unmount /hdd1
  2. unmount /hdd2
複製代碼


18.把記憶卡拔掉輸入reboot重新開機
成功開機的話就恭喜你一直保持清醒的頭腦

19.到此已經將資料備份完畢
如果以後要將資料還原只需要將diskcopy來源與目的磁碟對調即可
要把內建HD換成Flash的繼續往下看

20.依日本網頁的照片將C3k解體換上剛剛複製好資料的CF卡

21.如果成功開機恭喜你就得到一台防震的C3k
如果開機不成功一直停在開機畫面
那請重新做一次,不過不用再將CF拔出來,只需要把diskcopy來源與目的做對調即可
拆出來的4G MD當然就是插CF槽當來源
重做的話可以試試先diskcopy第二磁區再diskcopy第一磁區,或許就沒問題了

22.EXT3化
將第三磁區EXT3化有些好處也有些壞處
好處就是安全性就相當於NTFS
而且EXT3才可以作檔案連結
壞處就是USB隨身碟不能使用了,插上去會要你格式化,因為windows不認識EXT3
不過有網路的話過網芳根本就用不到USB隨身碟功能
要EXT3化之前建議做一次NAND Flash備份
考慮好要EXT3化後開始輸入以下指令
先依照之前的00~08步驟開機到終端機畫面
依序輸入以下指令

  1. mount -o remount,rw /
  2. cd /root/etc/rc.d
  3. cp -p rc.rofilesys backup.rc.rofilesys
  4. vi rc.rofilesys
  5. #以下在vi底下操作,照著按即可
  6. (1) /mkfs.vfat[Enter]
  7. →找出 /dev/${IDE1}3 與 vfat 並移動到這一行
  8. (2) cf2
  9. →"mkfs.vfat -F 32" 準備由這邊開始編輯
  10. (3) mke2fs $MKE2FSOPT[Cancel]
  11. →"mke2fs $MKE2FSOPT" 開始替換字串
  12. (4) /mount -t vfat[Enter]
  13. →繼續找出/dev/${IDE1}3 與 vfat 這個字串,後續共有三個地方要改
  14. (5) fv
  15. → 移動到"vfat"
  16. (6) cf8
  17. → 編輯"vfat" 與 "utf8"
  18. (7) $LINUXFMT -o noatime[Cancel]
  19. → 換成"$LINUXFMT -o noatime"
  20. (8) [Ctrl+L]
  21. → 確認一下畫面
  22. (9) n
  23. →移往第二個要取代的字串
  24. (10) fv
  25. → 移往"vfat"
  26. (11) .
  27. → 就是輸入點直接換成"$LINUXFMT -o noatime"
  28. (12) n
  29. →移往第三個要取代的字串
  30. (13) fv
  31. → 移往"vfat"
  32. (14) .
  33. → 就是輸入點直接換成"$LINUXFMT -o noatime"
  34. (15) ZZ
  35. → 存檔結束
複製代碼

輸入reboot後如果正常開機就代表成功了
如果沒成功請去DM選單將NAND Flash Restore
然後重新做一次vi編輯


23.使用備份過的記憶卡剩餘空間
用來備份的記憶卡其實只用到兩個分割區
第三個分割區都是空的,如果要使用的話,記憶卡插入C3k後還需輸入以下指令
CF場合

  1. unmount /mnt/cf
  2. mount /dev/hdc3 /mnt/cf
複製代碼

SD場合

  1. unmount /mnt/card
  2. mount /dev/mmcda3 /mnt/card
複製代碼



其他想到再補

[/watermark]

[ Last edited by czh on 2005-1-27 at 12:09 ]
作者: czh    時間: 2005-1-27 11:52
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
終於寫完了
寫到一半時腦袋混亂可能不知道在寫什麼
有錯誤或有更好的方法歡迎提出來討論
作者: aksx    時間: 2005-1-27 12:22
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
...............
果然能夠成就大事業的人頭腦真的很清楚....orz
作者: adamchang    時間: 2005-1-27 12:45
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
czh兄.good job!

關於改成ext3 fs的做法,也可以參考以下diff出來的結果

$ diff backup.rofilesys rc.rofilesys
紅色表行數,<表示欲修改部份,>表示後來已修改部份

84c84
< mkfs.vfat -F 32 /dev/${IDE1}3 2> /dev/null > /dev/null
---
> mke2fs $MKE2FSOPT /dev/${IDE1}3 2> /dev/null > /dev/null
105c105
< mount -t vfat -o noatime,quiet,umask=000,iocharset=utf8 /dev/${IDE1}3 /hdd3
---
> mount -t $LINUXFMT -o noatime /dev/${IDE1}3 /hdd3
202c202
<       mount -t vfat -o noatime,quiet,umask=000,iocharset=utf8 /dev/${IDE1}3 /hdd3
---
>       mount -t ext3 -o noatime /dev/${IDE1}3 /hdd3
264c264
<       mount -t vfat -o noatime,quiet,umask=000,iocharset=utf8 /dev/${IDE1}3 /hdd3
---
>       mount -t ext3 -o noatime /dev/${IDE1}3 /hdd3
作者: crazyx    時間: 2005-4-25 13:51
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
因為正在嘗試灌Debian
卡在ext3那邊
我已做完ext3轉換
但是執行完
mount -o remount,rw /  
或是
mount -o remount,rw /dev/root
結果無法
cd /root/etc/rc.d
因為我root後根本沒東西嘛
有找到/etc/rc.d/
但是卻沒有rc.rofilesys
百思不得其解所以想請czh兄或是其他能力者幫忙解答一下
謝謝

ps.所有找到的網站都跟czh寫的一樣
mount -o remount,rw /
cd /root/etc/rc.d
然後去更改rc.rofilesys
可我的找不到真怪
作者: czh    時間: 2005-4-25 13:59
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
Originally posted by crazyx at 2005-4-25 01:51 PM:
因為正在嘗試灌Debian
卡在ext3那邊
我已做完ext3轉換
但是執行完
mount -o remount,rw /  
或是
mount -o remount,rw /dev/root
結果無法
cd /root/etc/rc.d
因為我root後根本沒東西嘛
有找到/etc/rc.d/
但是卻沒有rc.rofilesys
百思不得其解所以想請czh兄或是其他能力者幫忙解答一下
謝謝

ps.所有找到的網站都跟czh寫的一樣
mount -o remount,rw /
cd /root/etc/rc.d
然後去更改rc.rofilesys
可我的找不到真怪

rc.rofilesys要在開機進QT後開終端機才會出現
如果是按DB直接進終端機是找不到的
我有想找過實際位置在哪裡,可是都找不到
作者: crazyx    時間: 2005-4-25 14:12
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
原來是這樣阿
我也有想過
原來D+B跟QT內使用終端機是不一樣阿
但是重新開機按Ctrl+C跳過錯誤進入QT後
機器會發出大且怪聲音
(很恐怖都不知道從哪發出的)
現在想想應該先做一次格式化
進入QT後即可正常後使用終端機
檔案終於看到了
多謝czh大師指點
又快又準確
想灌debian是聽到你說pdaxrom樂趣太少
而另一個選擇就是debian啦
完成後即分享心得
作者: czh    時間: 2005-10-7 22:26
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
c3100有做備份的話換裝直接fdisk後還原即可使用
沒備份就要做一次破棄 Hard Reset要等更久的時間
作者: BoxsterS    時間: 2006-2-26 22:54
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
Originally posted by czh at 2005-4-25 01:59 PM:

rc.rofilesys要在開機進QT後開終端機才會出現
如果是按DB直接進終端機是找不到的
我有想找過實際位置在哪裡,可是都找不到


按DB直接進終端機後,用root進去
把底下兩個裝置掛上去,就可以進行急救程序:
# mount /dev/mtdblock3  /home               <--------  QT的/home。
# mount /dev/mtdblock2  /root                  <--------  QT的根目錄。/etc/rc.rofilesys就在這裡面
# mount /dev/hda3 /hdd3                         <---------  MD的第三分割資料區,第一/第二分割區,比照辦理
機器沒插上CF卡時,MD是/dev/hda;插上CF卡時,MD就變成/dev/hdc

修改完畢,記得umount,才能確定儲存已經修改過的資料。

以上資料是參考:http://www.users.on.net/~hluc/myZaurus/custom.html
節錄:
If you have booted into the console for recovery, then you are using the /dev/mtdblock1 partition. This is the emergency partition that you usually don't see. You will need to manually mount the usual partitions if you want to access them. /home is /dev/mtdblock3 and /dev/mtdblock2 is your root partition. Don't forget to unmount the partitions after you have finished your changes or they will be rolled back and all the files remain unchanged.

[ Last edited by BoxsterS on 2006-2-27 at 12:22 ]
作者: gpc    時間: 2006-5-11 18:54
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
請問一下如果要把內建的MD用1GB的CF卡取代掉,要怎麼辦呢?

我手邊的1GB CF卡只有993個叢集,根本沒有辦法 Diskcopy 原先內建MD裡面的第二個partition (因為內建的第二個Patition到1020),請問有什麼方法可以解決呢?
作者: dinorex    時間: 2006-5-12 00:21
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
原文章由 czh 於 2005-4-25 13:59 發表

rc.rofilesys要在開機進QT後開終端機才會出現
如果是按DB直接進終端機是找不到的
我有想找過實際位置在哪裡,可是都找不到

我可以答你...

/dev/mtdblock2 你 mount 至另一個地方

個 mountpoint 下 的 etc/rc.d/rc.rofilesys 就係你要找的 rc.rofilesys

因為我最近要為此作出修改, 但我當時只能在 D+B mode 進行, 只有事急馬行田....  

[ 本文章最後由 dinorex 於 2006-5-12 00:27 編輯 ]
作者: czh    時間: 2006-5-12 09:25
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
原文章由 gpc 於 2006-5-11 18:54 發表
請問一下如果要把內建的MD用1GB的CF卡取代掉,要怎麼辦呢?

我手邊的1GB CF卡只有993個叢集,根本沒有辦法 Diskcopy 原先內建MD裡面的第二個partition (因為內建的第二個Patition到1020),請問有什麼方法可以解決呢?

記得是要把全部磁區都刪掉
然後寫入後重新開機
再fdisk後叢集才會正常
記憶卡為了效率預設叢集都比較大
作者: Jerry    時間: 2006-6-2 16:01
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
已經成功的將md換下了,用內建的fdisk程式一直分割不出來需求,最後使用ide轉cf將4g的cf卡用spfdisk分割後,再放入c-3000中直接做copy的動作,一切正常使用中。執行速度真的是爽多了,電力真的是差好多,比起再購入第二顆電池還划算。
作者: gpc    時間: 2006-6-2 18:24
標題: Re: Zaurus SL-C3000硬碟備份EXT3化與換裝
原文章由 Jerry 於 2006-6-2 16:01 發表
已經成功的將md換下了,用內建的fdisk程式一直分割不出來需求,最後使用ide轉cf將4g的cf卡用spfdisk分割後,再放入c-3000中直接做copy的動作,一切正常使用中。執行速度真的是爽多了,電力真的是差好多,比起再購 ...


恭喜改裝完成了,順便問一下,換MD的時候是不是要用銲槍把右上角的銅片融掉啊?之前要改裝到一半都卡在那裡...




歡迎光臨 PALMisLIFE 討論區 (http://palmislife.com/) Powered by Discuz! X2.5