SOS,ubuntu用testdisk修改head后,不能启动

SOS,ubuntu用testdisk修改head后,不能启动

事情是这样:一开始安winxp,有一扩展分区,上有两逻辑驱动器d:e:,删除e:后安ubuntu7,是默认安装 。后因空间太小。又在xp下删除d:,想将该空间给ubuntu. 问题来了。
先是grub不启动。以live cd 启动,sudo grub.find /boot/grub/stage1,root (hd0,1),setup (hd0),好了,能起动了,但用sudo fdisk -l看时有一提示:partition 1 does nto end on cylinder boundary.partition 2 does nto end on cylinder boundary.partition 3 does nto end on cylinder boundary.
遍查internet后,启动testdisk,提示head数不对,应为240,(现为255),改之,保存。这下完了,grub不启动。
用开始的办法在find /boot/grub/stage1时提示ffile not found.用 sudo fdisk -l 显示格式成了hpfs/ntfs.
各位救命啊。我盘上有宝贵的数据没有备份。只怪自己一时大意.我该如何办才能找回数据。
我想改回分区模式 ,但提示数据可能丢失,没敢动。      
用LiveCD启动Linux并挂上分区然后备份数据      
本来xp并不认识ubuntu分区,导致你删除D盘之后使分区错乱GRUB不能引导,用testdisk恢复了删除的D盘之后,再次导致分区错乱使Grub不能引导。现在尝试能不能找到你ubuntu分区,设置正确分区表,然后再用GRUB看看能不能找到引导文件。      
十分感谢楼主回复,但我你说的“正确设置分区表”,具体 该怎样做,这是我用cd 引导后用sudo fdisk -l查看的结果      
十分感谢楼主回复,但我你说的“正确设置分区表”,具体 该怎样做,这是我用cd 引导后用sudo fdisk -l查看的结果,其中/dev/sda1可mount,显示为windows数据 [IMG]http://i8.tinypic.com/7wz77n7.png[/IMG]      
1。记录下上面这个图的分区柱面数起始点
重新用fdisk分区,分区起始和上面一样,保存,reset

2。用磁盘编辑软件直接编辑磁头数为255

任选一个方法
不过,风险就是一旦改错有点棘手

要是重要,你就买个新盘全部dd过去,再改,大不了再改回来,风险就是0了      
看你的图似乎没有看到ubuntu的分区,不知道用备份分区表能不能行      
fdisk支持修改head数

fdisk

x

命令“h”