下沙论坛

 找回密码
 注册论坛(EC通行证)

用新浪微博连接

一步搞定

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 6731|回复: 1
打印 上一主题 下一主题

XP安装盘集成SATA驱动的简单方法

[复制链接]
  • TA的每日心情
    擦汗
    昨天 10:42
  • 签到天数: 2365 天

    [LV.Master]伴坛终老

    跳转到指定楼层
    1
    发表于 2005-4-1 00:31:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    现在新主板越来越多的支持了SATA,但是要在SATA硬盘上安装XP等操作系统,需要把" Q; {/ a0 {# I
    SATA驱动放在软盘中,XP安装启动时按F6加载SATA驱动才可以正常在SATA硬盘上安装& {3 [4 P& i0 C2 ?  v+ z8 g" r9 c
    新系统.
    - a4 t- W) e1 g& Z, u$ J) |0 t9 P+ c8 {; W* _4 X
    这个问题很搞笑,因为装SATA的新机器多半不会装软驱了吧.好在有办法在XP安装盘$ S2 S' w# j5 V, ^# r' I2 y: T
    中集成SATA驱动,具体方法在google上以XP SATA driver F6 integration搜一下就* D/ N* r" v0 L% Y$ U
    有了,大体方法是修改驱动的inf文件加入到XP安装文件中使其自动加载,这里不在赘
    8 N- C# Z) s5 x6 \  Y6 r述.3 A  |. Z! D7 C6 r
    0 }- h, B* L' H& ^5 f* w+ j
    这种方法的缺点在于修改麻烦,一般修改简单的驱动还行,可是像VIA现在发布的SATA
    # m+ M2 A; c5 Q3 [% q$ \4 `% C驱动是非常麻烦的,修改起来不是那么简单(我就是因为这个放弃了这种方法).另一" G. r3 g/ [3 }: i; h( C
    点,厂商一旦发布新的驱动,更新的话就要重新修改.
    0 U3 T2 m9 D3 Y6 [0 B# d% p8 d) b9 K& f" L$ R$ v
    我要说的是用cdshell来虚拟软驱,完成没有软驱的情况下加载软盘中的SATA驱动的
    5 m1 F5 P/ J  m8 ~$ F"不可能任务".cdshell是一个光盘引导管理程序,非常强大,关于它以及这个强大工1 h8 r/ V0 q& v: J' q
    具从diskemu -> Boot Scripter ->CDShell的演化历程,请至www.cdshell.org
    # o- r* {# q4 f1 @# A. [9 U/ F7 l
    大致介绍一下cdshell:2 O' R9 R; k: s# T) j5 v. G) {
    cdshell的引导程序loader.bin被写在光盘的eltorito引导区,然后它会加载cdshell: Q5 r! R* Y7 b5 {
    的主程序并加载各功能模块(其中就包括之前bart所作的著名的把软盘模拟发展到极& y: w8 O0 p# Q& M
    致的diskemu).然后它可以引导光盘上的软盘镜像(通过diskemu或是另一个组件memd
    8 O5 I: Y' R% [5 Z  h7 [* Oisk)/另一个光盘引导记录/另外一个光盘iso(2.0.13b之后),并且提供了一个很强大
    . t% L$ t* D& q  k" K7 z* t的脚本系统,可以实现用户交互(2.0.15b之后甚至可以用鼠标了).常见的N合一启动
    7 I. u, G2 C5 s+ |盘基本就是用它或其前身来完成的.
    " R+ A) |3 O! {7 Z4 c
    ! I6 v, V+ m1 P1 P/ ~  [在2.0.12b中cdshell加入了一个非常有用的功能:它的diskemu组件现在可以只加载+ b4 z( H  V- p1 C/ a& C
    软盘镜像,而不启动它,在这之后我们可以再启动一个光盘镜像.这就是我们要的功能!% n* N- q1 Z. H/ C0 d4 ~

    % u5 ^: a3 T& z9 w5 p比如启动一个软盘镜像的命令行是这样的:
    5 x9 y2 s9 {( e3 Rdiskemu imgfile.img! Y9 f( _8 G* r5 E+ j  p6 e" \
    启动一个光盘引导记录的命令行是这样的:' t7 \: ~* c" m8 k# I
    chain cdrecord.ert
    * r' R; x" ?  y: q先虚拟软盘再启动光盘引导记录的命令行就是这样:. T0 W; m' ?8 A7 V
    diskemu imgfile.img noboot
    * y6 Y" U3 g" t% X0 Lchain cdrecord.ert1 B, e, ?5 p2 o! Y2 v4 i( t$ A
    ' N' {2 j" |' |/ ]
    就这么简单,具体步骤如下:
    ' y% p5 b" H3 W' G+ F# m4 d. B# W* R* Z& b0 m0 I9 x
    这里使用cdimage来创建可启动镜像,也可以使用mkisofs代替.
    3 F" J3 p1 m+ }9 K) E) f% c" h2 e2 i- v" ?, _! X) E
    1:把XP安装文件拷到D:\temp\XPins(这个你随意)下
    3 h0 s* q2 c: r3 z+ ]6 F* t2 t+ g2:把cdshell的bin包里的boot目录整个拷贝到D:\temp\XPins7 w) r! o4 z( q  J' v0 z
    3:把D:\temp\XPins\boot下的loader.bin移到D:\temp
    3 e( }" M5 n  Q/ j4:准备你要用的SATA驱动的软盘镜像(可以使用WinImage创建),放在boot下
    2 y6 G( T4 ]. d7 z* ]6 J. z5:按需修改cdshell.ini这个脚本文件,有兴趣的话,看一下cdshell的说明,看看哪些组件& c) k; E2 `+ ]& R% _% _5 i
    是你要的,不用的可以删除,脚本可以参照下面的范例
    2 y5 e9 V8 L' d3 P6:把cdimage.exe放到D:\temp\,运行下面的命令创建镜像
    * z1 ~: d+ X6 c  H& k3 H; Y: D) xcdimage -lXPinsSATA -h -n -bloader.bin D:\temp\XPins D:\temp\XP.iso. z5 Y6 l7 }& {/ @7 M- q( Z7 R
    7:burn it, have fun!
    4 l3 |3 x& _  H
    ; N0 d( W8 |; w: ]% _我的cdshell.ini:
    9 y! ^  P9 k7 C* h9 F7 p###########################################################################
    ) `$ `* c/ j4 Dstart:
    5 x. a3 l% F; o' E* q% \set c_1 = $textColor #get the default color
    4 @5 j& R9 v. dhere
    2 `4 v; j# T9 ]& }9 A5 B2 @7 V" `set c_2 = color[brightblue on black]
    9 T( V0 d# L0 x: ~$ |! ^set c_3 = color[brightgreen on black]
    0 o- D( H. a: p2 \8 Cset c_4 = color[brightred on black]
    $ a2 c$ [6 s& w7 dset c_5 = color[white on black]
    " T( v9 u0 H. j3 t+ Q2 `3 T( X0 E# n; ~+ R
    cls
    ( E; B5 ^( N1 v" L+ {% F" zprint c "\nJimmyZ`s XP install with RAID floppy emulation Disk Version/ a7 z$ [2 G" c3 `  e! I+ l9 E
    \c($c_3)Aug 4th,2004\c($c_1)\n"* l, t9 s4 B, O; {
    print r "\c($c_5)Powered by CDshell.org\c($c_1)"/ S$ z2 d- ~6 R. }. b; I( G
    print "\n"' K/ m! c/ \# X% V4 n2 T/ O8 x) `
    print l "\t\c($c_2)1\c($c_1). Boot Extreme Pure MS-DOS 7.10 (for bios
    " o" w, O4 S3 d+ q! c" c  v& rflasher etc)\n"* J6 u5 }4 }% p3 @' I6 Q
    print l "\t\c($c_2)2\c($c_1). Boot Standard MS-DOS 7.10\n": d& Z. j# T7 t4 ^2 r) E! h
    print l "\t\c($c_2)3\c($c_1). Boot Super MS-DOS 7.10 by Wengier\n"
    , B! _$ o; Z; A% X+ vprint l "\t\c($c_2)4\c($c_1). Boot Standard PC-DOS 7.10\n"
    / o: s% Q- a. e/ [9 ]print l "\t\c($c_2)5\c($c_1). Boot tom`s rtbt-2.0.103.Eltorito Edition: R1 U7 E3 [! [$ L
    (Linux 2.2.10)\n"& }- i9 q# ?, v7 c2 w% \  x. P
    print l "\t\c($c_2)6\c($c_1). Boot Windows XP VLK SP1 ENG setup\n"
    , K: C+ x' W, L+ n' V$ Rprint l "\t\c($c_2)7\c($c_1). Boot Windows XP VLK SP1 ENG setup with VIA0 n: S2 z; |' V* q
    RAID floppy emulation\n"/ u0 N. f* p: C& u# }8 J' A
    print l "\t\c($c_2)8\c($c_1). Boot Windows XP VLK SP1 ENG setup with Intel
    " W" y" J8 q0 {RAID floppy emulation\n\n"
    ' \: W( U8 i2 \+ K0 e: N# cprint c "\"\c($c_4)F\c($c_1)\" boot Floppy, \"\c($c_4)Esc\c($c_1)\" boot
    ( Z. b3 C# N8 Z/ @! N" p1st HDD\n\n"
    ; a+ u+ I/ T/ z: Sprint r "\"\c($c_4)C\c($c_1)\" to CD-Shell Command Prompt"
    # ?4 Y0 P9 d0 W: ~1 H5 h* F2 ]& p! Uprint r "\n.ini written by JimmyZ: \c($c_5)sorceress_92@hotmail.com\c($c_1)"
    ( ^6 q& P0 b) W$ T9 l9 J- z! v  n2 G" m# [1 \/ h' B0 Y0 |4 Z
    mainkey:/ y7 [! C- A. H% h5 @: X
    getkey 30 set lastKey = key[esc]) L; ]# ~1 p* ?. [! x
    if $lastKey == key[1];then goto ms710cln
    - O- D5 v$ k5 X7 ?3 K) iif $lastKey == key[2];then goto ms710std
    $ [& ^& y+ J+ [0 l# m6 Pif $lastKey == key[3];then goto ms710spr/ {% Q; F# \/ j8 r
    if $lastKey == key[4];then goto pc7104 b4 p: U7 w4 d% g/ r1 R: ]& Q
    if $lastKey == key[5];then goto toms
    , o. V5 W3 \% dif $lastKey == key[6];then goto xpins
    0 m  x3 H/ o6 {8 U7 t' o8 v$ r' Iif $lastKey == key[7];then goto xpinsvia3 m( k, }& g! K7 T
    if $lastKey == key[8];then goto xpinsintel
    " b; U' [. ^" z4 s& ?if $lastKey == key[f];then goto floppy
    " d# q( p1 h9 {6 e0 @if $lastKey == key[esc];then goto hdd01 k& l: O3 s) a$ C- c1 u
    if $lastKey == key[c];then goto exit
    * j, i/ n) H1 B! fgoto mainkey
    + ~/ e$ ]* q: _3 v5 T: Z
    5 f* k* `) f* \2 v3 vms710cln:
    " S/ S0 k# U8 z2 Tcls# s  ~. O7 C: c& Z- E9 Y
    diskemu images\MS710CLN.IMG, l& |; C" @2 e% p" V
    getkey
    7 K4 s8 r' J( A! Hgoto start3 t  y4 u5 s6 n1 q, k

    9 o9 C+ u* R. ]* `+ i& Qms710std:
    & ?3 w& p: A0 m0 O' g: Kcls
    ) Q9 O: o$ s, O: Gdiskemu images\MS710STD.IMG
    4 I: W- B6 d! A! e3 ggetkey
    5 ^- ^9 z9 }0 T5 s# ~: Mgoto start
    ; t: x/ i' V9 Y* T& c9 A
    + _- `6 E. A) _. pms710spr:5 j+ S* I% M( P# [3 r  R$ z
    cls; \2 L. m1 `; V- t  U; A
    diskemu images\MS710SPR.IMG3 V+ f. J8 ~2 ?/ J
    getkey# C$ v# g! T- ?9 Z& t8 _9 P0 d
    goto start
    4 a1 R% X3 W/ s5 [( i+ }2 m4 ~, l& F% k" K
    pc710:% I  _0 _( |7 k2 o
    cls6 S1 D$ \6 A9 k/ z' N1 Q
    diskemu images\PCDOS710.IMG* j8 A# u& o# Z
    getkey5 q2 c7 \# I, I) R& a4 j! \/ K
    goto start+ y- G2 X1 U7 ^

    ' G* Y! `' c7 T9 p/ _+ p2 xtoms:: y- ^# ^+ f+ O6 \& `9 r
    cls! o1 X4 E+ A' s, I; ], Q) t! L" I
    diskemu images\tomsrtbt.img! l! J0 R  Y1 Q$ o- B
    getkey1 d9 g: D# o# k
    goto start- o. L8 v7 V8 h3 C4 Z8 f
    ( c6 N/ t  `- h8 q. V
    xpins:0 P: L  p! Z  [
    cls# n  X" ]/ J' O; y5 C5 R! \
    chain images\MSXPVLK1.etr
    3 v# _  x6 @5 E$ A% Z  ygetkey
    4 p% K0 o0 ?) N. T1 w  Sgoto start
    & v  O- Z$ W1 [1 H% |. _6 l) s6 m, Y8 R' S- q1 O- m
    xpinsvia:$ g! K6 ^( B% G( p4 _
    cls* B! m" a# C% I& e% n
    diskemu images\viaRAID.IMA noboot
    5 l/ a) [# o( B& }1 Hchain images\MSXPVLK1.etr
    - v8 [8 x# }0 }* Q" P; Bgetkey
    9 d+ i% |" F' |& u& Q1 o$ Vgoto start
    & v0 \  D$ b5 V0 z9 V( n9 ~/ B" A6 @, ^  T8 f7 r) A1 A
    xpinsintel:
    + j1 G/ S+ c/ Lcls
    ; L8 c/ w3 U$ d, q( j# O2 [& Idiskemu images\intRAID.IMA noboot
    8 x% I: m; l/ z: t8 m; {) g/ a6 [9 wchain images\MSXPVLK1.etr# A. ?9 j# v2 i, [: G2 l6 R8 ~
    getkey( I$ F3 `' E" _! w  o2 m
    goto start$ i% S) ^& w  ]! k% t! T/ m

    ; c( t3 k6 C5 D9 gfloppy:
    + Y+ E1 T" M' N) O1 fcls. t% P# f* g* D* V
    boot 0x00
    ' ~) c. |+ R* ygetkey9 B  F2 A5 Q( Q- n: ]! `; T
    goto start
    . e- g+ d3 _* W2 b8 P9 k9 H* D6 b
    1 N. d' \7 C# T4 R3 Rhdd0:: b- n: \* h, [. @/ ^- B6 A
    cls9 O# n. e5 R# g2 e- ^  ?% Y% C
    boot 0x80  x5 d* I" V0 Z3 e9 g5 Z
    getkey1 M; S6 {5 ~. z: s9 u, |
    goto start( D) b* P3 f( i  y# r" Y

    , U7 G# X( N! R0 ^exit:8 o6 n  J9 U/ _& s) Q2 @
    cls
    & M2 E0 v' u0 L! e; h, \4 zhelp  s/ H( I: X. S
    end
    4 Y  O' m8 K( W###########################################################################7 \+ \+ Q0 j+ X1 t% f7 O0 Z1 d; {- A
    - V) X: r2 Q8 P0 h3 {( k3 k6 f' {
    我做这个的主要原因是想装的新机器想用SATA的硬盘也不想装软驱,所以做了这个,己
    1 l2 a# ]9 l/ ]$ G, {) A+ T经试验过XP安装程序的确可以正常加载虚拟软驱中的驱动.如果大家觉得这个方法带
    8 x- q, t; x# Y& _  e* N7 P) |) F来方便,不胜荣幸.
    : I: ?1 l" n) K2 P
    8 M; {/ q* O6 M1 m& c  y0 ?4 C
    JimmyZ于2004.08.04晨% p: D5 \' }1 O% S2 Y
    - l9 H- {! F4 V! ^4 G

    & a3 _8 g$ ~! j' g感谢Gary Tong和Bart Lagerweij的堪称伟大的diskemu,感谢Michael K. Ter Louw的
      D; t9 H# F* L- j- E, E更加好用更加完善的cdshell
    4 q# z5 x* b$ C--
    $ c1 h0 z) ^0 v. @) T9 D. XFake Wings5 i7 G! K- {2 q0 j) \
    shine , bright morning light , now in the air the spring is coming
    " q( {8 i1 w( W& jsweet blowing wind , singing down the hills and valleys1 _) T- a# a) g6 ?) B
    keep your eyes on me , now we`re on the edge of hell
    9 }& e0 |3 S% E1 L5 y  cdear my love , sweet morning light
    * f5 Z0 K# X3 G5 ?$ |wait for me you`ve gone much farther , too far
    0 j6 s7 I8 `1 J; C※ 修改:·JimmyZ 於 08月04日02:03:07 修改本文·1 s# a+ t( p+ u6 x2 O! p; n* V
    ※ 来源:·瀚海星云 bbs.ustc.edu.cn·
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏 分享分享 顶 踩 转发到微博
  • TA的每日心情
    擦汗
    昨天 10:42
  • 签到天数: 2365 天

    [LV.Master]伴坛终老

    2
     楼主| 发表于 2005-4-1 00:33:00 | 只看该作者
    http://www.weifeng.cc/sak2000/sata/

    本版积分规则

    关闭

    下沙大学生网推荐上一条 /1 下一条

    快速回复 返回顶部 返回列表