Linux运维基础提高之RAID卡和磁盘分区

磁盘大小计算: 柱面的数量*每个柱面的大小(容量)

[root@luffy001 ~]# fdisk -l

Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders (柱面的数量)
Units = cylinders of 16065 * 512 = 8225280 bytes(柱面的字节数)

echo “”|bc  echo “1305*8225280”|bc

使用awk 计算磁盘的容量 awk ‘begin{print 8225280 *1305/1024^3 }’ 磁盘大小计算方法。

RAID卡(磁盘冗余阵列)

软RAID 系统架构及恢复.(节省成本,访问量几百)

安装系统前可以选择software进行设置.查看软raid配置信息 cat /proc/mdstat

热添加硬盘: mdadm /dev/md1 -a /dev/hdb5

      mdadm /dev/md2 -a /dev/hdb3 (根据分区情况来定)

A盘正常,B盘不工作, 系统仍正常运行

A盘停掉,B盘工作,系统不能正常运行, 原因是B盘上没有引导导致.

防止单盘故障, 给两块盘都装grub引导.

grub  cat /boot/grub/grub.conf

root (hd0,0)

setup (hd0)

root (hd1,0)

vim /boot/grub/grub.conf

新加盘恢复RAID1

A盘正常,B盘为新加盘,两盘的分区要一样,所以COPYA盘的分区表.(模拟Raid1出故障如何解决)

重组RAID1,使系统在RAID1上更安全.

为防止A盘故障,在新加B盘加Grub引导.

1.导出A盘的分区

sfidisk -d /dev/hda > partition.hda

2.在新盘B上建立和A同样的分区.

sfdisk /dev/hdb < partition.hda

 3.查看当前RAID1工作情况(可以发现只有一块盘在工作),

cat /proc/mdstat

4.把新加的B盘加入到RAID1中,恢复RAID1架构.(RAID1做了热备,会自动恢复新加的磁盘的数据)

mdadm /dev/mdx  -a /dev/hdbx

恢复完之后,将hda1 的grub信息导入到hdb1中就可以让两块磁盘任意一块故障时系统仍旧可以使用.

RAID系统架构及扩容.

RAID5架构

系统安全( raid)

超大容量 (RAID,LVM)

将来扩容  -(LVM) 

组建RAID-5

mdadm --create /dev/md0 --level=5 --raid-devices=3 -c 128 /dev/sda1 /dev/sdb1 /dev/sdc1

cat /proc/mdstat

 

建LVM

先pvcreate /dev/md0

再vgcreate /dev/md0

vgdisplay

 

恢复Raid5的数据.命令:

新插入一块硬盘sdc  需要先分区,然后再进行添加到raid5中

mdadm  /dev/md0 -a /dev/sdc1 然后再查看raid5 的情况. cat /proc/mdstat

mdadm --detail /dev/md0

 换磁盘注意事项,不要打乱原来盘的槽位.

 

raid5 扩容的命令:

mdadm --grow /dev/md0  --raid-devices=4 再查看状态就好了

LV的扩容工作:

pvresize /dev/md0 改变pv大小

删除RAID分区

 

作用: 获得更高的容量,更强的性能,更强的安全性。

RAID卡/阵列卡。

基础RAID卡     支持的raid级别不同,

高级raid卡      raid卡的缓冲容量不同

常用的raid级别。

            最低几块  安全性     可用容量             性能            使用场景                      举例

raid 0   1块   安全性最低    所有硬盘容量之和   读写最快     不要求安全,只要速度    数据库从库

raid 1  2块       100%       所有容量的一半   写入速度慢       只追求安全性              系统盘

                                                             读取OK                        

raid 5  3       最多损坏1块   损坏一块盘的容量  写入性能不好   对速度安全要求不高    普通数据库,存储 n(n-1)/n

raid 10 4     可以损坏一半    损失所有硬盘容量一半  读写很快    对于安全和性能都要    数据库主库,存储 

raid10  先做raid1   再做单盘raid 0  磁盘有数据镜像,然后raid 0 存储空间.

磁盘分区原理:

主分区1-4 个 最多4个主分区(primary)

扩展分区(extended))5-   逻辑分区(logical)

分区命令规则:

HD硬盘主分区依次为 hda 开始命名

SAS SATA,SCSI 接口硬盘, sda,b,c,d,e,f 等

主分区/扩展分区1-4

逻辑分区 从5开始.

例子:写出下面分区的名字及其含义.

第1块SAS硬盘的第1个主分区  /dev/sda1   

第3块硬盘的第2个扩展分区 /dev/sdc6

第4块SATA硬盘的第一个扩展分区 /dev/sdd5

 

fdisk 命令进行磁盘分区 2T磁盘以下的  --基于MBR分区--主分区表4个

part 进行磁盘分区, 大于2T的磁盘进行磁盘分区和挂载

fdisk  -cu  /dev/sdb1

fdisk 的参数.

Command action
a    toggle a bootable flag   切换可引导标志
b    edit bsd disklabel   编辑 bsd disklabel
c    toggle the dos compatibility flag   切换dos可兼容性标志
d    delete a partition  删除分区
l    list known partition types  列出知道得分区类型
m    print this menu  打印这个帮助菜单
n    add a new partition  添加一个新的分区
o    create a new empty DOS partition table  创建一个新的dos分区表
p    print the partition table   打印分区表
q    quit without saving changes  退出不保存
s    create a new empty Sun disklabel   创建一个新的空的磁盘标签
t    change a partition's system id  更改分区系统ID
u    change display/entry units  更改 展示 entry utils
v    verify the partition table  验证分区表
w    write table to disk and exit   保存并退出分区表
x    extra functionality (experts only)   额外功能(仅限专家)

 

 

主分区  (w)保存分区表  ls -l /dev/sdb

扩展分区 extended

逻辑分区 logical

命令:

n  创建新分区,

p 查看当前分区的信息

格式化,创建文件系统

[root@luffy001 ~]# mkfs.ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
25896 inodes, 103424 blocks
5171 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67371008
13 block groups
8192 blocks per group, 8192 fragments per group
1992 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729

Writing inode tables: done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

 tune2fs -c 0 -i 0 /dev/sdb1   

-c  count  关闭每挂载多少次进行磁盘检查的功能

-i 0 interval 关闭每180天进行磁盘检查功能

进行永久挂载....

mount /dev/sdb1 /mnt    (挂载之前 df -h  检查挂载点是否可用) 这种挂载,在重启后会消失挂载的分区.

永久挂载的方法:

方法1: /etc/rc.local

/bin/mount /dev/sdb1 /mnt 

方法2: 写入挂载的分区和挂载点到文件/etc/fstab .系统开机时会自动挂载.

UUID=1d3ad35b-516b-4582-b5e8-6fedb39df41c /                       ext4    defaults          1    1
UUID=717a49d6-b9f2-4792-a6d6-b7794fb2f276 /boot                 ext4    defaults          1    2
UUID=e7367797-9805-42c4-843c-b4ec46658d1c swap               swap    defaults          0     0

uuid    设备名称                                                      挂载点       磁盘分区类型   默认参数  是否备份  是否进行磁盘检查.(0)

man fstab  信息查看

 

小结:

1.创建分区,并通知系统磁盘分区表变化 (fdisk partprobe /dev/sdb)

2.格式化创建文件系统,并关闭磁盘检查(inode, block) mkfs.ext4 /dev/sdb1  tune2fs -c 0 -i 0 /dev/sdb1

3.挂载开机自动挂载创建的分区  (开机自动挂载vim /etc/fstab) umount /mnt  直接卸载挂载点  df -h 

parted 命令. 和fdisk 区别(小于2T)---基于GPT分区表()1ZB = 1024EB=1024*1024PB=1024^3 TB

52-mbr与gpt区别-parted进行磁盘分区流程:

mklabel mktable  创建磁盘分区表,

mkdos  (mbr)

mkpart    创建分区

rm   删除分区

q   退出不保存

 parted命令是实时的不用保存的

 

 

posted @ 2018-11-21 09:23  柳湖居士  阅读(942)  评论(0编辑  收藏  举报