- 积分
- 16843
在线时间 小时
最后登录1970-1-1
|

楼主 |
发表于 2021-3-12 20:59:54
|
显示全部楼层
ISO 文件:' D# D$ o1 a/ J# n# f" A# O
" w( y% b: ]9 Y! G- n" |; k+ Z 因为文件系统的关系,就不能用 dd 来直接做 ISO 镜像了(当然,它还是可以从设备制作 ISO 镜像)。 ISO 文件的制作有专用工具,
, U- O( L% H7 ^% s |% F# P
1 p( W% h1 u9 r' z) S8 h5 L, M- f- l 1,制作: B* r- `. V4 k( d
~% }8 }* E3 ]& k8 p mkisofs -r -o cdimage.iso /home/XXX/cddir. m# V( A0 O3 u( `( _- P# U
6 T3 W7 N6 \$ `7 v& ]7 s
2,格式化: C1 Q9 S( m' _/ T
* E& E3 k( N8 M+ G5 B v- \ 用mkiso制作的 iso 已有文件系统 iso9660$ D9 \2 e b- n) A9 O1 p1 D
0 u, N, c/ c: @! f4 p; j 3,可启动- S5 f+ j) ?& v8 {! r7 O( y
: e6 Y! v$ v7 k9 c: x. `5 y 无论是引导单系统还是引导多系统都还是用 mkisofs 这个工具,只是加载到光盘的 boot loader 不一样而已。当然也可以将 DOS 的引导器 (也就是它的引导扇区) 或 windows 的引导器 ( XP 系统的是 ntldr ) 放入让光盘引导。下面只讨论 grub4dos 的使用
5 k4 C" }/ q& _" j2 |! h) n- e: Z( b7 P: ^3 v: M+ i f: l
1),用 grub.exe 引导多系统/ A* m0 Q0 D4 O/ s9 a
6 H5 r: ?3 Z5 c. @3 O, N# T4 c
用 DOS 加载 grub.exe 引导多系统
- P" P* P, F/ G& O3 G2 C; F" z) y2 M4 f
2),将 grub 安装到光盘 MBR5 A; A, H$ p( l7 _& E9 W3 D: |
* p7 z$ G" R+ ?# C& D$ k1 d2 ]
在制作时可用下面的命令直接生成可启动镜像,其中 grldr, menu.lst 要放在 cddir 目录下,也就是在 cd 根目录。
& m! K; W; G% M+ I3 x# Q1 ^4 b4 @ ?) I8 L" d
mkisofs -R -b grldr -no-emul-boot -boot-load-seg 0x1000 -o cdimage.iso cddir! X2 p/ o9 M, I9 f- c3 ]" [$ n$ C
3 O! v5 Q+ R) e5 V7 \$ w* | mkisofs -R -b grldr -no-emul-boot -boot-load-size 4 -o cdimage.iso cddir
! t) W7 ~# y+ p' t( b; X) N, g/ Q5 P5 x0 y* q
PS,下面给出 dd 命令和 mkisofs 参数说明
1 j+ @; g/ B6 Y, r) R4 W X' Z0 u3 a, j9 X
dd (convert and copy files)
# u6 ?5 D; `/ t2 {( h8 O: `5 e6 c# ]+ T d" m4 r. }. p
dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。" R0 b' U# ^' l; J# `
1 n+ W& o7 d5 p
dd 的主要选项:8 d, V4 Z$ T; [+ ]
8 H+ A# J( F1 E( {' _% [2 G! m+ y
指定数字的地方若以下列字符结尾乘以相应的数字:' U+ W0 r. f8 F% v. y
. q- W# k$ B+ m* V1 d
b=512, c=1, k=1024, w=2, xm=number m
' D1 L! C6 X+ }% Y, b9 d, q; g: V/ j8 x: K/ x
if=file
$ u' c" f B! B, T2 H/ g3 C: N! a0 G8 u3 i+ m/ y
输入文件名,缺省为标准输入。" `! o! J @2 H2 Y1 A( X! p( Y0 K
4 y7 Z; p Q* o/ ]7 ~* a- g. a
of=file P- T* A/ T: F" T# q3 @
/ p/ t0 t! L: L( d
输出文件名,缺省为标准输出。
, _- H& [8 i4 a7 {
7 T5 g% G& Z/ T2 L6 [9 M ibs=bytes% B& Q3 ^" }1 a7 s" _8 ?4 Z
0 g1 |% ]0 E% Q" H 一次读入 bytes 个字节(即一个块大小为 bytes 个字节)。+ n5 } i' u+ `/ k
/ b( z6 c* S4 s. a b. S! X
obs=bytes( t3 f; P* e7 G; C- H" |( j
* s) q7 J# `% ?- s* A# _ 一次写 bytes 个字节(即一个块大小为 bytes 个字节)。/ x& J8 F& {/ z# T4 M# S
8 f2 X% a: }( j2 }1 t' K5 V. t
bs=bytes
" ~+ \4 k- u3 t% c# u; L: ^" n6 l! u$ X. K5 H: x
同时设置读写块的大小为 bytes ,可代替 ibs 和 obs 。
6 `2 e* Y( n" \2 ^6 E$ E) h
8 z- }2 i# p$ N- B, V' c/ q cbs=bytes
/ w. u' ]0 f7 G3 Z* Z% W5 D/ B L0 \" I6 s1 N6 i; W2 ` y
一次转换 bytes 个字节,即转换缓冲区大小。- V1 ~ a. m+ M7 M& R
0 ], N; o9 z4 `) O5 F
skip=blocks u& ?' n3 h$ x1 ^( ?- t4 d' F- Z
4 q6 M4 r' K) }8 h8 z% @) X
从输入文件开头跳过 blocks 个块后再开始复制。 |
|