磁盤管理及shell腳本編程練習

1、創建一個10G分區,并格式為ext4文件系統

  1. a)?要求其block大小為2048,預留空間百分比為2,卷標為MYDATA,默認掛載屬性包含acl;

~]# mke2fs –t ext4 –b 2048 –m 2 –L MYDATA? /dev/sda3

  1. b)?掛載至/data/madata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳;

~]# mount –o acl,noatime,noexec /dev/sda3 /data/mydata

2、創建一個大小為1G的swap分區,并創建好文件系統,并啟用之

~]# partx –a /dev/sda

~]# mkswap /dev/sda4

~]# swapon /dev/sda4

3、寫一個腳本

  1. a)?獲取并列出當前系統上所有磁盤設備
  2. b)?顯示每個磁盤設備上每個分區相關的空間使用信息

#!/bin/bash

disk=$(ls /dev/sd[a-z])

echo $disk

fdisk –l /dev/sd[a-z]

4、總結RAID的各個級別及其組合方式和性能的不同

磁盤陣列的英文全名是RedundantArrays of lnexpensive Disks (RAID),即容錯廉價磁盤陣列。RAID 可以通過一些技術將多個較小的磁盤整合成為一個較大的磁盤設備;而這個較大的磁盤功能可不止是存儲而已。它還具有數據保護的功能。整個RAID由于選擇的等級(level)不同。而使得整合后的磁盤具有不同的功能。基本常見的等級有這幾種。

RAID-0(等量模式,stripe):性能最佳

這種模式如果使用相同型號與容量的磁盤來組成時,效果較佳。這種模式的RAID會將磁盤先切出等量的區塊,然后當一個文件要寫入RAID時。該文件會依據塊的大小切割好。之后再依序放到各個磁盤里面去。由于每個磁盤會交錯存放數據。因此當你的數據要寫入RAID時。數據會被等量放置在各個磁盤上面。使用此等級必須要自行負擔數據損毀的風險,如果某一塊磁盤損毀了,那么文件數據將缺一塊。此時這個文件就損毀了。由于每個文件都是這樣存放的。因此RAID-0只要有任何一塊磁盤損毀。在RAID上面的所有數據都會丟失而無法讀取。

RAID-1(映像模式。mirror):完整備份

這種模式也是需要相同的磁盤容量,最好是一模一樣的磁盤。如果是不同容量的磁盤組成RAID-1時。那么容量將以最小的那一塊磁盤為主。這種模式主要是讓同一份數據完整保存在兩塊磁盤上面。因此,整體RAID的容量幾乎少了一半。由于兩塊磁盤內的數據一模一樣,所以任何一塊硬盤損毀時,數據還是可以完整保留下來。所以說RAID-1最大的優點大概就在于數據的備份。不過由于磁盤容量有一半用在備份,因此總容量會是全部磁盤容量的一半。雖然RAID-1的寫入性能不佳,不過讀取的性能還可以。這是因為數據有兩份在不同的磁盤上面,如果多個進程在讀取同一條數據是,RAID會自行取得最佳的讀取平衡。

RAID 0+1,RAID 1+0

RAID 0+1就是先讓兩塊磁盤組成RAID 0 ,并且這樣的設置共有兩組;然后將這兩組RAID 0再組成一組RAID 1。這就是RAID 0+1。反過來說,RAID1+0就是先組成RAID-1再組成RAID-0的意思。由于具有RAID 0和RAID 1的優點,所以性能得到提升,并且數據也得以備份。但同時總容量會少一半用來作為備份。

RAID 5:性能與數據備份的均衡考慮

RAID-5至少需要三塊以上的磁盤才能組成這種類型的磁盤陣列。這種磁盤陣列的數據寫入優點類似RAID-0,不過每個循環的寫入過程中,在每塊磁盤還加入一個同為檢查數據,這個數據會記錄其他磁盤的備份數據,用于當有磁盤損毀時的救援。由于有同位檢查碼,因此RAID5的總容量護士整體磁盤數量減一塊。當損毀的磁盤數量大于等于兩塊時,這整組RAID 5的數據就損毀了。因為RAID 5 默認僅能支持一塊磁盤的損毀情況。

5、創建一個大小為10G的RAID1,要求有一個空閑盤,而且CHUNK大小為128K

~]# mdadm –C /dev/md0 –l 1 –n 2 –a yes –c 128 –x 1 /dev/sdc{1,2,3}

6、創建一個大小為4G的RAID5設備,chunk大小為256k,格式化ext4文件系統,要求可開機自動掛載至/backup目錄,而且不更新訪問時間戳,且支持acl功能

~]# mdadm -C /dev/md1 -a yes -n 3 -c 256 -l 5 /dev/sdd{1,2,3}

~]# blkid /dev/md1

~]# mkdir /backup

~]# mount /dev/md1 /backup/

7、寫一個腳本

  1. a)?接受一個以上文件路徑作為參數
  2. b)?顯示每個文件擁有的行數
  3. c)?總結說明本次共為幾個文件統計了其行數

#!/bin/bash

#

declare –I sum=$#

if [$# -ep 0]; then

echo “please input the file path”

exit 1

fi

for I in $*;do

if [-f $i];then

line=$(wc –l $i | cut –d “ ” –f 1)

ecgo “$i has $line lines”

fi

done

echo “there are $sum files total.”

8、寫一個腳本

  1. a)?傳遞兩個以上字符串當作用戶名
  2. b)?創建這些用戶,且密碼同用戶名
  3. c)?總結說明共創建了幾個用戶

#!/bin/bash

#

declare –I sum=$#

if [$# -lt 1];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 ”Creatde users are $sum total.”

9、寫一個腳本,新建20個用戶,visitor1-visitor20;計算他們的ID之和

#!/bin/bash

#

sum=0

for I in {1..20};do

useradd $i

idsum=$(id –u $i)

let sum+=$idsum

done

echo “idsum=$sum”

 

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/88405

(1)
N27_wjxN27_wjx
上一篇 2017-11-14 15:29
下一篇 2017-11-15 16:00

相關推薦

  • N26-第二周博客作業

    一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 一) 目錄管理命令 1. cd :用于切換目錄。命令格式為:cd dirname 命令使用技巧: ~]# cd 進入用戶主目錄 ~]# cd – 進入上一次所在目錄 ~]# cd / 進入根目錄 ~]# cd ~ 進入用戶主目錄 ~]# cd .. 返回上一級…

    2017-03-01
  • linux系統啟動及kickstart

    1、簡述linux操作系統啟動流程
    2、簡述grub啟動引導程序配置及命令行接口詳解
    3、實現kickstart文件制作與光盤鏡像制作

    2018-01-17
  • 第六周作業

    第六周作業 1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; cp /etc/rc.d/rc.sysinit /tmp vim /tmp/rc.sysinit :進入末行模式 % s/^[[:space:]]/#&…

    Linux干貨 2016-10-09
  • vim的簡單應用

    vim的簡單應用         之前我們學習過Linux的思想,其中有一條就是一切皆文本,所以在這里大部分配置文件都是文本模式存在的,那么使用簡單的文字編輯器就可以修改配置了,之前我們學習過nano文本編輯器,但是Vim會比nano使用的更為方便,也更強大。 基本現在所有的Li…

    2017-06-17
  • linux文件管理類命令學習總結練習

    1、常用文件管理類命令:cp, mv, rm   cp: copy命令       單元復制 cp [OPTION]… [-T] SOURCE DEST                     DEST不存在…

    Linux干貨 2016-11-06

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-12-02 09:21

    創建磁盤的步驟沒有,可以簡單寫一下。

欧美性久久久久