3.3.磁盘管理

Download Report

Transcript 3.3.磁盘管理

河南宏力集团网络管理部内部Linux培训
Linux磁盘管理
刘西洋
1. 磁盘管理
 1.1 MSDOS分区表
 1.2 GPT分区表
 1.3 设备文件
 1.4 简单分区
 1.5 LVM逻辑卷管理
 1.6 Linux Software RAID
1.1 MBR分区表
 MBR分区表,也称为MSDOS格式。
即PC-BIOS+MBR这种组合模式下磁
盘分区表类型。
 磁盘前512字节记录磁盘引导和分区
信息。
 MBR格式的标准决定了MBR只支持
在2TB以下的硬盘,如果硬盘超过2T
B时,只能管理到2TB!
 MBR支持的最大卷为2 TB ,并且每
个磁盘最多只能有4个主分区(或3个
主分区,1个扩展分区和无限制的逻
辑分区)
1.2 GPT分区表
GPT,全局唯一标识分区表(GUID
Partition Table)。GPT是EFI方案的一部
分,但并不依赖于EFI主板,在BIOS主
板的PC中也可使用GPT分区。与MBR
最大4个分区表项的限制相比,GPT对
分区数量没有限制。GPT可管理硬盘大
小达到了18EB。
GPT的分区信息是在分区中,至关重要
的平台操作数据位于分区,而不是位于
非分区或隐藏扇区。另外,GPT 分区磁
盘有多余的主要及备份分区表来提高分
区数据结构的完整性。允许将主磁盘分
区表和备份磁盘分区表用于冗余,支持
唯一的磁盘和分区ID。
1.3 设备文件
 Linux下所有设备文件都存在于/dev目录中,磁盘设备也不
例外。
 常见磁盘设备文件有以下几类:








/dev/hda /dev/hda[0-9] 普通IDE磁盘设备
/dev/sda /dev/sda[0-9] 普通SATA/SCSI磁盘设备
/dev/vda / dev/vda[0-9] 虚拟磁盘设备
/dev/md /dev/md[0-9] 软RAID设备
/dev/dm-[0-9] 磁盘映射虚拟设备LVM
/dev/cciss/c0d0px c表示控制器;d表示磁盘;p表示分区
/dev/vg_mail/ LVM卷组
/dev/vg_mail/LogVol_home LVM逻辑卷
1.4 简单分区
 简单分区,即创建分区表,划分分区,创建文件系统。
 MBR:
 创建分区表格式为MBR。
 创建主分区sda1:
» 大小:100MB ;挂载点:/boot;文件系统:ext4
 创建主分区sda2:
» 大小:1-2倍内存;挂载点:无;文件系统:swap。
 创建主分区sda3:
» 大小:10G;挂载点:/ ;文件系统:ext4
 创建扩展分区sda4:
 创建逻辑分区sda5:
» 大小:自定义 挂载点:/home ;文件系统:ext4
 GPT:除不需要创建扩展分区和逻辑分区外,无任何区别。
1.5 LVM逻辑卷管理
 LVM可提供,不中断服务,动态扩充或缩减分区的存储容量。
 通过LVM,我们可以把多个小磁盘分区,添加到同一个卷组,综合划
分逻辑卷。积少成多。
 物理卷:经过LVM处理过的普通标准分区或已创建的 Linux Software
RAID 卷。即,我们需要选择用于 LVM 的物理存储器资源。
 卷组:可以看作是由一个或多个物理卷所组成的存储器池。
 逻辑卷:在逻辑组上创建的分区。在其上可创建操作系统。
 操作方法:





准备磁盘。
创建物理卷。pvcreate
使用创建好的物理卷创建卷组。vgcreate
创建逻辑卷 lvcreate
在逻辑卷上创建分区。
1.6 Linux Software RAID
 在Linux系统中目前以MD (Multiple Devices)虚拟块设备的方式实现软
件RAID,利用多个底层的块设备虚拟出一个新的虚拟块设备,
 目前MD支持linear, multipath, raid0 , raid1, raid4, raid5, raid6, raid10等不
同的冗余级别和组成方式,也能支持raid1+0, raid5+1。
 建议使用软RAID时,仅用RAID0,RAID1 。因为复杂的RAID 5 等模
式会消耗30%左右的CPU资源用来校验。
 操作方法:
 创建FD格式物理卷,大小要符合要求,比如RAID1 就应该创建两个同样
大小的分区。
 mdadm --create创建RAID阵列设备。详细参数参见man手册。
 使用创建好的阵列设备
» 可以直接创建文件系统:mkfs.ext3 /dev/md0
» 也可以创建LVM物理卷:pvcreate
2. 相关命令和文件
 2.1.配置文件
 /etc/fstab
/etc/mtab
 2.2.分区操作命令
 fschk fdisk
 2.3.磁盘检查命令
 2.4.维护命令
 df du
 2.5. LVM命令
 2.6. 软RAID命令
2.1 相关配置文件
 /etc/fstab文件
fs_spec
/dev/mapper/vg_mail-LogVol_root
/dev/mapper/vg_mail-LogVol_home
/dev/mapper/vg_mail-LogVol_tmp
/dev/mapper/vg_mail-LogVol_var
fs_file
/
/home
/tmp
/var
fs_type
ext4
ext4
ext4
ext4
fs_options
defaults
defaults
defaults
defaults
fs_dump
1
1
1
1
fs_pass
1
2
2
2
fs_spec 该字段定义文件系统所在设备或远程文件系统,除了使用设备名,还可使用UUID或卷标。
fs_file 描述文件系统的载入点,交换分区为none,路径中包含的空格符用“\040”替代。
fs_type 定义了该设备上的文件系统类型。
fs_options 指定加载时使用的参数,多个参数逗号分隔。
fs_dump 该选项被dump命令用来检查文件系统转储频率,不需转储置0
fs_pass 该字段被fsck命令用来决定在启动时文件系统扫描顺序,"/"对应值应为1,其他应为2
 /etc/mfstab记录当前已挂载的分区信息,格式和fstab相同
2.2 分区操作命令
 fdisk 命令行下, 交互式MBR磁盘划分工具
 cfdisk 命令行下,类图形MBR磁盘划分工具
 parted 命令行下,交互式GPT磁盘划分工具
 详细命令使用方法参见 man手册
2.3 磁盘检查命令
 badblocks检查磁盘装置中损坏的区块,执行指令时须指定所要检查的
磁盘装置,及此装置的磁盘区块数。
 /sbin/fsck 检查文件系统并尝试修复错误。
 /sbin/e2fsck = /sbin/fsck .ext2= /sbin/fsck -t ext2 检查ext2文件系统
 /sbin/fsck .ext3 = /sbin/fsck -t ext3 检查ext3文件系统
 /sbin/fsck .ext4 = /sbin/fsck -t ext4 检查ext4文件系统
 /sbin/dosfsck = /sbin/fsck.msdos = /sbin/fsck.vfat 检查MS-DOS文件系统
错误
 详细命令使用方法参见 man手册
2.4 维护分区命令
 df 检查文件系统的磁盘空间占用情况,可显示所
有文件系统对i node和blocks的使用情况
 du 查看磁盘使用情况。
 详细命令使用方法参见 man手册
2.5 LVM命令
1 物理卷操作
/sbin/pvdisplay
显示物理卷信息
/sbin/pvcreate /sbin/pvremove /sbin/pvmove
执行locate pv | grep sbin命令查找相关命令
2 卷组操作
/sbin/vgdisplay
显示逻辑组信息
/sbin/vgcreate /sbin/vgremove /sbin/vgreduce
执行locate vg | grep sbin命令查找相关命令
3 逻辑卷操作
/sbin/lvdisplay
显示逻辑卷信息
/sbin/lvcreate /sbin/lvremove /sbin/lvreduce
执行locate lv | grep sbin命令查找相关命令
/sbin/pvresize
/sbin/vgextend
/sbin/lvextend
2.6 软RAID命令
 软件RAID管理命令就一个mdadm
 实例:
mdadm -C /dev/md1 -l 1 -n 2 /dev/sda7 /dev/sda8
创建md1 RAID1 由sda7和sda8组成 sda12为备用
cat /proc/mdstat
查看阵列详细信息
mdadm --stop /dev/md1
停止一个阵列
3. 实例
 3.1 创建简单分区,并创建文件系统
 3.2 创建LVM分区,并创建文件系统
 3.3 创建软RAID阵列,并使用LVM创建文件系统
3.1 简单分区
命令:
创建虚拟硬盘文件
dd if=/dev/zero of=/home/disk1 count=10240 bs=1M
映射成硬盘设备
分隔磁盘(MBR)
映射划分过的分区
创建文件系统
创建挂载点
挂载分区
解挂分区
去除分区映射
去除硬盘映射
losetup /dev/loop0 /home/disk1
fdisk /dev/loop0
kpartx -av /dev/loop0
mkfs.ext4 /dev/mapper/loop0p1
mkdir /mnt/a
mount /dev/mapper/loop0p1 /mnt/a
umount /mnt/a
kpartx -dv /dev/loop0
losetup -d /dev/loop0
3.2 创建LVM分区
命令:
创建虚拟硬盘文件
dd if=/dev/zero of=/home/disk2 count=10240 bs=1M
映射成硬盘设备
分隔磁盘(gpt)
losetup /dev/loop0 /home/disk2
映射划分过的分区
kpartx -av /dev/loop0
创建LVM物理卷
创建卷组vg_disk2
查看卷组vg_disk2
创建逻辑卷
创建逻辑卷
创建逻辑卷
查看卷组vg_disk2
pvcreate /dev/loop1p[1-7]
parted /dev/loop0
vgcreate vg_disk2 /dev/loop1p[1-7]
vgdisplay vg_disk2
lvcreate -L 100MB vg_disk2
lvcreate -L 4GB -n lv_home vg_disk2
lvcreate -l 51 -n lv_var vg_disk2
vgdisplay vg_disk2
3.3 创建软RAID
命令:
创建虚拟硬盘文件
dd if=/dev/zero of=/home/disk11 count=10240 bs=1M
dd if=/dev/zero of=/home/disk12 count=10240 bs=1M
映射成硬盘设备
losetup /dev/loop0 /home/disk11
映射成硬盘设备
losetup /dev/loop1 /home/disk12
分隔磁盘(mbr)
parted /dev/loop0
分隔磁盘(mbr)
parted /dev/loop1
映射划分过的分区 kpartx -av /dev/loop[0,1]
shell脚本创建RAID阵列
------------------------------------------------------------------------------------------
for i in 1 2 5 6 7 do
mdadm --create /dev/md13i
pper/loop1pi
done
-l 1 -n 2
/dev/mapper/loop0pi /dev/ma
---------------------------------------------------------------------------------------
查看运行的RAID
cat /proc/mdstat
创建文件系统
创建物理卷
创建卷组
查看卷组
创建逻辑卷
创建文件系统
挂载分区
挂载分区
验证结果
解挂分区
删除逻辑卷
删除卷组
停止阵列
去除分区映射
去除硬盘映射
mkfs.ext4 /dev/md131
pvcreate /dev/md13[5-7]
vgcreate vg_raid1 /dev/md13[5-7]
vgdisplay vg_raid1
lvcreate -L 5G -n lv_home vg_raid1
mkfs.ext4 /dev/vg_raid1/lv_home
mount /dev/vg_raid1/lv_home /mnt/a
mount /dev/md131 /mnt/b
ls /mnt/[a,b]
umount /mnt/[a,b]
lvremove /dev/vg_raid1/lv_home
vgremove vg_raid1
mdadm --stop /dev/md13[1-2,5-7]
kpartx -dv /dev/loop[0,1]
losetup -d /dev/loop[0,1]
详见:http://www.ibm.com/developerworks/cn/linux/l-cn-raid/
4. iSCSI存储系统
 4.1 IP-SAN概念
 4.2 IP-SAN优势
 4.3 Linux搭建简单IP-SAN
 4.4 使用IP-SAN
 4.5 前景
4.1 IP-SAN概念
 IP-SAN,即iSCSI-SAN。所谓iSCSI亦即通过IP网络,将S
CSI 区块数据转换成网络封包的一种传输标准。数据存取
方式上,采用与FC-SAN 相同的Block Protocol 协议。
 IP-SAN基于十分成熟的以太网技术,普通服务器或PC机
只需要具备网卡,即可共享和使用大容量的存储空间。
 IP-SAN基于TCP/IP技术,没有对传输距离的限制。解决了
FC-SAN的不超过50公里物理覆盖。克服了“存储孤岛”
的困惑。
4.2 IP-SAN优势
 1. 价格合理,实施过程简单。
 2. IP网络技术相当成熟,IP-SAN减少了配置、维
护、管理的复杂度。
 3. 基于IP网络,数据迁移和远程镜像容易,且支
持跨平台数据共享。
 4. IP-SAN基于以太网,没有速度限制;没有距离
限制;没有容量限制。
4.3 Linux搭建简单IP-SAN
 步骤:
 安装软件:
yum groupinstall “Network Storage Server”
 配置Server端:
vi /etc/tgt/targets.conf
添加类似如下内容
<target iqn.2012.com.honliv:storage.iscsi0>
iqn序列,标识符。
backing-store /dev/vg_storage/LogVol_iscsi00
添加两个存储块
backing-store /dev/vg_storage/LogVol_iscsi01
write-cache on
开启写缓存
vendor_id honliv Inc.
厂商ID,类似描述
</target>
service tgtd restart 重启服务
tgtadm --lld iscsi --mode target --op show
查看服务器状态。
4.4 使用IP-SAN
 Linux用户:
安装客户端
yum groupinstall “iSCSI Storage Client”
发现服务器发布的target
iscsiadm -m discovery -t sendtargets -p IP/Hostname
登陆target
iscsiadm -m node -T iqn.2012.com.honliv:storage.iscsi3 -p stora
ge -l
登出target
iscsiadm -m node -T iqn.2012.com.honliv:storage.iscsi3 -p stora
ge -u
Windows用户:
下载安装Microsoft iSCSI Initiator即可使用IP-SAN
4.5 使用前景
 无需光纤HBA卡,提供千兆环境下服务器端,以
约60MB/s速率接入SAN。
 提供百兆城域网范围内的PC用户以约8MB/s的速
率接入SAN。以实现工作文档集中存放。
 提供远程备份,镜像功能。实现低成本容灾。
附录:参考链接
Linux 中软件 RAID 的使用
http://www.ibm.com/developerworks/cn/linux/l-cn-raid/
通用线程: 学习 Linux LVM
http://www.ibm.com/developerworks/cn/linux/filesystem/lvm/lvm-1/index.html
fstab 百度百科
http://baike.baidu.com/view/5499388.htm