红联Linux门户
Linux帮助

备份苹果硬盘的数据

发布时间:2008-09-29 15:46:35来源:红联作者:nutra
作者:yokel

04年买的一个二手powerbook笔记本,装的是Mac OSX 10.2,我嫌太慢了,就装了gentoo,所有的东西都是从软件编译,费了很长的时间,CPU太慢了。原来的硬盘只有10G,后来我又换了60G的硬盘,就是现在要备份数据的硬盘了。换硬盘的时候,没有换系统,我从livecd里进去,把系统打包,并对新硬盘进行分区。然后拆机换硬盘,还是从livecd进去,把新硬盘格式化,把原来的硬盘挂上去,把打包的系统解压到新的分区里,并初始化一些系统的设定,把用户数据拷进去。换硬盘不换系统。这个当时没记录下来。后来有一次手痒,重新编译了 glibc,把其它的local都去掉,只留下中文的。可是这一次搞了有问题,系统总有点莫名其妙的问题。

06年,我就想换个系统算了。找人刻了张os9.2的盘,自己刻了张netbsd的盘。装双系统。 os9.2可以用微软的office 2001,还有ie5.5,不过都不是很好用。最爽的是可以用很多做图软件,photoshop,coredraw,illustrator等等啊。当年在合肥还帮很多同学处理过照片,因为6级考试要上传的图片要求是10k以下,很多人压到10k都看不清了,我用photoshop压到10k还能看清人。

os9.2其实蛮好的,很多软件都挺好用的。就是稳定性差了点,而且已经被苹果抛弃了。新的软件都不支持。

装netbsd是因为netbsd的跨平台性最好,netbsd从设计的最初就考虑了多平台。所以我选择它,因为以后可能会用不同平台的计算机。可是装完之后,发现它对于powerbook的支持远没有gentoo好。比如声卡驱动就不行,默认是关闭的。我是重新编译了内核才有声音的。高级电源管理也不好,笔记本合上盖子,不会自己转入休眠。苹果的那些功能键也不能用。但是装完了,也不会再改了。太折腾了。从源码编译整个系统太费时。

去年又折腾了一把,因为觉得os 9.2用得太少,想把它干掉,并把os9.2的分区和两个系统共享数据的分区合并。但是要保证netbsd系统的完整。当时还是搞掂了。哈哈,这次有记录下来。

去年把电脑拿回家,给老姐用,因为我用的时间太少了,而且尽是在折腾系统。老姐用了一段时间觉得netbsd不好用。我过年回家就把原来10G的硬盘装上去,把系统换成了OSX10.2,把里面60G的硬盘拿出来。因为里面有我的资料,而机子的usb是1.1的。速度太慢。赖得备份。

硬盘拆下来后,我一直没弄它,因为我知道很麻烦,是苹果的分区表,这个跟x86的分区表是不一样的。而且分区是netbsd的newfs(这种文件系统修改于ufs),考完GRE,也一直没动它。最近要搬宿舍,就把硬盘拿到实验室来。这两天折腾了一下。终于还是把数据拷出来了。拷完数据就可以重新分区,格式化为ntfs,现在在linux下也能写ntfs的盘了。

硬盘接到linux上,dmesg |tail 的输出入下

[ 344.429447] sdc: assuming drive cache: write through
[ 344.430500] SCSI device sdc: 117210240 512-byte hdwr sectors (60012 MB)
[ 344.431934] sdc: Write Protect is off
[ 344.431938] sdc: Mode Sense: 03 00 00 00
[ 344.431941] sdc: assuming drive cache: write through
[ 344.431944] sdc: [mac] sdc1 sdc2 sdc3 sdc4 sdc5 sdc6 sdc7 sdc8 sdc9 sdc10 sdc11 sdc12 sdc13
[ 344.447820] sd 4:0:0:0: Attached scsi disk sdc
[ 344.447865] sd 4:0:0:0: Attached scsi generic sg3 type 0
[ 573.217533] ufs was compiled with read-only support, can't be mounted as read-write
[ 586.357878] ufs was compiled with read-only support, can't be mounted as read-write

表明能够识别分区,可是却不能够挂载。
fdisk -l /dev/sdc不能够识别分区。

使用了一个叫TestDisk的工具,能够识别出分区。

TestDisk 6.5, Data Recovery Utility, October 2006
Christophe GRENIER <grenier@cgsecurity.org>
http://www.cgsecurity.org

Disk /dev/sdc - 60 GB / 55 GiB - CHS 117209089 1 1

Partition Start End Size in sectors
1 P partition_map 1 63 63
2 P Driver43 64 119 56
3 P Driver43 120 175 56
4 P Driver_ATA 176 231 56
5 P Driver_ATA 232 287 56
6 P FWDriver 288 799 512
7 P Driver_IOKit 800 1311 512
8 P Patches 1312 1823 512
9 P HFS 1824 32543 30720 [loader]
10 P Linux 32544 25167647 25135104
11 P Linux 25167648 46139167 20971520
12 P Swap 46139168 47187743 1048576
13 P Linux 47187744 117210239 70022496

主要是三个分区,10是系统分区,11是用户分区,13是数据分区。标着linux,但实际上不是linux的分区格式,文件系统其实是netbsd的newfs。

既然linux能认出来,那么就一定可以挂。认真地看了man文档后,使用

mount -t ufs -o ro,ufstype=44bsd /dev/sdc10 /mnt/sdc10
mount -t ufs -o ro,ufstype=44bsd /dev/sdc11 /mnt/sdc11
mount -t ufs -o ro,ufstype=44bsd /dev/sdc13 /mnt/sdc13

成功地把硬盘挂载上去。
文章评论

共有 1 条评论

  1. dmymk 于 2008-10-09 21:44:35发表:

    我喜欢OS9.22,现在公司有一台G4的机器02年买的,没有出现过故障,画图超爽