馬哥教育網絡班N22期+第7周課程練習

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

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

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

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

mount -o noatime,noauto /dev/sdb1 /data/mydata

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

fdisk /dev/sdb
n
p2+1G
t82w
mkswap /dev/sdb2 
swapon /dev/sdb2

3、寫一個腳本

(1)、獲取并列出當前系統上的所有磁盤設備;

(2)、顯示每個磁盤設備上每個分區相關的空間使用信息;

#!/bin/bashfor i in `blkid | cut -d: -f1`;do
    echo $i
    df -h $idone

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

屏幕快照 2016-10-17 13.01.15?屏幕快照 2016-10-17 13.01.15.png
此圖源自:維基百科

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

mdadm -C /dev/md0 -l1 -c128 -n2 -x1 /dev/sdb{1,2,3}

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

準備3塊2G的磁盤分區,并格式化為ext4的格式:/dev/sdb{5,6,7}

mdadm -C /dev/md1 -n3 -l5 -c256 /dev/sdb{5,6,7}
mkfs.ext4 /dev/md1

vim /etc/fstab添加一行

/dev/md1 /backup ext4 defaults,acl,noatime 0 0

7、寫一個腳本

(1) 接受一個以上文件路徑作為參數;

(2) 顯示每個文件擁有的行數;

(3) 總結說明本次共為幾個文件統計了其行數;

#!/bin/bashdeclare -i sumdeclare -i fsum
sum=0fsum=0read -p "input filepath:" -a path
file_arg=${#path[*]}for i in `seq 0 $[${file_arg}-1] ` ;do
  echo "i=$i"
  if [ -e ${path[$i]} -a -f ${path[$i]} ] ;then
    fline=$(wc -l ${path[$i]}| cut -d' ' -f1)    echo "${path[$i]} lines is ${fline}"
    let sum=$sum+$fline
        let fsum+=1
  else
    echo "${path[$i]} is not file"
  fi
  echo "file number is $fsum ,sumlines $sum"done

8、寫一個腳本

(1) 傳遞兩個以上字符串當作用戶名;

(2) 創建這些用戶;且密碼同用戶名;

(3) 總結說明共創建了幾個用戶;

#!/bin/bashdeclare -i argnumread -p "input username:" -a u_name
argnum=${#u_name[*]}for i in `seq 0 $[$argnum-1]`;do
        useradd ${u_name[$i]}
        echo ${u_name[$i]} | passwd --stdin ${u_name[$i]} >/dev/nulldone
        echo "adduser count : $argnum "~

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

#!/bin/bashdeclare -i uiddeclare -i sum
sum=0for i in {1..20};do
  useradd visitor$i
  uid=$(id -u visitor$i)  let sum=$sum+$uiddone
  echo "uidsum is $sum"~

10、寫一腳本,分別統計/etc/rc.d/rc.sysinit、/etc/rc.d/init.d/functions和/etc/fstab文件中以#號開頭的行數之和,以及總的空白行數;

#!/bin/bash
 sum=$(sed -n '/^[#]/ p' /etc/rc.d/rc.sysinit | wc -l) echo $sum
 sum2=$(sed -n '/^[#]/ p' /etc/rc.d/init.d/functions | wc -l)  echo $sum2
 sum3=$(sed -n '/^[#]/ p' /etc/fstab | wc -l)  echo $sum3sumspace=$(sed -n '/^$/ p' /etc/rc.d/rc.sysinit /etc/fstab /etc/rc.d/init.d/functions| wc -l)  echo "space conut: $sumspace"

11、寫一個腳本,顯示當前系統上所有默認shell為bash的用戶的用戶名、UID以及此類所有用戶的UID之和;

#!/bin/bashdeclare -i sum
sum=0sed -n '/bash$/p' /etc/passwd | cut -d: -f1,3for i in `sed -n '/bash$/p' /etc/passwd | cut -d: -f3`;do
        sum+=$idone
   echo "uidsum:$sum"

12、寫一個腳本,顯示當前系統上所有,擁有附加組的用戶的用戶名;并說明共有多少個此類用戶;

#!/bin/bashdeclare -i sum
sum=0while read lines;do
  username=$(echo $lines | cut -d: -f1)  if [ `id -G $username | wc -w` -ge 2 ];then
        sum+=1
        echo $username
   fidone</etc/passwdecho "user number : $sum"

13、創建一個由至少兩個物理卷組成的大小為20G的卷組;要求,PE大小為8M;而在卷組中創建一個大小為5G的邏輯卷mylv1,格式化為ext4文件系統,開機自動掛載至/users目錄,支持acl;

創建4個大小為5G的分區:/dev/sd{b,c,d,e}1,使用fdisk的子命令-t變更分區id為8e。
1.創建PV

lvcreate /dev/sd{b,c,d,e}1



2.創建VG

vgcreate -s 8M myvg /dev/sd{b,c,d,e}1



3.創建帶下為5G的邏輯卷mylv1

lvcreate -L 5G -n mylv1 myvg



4.格式化ext4文件系統

mkfs.ext4 /etc/mapper/myvg-mylv1



5.開機自動掛載
vim /etc/fstab

/etc/mapper/myvg-mylv1 /users ext4 defaults,acl 0 0


14、新建用戶magedu;其家目錄為/users/magedu,而后su切換至此用戶,復制多個文件至家目錄;

useradd -d /users/magedu magedusu -l magedu
cp /etc/fstab /etc/rc.d/rc.sysinit ~

15、擴展mylv1至9G,確保擴展完成后原有數據完全可用;

resize2fs /etc/myvg/mylv1 9G

16、縮減mylv1至7G,確保縮減完成后原有數據完全可用;

縮減文件系統容量

umount /users
resize2fs /dev/myvg/mylv1 7G



縮減lv容量

lvreduce -L 7G /dev/myvg/mylv1


17、對mylv1創建快照,并通過備份數據;要求保留原有的屬主屬組等信息;

lvcreate -s -n snapshot -L 512M /dev/myvg/mylv1

原創文章,作者:N22-武漢-enfp,如若轉載,請注明出處:http://www.www58058.com/52377

(0)
N22-武漢-enfpN22-武漢-enfp
上一篇 2016-10-24
下一篇 2016-10-24

相關推薦

  • lvm 邏輯卷管理

    標簽:LVM 創建 擴容 縮減 一、LVM  LVM是 Logical Volume Manager(邏輯卷管理)的簡寫,它由Heinz Mauelshagen在Linux 2.4內核上實現。LVM將一個或多個硬盤的分區在邏輯上集合,相當于一個大硬盤來使用,當硬盤的空間不夠使用的時候,可以繼續將其它的硬盤的分區加入其中,這樣可以實現磁盤空間的動態管…

    Linux干貨 2015-05-18
  • 腳本編寫規范

    腳本編寫規范 腳本名稱以.sh結尾,名稱見名知意 盡量使用UTF-8編碼,注釋及輸出盡量使用英文 一般給到執行權限,但一些關于變量的配置文件不用加執行權限 執行的時候可以使用bash執行,或者使用bash -x 調試執行 腳本首行以#!/bin/bash,無空格,不帶選項 第二行為空格或者添加一行空注釋 開始注釋內容:  #!/bin/bash&n…

    Linux干貨 2017-04-16
  • vim編輯器的使用

    vim          vim是一個類似于vi的文本編輯器,不過在vi的基礎上增加了很多功能,在早起vim和Emacs編輯器打的很火熱,在1999年被linuxwork文本編輯分類的優勝者,而vim屈居第二,但2000年vim贏得了salashdot beanie的最佳開放源代…

    系統運維 2016-08-09
  • Homework Week-14 iptables及tcpwraper訪問控制

    系統的INPUT和OUTPUT默認策略為DROP; 1、限制本地主機的web服務器在周一不允許訪問;新請求的速率不能超過100個每秒;web服務器包含了admin字符串的頁面不允許訪問;web服務器僅允許響應報文離開本機; iptables -A INPUT -d 192.168.1.101 -p …

    Linux干貨 2016-12-05
  • Linux進程查看及管理(2)

     Linux進程查看及管理的工具:pstree, ps, pidof, pgrep, top, htop, glances, pmap, vmstat, dstat, kill, pkill, job, bg, fg, nohup  vunt]] mstat命令: vmstat [options] [delay [co procs: r:…

    Linux干貨 2015-09-28
  • 第二周作業

    一Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 which命令:顯示(shell)命令全部的路徑 which [option] programmame […] –skip-alias:忽略別名   whereis命令:搜索二進制程序,源碼,和幫助手冊頁的命令 whereis [option] na…

    Linux干貨 2017-02-18
欧美性久久久久