①解决了数据的读写速率
②解决磁盘冗余,保护数据以免丢失
Redundant Arrays of Independent Drives
冗余 阵列,数组 独立的 磁盘
独立磁盘构成的具有冗余能力的阵列
个别磁盘提供数据所产生加成效果提升整个磁盘系统效能
①外接式磁盘阵列柜
②内接式磁盘阵列卡
③软件来访真实现raid
常见的raid卡型号
华为 : SR130------不做缓存
SR430C ----做缓存
戴尔 :H330
H730P
raid卡需要驱动
raid类型:
raid0(不含校验与冗余的条带存储)
①raid0:至少2块盘,只有按条带存储数据特点:提高数据的存取速度,但是没有备份,不能容灾。可用容量100%
应用场景:对数据要求不高的场景下raid1(不含校验的镜像存储)
②raid1:至少2块盘,只有镜像
特点:不能解决数据存取速度问题,但是可容灾。可用容量50%
应用场景:对数据要求很高的情况下。
raid5(数据块级别的分布式校验条带存储)
③raid5:至少3块盘,可以提高存取速率
特点:存储的有存储数据和校验数据,可以容灾(允许一个盘坏)可用容量是(n-1/n)
应用场景:折中raid0和raid1的优缺点,可适用于大多数应用场景④raid6:至少4个盘,可以提高存取速率
特点:存储的有存储数据和2份校验数据,可以容灾(容许两个盘坏),可用容量是(n-2/n)⑤raid01==raid0+raid1
特点:至少4块盘,既能提高数据读写,也能实现数据容灾,可使用容量50%
容灾能力稍强⑥raid10==raid1+raid0
特点:至少4块盘,既能提高数据读写,也能实现数据容灾,可使用容量50%
1.挂载3块盘
2.三个盘分区格式化,分两个区
fd:---对分区raid,转化一下,支持raid的格式(只存在于软raid)(每一个分区)
raid0
4.格式化raid
mkfs.ext4 /dev/md0
mkfs.ext4 /dev/md1
5.创建挂载点
6.挂载并查看挂载情况
系统盘:raid5
数据盘:
(插入系统盘,固态--->组raid--->装系统)
[root@localhost ~]# time dd if=/dev/zero of=txt bs=1M count=1000
[root@localhost ~]# time dd if=/dev/zero of=/raid0/txt bs=1M count=1000
[root@localhost ~]# time dd if=/dev/zero of=/raid1/txt bs=1M count=1000
存取速度:raid0>raid5>不使用
# mdadm /dev/md1 -f /dev/sdb2
# mdadm --detail /dev/md1
# mdadm /dev/md0 -f /dev/sdb1
注:不能损坏,表示不能容灾
# mdadm --detail /dev/md0
PV | 物理卷,LVM的逻辑存储块,与磁盘分区是逻辑对应关系 |
VG | 卷组,逻辑上的磁盘设备 |
PE | 物理长度,是逻辑上的最小存储单元,PE=4MB |
LV | 逻辑卷,物理意义上的分区 |
*PV
查看:pvdisplay
*VG
vgcreate vgname /dev/device
-s:指定PE的大小(默认为4M)
vgcreate -s 8M vgname /dev/device
vgextend vgname pvname
*LV
例: lvcreate -L 2G -n test_lv1 test_vg1
-l:指定逻辑卷的大小(以EP为单位)
-L:指定逻辑卷的大小(以空间大小指定)
#:绝对容量
+#:增量
-n:指定逻辑卷的名称
-s:指定创建逻辑卷的快照
* lvcreate -s -n 快照名 -L 大小 逻辑卷 -p r (只读属性)
-p:设置属性 r 只读属性
创建好lvm,并查看
⑤格式化逻辑卷
mkfs.ext4 /dev/myvg2/mylv2
⑥创建挂载点
mkdir /tmp/mylv2
⑦挂载逻辑卷的设备文件,并查看
mount /dev/myvg/mylv /tmp/mylv
查看当前文件系统大小
剩余130M
①lvextend -L +100M /dev/myvg/mylv
②lvs
③拉伸大小:resize2fs /dev/myvg/mylv
*lvm缩减
1.卸载逻辑卷 umount /dev/myvg/mylve2fsck -f /dev/myvg/mylv
3.使用resize2fs 缩减文件系统大小
resize2fs /dev/myvg/mylv 00M --- 调整到800M
4.使用lvreduce缩减逻辑卷大小
lvreduce -L 800M /dev/myvg/mylv ---缩减到800M
注:逻辑卷大小>文件系统大小
三、linux计划任务:
未来的某个时间执行一次任务,或者周期性执行某个任务,执行结果会通过邮件通知。
定时任务:at batch
周期性任务:crontab
系统任务调度:
/etc/crontab
用户任务调度:
/var/spool/cron
-s | "邮件主题" |
-C | "抄送地址" |
-b | "密送地址" |
-f | "发送人地址" |
-F | 发送人姓名 |
echo "test"|mail -s test nebulalinux03
at
1、时间定义
- hh:mm 12:11
- noon teatime
- AM PM 8am 9pm
- 2018-8-7 2018/8/7
- + 5 minutes hours days weeks
- today tomorrow
2、语法结构
at 选项 参数
-q 列出任务
-f 从文件中读取
-l 列出任务
-d 指定删除
-v 列出已执行未删除的任务
atq:列出用户的计划任务
atrm :根据Job number 删除 at任务
batch:在系统空闲情况下执行at任务
cron命令
* * * * *
分钟 小时 月天 月 周 天
(0 - 59) (0 - 23) (1 - 31) (1 - 12) (0 - 7)
时间表示法:
1、特定值
40 8 * * * ==>8:40
2、*
* 8 * * * ==>8:00
3、连续值 时间段
8-10 9-17
4、离散值 八点和10点
8,10,12
5、定义时间点 时间步长
/4 每隔四小时
注意:定义步长需要能被整除
5 * * * * 每小时执行一次,每小时的第五分钟执行一次
3 4 * * 5 每周五4点03执行一次
5 6 7 * * 每月的7号6点05执行一次
7 8 9 10 * 每年10月9号8点07执行一次
8 9 * * 3,4 每星期的周3,周4的9点 08执行一次
0 8,9,10 * * 6,7 每星期的周6周天的8点 9点 10点都执行一次
*/5 * * * 3,5 每星期的周三周五每隔5小时都执行一次每两分钟=每隔一分钟
crontab 语法结构:
-e | 编辑任务 |
-l | 列出任务列表 |
-r | 移除任务 |
-i | 移除时确认,与-r一起使用 |
-u | user:root用户可为指定用户管理cron任务 |
习题答案:
1、* * * * * ls -l /home
2、3,15 * * * * ls -l/home
3、3,15 8-12 * * * ls -l/home
4、3,15 11-18 */2 * * ls -l/home
5、0 18 * * * service network restart
6、0 1 * * 7 service httpd restart
7、0 * * * * service httpd restart
8、* * 4 * 1-5 service network restart
9、* * 1 1 * service network restart
10、0 23-7 * * * service network restart
计划任务规范:
1、脚本要规范,脚本存放位置要规范,便于维护
2、定时任务要写注释
3、执行的脚本要带绝对路径
4、执行结果的标准输出或者错误输出>/dev/null
5、可以以命令完成的任务,也要卸载脚本里
6、分用户执行