第七周

第七周

  • 1

    创建一个10G分区,并格式为ext4文件系统;
       (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;
       (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳;
    # mke2fs -t ext4 -b 2048 -m 2 -L MYDATA /dev/sdb1;
    # mount -o acl,noatime,noauto -L MYDATA /data/mydata
  • 2

    创建一个大小为1G的swap分区,并创建好文件系统,并启用之;
    # fdisk /dev/sdb       ///   sdb5  大小1G  类型82
    # partprobe 
    # cat /proc/partitions
    # mkswap /dev/sdb5
    # free -m
    # swapon /dev/sdb5
    # free -m
  • 3

        写一个脚本
           (1)、获取并列出当前系统上的所有磁盘设备;
           (2)、显示每个磁盘设备上每个分区相关的空间使用信息;
    
        #!/bin/bash
        ls /dev/[sh]d*
        fdisk -l `ls /dev/[sh]d*`
  • 4

    总结RAID的各个级别及其组合方式和性能的不同;
        raid级别:
            raid 0 : 条带卷
                     至少需要两块磁盘,两块磁盘并行处理数据,将数据分两部分读写
                     读写性能提高,raid中性能最高
                     无容错性
                     可用空间: N*min(s1,s2...)
    
            raid 1 : 镜像卷
                     至少需要两块磁盘,两块磁盘存储相同数据,用于备份
                     读写性能相当于一块独立磁盘,无提升
                     容错性高,raid中容错性最高
                     可用空间: 1*min(s1,s2...)
    
            raid 4 : 至少三块磁盘
                        两块磁盘做数据存储,第三个用于独立存储数据校验码
                     读写性能提高
                     有容错性为一块磁盘
    
            raid 5 : 至少三块磁盘
                        三块磁盘存储数据及校验码,校验码分别存储在三个磁盘上
                     读写性能提高
                     有容错性为一块磁盘
                     可用空间: (N-1)*min(s1,s2...)
    
            raid 6 : 至少四块磁盘
                     比raid5第二个独立的奇偶校验信息块,分别以不同算法计算
                     读写性能提高
                     有容错性为两块磁盘
                     可用空间: (N-2)*min(s1,s2...)
    
        raid组合:
            raid 10 :
                      至少4块磁盘
                      两两磁盘分别做raid1,再将两raid1阵列做raid0
                      读写性能提高
                      有容错性为两块,不同raid1中最多损失1块磁盘
                      可用空间: N*min(S1,S2,...)/2
            raid 50 :
                      至少6块磁盘
                      三三磁盘分别做raid5,再将两raid5阵列做raid0
                      读写能力提高
                      有容错性为两块磁盘,不同raid5中最多损失1块磁盘
    
            raid 60 :
                      至少8块磁盘
                      四四磁盘分别做raid6,再将两raid阵列做raid0
                      读写能力提高
                      有容错性为4块磁盘,不同raid6中最多损伤2块磁盘
  • 5

    创建一个大小为10G的RAID1,要求有一个空闲盘,而且CHUNK大小为128k;
        # fdisk /dev/sdb    # 分区大小10G,类型fd
        # fdisk /dev/sdc    # 分区大小10G,类型fd
        # fdisk /dev/sdd    # 分区大小10G,类型fd
        # mdadm -C /dev/md1 -n 3 -x 1 -c 128 -l 1 /dev/sdb5 /dev/sdc5 /dev/sdd5
        # mdadm -D /dev/md1
  • 6

    创建一个大小为4G的RAID5设备,chunk大小为256k,格式化ext4文件系统,要求可开机自动挂载至/backup目录,而且不更新访问时间戳,且支持acl功能;
        # mdadm -C /dev/md1 -c 256 -n 3 -l 5 /dev/sdb5 /dev/sdc5 /dev/sdd5 
        # mkfs -t ext4 /dev/md1
        # mkdir /backup
        # vim /etc/fstab
        /backup    /dev/md1    ext4    noatime,acl   0  0
  • 7

    写一个脚本
       (1) 接受一个以上文件路径作为参数;
       (2) 显示每个文件拥有的行数;
       (3) 总结说明本次共为几个文件统计了其行数;
    
        #!/bin/bash
        declare -i time=0
        while true;do
            wc -l $1
            shift
            time+=1
            if [ "$1" == "" ];then
                    break
            fi
        done
        echo "file number of : $time"
  • 8

    写一个脚本
       (1) 传递两个以上字符串当作用户名;
       (2) 创建这些用户;且密码同用户名;
       (3) 总结说明共创建了几个用户;
    
    #!/bin/bash 
    declare -i time=0
    while true;do
            useradd $1;echo $1|passwd --stdin $1
            shift
            time+=1
            if [ "$1" == "" ];then
                    break
            fi
    done
    
    echo "create user number of : $time"
  • 9

    写一个脚本,新建20个用户,visitor1-visitor20;计算他们的ID之和;
    #/bin/bash
    declare -i id_sum=0
    declare -i userid=0
    for i in `seq 1 20`;do
        useradd visitor$i
        userid=$(id -u visitor$i)
        id_sum+=$userid
    done
    
    echo "id sum : $id_sum"
  • 10

    写一脚本,分别统计/etc/rc.d/rc.sysinit、/etc/rc.d/init.d/functions和/etc/fstab文件中以#号开头的行数之和,以及总的空白行数;
    #/bin/bash
    declare -i line_sum=0
    declare -i spli_sum=0
    line_sum=$(grep "^#" /etc/rc.d/rc.sysinit /etc/rc.d/init.d/functions /etc/fstab|wc -l|cut -d' ' -f1 )
    spli_sum=$(grep "^$" /etc/rc.d/rc.sysinit /etc/rc.d/init.d/functions /etc/fstab|wc -l|cut -d' ' -f1 )
    echo "line sum of : $line_sum"
    echo "space line sum of : $spli_sum"
  • 11

    写一个脚本,显示当前系统上所有默认shell为bash的用户的用户名、UID以及此类所有用户的UID之和;
    #/bin/bash
    grep "bash$" /etc/passwd |cut -d: -f1,3
    declare -i uid_sum=0
    for i in $(grep "bash$" /etc/passwd |cut -d: -f3);do
        uid_sum+=$i
    done
    echo "sum of uid : $uid_sum"
  • 12

    写一个脚本,显示当前系统上所有,拥有附加组的用户的用户名;并说明共有多少个此类用户;
    #!/bin/bash
    cat /etc/group|cut -d: -f 1,4|grep "[^:]$"|cut -d: -f1 
    cat /etc/group|cut -d: -f 1,4|grep "[^:]$"|cut -d: -f1|wc-l
  • 13

    创建一个由至少两个物理卷组成的大小为20G的卷组;要求,PE大小为8M;而在卷组中创建一个大小为5G的逻辑卷mylv1,格式化为ext4文件系统,开机自动挂载至/users目录,支持acl;
    # fdisk /dev/sdb     /// sdb5 分区大小10G,类型8e
    # fdisk /dev/sdc     /// sdc5 分区大小10G,类型8e
    # pvcreate /dev/sdb5 /dev/sdc5
    # vgcreate -s 8M myvg1 /dev/sdb5 /dev/sdc5
    # lvcreate -L 5G  -n mylv1 myvg1
    # mkfs -t ext4 /dev/myvg1/mylv1
    # mkdir /users ; vim /etc/fstab
    /users  /dev/myvg1/mylv1  ext4  defaults,acl  0  0
    # mount -a
  • 14

    新建用户magedu;其家目录为/users/magedu,而后su切换至此用户,复制多个文件至家目录;
    useradd -d /users/magedu magedu
    su - magedu
    cp /etc/issue /etc/fstab  ~
  • 15

    扩展mylv1至9G,确保扩展完成后原有数据完全可用;
    # lvextend -L 9G /dev/myvg1/mylv1
    # resize2fs /dev/myvg1/mylv1 9G
  • 16

    缩减mylv1至7G,确保缩减完成后原有数据完全可用;
    # umount /dev/myvg1/mylv1
    # e2fsck -f /dev/myvg1/mylv1
    # resize2fs /dev/myvg1/mylv1  7G 
    # lvreduce  -L  7G  /dev/myvg1/mylv1
    # mount /dev/myvg1/mylv1 /users
  • 17

    对mylv1创建快照,并通过备份数据;要求保留原有的属主属组等信息;
    # lvcreate -L 500M -p r -s mylv1-snapshot -n /dev/myvg1/mylv1                    
    # mkidr /mnt/mylv_ss ; mount /dev/myvg1/mylv1-snapshot /mnt/mylv_ss
    # cp -a /mnt/mylv_ss/*  /tmp                      ///将快照卷数据复制到tmp目录
    # umount /mnt/mylv_ss 
    # lvremove /dev/myvg1/mylv1-snapshot

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

(0)
N25_sadanN25_sadan
上一篇 2017-02-20
下一篇 2017-02-20

相关推荐

  • 7月21号:CentOS6.8(及7)基础配置项+Linux入门(1)

    7月21号,马哥第二天,主要内容有三个部分:一、基本命令复习二、CentOS6.8(及7)基础配置项;三、linux入门(1) 一、基本命令复习    ls         查看文件内容  l查看文件详细信息  -a显示包含隐藏文…

    Linux干货 2016-08-05
  • ☞RAID使用手册

    RAID使用手册 RAID演示

    Linux干货 2016-09-02
  • rsyslog将日志记录于MySQL中,并用loganalyzer进行分析日志

    1、首先来安装lamp环境的支持,与其相关的软件包      # yum -y install rsyslog-mysql mariadb-server php php-mysql php-gd httpd       说明:rsyslog-mysql在数据库中生成一个库文件,但这个文件需…

    Linux干货 2016-10-23
  • 用户、组及文件相关的一些命令

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。 cp -r /etc/skel /home/tuser1,因为是目录文件所以要有-r ls -ld /etc/skel chmod 000 -R /home/tuser1 ls -al /home/tuser1/ 2、编辑/…

    2017-07-23
  • bash脚本编程之流程控制if、for、while、until简介

    概述     之前介绍了一些bash脚本编程的变量、运算、条件测试的一些基础内容,了解了脚本实际上就是一些语句加上一些流程控制组合起来,实现某种功能的可执行文件。我们知道,条件测试的目的,实际就是为了实现一种流程的控制,那么本篇就简单介绍一下bash里面常见的流程控制语句,包括选择、循环等内容,具体包括以下几个部分: …

    Linux干货 2016-08-18
  • 堡垒机-麒麟开源堡垒机苹果 Mac支持版本发布

      近日,麒麟开源堡垒机团队开发测试了支持Mac OS苹果操作系统的Web插件,苹果系统用户可以直接和Windows用户一样,登录到Web平台,使用点击的方式调动运维工具并且登录到目标系统进行操作运维。 Mac OS插件支持ssh、telnet、rdp、vnc、x11、sftp、ftp、应用发布等所有协议。   注:麒…

    Linux干货 2016-05-19

评论列表(1条)

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

    作业完成的不很好,再接再励。