第七周博客作业

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

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

[root@localhost tmp]# cat /proc/partitions
major minor  #blocks  name

   8       16   52428800 sdb
   8       17   10490413 sdb1
   8        0  125829120 sda
   8        1     512000 sda1
   8        2  125316096 sda2
 253        0   52428800 dm-0
 253        1    2031616 dm-1
 253        2   70852608 dm-2

[root@localhost tmp]# mke2fs -t ext4 -b 2048 -m 2 -L MYDATA /dev/sdb1
[root@localhost tmp]# tue2fs -o acl /dev/sdb1

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

[root@localhost tmp]# mount -o noexec,noatime /dev/sdb1 /data/mydata
[root@localhost tmp]# cat /proc/mounts | tail -1
/dev/sdb1 /data/mydata ext4 rw,seclabel,noexec,noatime,errors=continue,acl,barrier=1,data=ordered 0 0

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

[root@localhost tmp]# cat /proc/partitions
major minor  #blocks  name

   8       16   52428800 sdb
   8       17   10490413 sdb1
   8       18    1060290 sdb2
   8        0  125829120 sda
   8        1     512000 sda1
   8        2  125316096 sda2
 253        0   52428800 dm-0
 253        1    2031616 dm-1
 253        2   70852608 dm-2

[root@localhost tmp]# mkswap /dev/sdb2
Setting up swapspace version 1, size = 1060284 KiB
no label, UUID=91650adf-be7e-405c-ad08-23ba722a9cdc
[root@localhost tmp]# swapon /dev/sdb2
[root@localhost tmp]# swapon -s
Filename                Type        Size    Used    Priority
/dev/dm-1                               partition   2031612 0   -1
/dev/sdb2                               partition   1060284 0   -2

3、写一个脚本

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

#!/bin/bash
#
echo "All disk info:"
fdisk -l /dev/[sh]d[a-z]

echo -e "\nEvery disk section space info:"
df -h

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

(1)RAID 0

它將兩個以上的磁碟並聯起來,成為一個大容量的磁碟。在存放資料時,分段後分散儲存在這些磁碟中,因為讀寫時都可以並列處理,所以在所有的級別中,RAID 0的速度是最快的。但是RAID 0既沒有冗餘功能,也不具備容錯能力,如果一個磁碟(物理)損壞,所有資料都會遺失

(2)RAID 1

兩組以上的N個磁碟相互作鏡像,在一些多執行緒作業系統中能有很好的讀取速度,理論上讀取速度等於硬碟數量的倍數,另外寫入速度有微小的降低。只要一個磁碟正常即可維持運作,可靠性最高。其原理為在主硬碟上存放資料的同時也在鏡像硬碟上寫一樣的資料。當主硬碟(物理)損壞時,鏡像硬碟則代替主硬碟的工作。因為有鏡像硬碟做資料備份,所以RAID 1的資料安全性在所有的RAID級別上來說是最好的。但無論用多少磁碟做RAID 1,僅算一個磁碟的容量,是所有RAID中磁碟利用率最低的一個級別。

(3)RAID 5

是一種儲存效能、資料安全和儲存成本兼顧的儲存解決方案。它使用的是Disk Striping(硬碟分割)技術。RAID 5至少需要三塊硬碟,RAID 5不是對儲存的資料進行備份,而是把資料和相對應的奇偶校驗資訊儲存到組成RAID5的各個磁碟上,並且奇偶校驗資訊和相對應的資料分別儲存於不同的磁碟上。當RAID5的一個磁碟資料發生損壞後,可以利用剩下的資料和相應的奇偶校驗資訊去取消復原被損壞的資料。RAID 5可以理解為是RAID 0和RAID 1的折衷方案。RAID 5可以為系統提供資料安全保障,但保障程度要比鏡像低而磁碟空間利用率要比鏡像高。RAID 5具有和RAID 0相近似的資料讀取速度,只是因為多了一個奇偶校驗資訊,寫入資料的速度相對單獨寫入一塊硬碟的速度略慢,若使用「回寫快取」可以讓效能改善不少。同時由於多個資料對應一個奇偶校驗資訊,RAID 5的磁碟空間利用率要比RAID 1高,儲存成本相對較便宜。

(4)RAID 6

與RAID 5相比,RAID 6增加第二個獨立的奇偶校驗資訊塊。兩個獨立的奇偶系統使用不同的演算法,資料的可靠性非常高,任意兩塊磁碟同時失效時不會影響資料完整性。RAID 6需要分配給奇偶校驗資訊更大的磁碟空間和額外的校驗計算,相對於RAID 5有更大的IO操作量和計算量

(5)RAID 10/01

RAID 10是先鏡射再分割資料,再將所有硬碟分為兩組,視為是RAID 0的最低組合,然後將這兩組各自視為RAID 1運作。 RAID 01則是跟RAID 10的程式相反,是先分割再將資料鏡射到兩組硬碟。它將所有的硬碟分為兩組,變成RAID 1的最低組合,而將兩組硬碟各自視為RAID 0運作。 當RAID 10有一個硬碟受損,其餘硬碟會繼續運作。RAID 01只要有一個硬碟受損,同組RAID 0的所有硬碟都會停止運作,只剩下其他組的硬碟運作,可靠性較低。

(6)RAID 50

RAID 5與RAID 0的組合,先作RAID 5,再作RAID 0,也就是對多組RAID 5彼此構成Stripe存取。

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

首先创建3个10G的分区
[root@localhost ~]# mdadm -C /dev/md0 -n 2 -l 1 -c 128 -a yes -x 1 /dev/sdb{5,6,7}
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device.  If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# mdadm -D /dev/md0----查看RAID信息
/dev/md0:
    Version : 1.2
Creation Time : Thu Mar  2 05:53:06 2017
 Raid Level : raid1
 Array Size : 10482176 (10.00 GiB 10.73 GB)
 Used Dev Size : 10482176 (10.00 GiB 10.73 GB)
Raid Devices : 2
Total Devices : 3
Persistence : Superblock is persistent

Update Time : Thu Mar  2 05:56:13 2017
      State : clean 
Active Devices : 2
Working Devices : 3
Failed Devices : 0
Spare Devices : 1

       Name : localhost.localdomain:0  (local to host localhost.localdomain)
       UUID : c42d1d57:b82097a3:26791324:f5a196c2
     Events : 17

Number   Major   Minor   RaidDevice State
   0       8       21        0      active sync   /dev/sdb5
   1       8       22        1      active sync   /dev/sdb6

   2       8       23        -      spare   /dev/sdb7

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

首先创建3个4G分区
[root@localhost ~]# mdadm -C /dev/md1 -n 3 -l 5 -c 256 -a yes /dev/sdc{1,2,3}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
    Version : 1.2
Creation Time : Thu Mar  2 06:36:17 2017
 Raid Level : raid5
 Array Size : 8393728 (8.00 GiB 8.60 GB)
Used Dev Size : 4196864 (4.00 GiB 4.30 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent

Update Time : Thu Mar  2 06:37:04 2017
      State : clean 
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0

     Layout : left-symmetric
 Chunk Size : 256K

       Name : localhost.localdomain:1  (local to host localhost.localdomain)
       UUID : 624b89fc:12e746b4:8647a43e:a191ba69
     Events : 18

Number   Major   Minor   RaidDevice State
   0       8       33        0      active sync   /dev/sdc1
   1       8       34        1      active sync   /dev/sdc2
   3       8       35        2      active sync   /dev/sdc3
[root@localhost ~]# mke2fs -t ext4 /dev/md1
[root@localhost ~]# vim /etc/fstab
[root@localhost ~]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Mon Feb 27 19:57:39 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/VolGroup-lv_root /                       ext4    defaults        1 1
UUID=876d1797-6fc6-48e9-854d-e8d93fe7d615 /boot                   ext4    defaults        1 2
/dev/mapper/VolGroup-lv_home /home                   ext4    defaults        1 2
/dev/mapper/VolGroup-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
/dev/md1 /backup ext4 defaults,noatime,acl 0 0

7、写一个脚本

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

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

read -p "Please input one or more than one file path:" filename

#Confirm if it's not empty
if [[ -z "$filename" ]];then
        echo "Please ensure one or more than one file path"
        exit 2
fi

#Confirm if it's a normal file.If yes, count line and number of files
for i in $filename;do
        if ! [ -f $i ];then
                echo "Pleaae ensure input valid file path"
        else
                line=$(wc -l $i | cut -d' ' -f1)
                echo "$i total line $line"      
                let sum++
        fi
done

echo "Total $sum file"

8、写一个脚本

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

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

for i in $*;do
    if [ $# -lt 2 ];then
        echo "Please ensure two or more than two username"
        exit 1
    elif id $i &> /dev/null;then
        echo "The user already exist"
        exit 2 
    else
        useradd $i
        echo "$i" | passwd --stdin $i 
        let sum++
    fi
done

echo "Total add user $sum"

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

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

for i in $(seq 1 20);do
        useradd visitor$i
        id=$(id -u visitor$i)
        idsum=$[$idsum+$id]
done

echo "vistor1-vistor20 idsum:$idsum"

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

(0)
N25_PierceN25_Pierce
上一篇 2017-03-06
下一篇 2017-03-06

相关推荐

  • varnish动静分离

    http://blog.51cto.com/sonlich/2060785

    2018-01-14
  • 浅谈编译kernel+busybox构建拥有远程ssh登录和web功能最小linux系统(一)

    实验环境win7+VM11.1 大致过程总揽 1,硬件准备以及查看硬件设备型号(不用担心,这些都是VM虚拟出来的) 2,编译环境的配置以及下载内核源码以及编译内核 3,编译busybox,以及提供系统正常运行的配置文件,初步运行linux系统 4,编译安装dropbear提供ssh服务 5,安装nginx;提供web服务 一,硬件准备以及查看硬件设备型号 由…

    Linux干货 2015-09-22
  • 主流Linux发行版对比

      对服务器来说,没有最好的Linux发行版。一切都取决于企业的实际需求。 如今Linux已不再只是一款自由操作系统,它还承载了许多企业的核心应用。在对比流行的Linux发行版时,不仅要考虑有吸引力的功能集,还要关注系统的支持与服务。 服务器管理员担心操作系统的维护和支持周期。维护生命周期指的是Linux发行版持续提供产品补丁和更新的时间。支持方面…

    Linux干货 2016-10-31
  • Linux之SELinux

      Linux之SELinux     本文包括以下内容SELinux概念启用SELinux管理文件安全标签管理端口标签管理SELinux布尔值开关管理日志查看SELinux帮助   SELinux介绍SELinux: Secure Enhanced Linux,是美国国家安全局(NSA=The National Se…

    Linux干货 2016-09-21
  • cp命令浅析

      cp主要作用    1拷贝文件到指定目录    2拷贝文件到指定文件    3拷贝多个文件到指定目录    4拷贝目录到指定目录    5拷贝多个目录到指定目录 先做些准备工作 &nbs…

    2017-04-04

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-15 00:58

    赞,raid这块建议用图示来说明会更好一点~~继续加油~