LVM(逻辑卷管理程序)
物理卷
物理卷是指硬盘分区或者从逻辑上看起来和硬盘分区类似的设备(比如RAID设备)
逻辑卷
一个或者多个物理卷组成一个逻辑卷。
对于LVM而言,逻辑卷类似于非LVM系统中的硬盘分区。逻辑卷可以包含一个文件系统(比如/home或者/usr)。
Device Boot Start End Blocks Id System
/dev/cciss/c0d0p1 * 1 38 305203+ 83 Linux
/dev/cciss/c0d0p2 39 121594 976398570 8e Linux LVM
root(hd0 6) 从第一块硬盘的第7个分区来启动搜索引导内核
kernel 指示那个文件是内核文件 /vmlinuz-2.6.18-308.el5 ro root=/dev/vg00/lvol3 (内核是否为单独分区)
initrd initrd /initrd-2.6.18-308.el5.img (用来初始化内核的img)
制作引导盘
grub> root(fd0) 告诉grub到那个位置找stage1 和 stage2
grub> setup(fd0) 降grub安装到那个那个盘的MBR
grub> quit
grub是放在MBR中,如果重装系统后,毁坏MBR时,需要恢复它。
首先通过某种方式进入grub
grub> root(hdx, y)
grub> setup(hd0)
grub> quit
grub 硬盘代號:(hd0,0)
- 硬盘代号用()扩起来。
- 硬盘以 hd 表示,后边接一组数字。
- 以『搜尋順序』做為硬碟的編號,而不是依照硬碟排線的排序。
- 第一個搜尋到的硬碟為 0 號,第二個為 1 號,以此類推;
- 每顆硬碟的第一個 partition 代號為 0,依序類推。
- 硬碟代號表
硬碟搜尋順序 |
在 Grub 當中的代號 |
第一顆 |
(hd0) |
(hd0,0) |
(hd0,1) |
(hd0,4) |
.... |
第二顆 |
(hd1) |
(hd1,0) |
(hd1,1) |
(hd1,4) |
.... |
第三顆 |
(hd2) |
(hd2,0) |
(hd2,1) |
(hd2,4) |
.... |
GRUB中设备命名命名习惯
首先GRUB要求设备名被括在一个括号中。fd表示软盘,hd 表示硬盘(不区分IDE还是SCSI)。
其次设备是从0开始编号。分区也是如此,分区和设备之间用一个逗号分开。 U盘貌似也属于SCSI
下面给出几个例子 :
(fd0) :表示整个软盘
(hd0,1):表示系统的第一个硬盘的第2个分区
(hd0,0):表示系统中的第一个硬盘的第一个分区。
如果没有指定某个分区,则表示使用整个设备,否则只使用指定的分区。linux格式化硬/U盘(mkfs, mkfs.ext2)
mkcdrec mkdirhier mkfontdir mkfs.cramfs mkhtmlindex mkisofs mknod mksock mkxauth
mkdict mke2fs mkfontscale mkfs.ext2 mkhybrid mklost+found mkpasswd mkswap
mkdir mkfifo mkfs mkfs.ext3 mkinitrd mkmanifest mkrfc2734 mktemp
[root@qdvm02 /]# mkfs -t ext3 /dev/sda
分区和格式化, 磁盘要先格式化,在分区。
fdisk -l
Disk /dev/cciss/c0d0: 1000.1 GB, 1000148590592 bytes
255 heads, 63 sectors/track, 121594 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/cciss/c0d0p1 * 1 38 305203+ 83 Linux
/dev/cciss/c0d0p2 39 121594 976398570 8e Linux LVM
Disk /dev/sda: 31 MB, 31129600 bytes
1 heads, 60 sectors/track, 1013 cylinders
Units = cylinders of 60 * 512 = 30720 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 2 512 15330 83 Linux
/dev/sda2 888 1013 3780 83 Linux
/dev/sda3 513 887 11250 83 Linux
第一个是硬盘,为啥是从1开始,第二个是U盘,从2开始.
DOS下用fdisk /mbr来写引导扇区(MBR)
linux下用dd
dd if=/dev/zero of=/dev/hda bs=1 count=446
或
dd if=/dev/zero of=/dev/hda bs=446 count=1
GRUB的安装
grub> root (hd0 0) <<<<没有逗号
root (hd0 0)
Error 11: Unrecognized device string
grub> root(hd0,0) <<<<括号和root连在一起
root(hd0,0)
Error 27: Unrecognized command
grub> root (hd0,0) <<<< 正确的写法
root (hd0,0)
Filesystem type is ext2fs, partition type 0x83
Grub可以安装在supper block, 也可以安装在MBR
grub> setup (hd0,0) <<< 安装在superblock
setup (hd0,0)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... no
Error 15: File not found
grub> setup (hd0) <<< 安在MBR
setup (hd0)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... no
Error 15: File not found
grub> kernel (hd0,0) /vmlinz <<<括号后边不能有空格,要接着写
kernel (hd0,0) /vmlinz
Error 1: Filename must be either an absolute pathname or blocklist
grub> kernel (hd0,0)/vmlinz <<<在磁盘的某个位置放着的内核文件。
kernel (hd0,0)/vmlinz
Error 15: File not found
grub> initrd (hd0,0)/init <<< kernel command must run successfully
initrd (hd0,0)/init
Error 19: Linux kernel must be loaded before initrd
vmlinz 和 initrd的区别
http://blog.csdn.net/zero_spy/article/details/7302674
#
dd if=/dev/hda of=qunmbr.bin bs=512 count=1
1+0 records in
1+0 records out
#
od -x qunmbr.bin|less (-x代表16进制,还可以是a,o,d等)
输出的最后三行是
0000740 61c1 3f82 a7ff 37c0 0035 5e40 0004 0000
0000760 0000 0000 0000 0000 0000 0000 0000 aa55
0001000
Disk /dev/sda: 31 MB, 31129600 bytes
1 heads, 60 sectors/track, 1013 cylinders
Units = cylinders of 60 * 512 = 30720 bytes
Device Boot Start End Blocks Id System
/dev/sda1 2 512 15330 83 Linux
/dev/sda2 513 1013 15030 5 Extended <<<扩展分区不可以格式化
[root@qdvm02 /]# mkfs.ext2 /dev/sda2
mke2fs 1.39 (29-May-2006)
/dev/sda2: Invalid argument passed to ext2 library while setting up superblock
[root@qdvm02 /]# fdisk /dev/sda2
Unable to read /dev/sda2
磁盘的分配方式:
主分区
扩展分区(extend)
-逻辑分区(logic)
Command (m for help): n
Command action
l logical (5 or over) <<<原来是扩展分区, 现在是逻辑分区
p primary partition (1-4)
l
First cylinder (514-1013, default 514):
Using default value 514
Last cylinder or +size or +sizeM or +sizeK (514-1013, default 1013): 892
grub-install拷贝grub镜象文件到DIR/boot目录中(可以通过参数--root-directory指定目录)。即grub-install只负责生成grub目录下的文件。
可以用grub shell安装grub到MBR中。