N26-第七周作业-邢岩

马哥门徒-N26-邢岩


     今天看了一本书《运维前线:一线运维专家的运维方法、技巧与实践》,有一张运维全平台规划体系如下:N26-第七周作业-邢岩

     看完这张图,瞬间觉得自动化运维真的是很庞大精深,我只是在运维这片海洋的岸边,刚刚迈入一只脚步而已,究竟什么是山,什么是水,还不得而知。就让我化身一条小鱼,在这片汪洋大海中遨游吧!

     继续我今天的学习,第一题是创建一个10G分区,并格式为ext4文件系统        

          (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;

          (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳;


     ~]# fdisk /dev/sdb

     ~]# mkfs -t ext4 -b 2048 -m 2 -L MYDATA /dev/sdb1

     ~]# mount -o acl,noexec,noatime /dev/sdb1 /data/mydata

N26-第七周作业-邢岩N26-第七周作业-邢岩N26-第七周作业-邢岩


    第二题,创建一个大小为1G的swap分区,并创建好文件系统,并启用之;


     ~]# fdisk /dev/sdb

     ~]# partx -a /dev/sdb

     ~]# mkswap /dev/sdb2

     ~]# swapon /dev/sdb2

N26-第七周作业-邢岩N26-第七周作业-邢岩


     第三题,写一个脚本:

        (1)、获取并列出当前系统上的所有磁盘设备;

        (2)、显示每个磁盘设备上每个分区相关的空间使用信息;


    #!/bin/bash
    # Author:jeque
    # Description:disk partition
    ls /dev/[s,h]d[a-z]
   fdisk -l ls /dev/[s,h]d[a-z]

N26-第七周作业-邢岩

N26-第七周作业-邢岩


    第四题,总结RAID的各个级别及其组合方式和性能的不同。


     RAID:就是将多个硬盘组织成一个来使用(Redundant Arrays of Independent Disks),其主要的作用是提高IO能力和提高耐用性,耐用性可以通过磁盘冗余来实现。
     多块磁盘组织在一起的工作方式有所不同,主要分为以下级别:

类别 硬盘及容量 性能及数量
RAID-0 用于平行存储,即条带。不适合存储关键数据,一般存储非关键性数据,如缓存数据;数据不重要,业务一样重要,也不一定可以把缓存系统放在RAID-0  读、写性能提升;
           可用空间:N*min(S1,S2,…)
           无容错能力
           最少磁盘数:2,2+
RAID-1 镜像存储,每块硬盘存储全部数据 读性能提升、写性能略有下降;
           可用空间:1*min(S1,S2,…)
           有冗余能力
           最少磁盘数:2, 2+
 RAID-4 将三块或者以上的硬盘组织成一个硬盘,最后一块磁盘存储校验码(异或运算),前面的存储数据有一个盘集中检验,有可能会导致性能瓶颈
RAID-5 一般是左对称  读写性能提升
            可用空间:(N-1)*min(S1,S2,…)
            有容错能力:1块磁盘
            最少磁盘数:3,3+
 RAID-6 两块磁盘作为校验盘,最少需要4块 读、写性能提升
            可用空间:(N-2)*min(S1,S2,…)
            有容错能力:2块磁盘
            最少磁盘数:4,4+
混合类型  RAID-10:两两一组,做成RAID-1,最后组织成RAID-0  比较靠谱的机制
             读写性能提升
             可用空间:N*min(S1,S2,…)/2
             有容错能力:每组镜像最多只能坏一块;
             最少磁盘数:4,4+
 RAID-01:三个磁盘组成RAID-0,最后合成RAID-1  不太靠谱
 RAID-50:更不可靠
 RAID7:价格非常贵
 JBOD:Just a Bunch Of Disks
将多块磁盘的空间合并成一个大的连续空间使用;可用空间:sum(S1,S2,…)      

      常用级别:RAID-0,RAID-1,RAID-5,RAID-10,RAID-50,JBOD

      几种RAID示意图:

N26-第七周作业-邢岩N26-第七周作业-邢岩N26-第七周作业-邢岩N26-第七周作业-邢岩


     第五题,创建一个大小为10G的RAID1,要求有一个空闲盘,而且CHUNK大小为128k;


     ~]# mdadm -C /dev/md1 -n 2 -x 1 -c 128 -l 1 /dev/sdb2 /dev/sdb3 /dev/sdb4

     ~]# mdadm -D /dev/md1N26-第七周作业-邢岩N26-第七周作业-邢岩


     第六题,创建一个大小为4G的RAID5设备,chunk大小为256k,格式化ext4文件系统,要求可开机自动挂载至/backup目录,而且不更新访问时间戳,且支持acl功能;


     ~]# mdadm -C /dev/md5 -n 3 -c 256 -l 5 /dev/sdb1 /dev/sdb2 /dev/sdb3

     ~]# mdadm -D /dev/md5

     ~]# mkfs -t ext4 /dev/md5

     ~]# mount -o auto,acl,noatime /dev/md5 /backup

N26-第七周作业-邢岩N26-第七周作业-邢岩N26-第七周作业-邢岩     


    第七题,写一个脚本:

       (1) 接受一个以上文件路径作为参数;

       (2) 显示每个文件拥有的行数;

       (3) 总结说明本次共为几个文件统计了其行数;


    #!/bin/bash
    # Author: jeque
    # Description: file number

    declare -i sum=$#
    if [ $# -eq 0 ];then
       echo “please input the file path”
       exit 1
    fi
    for i in $*;do
        echo “$i lines :$(grep “.*” $i |wc -l)”
    done
    echo “there are $sum files total.”

N26-第七周作业-邢岩


    第八题,写一个脚本

      (1) 传递两个以上字符串当作用户名;

      (2) 创建这些用户;且密码同用户名;

      (3) 总结说明共创建了几个用户;


#!/bin/bash
# Author: jeque
# Description:创建用户名
declare -i sum=$# 
if [ $# -lt 2 ];then
    echo “please input at least two users:”
    exit 1
fi
for i in $*;do
    useradd $i
    password=$i
    echo $password | passwd –stdin $i
done
echo “Created users are $sum total.”
N26-第七周作业-邢岩


     第九题,写一个脚本,新建20个用户,visitor1-visitor20;计算他们的ID之和;


#!/bin/bash
# Author: jeque
# Description:创建用户名
declare -i sumuserid=0
for (( i=1;i<=20;i++));do
    username=visitor$i
    useradd $username
    uid=`id -u $username`
    let sumuserid+=$uid
done
echo “The users id sum:$sumuserid”

N26-第七周作业-邢岩N26-第七周作业-邢岩


    最后,让我用一句话结束今天的学习,学号shell编程的核心:多练—多思考—再练—再思考,坚持如此循环即可!N26-第七周作业-邢岩N26-第七周作业-邢岩N26-第七周作业-邢岩

原创文章,作者:jeque,如若转载,请注明出处:http://www.178linux.com/70501

(0)
jequejeque
上一篇 2017-03-10 18:17
下一篇 2017-03-11 16:17

相关推荐

  • 第一周课程练习

    马哥教育网络班22期+第一周课程练习 1、描述计算机的组成及其功能   CPU(运算器和控制器),存储器(内存和外存),输入/输出设备。     (1)运算器:对数据进行加工处理(包括算术运算与逻辑运算);     (2)控制器:负责从存储器取出一条指令,并指出下一条指…

    Linux干货 2016-08-15
  • shell 脚本编程基础

    Shell脚本简介: Shell脚本是一种特殊的程序,它是用户与linux系统内核之间的一个接口,shell是一个工具程序,在用户登录后系统启动。它解释并运行由命令行或脚本文件输入的命令,从而实现用户与内核间的交互。 Shell脚本:也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的,是利用shell的功…

    Linux干货 2016-08-21
  • dns 服务

     DNS服务 1.正向解析    1. 创建解析库                    2.改配置文件主要改 any no no 3个选项   3.添加一个解…

    2017-05-31
  • 计算机的组成及功能

    计算机的组成及功能 计算机由CPU、存储器、输入设备、输出设备等部件组成。 CPU:为计算机的中央处理器,是计算机的核心部分,由运算器和控制器组成。 运算器:CPU中用于进行算术运算和逻辑运算的部件。 控制器:整个CPU的指挥中心,控制程序中指令读取、解析并产生相应的操作控制信息保证各程序的有序执行。 存储器:计算机中用来存储数据、程序等信息的部件,并在需要…

    Linux干货 2017-07-02
  • 搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin

    搭建个人博客&论坛(LAMP):wordpress、discuz、phpMyAdmin 一、快速部署LAMP架构平台 1.CentOS 6系统部署 所需安装包:httpd, php, mysql-server, php-mysql ]# yum install -y  httpd php&n…

    Linux干货 2016-10-17
  • linux之netfilter与 iptables学习

    Linux之netfilter与iptables学习 一、为什么我们的主机需要防火墙 二、Linux下防火墙如何实现 三、四表五链学习 四、主机防火墙 五、网络防火墙 六、iptables命令学习 七、主机防火墙规则备份与恢复 ====================================== 一、为什么我们的主机需要防火墙?  &nbs…

    Linux干货 2016-06-23

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-30 14:29

    图文并茂,总结的非常到位,继续加油。