Chinaunix首页 | 论坛 | 博客
  • 博客访问: 370464
  • 博文数量: 94
  • 博客积分: 3421
  • 博客等级: 中校
  • 技术积分: 919
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-18 16:27
文章分类

全部博文(94)

文章存档

2015年(8)

2013年(6)

2012年(26)

2011年(8)

2010年(26)

2009年(20)

我的朋友

分类: LINUX

2012-06-15 10:46:00

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)
  1. 硬盘代号用()扩起来。
  2. 硬盘以 hd 表示,后边接一组数字。
  3. 以『搜尋順序』做為硬碟的編號,而不是依照硬碟排線的排序。
  4. 第一個搜尋到的硬碟為 0 號,第二個為 1 號,以此類推;
  5. 每顆硬碟的第一個 partition 代號為 0,依序類推。
  6. 硬碟代號表 
    硬碟搜尋順序 在 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中。


阅读(2363) | 评论(0) | 转发(0) |
0

上一篇:函数地址

下一篇:system.map

给主人留下些什么吧!~~