磁盘分区和脚本练习

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

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

mke2fs -t ext4 -b 2048 -m 2 -L MYDATA /dev/sdb5 
tune2fs -o acl /dev/sdb5 

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

mkdir /etc/mydate 
mount -o noexec,notime /dev/sdb5 /etc/mydate

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

[root@shijl ~]# mkswap /dev/sdb6
    Setting up swapspace version 1, size = 1053688 KiB
    no label, UUID=eab4467-707a-458c-b968-2f9d5ea28e2c
[root@shijl ~]#swapon /dev/sdb6

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

#!/bin/bash
#
fdisk_all=$(fdisk -l | grep "Disk")

echo "$fdisk_all"

fdisk_df=$(fdisk -l | grep "/dev/[sh]d[a-z][0-9]")
        
echo "$fdisk_df"

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

磁盘阵列比较表

RAID级别

最少硬盘

最大容错

可用容量

读取性能

写入性能

安全性

目的

应用产业

单一硬盘

(参考)

0

1

1

1

JBOD

1

0

n

1

1

无(同RAID 0

增加容量

个人(暂时)存储备份

0

2

0

n

n

n

一个硬盘异常,全部硬盘都会异常

追求最大容量、速度

视频剪接缓存用途

1

2

n-1

1

n

1

最高,一个正常即可

追求最大安全性

个人、企业备份

5

3

1

n-1

n-1

n-1

追求最大容量、最小预算

个人、企业备份

6

4

2

n-2

n-2

n-2

安全性较RAID 5

RAID 5,但较安全

个人、企业备份

10

4

n/2

n/2

n

n/2

安全性高

综合RAID 0/1优点,理论速度较快

大型数据库、服务器

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

mdadm -C /dev/md0 -a yes -n 2 -x 1 -l 1 -c 128 /dev/sdb{5,6,7}

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

mdadm -C /dev/md0 -a yes -n 3 -c 256 /dev/sdb{5,6,7}
  mke2fs -t ext4 /dev/md0
  mkdir /backup 
  lkid /dev/md0
  /dev/md0: UUID="18646fc6-0175-4642-888d-8d4b5b7f59ce" TYPE="ext4" 
   vim /etc/fstab
    #
    # /etc/fstab
    # Created by anaconda on Wed Aug  9 04:49:47 2017
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    /dev/mapper/vg_shijl-lv_root /                       ext4    defaults        1 1
    UUID=fc11ec9c-2215-45b9-bc43-2d4c120733a5 /boot                   ext4    defaults        1 2
    /dev/mapper/vg_shijl-lv_home /home                   ext4    defaults        1 2
    /dev/mapper/vg_shijl-lv_swap swap                    swap    defaults        0 0
    tmpfs                   /dev/shm                tmpfs   defaults        0 0
    devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
    sysfs                   /sys                    sysfs   defaults        0 0
    proc                    /proc                   proc    defaults        0 0
    UUID=18646fc6-0175-4642-888d-8d4b5b7f59ce /backup    ext4    defaults,acl,notime  0 0

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

#!/bin/bash
#
declare -i count=0

if [ $# -lt 1 ];then
    echo " At least one filename."
    exit 2
fi


for i in $*;do
     if [ -e $i ];then
      wc -l $i
      count+=1
     else
          echo "$i isn't exist"
      fi
done

echo "$count files have been counted

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

#!/bin/bash
#
declare -i count=0
if [ $# -lt 2 ];then
  echo "At least two username"
  exit 2
fi

for i in $*;do
   if [ id $i &> /dev/null ];then
      echo "$i user is exist"
   else
      useradd $i
      echo "$i" | passwd --stdin $i &> /dev/null
      count+=1
    fi
done

echo " $count users have been create"

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

#!/bin/bash
#
declare -i count=0

for i in {1..20};do
   if [ id $i &> /dev/null ];then
      echo "user is  exits"
   else
       useradd vistorl$1 &> /dev/null
       uid $(id -u vistorl$1)
       count+=$uid
    fi
done
        
echo " ID sum is $count"

 

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

(0)
N27_shijinlongN27_shijinlong
上一篇 2017-08-21
下一篇 2017-08-21

相关推荐

  • 网络分层基础概念与TCP,IP协议解析

    网络分层基础概念:   与ISO的OSI网络分层模型不同。网络分层事实上的标准为TCP/IP 的网络分层模型。   下图是他们是他们之间的对应关系。   左边为OSI网络分层模型。右边为TCP/IP的网络分层模型。 网络分层,是将一个大而复杂的网络,拆分为多个层次,每个层次单独完成自己的任务,多个层次再结合起来,完成一个复杂的通…

    2017-05-04
  • bash的工作特性-命令执行状态返回值、命令行展开

    bash的基础特性:命令的执行状态结果 命令执行的状态结果:      bash通过状态返回值来输出此结果:           成功:0           失败:1-255 命令执行完成之后,其状态返回值会保存于bash的特殊…

    Linux干货 2016-08-22
  • N21-北京-泥人-马哥教育网络班21期+第一周课程练习

    马哥教育网络班21期  第一周课程练习 一、计算机的组成 1、计算机主要由以下几部分组成:运算器 控制器 存储器(编址存储单元)、 输入、输出设备   2、运算器负责运算:只能做二进制的数学、逻辑运算, 控制器:控制由哪得到数据,放到哪去,协调运算器、存储器、输入、输出等设备 运算器、控制器整合到一起就是常说的中央处理器,也就是CPU。 …

    Linux干货 2016-07-12
  • 关于磁盘管理的例子

    今天来说一个关于磁盘管理的例子,通过这个例子也顺便了解一下此例子涉及到的一些相关命令、文件。 练习:创建一个2G的文件系统,块大小为2048byte, 预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 思路:1.在/etc/fstab中定义开机自动挂载信息    &nbs…

    Linux干货 2017-08-19
  • http状态码大全

    状态值:100 客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。 状态值:101 服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完这个…

    Linux干货 2016-11-01
  • N25第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash declare -a usersh nologin=0 login=0 usersh=($(cut -d’:’ -f7 /etc/passwd)) ##数组赋值时需…

    Linux干货 2017-03-04

评论列表(1条)

  • 马哥教育
    马哥教育 2017-09-02 20:54

    磁盘的操作直接关系到数据的安全,稍有不当,就可能导致数据的丢失,所以理解其概念非常有必要,执行命令前也要再三确认,加油。