:idea:
因为又是五一节,在值班无聊,有点空,就把原来存在的一点疑问部分重新做了一遍,以下红色字体部分是新增的内容,总算补全了。
机器配置Sco unix 505,赛扬500,64M,COMPAQ微机,两块硬盘都挂在第一个IDE口的线缆上,主硬盘接在主口,目标硬盘接在从口。硬盘容量都是8G的,但unix分区只有3G左右。
1、mkdev hd 1 0 (两个数字间有空格,第一个数字代表同一条硬盘线上端口号:0=master 1 =slave;第二个数字代表IDEr控制器口:0=primary 1=secondary).
提示可能覆盖硬盘数据,是否继续?按Y
2、系统自动调用/etc/dkinit,提示选择硬盘参数(共3项)
选3(即选择默认参数),回车后又提示选择参数界面,不要怀疑刚才有按错键,按q退出。
3、系统自动调用fdisk,因为我们要的是原来的分区,所以这一步千万不能重新分区,按q跳过。
4、系统自动调用badtrk,提示已有合法的分区表,要保留原有的数据,不能改变现有的坏道表,是否要继续?输入0后按y.接着要再按两次Q。
5、[color=red:2df4e82bc6]注意:如果这时出现的提示是叫你输入在该区要分割的division数目,应该要立即按del键中断操作,否则你的目标盘数据将会跟你说再见的。因为此后的操作是在目标盘上分division了。原来的数据将全部删除了[/color:2df4e82bc6]系统自动调用divvy,出现的是目标盘上的分片(divison)表,其中除name一栏是空的以外,其他都是原来的分片表数据。这个name就是我们以下要命名的。按n(即name命名)命令,出现选择片号(divison)提示,输入你想要mount的分片号(一般是root片),一般是2,而且文件系统类型是htfs。(即root分片,为安全起见,可以事先在原来的系统中用divvy查看一下root片号是否为2),提示输入分片名,如newroot(名字随便起),回车即可看到更新的分片表。按q退出,又会出现是否安装等3项菜单,按i(install,安装)安装即可。退回到命令行。OK!至此前期工作已全部完成。
方法2(注:这个办法改编自此贴
http://bbs.chinaunix.net/forum/7/20041108/440581.html):
假如是IDE的硬盘,跳成slave接到一台好的SCO机器上做从盘,
启动那台好的SCO机器
mknod /dev/newroot b 1 106
mount /dev/newroot /mnt
拷贝出从盘root下的数据
如果root后还有逻辑分区,那么把106+1是后面第1个,+2是第2个,如
umount /mnt
mknod /dev/d2u b 1 107
mount /dev/d2u /mnt
拷贝出从盘root后第1个分区的数据
后面依次类推。
以下是所要应用的具体例子。
1、要mount新增的文件系统,输入mount /dev/newroot /mnt
2、要查看新的文件系统的分片表,可divvy /dev/newroot
注:以上操作不会破坏两块硬盘原有的数据。
[color=red:2df4e82bc6][b:2df4e82bc6][size=18:2df4e82bc6]重要说明:1.其实一般情况下,如果两块硬盘各接一个IDE口,即目标盘在第二个IDE口,前面的四个步骤可以不用做,直接做第五步,divvy /dev/hd10(此处的1 0与前面步骤1中的意义是一样的,但1和0之间没有空格)即可。注意,如果在接着出现的画面头两行有warning之类的提示,也要中断操作,虽然强行操作不会影响数据(不能一定保证),但在后续的工作中,比如mount,也会提示出错,不能mount成功的。出现这个提示通常是因为把两块硬盘接在一根信号线的缘故。其他操作同步骤5。
2.再次重申,由于以上操作危险性比较大,如果你没有严格按照上述硬盘接法操作步骤进行,比如做实验,请务必保证在做上述实验前,目标盘上没有重要的数据,否则如果操作不慎,目标盘的数据就byebye了。。[/size:2df4e82bc6][/b:2df4e82bc6][/color:2df4e82bc6]
俺 回复于:2003-01-18 17:53:53 |
俺的系统中有一个IDE盘(IDE0:0没用过),一个IDE光驱(IDE1:0),一个SCSI盘(SCSI0:0启动盘),现在俺想把IDE盘加入系统中,俺该如何做?
这实际是俺下载的一个sco for vm的系统。其中的IDE盘用不上,俺想用来跑数据库。 |
simonzhan 回复于:2003-01-19 10:00:16 |
如果你的IDE盘是空的,那就是把上面的步骤从头到尾做一遍了,其中fdisk这一步肯定是要做了。然后下面的divvy这一步估计只要一个分片就可以了。不过我在有scsi盘的情况下没有试过。不知是否有不一样的地方。请自行试验。这也是最有乐趣的地方了。不是吗? |
sunweipost 回复于:2003-04-16 16:55:15 |
一个15G的硬盘在做第二步时显示默认参数都为空,按BIOS中的提示只能输入一部分参数,并老是提示找不到硬盘,有没有什么好办法??? |
SuperRio 回复于:2003-04-26 09:15:57 |
首先,15G硬盘在bios里头能不能认到???
若可以,确认所在IDE的位置,本身的主从,记下参数,chs,三项就够了...... mkdev hd * *时候确认,即可。 再下一步,就可以选择第2选项,修改chs。 |
simonzhan 回复于:2004-05-01 21:38:38 |
今天把这篇文档重新做了补充,顶上来让有需要的兄弟参考一下下!:) |
wenyue 回复于:2004-08-14 23:17:37 |
谢谢楼主!我正要这个东东!
SCSI硬盘能这样做吗? |
simonzhan 回复于:2004-08-16 01:17:18 |
scsi的我没有条件试,但在理论上是一样的,应该可以的。 |
cust 回复于:2004-12-01 19:10:48 |
mknod 中 major , minor 是怎样确定??? |
CNL 回复于:2004-12-01 21:11:47 |
major是设备驱动在/etc/conf/cf.d/mdevice中登记的号码,
minor需要自己计算,以前帖子有 搜标题:关键词"mknod" |
孟军 回复于:2004-12-09 17:44:32 |
版主: 您好! 我的硬盘也因突然停电而不能工作, 用您上面的方法divvy /dev/hd10,出现的是目标盘上的分片表,其中除name一栏是空的以外,其他都是原来的分片表数据。但root片(即2)的文件系统类型不是htfs,而变成了 NON FS 但分片大小未变,重新命名后也mount不上,请教各位高手该如何处理?我有较重要的数据在里面,如何弄出来?谢谢! |
CNL 回复于:2004-12-10 14:27:41 |
你的这种情况可以尝试一下mknod直接创建第2硬盘指定分区设备名的办法,
创建后使用fsck -ofull /dev/你建的设备名修复后再mount 搜索mknod,以前有贴。 |
simonzhan 回复于:2004-12-12 20:13:55 |
CNL兄的方法更妥当,请参考一下。 |
孟军 回复于:2004-12-13 16:37:23 |
谢谢两位版主的指点,我照您说的办法做了仍然不行.
我是这样做的,不知有什么问题? #mknod /dev/d2root b 1 106 #fsck -ofull /dev/d2root 出现错误提示如下: WARNING: wd0:Error on fixed disk dev1/106, block=0, cmd=0x00000020 status 0x00005940,sector=821465, cylinder/head=3208/0 fsck: cannot determine filesystem type of /dev/d2root 我输入如下命令时也出现类似提示 #mount /dev/d2root /mnt WARNING: wd0:Error on fixed disk dev1/106, block=0, cmd=0x00000020 status 0x00005940,sector=821465, cylinder/head=3208/0 mount: cannot stat '/dev/d2root' 请问还有其它办法吗?谢谢 |
CNL 回复于:2004-12-13 18:55:29 |
你的硬盘物理上有坏块,手工加入badtrk表后再fsck吧
成功的可能性是50%: 假如你建立的第2硬盘root分区名字是d2root,那么: # /etc/badtrk -f /dev/rd2root (分区名前加r表示裸设备) 选择5. Add entries to bad block table 手工输入提示错误的cylinder/head等参数 循环把所有提示的坏块加完, 最后q退出 再fsck -ofull /dev/d2root 如果还有坏块,重复上述操作 |
孟军 回复于:2004-12-14 16:40:23 |
版主:您好!照您所教的做了,警告没有了。
但仍然不能fsck和mount 出现的提示仍是: fsck: cannot determine filesystem type of /dev/d2root mount: cannot stat '/dev/d2root' 还有其它方法可试吗?现在只有死马当作活马医了。谢谢! |
CNL 回复于:2004-12-14 18:22:52 |
老大,希望虽然不大,你尝试一下吧:
1、指定文件类型,一般root分区都是HTFS # fsck -F HTFS -ofull /dev/rd2root # mount -r -f HTFS /dev/d2root /mnt 2、如果不行,把硬盘拔到一台空闲机器设置为master, 用能杀引导区病毒的杀毒盘加电引导后杀杀毒再试 再不行,我也没招了,如果有关键业务数据送硬盘专业维修公司看看吧 |
孟军 回复于:2004-12-15 10:05:24 |
CNL版主:您好!
谢谢您这几天来不厌其繁的指导,虽然我的盘还是没能弄好(可能是坏得太严重了).但我还是从您这里学到了许多知识.再一次谢谢您! |
lw371 回复于:2004-12-15 11:17:40 |
block=0是masterboot块,可按answer版主的办法试,还是有一丝希望的:
把坏盘挂回原机器,跳线全恢复原样,在类似配置的机器上做一套应急引导盘 [quote:5a9789ee3d] 解决步骤: 1)插入应急引导盘, 出现 Boot: 输入 hd(40)unix 2)进入单用户维护模式 instbb hd /dev/hd0a 将分区引导块写入硬盘 3) dparam -w 将主引导块代码写入硬盘的主引导块 [/quote:5a9789ee3d] 无论系统硬件有多么强壮,及时备份数据的重要性都应该被强调再三, 血的教训太多了。 |
孟军 回复于:2004-12-15 12:41:45 |
lw371:您好!
我的硬盘引导块应该没坏,应该是root分区损坏了,类型都变成了NON FS. 我也照您教的做了: 出现 Boot: 输入 hd(40)unix 但根本就不能进入单用户模式:提示是 PINIC: srmountfum -Error 22 mounting rootdev hd(1/42) Cannot dump 130975 pages to dumpdev hd(1/41):space for only 0 pages Dump not completed ** safe to power off ** ** press any key to reboot ** 谢谢您! |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/