2008年10月24日 星期五

把XP硬碟掛進ubuntu來用

之前為了理財,只能回到windows XP使用劵商的理財軟體。
以致荒廢不少LINUX功課,今天來說說,怎麼把windows的硬碟掛到LINUX系統裡?
老實說,用慣了 ubuntu LINUX 叫我在回去使用windows XP,還真是一點疏離感都没有。
但LINUX的CLI(Command Line Interface)命令模式,要是一兩個月不用,卻要費不少功夫去複習。
這代表什麼意義呢?我想,對我來說,滑鼠指指點點的效果,果然是無腦使用電腦的最佳良伴吧!

話說,又在windows XP使用環境中,產生了一堆檔案。
還好大多數的檔案,在LINUX的 X window 還能用。
只要能把之前XP裡的檔案系統,掛進LINUX,除了不能玩股票。
我的IT學習之路,和所有和資訊業務有關的一切,還是很美好。
誰說LINUX不能取代M$呢?嘿嘿!那個時代,就要來臨了。

回正題,要把windows XP的磁碟掛到LINUX,有兩大前題要下功夫。
第一點是,怎麼去判斷出原來的windows XP中的磁碟代號 C、D、E,
然後怎麼去對應掛載到 hdb、sda、sdb...。
這需要一些切割磁碟分割的知識,請先做一下基礎功課。
以下我不用X window,用CLI來做。

第二點是LINUX要能支援M$的檔案系統,這點是非常OK的。
其實不管是VFAT或是NTFS第一、二版等等,ubuntu己經整合的很好。
支援VFAT,所有較新的LINUX版本,都內建了。
最保險的作法,是再把支援最新NTFS格式的套件加裝上去,M$的檔案,幾乎全部搞定。

OK,當我們接好硬碟線路,開機進到LINUX之後。
因為windows XP用的硬碟還没掛好,所以當然還不能去存取。

先用指令 fdisk -l 去檢視系統抓到的硬碟狀況。
合理的檢視,應該是進一步指定裝置代號。
像我的狀況是windows XP是SATA硬碟,裝成第二顆。所以會是 /dev/sdb 才對。
指令下 fdisk -l /dev/sdb
就會跑出原來在XP下使用的磁碟分割,如下:
+------------------------------------------------------------------------------------------------------+
root@ubuntu:~# fdisk -l /dev/sdb

Disk /dev/sdb: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00028fcb

Device Boot Start End Blocks Id System
/dev/sdb1 1 2550 20482843+ 7 HPFS/NTFS
/dev/sdb2 * 2551 5905 26949037+ 7 HPFS/NTFS
/dev/sdb3 5906 9729 30716280 f W95 Ext'd (LBA)
/dev/sdb5 5906 9729 30716248+ 7 HPFS/NTFS
root@ubuntu:~#
+------------------------------------------------------------------------------------------------------+

依常理合理推斷,sdb1 對應是原來的 C 磁碟,sdb2是 D,sdb5是 E,除非你在XP裡頭亂訂代號。
對了,看一下system那一欄的內容,哦,是使用NTFS檔案系統。記著!待會用得到。
sdb3是延伸磁區,因為要先有延伸磁區才有邏輯磁區可切,就不管它了。
有問題的朋友,歡迎來信提問,不收費的。哈哈哈!

嗯,第一重點的任務完成,進行第二重點。
把檔案系統掛載表調出來看看!
指令 cat /etc/fstab

+------------------------------------------------------------------------------------------------------+
root@ubuntu:~# cat /etc/fstab
# /etc/fstab: static file system information.
#
#
proc /proc proc defaults 0 0
# chroot enviroment
proc /opt/sid-root/proc proc none 0 0
# /dev/sda3
UUID=6d0c4082-d375-4fa6-9614-78bdbd3df1f9 / ext3 defaults,errors=remount-ro 0 1
# /dev/sda1
UUID=011b1d42-7f60-4886-b182-f1020fc90aa3 /boot ext3 defaults 0 2
# /dev/sda5
UUID=f79f6796-bcfa-4f26-940a-1e76e6c517ec /home ext3 defaults 0 2
# /dev/sda6
UUID=57208124-6345-4d3f-baa3-a5898fcb4257 /opt ext3 defaults 0 2
# /dev/sda2
UUID=50491ebb-b37b-423b-bb0a-2f158724043d none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0
root@ubuntu:~#
+------------------------------------------------------------------------------------------------------+

看昏了吧!果然LINUX不像windows XP好學易用。

首先,ubuntu LINUX的磁碟代號,不用一般的硬體代號,改用UUID識別碼,增加了些難度。
但若是掛載 /home 的部份,由上表內容改成:
/dev/sda5 /home ext3 defaults 0 2
現在應該要比較能看懂意義才對,就是把 /dev/sda5 掛成 /home 並且用ext3檔案系統,來存取使用。

好!也就是說,我之前的CDE磁碟,以類似的格式寫到 /etc/fstab 不就搞定嗎。嘿嘿!
把以下三行加到原 /etc/fstab 內容裡,重新閞機,「或許」就可以「看到」之前的XP檔案了。
配合剛剛查到的檔案系統資訊,記得要用NTFS。
+------------------------------------------------------------------------------------------------------+
/dev/sdb1 /media/win_c ntfs auto 0 0
/dev/sdb2 /media/win_d ntfs auto 0 0
/dev/sdb5 /media/win_e ntfs auto 0 0
+------------------------------------------------------------------------------------------------------+
(第一版)

結束了嗎?
當然還没,上一段我用了「或許」和「看到」兩個關鍵字。有留伏筆!

要補交代一下,剛剛漏掉了一個關鍵動作,重新開機前,或是要掛載目錄之前,要先把對應的路徑先建立好才行。
指令 mkdir -p /media/win_c /media/win_d /media/win_e

然後,修正 /etc/fstab 內容,把把掛載的參數訂周到一些,才能保證能取存。
之前加的那三行,版本只能「看到」,未必能編輯存檔。
因為M$搞出NTFS,而且還修正成兩三個版本,效能有提昇,存取的控管也強化。但也增加了用其他OS去存取的難度。

好在LINUX同好先進們,個個本事高強,發展出 NTFS-3g 檔案系統存取功能。
讓我們改成:
+------------------------------------------------------------------------------------------------------+
# /dev/sdb1 /media/win_c ntfs-3g auto,users,uid=1000,gid=1000,utf8,dmask=027,fmask=1 37 0 0
# /dev/sdb2 /media/win_d ntfs-3g auto,users,uid=1000,gid=1000,utf8,dmask=027,fmask=1 37 0 0
# /dev/sdb5 /media/win_e ntfs-3g auto,users,uid=1000,gid=1000,utf8,dmask=027,fmask=1 37 0 0
+------------------------------------------------------------------------------------------------------+
(第二版)

重新開機!
哦,現在原本裡頭即使用中文取名的目錄和檔案也看得到,也能編輯存取了。贊吧!


要休息一下了,下次補上(第三版)。
先看一下第三版的內容先……
+------------------------------------------------------------------------------------------------------+
# /dev/sdb1
UUID=629C54EF9C54BF6B /media/win_c ntfs-3g auto,users,uid=1000,gid=1000,utf8,dmask=027,fmask=1 37 0 0
# /dev/sdb2
UUID=CCBC3CEABC3CD0A6 /media/win_d ntfs-3g auto,users,uid=1000,gid=1000,utf8,dmask=027,fmask=1 37 0 0

# /dev/sdb3(extend)
# /dev/sdb5
UUID=22BC6A11BC69DFB1 /media/win_e ntfs-3g auto,users,uid=1000,gid=1000,utf8,dmask=027,fmask=1 37 0 0
+------------------------------------------------------------------------------------------------------+
(第三版)

沒有留言:

搜尋此網誌

本站大事記

這個部落格(網站)內容以分享LINUX和延伸出的技術文章為主!
特別是為了工作和進修需要,搜集了不少網站連結。
希望對來這裡觀文的朋友們,有提供一些有用的資訊或文章。
但這裡的文章中,也包含個人的心情扎記和隨興言談……
若是當中沒有對上你的口味,請多包涵!

原「琳娜絲與希斯寇的邂逅」,改名為「愛上琳娜絲」!

原「琳娜絲與希斯寇的邂逅」,改名為「愛上琳娜絲」!
--原序文--
就是當LINUX遇上CISCO啦!他們的結合還能作什麼事…不就是讓這個世界的網路,串…串起來啊…不然你們那能上這網站看部落格!