|
最近升级日期:2009/09/10
重点回顾
- Quota 可公平的分配系统上面的磁碟容量给使用者;分配的资源可以是磁碟容量(block)或可创建文件数量(inode);
- Quota 的限制可以有 soft/hard/grace time 等重要项目;
- Quota 仅能针对整个 filesystem 进行限制,不是针对目录喔!
- Quota 的使用必须要核心与文件系统均支持。文件系统的参数必须含有 usrquota, grpquota
- Quota 实作的命令有 quotacheck, quotaon, edquota, repquota 等命令;
- 磁盘阵列 (RAID) 有硬件与软件之分,Linux 操作系统可支持软件磁盘阵列,透过 mdadm 套件来达成;
- 磁盘阵列建置的考量依据为『容量』、『效能』、『数据可靠性』等;
- 磁盘阵列所建置的等级常见有的 raid0, raid1, raid0+1, raid5 及 raid6
- 硬件磁盘阵列的装置档名与 SCSI 相同,至於 software RAID 则为 /dev/md[0-9]
- 软件磁盘阵列的状态可藉由 /proc/mdstat 文件来了解;
- LVM 强调的是『弹性的变化文件系统的容量』;
- 与 LVM 有关的组件有: PV/VG/PE/LV 等组件,可以被格式化者为 LV
- LVM 拥有快照功能,快照可以记录 LV 的数据内容,并与原有的 LV 共享未更动的数据,备份与还原就变的很简单;
- Ext3 透过 resize2fs 命令,可以弹性的调整文件系统的大小
本章习题
( 要看答案请将鼠标移动到『答:』底下的空白处,按下左键圈选空白处即可察看 )
- 情境模拟题一:由於 LVM 可以弹性调整 filesystem 的大小,但是缺点是可能没有加速与硬件备份(与快照不同)的功能。
而磁盘阵列则具有效能与备份的功能,但是无法提供类似 LVM 的优点。在此情境中,我们想利用『在 RAID 上面建置 LVM』的功能,以达到两者兼顾的能力。
- 目标:测试在 RAID 磁碟上面架构 LVM 系统;
- 需求:需要具有磁碟管理的能力,包括 RAID 与 LVM;
- 前提:将本章与之前章节练习所制作的分割槽全部删除,剩下默认的分割槽即可。
那要如何处理呢?如下的流程一个步骤一个步骤的实施看看吧:
- 复原系统时,你必须要:
- 利用 umount 先卸载之前挂载的文件系统;
- 修改 /etc/fstab 里面的数据,让启动不会自动挂载;
- 利用 fdisk 将该分割槽删除。
最终你的系统应该会只剩下如下的模样:
[root@www ~]# fdisk -l
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 1288 10241437+ 83 Linux
/dev/hda3 1289 1925 5116702+ 83 Linux
/dev/hda4 1926 9382 59898352+ 5 Extended
/dev/hda5 1926 2052 1020096 82 Linux swap / Solaris
|
- 创建 RAID ,假设我们利用五个 1GB 的分割槽创建 RAID-5 ,且具有一个 spare disk ,
那么你应该要如何进行?首先,请自行使用 fdisk 建置好如下的分割槽状态:
[root@www ~]# fdisk -l
....(前面省略)....
/dev/hda6 2053 2175 987966 83 Linux
/dev/hda7 2176 2298 987966 83 Linux
/dev/hda8 2299 2421 987966 83 Linux
/dev/hda9 2422 2544 987966 83 Linux
/dev/hda10 2545 2667 987966 83 Linux
|
接下来开始创建 RAID 吧!创建的方法可以如下简单处理即可:
[root@www ~]# mdadm --create --auto=yes /dev/md0 --level=5 \
> --raid-devices=4 --spare-devices=1 /dev/hda{6,7,8,9,10}
|
若无出现任何错误信息,此时你已经具有 /dev/md0 这个磁盘阵列装置了!接下来让我们处理 LVM 吧!
- 开始处理 LVM ,现在我们假设所有的参数都使用默认值,包括 PE ,然后 VG 名为 raidvg ,LV 名为
raidlv ,底下为基本的流程:
[root@www ~]# pvcreate /dev/md0 <==创建 PV
[root@www ~]# vgcreate raidvg /dev/md0 <==创建 VG
[root@www ~]# lvcreate -L 2.82G -n raidlv raidvg <==创建 LM
[root@www ~]# lvdisplay
--- Logical volume ---
LV Name /dev/raidvg/raidlv
VG Name raidvg
LV UUID zQsKqW-8Bt2-kpJF-8rCI-Cql1-XQYT-jw1mfH
LV Write Access read/write
LV Status available
# open 0
LV Size 2.82 GB
Current LE 722
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
|
这样就搞定了 LVM 了!而且这个 LVM 是架构在 /dev/md0 上面的喔!然后就是文件系统的创建与挂载了!
- 尝试创建成为 Ext3 文件系统,且挂载到 /mnt/raidlvm 目录下:
[root@www ~]# mkfs -t ext3 /dev/raidvg/raidlv
[root@www ~]# mkdir /mnt/raidlvm
[root@www ~]# mount /dev/raidvg/raidlv /mnt/raidlvm
|
- 上述就是 LVM 架构在 RAID 上面的技巧,之后的动作都能够使用本章的其他管理方式来管理,
包括 RAID 热拔插机制、LVM 放大缩小机制等等。测试完毕之后请务必要关闭本题所创建的各项资讯。
[root@www ~]# umount /mnt/raidlvm <==卸载文件系统
[root@www ~]# lvremove /dev/raidvg/raidlv <==移除 LV
[root@www ~]# vgchange -a n raidvg <==让 VG 不活动
[root@www ~]# vgremove raidvg <==移除 VG
[root@www ~]# pvremove /dev/md0 <==移除 PV
[root@www ~]# mdadm --stop /dev/md0 <==关闭 /dev/md0 RAID
[root@www ~]# fdisk /dev/hda <==还原原本的分割槽
|
简答题部分:
- 在前一章的第一个大量新增帐号范例中,
如果我想要让每个用户均具有 soft/hard 各为 40MB/50MB 的容量时,应该如何修改这个 script ?
你得先要依据本章的作法,先将 /home 制作好 quota 的环境然后,
你可以在 do...done 内的最后一行,新增一行内容为:
setquota -u $username 40000 50000 0 0 /home
这样就可以在制作用户时,指定升级口令且给予 quota 的限制!
- 如果我想要让 RAID 具有保护数据的功能,防止因为硬件损毁而导致数据的遗失,那我应该要选择的 RAID 等级可能有哪些?
(请以本章谈到的等级来思考即可)
具有备份数据的有: RAID-1, RAID-5, RAID-6
- 在默认的 LVM 配置中,请问 LVM 能否具有『备份』的功能?
是有的,就是那个快照 (snopshot) 的功能,此功能即可进行数据的备份!
- LVM 内的 LV 据说仅能达到 256 GB 的容量,请问如何克服此一容量问题?
LV 的容量与 PE 这个数据有关,由於默认 PE 为 4MB ,所以才会有此限制。
若要修改这个限制值,则需要在建置 VG 时就给予 -s 的选项来进行 PE 数值的配置。
若给到 PE = 16MB 时,则 LV 的最大总量就能够达到 1TB 的容量了。
- 如果你的计算机主机有提供 RAID 0 的功能,你将你的三颗硬盘全部在 BIOS 阶段使用 RAID 芯片整合成为一颗大磁碟,
则此磁碟在 Linux 系统当中的档名为何?
由於硬件磁盘阵列是在 BIOS 阶段完成的,因此 Linux 系统会捉到一个完整的大的 RAID 磁碟,
此磁碟的档名就会是『 /dev/sda 』!
参考数据与延伸阅读
|
|