N26-博客作业-week7

1、创建一个10G分区,并格式为ext4文件系统;

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

    ~]# fdisk /dev/sda
    Welcome to fdisk (util-linux 2.23.2).

    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.


    Command (m for help): n
    All primary partitions are in use
    Adding logical partition 5
    First sector (83888128-146800639, default 83888128): 
    Using default value 83888128
    Last sector, +sectors or +size{K,M,G} (83888128-146800639, default 146800639): +10G 
    Partition 5 of type Linux and of size 10 GiB is set

    Command (m for help): w
    The partition table has been altered!
    
    ~]# mke2fs -t ext4 -b 2048 -L 'MYDATA' -m 2 /dev/sda5
    ~]# tune2fs -o acl /dev/sda5

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

    ~]# mkdir -p /data/mydata
    ~]# mount -o noatime,noexec /dev/sda5 /data/mydata

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

    ~]# fdisk /dev/sda
    n
    默认起始值
    +1G
    t
    82
    w
    
    ~]# partx -a /dev/sda
    ~]# mkswap /dev/sda6
    ~]# swapon /dev/sda6

3、写一个脚本
   (1)、获取并列出当前系统上的所有磁盘设备;
   (2)、显示每个磁盘设备上每个分区相关的空间使用信息;

   #!/bin/bash
    #
    hd_num=$(fdisk -l | grep -E "^[/]" | cut -d" " -f1)
    echo -e "The disks on this system are:\n$hd_num"

    for i in $hd_num; do
        echo -e "The information about $i is:\n$(df -h $i)\n"
    done

4、总结RAID的各个级别及其组合方式和性能的不同;

        RAID(Redundant Arrays of Independent Disks):独立磁盘冗余阵列

        RAID的常见级别:
            RAID-0,RAID-1,RAID-5,RAID-10

        RAID-0:
            至少需要磁盘数量为2,通过连续以位或字节为单位分割数据,并行读/写于多个磁盘上,提高数据读写性能,但没有容错能力

        RAID-1:
            至少需要磁盘数量为2,通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能,且拥有容错能力

        RAID-5:
            至少需要磁盘数量为3,不单独指定奇偶盘,而是在所有磁盘上交叉地存取数据及奇偶校验信息,读/写指针可同时对阵列设备进行操作,提供了更高的读写性能及拥有容错能力

        RAID-10:
            至少需要磁盘数量为4,RAID 10是先镜像再分区数据,再将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各自视为RAID 1运作,提高了读写性能且拥有容错能力

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

 分别创建/dev/sda5 /dev/sda6 /dev/sda7 并修改system id为fd
    ~]# fdisk /dev/sda
    n
    默认起始值
    +10G
    t
    fd
    w
    
    ~]# mdadm -C /dev/md0 -l 1 -c 128 -n 2 -x 1 /dev/sda{5,6,7}

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

   分别创建/dev/sda5 /dev/sda6 /dev/sda7 并修改system id为fd
    ~]# fdisk /dev/sda
    n
    默认起始值
    +4G
    t
    fd
    w
    
    ~]# mdadm -C /dev/md0 -l 5 -c 256 -n 3 /dev/sda{5,6,7}
    ~]# mke2fs -t ext4 /dev/md0
    ~]# vim /etc/fstab
    /dev/md0    /backup     ext4    defaults,noatime,acl    0   0

7、写一个脚本
   (1) 接受一个以上文件路径作为参数;
   (2) 显示每个文件拥有的行数;
   (3) 总结说明本次共为几个文件统计了其行数;

 #!/bin/bash
    #
    declare -i TEXT=0
    
    if [ $# -lt 1 ]; then
        echo "At least one directory!"
        exit 1
    fi
    
    for i in $*;do
        if  [ ! -f $i ]; then
            echo "${i} is not a ASCII text";
        else
            echo "${i} have "$(wc -l ${i})" lines"
            let TEXT++
        fi
    done
    
    echo "The file numbers:$TEXT"

8、写一个脚本
   (1) 传递两个以上字符串当作用户名;
   (2) 创建这些用户;且密码同用户名;
   (3) 总结说明共创建了几个用户;

   #!/bin/bash
    #
    declare -i user_sum=0
    
    if [ $# -lt 2 ];then
        echo "at least two strings"
        exit 1
    fi  
    
    for user_name in $@;do
        useradd $user_name && echo "$user_name" | passwd --stdin $user_name &> /dev/null
        let user_sum++
    done
    
    echo "The total number of created user is:$user_sum"

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

 #!/bin/bash
    #  
    declare -i idSum=0
    
    for i in $(seq 20);do
        if ! grep "^visitor${i}\>" /etc/passwd &> /dev/null;then
            useradd visitor$i
        fi
        idSum=$($idSum+$(id -u visitor${i}))
    done
    
    echo $idSum


原创文章,作者:浙江-咲,如若转载,请注明出处:http://www.178linux.com/71362

(0)
浙江-咲浙江-咲
上一篇 2017-03-19
下一篇 2017-03-19

相关推荐

  • 浅谈DNS基本原理以及实现方法(一)

     DNS(Domain Name System,域名系统),是目前互联网上最不可或缺的服务器之一,我们在互联网从访问一个网站,到发送一封电子邮件,再到定位域中的域控制器,无时无刻不再使用着DNS为我们提供的服务,那为什么我们会需要这样一个服务那?带着这样一个疑问让我们先来认识一下什么是DNS吧  DNS最核心的工作就是域名解析,也就是把计…

    Linux干货 2015-12-15
  • 用户和组相关配置文件

    1. /etc/passwd文件详解 输入vi /etc/passwd 可以查看此文件的内容 [root@localhost ~]# vi /etc/passwdroot:x:0:0:root:/root:/bin/bash root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/…

    Linux干货 2016-10-23
  • MAN手册各章节功能介绍及快捷键键位整理

       初学linux ,请教别人的时候,遇到人不耐烦回答我等菜菜的问题,都会说一句,“自己去man”,“翻过man了吗,再来问吧”,哦,my gd,这个man到底是何方超人啊,其实man就是linux自带的文档,假如你不知道ls这个命令的用法,你可以试着敲入 man  ls  ,然后来看看,会有啥结果。效果不错吧,一般…

    Linux干货 2016-10-18
  • 四大开源协议比较:BSD、Apache、GPL、LGPL

          现今存在的开源协议很多,而经过Open Source Initiative组织通过批准的开源协议目前有58种。我们现在常见的开源协议如BSD, GPL, LGPL,MIT等都是OSI批准的协议。如果要开源自己的代码,最好也是选择这些被批准的开源协议。   这里我们来看四种最常用的开源协议及它们的适用范围,供那些准备开…

    系统运维 2016-08-15
  • 马哥教育网络班22期+第1周课程练习

    一、计算机组成部分及其功能:硬件系统和软件系统     1、计算机的硬件系统组成及其功能:         运算器:处理数据的算术运算及逻辑运算即数据加工处理;         控制器:根据…

    Linux干货 2016-08-15
  • Shell脚本编程—特殊用法(select)及函数、递归

    Shell脚本编程—特殊用法及函数   一、while的特殊用法: 1、使用格式: while read 变量名;do    循环体 done </PATH/TO/filename 注:依次从指定的文件中的内容逐行读取,并把读取到的每行赋值给变量。 2、例题: 扫描/etc/passwd文件每一行,如发现GECOS字段为空…

    Linux干货 2016-08-21

评论列表(1条)

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

    再接再励。