练习1:CentOS6光盘合并
1、创建相关目录
mkdir /mnt/{dvd{1,2,3},iso}
2、将光盘挂载至系统中(注意:需要两个光驱)
echo '- - -' > /sys/class/scsi_host/host0/scan
echo '- - -' > /sys/class/scsi_host/host1/scan
echo '- - -' > /sys/class/scsi_host/host2/scan
#使用以上任意一条命令,如果不能识别再换另一条执行。
3、挂载光盘
mount /dev/sr0 /mnt/dvd1
mount /dev/sr1 /mnt/dvd2
4、将两个光驱内的文件复制到一个新目录中
cp -av /mnt/dvd1/* /mnt/dvd3
cp -v /mnt/dvd2/Packages/*.rpm /mnt/dvd3/Packages/
5、合并TRANS.TBL,将DVD2中TRANS.TBL的信息追加到DVD1中TRANS.TBL后面, 并排序保存
cat /mnt/dvd2/Packages/TRANS.TBL >>/mnt/dvd3/Packages/TRANS.TBL
mv /mnt/dvd3/Packages/{TRANS.TBL,TRANS.TBL.BAK}
sort /mnt/dvd3/Packages/TRANS.TBL.BAK >/mnt/dvd3/Packages/TRANS.TBL
rm -rf /mnt/dvd3/Packages/TRANS.TBL.BAK
6、生成ISO文件
mkisofs -r -o /root/CentOS-6.6-x86_64-Everything.iso /mnt/dvd3
练习2:将[1,34,9,32,55,87,323]排序,结果为[1,9,32,34,55,87,323]
echo "[1,34,9,32,55,87,323]"|sed -r 's/(\[)|(\])//g'|sed 's/,/\n/g'|sort -n|xargs|sed 's/ /,/g;s/^/[&/;s/$/&]/'
echo "[1,34,9,32,55,87,323]"|grep -Po '\d+'|sort -n|awk '{for(i=1;i<=NF;i++){if(NR==1){a=$0}else{a=a","$0}}}END{print "["a"]"}'
练习3:正则表达式匹配邮箱
grep -E '^[[:alnum:]_]+\@[[:alnum:]_]+\.([[:alnum:]]{2,6})(\.[[:alnum:]]{2,6})*$' abcd
练习4:创建由三块硬盘组成的可用空间为2G的RAID5设备,要求其chunk大小为256k,文件系统为ext4,开机可自动挂载至/mydata目录。
mdadm -C -a yes /dev/md0 -n 3 -l 5 -c 256 /dev/sd{b,c,d}
#创建raid
mdadm -Ds >/etc/mdadm.conf
#写入配置文件
UUID=0cd4f9d6-b3a5-43bf-adf4-5712f3d1d3cc /mnt/raid xfs defaults 0 0
#开机自动挂载
练习5:创建一个至少有两个PV组成的大小为20G的名为testvg的VG,要求PE大小为16MB,而后在卷组中创建大小为5G的逻辑卷testlv,挂载至/users目录。
lvcreate /dev/sdb
vgcreate -s 16M vg00 /dev/sdb
lvcreate -n testlv -L 5G vg00
mkfs.ext4 /dev/vg00/testlv
mount -U 76548196-ce5b-414c-94ef-ca479ba4bae6 /users
练习6:新建用户archlinux,要求其家目录为/users/archlinux,而后su切换至archlinux用户,复制/etc/pam.d目录至自己的家目录。
useradd -d /users/archlinux archlinux
cp -a /etc/pam.d .
练习7:扩展testlv至7G,要求archlinux用户的文件不能丢失
lvextend -r -L 7G /dev/vg00/testlv
练习8:收缩testlv至3G,要求archlinux用户的文件不能丢失
umount /dev/vg00/testlv
e2fsck -f /dev/vg00/testlv
resize2fs /dev/vg00/testlv 3G
lvreduce -L 3G /dev/vg00/testlv
mount -U 76548196-ce5b-414c-94ef-ca479ba4bae6 /users
练习9:对testlv创建快照,并尝试基于快照备份数据,验证快照的功能
lvcreate -n testlv_snap -s -L 1G /dev/vg00/testlv
mount /dev/vg00/testlv_snap /testlv_snap/