1. 总结linux安全模型
认证:验证用户身份
授权:不同用户设置不同权限
审计
2. 总结学过的权限,属性及ACL相关命令及选项,示例。
rwxs chown chgrp chmod setfacl(设置) getfacl(查看)
3. 结合vim几种模式,学会使用vim几个常见操作。
1)如何打开文件。并在打开文件(命令模式)之后如何退出文件。
vim+文件名 esc:wq
2)打开文件(命令模式)之后,进入插入模式。并在插入模式中如何回到打开文件的状态(命令模式),并在命令模式之后如何退出文件。esc+q
3)打开文件(命令模式)之后,进入插入模式,编写一段话,"马哥出品,必属精品", 之后从插入模式中如何回到打开文件的状态(命令模式),并在命令模式之后如何退出文件。
vim +文件名
i
"马哥出品,必属精品"
esc
:wq
4)使用cat命令验证文件内容,是刚刚自己写的内容。
cat +文件名
5)(可选),命令模式下,光标在单词,句子上进行前后,上下跳转。行复制粘贴。行删除。
行删除 dd
回退u
向后移动一个字符 ctrl+b
向前移动一个字符 ctrl+f
移动到行首 ctrl+a
移动到行尾 ctrl+e
从光标处剪切到行尾 ctrl+k
从光标处剪切到词尾 alt+b
从光标剪切到单词的开头:alt+backspace
从光标处剪切到前一个空格:ctrl+w
粘贴最后剪切的文本:ctrl+y
循环并粘贴先前剪切的文本:alt+y
循环并粘贴先前命令的最后一个参数:alt+.
4. 总结学过的文本处理工具,文件查找工具,文本处理三剑客, 文本格式化命令(printf)的相关命令及选项,示例。
grep 查找 yum install list | grep httpd
sed 10 | sed -n ‘1~2p’
awk ‘{print “hello.nwk” }’
5. 总结文本处理的grep命令相关的基本正则和扩展正则表达式。
. 任意单个字符
【wang】指定范围的字符
【^wang】不在指定范围的字符
【:alnum:】字母和数字
【:alpha:】代表任何英文大小写字符
【:lower:】小写字母
【:upper:】大写字母
【:blank:】空白字符
【:space:】水平和垂直的空白字符
【:cntrl:】不可打印的控制字符 退格和删除等
【:digit:】十进制数字
【:xdigit:】十六进制数字
【:graph:】可打印的非空白字符
【:print:】可打印的字符
【:punct:】标点符号
* 匹配前面字符任意次
?0或1次
+1次或多次
{n}匹配n次
{m,n}至少m,至多n次
^ 行首
$行尾
\<,\b 语首
\>,\b 语尾
()分组
a|b a或者b
c|cat c或者cat
(C|c)at C或cat
6. 总结变量命名规则,不同类型变量(环境变量,位置变量,只读变量,局部变量,状态变量)如何使用。
(1)变量名必须有一定意义,并且意义准确。
(2)不建议大小写混用。
(3)在失去意义的情况下,尽量使用较短的变量名,用时暂时存储一个计算数值,把变量命名为tmp_count显然要比this_is_a_temperary_counter好
(4)不采用匈牙利命名法表示变量的类型
(5)函数名应该以动词开头,因为函数是一组具有特定功能的语句块
(6)尽量避免使用全局变量
7. 通过shell编程完成,30鸡和兔的头,80鸡和兔的脚,分别有几只鸡,几只兔?
read -p "input the sumheads:"head
read -p "input the sumfeet:"feet
[["$head"=~^[1`9][0`9]*$]]&&[["$feet"=~^[1`9][0`9]*$]]||{echo wrong format:exit}
rabbits=$[$[feet/2]-$head]
chicken=$[$head-$rabbits]
c=$[$chiken*2]
h=$[$rabbits*4]
tmp=$[$[$c+$h]/$feet]
echo chiken=$chiken
echo rabbit=$rabbits
8. 结合编程的for循环,条件测试,条件组合,完成批量创建100个用户,
1)for遍历1..100
for i in {1...100}
do
echo $i
done
2)先id判断是否存在
id +username
3)用户存在则说明存在,用户不存在则添加用户并说明已添加。
#!/bin/bash
read -p "please input a username:"
if id -u $username >/dev/null 2>&1;then
echo "user exists"
else
echo "user does not exist"
fi
9. 磁盘存储术语总结: head, track, sector, cylinder.
head:磁头
track:磁道
sector:扇区
cylinder:柱面
10. 总结MBR,GPT结构。
MBR 即主引导记录 其分区不超过2T 只能存储4个分区表条目
GPT突破了MBR的限制 能储存多于4个分区表条目 并且允许有128个主分区可以对超过2T的磁盘进行分区
11. 总结学过的分区,文件系统管理,SWAP管理相关的命令及选项,示例
fdisk, parted, mkfs, tune2fs, xfs_info, fsck, mount, umount, swapon, swapoff
fdisk -l 查看现在的分区
fdisk +磁盘目录 分区
n
两个回车
+40G再按两个回车
fdisk -l
save后退出
mkfs 建立文件系统 等于Windows中的格式化创建简单卷
mount +分区目录挂载
12. 总结raid 0, 1, 5, 10, 01的工作原理。总结各自的利用率,冗余性,性能,至少几个硬盘实现。
raid0 至少需要两块硬盘,如果一块硬盘损坏则全部的硬盘会全部损坏,容量是所有硬盘容量的总和 读写能力成倍提升。
raid1 镜像至少两块硬盘容量只有一块硬盘的容量 但是另外一个硬盘为备份 读能力提升 写能力下降
raid5 校验区保存在每个磁盘上 读写性能有所提升 最少三块硬盘 可用磁盘空间-1 允许最多一块硬盘损坏。
raid10 由raid0和raid1组成两组raid1组成raid0至少四块硬盘
raid01 由raid1和raid0组成两组raid0组成raid1至少四块硬盘
13. 完成不影响业务对LVM磁盘扩容及缩容示例。
扩容:
pvcreate /dev/sdd
pvs
pvdisplay
vgextend -r -L +15G /dev/myvg/mylv
lvs
lvdisplay
df-h
resize2fs /dev/myvg/mylv
缩减:
umount /mnt/mylvm
fsck -f /dev/myvg/mylv
resize2fs /dev/myvg/mylv 10G
lvreduce -L 10G /dev/myvg/mylv
mount -a
df -h
lvdisplay