linux运维实战练习-2016年1月19日-2月3日课程作业

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux运维实战练习-2016年1月19日-2月3日课程作业相关的知识,希望对你有一定的参考价值。

1、描述centos6系统开机启动流程;

    a.开机Bios加电自检测各种硬件信息

    b.读取第一个可启动设备MBR,加载grub

    c.依据boot loader的设置初始化内核信息,内核依据initrd虚拟的磁盘和文件系统实现对根文件系统的挂载

    d.切换到根文件系统,

    e.启动系统第一个进程init,准备好系统所需要的各项服务

    f.登录界面

2、描述/etc/rc.d/sysinit脚本功能;

    通过分析代码查看sysinit所具有的功能有:

    a.取得网络环境与主机名

    b.激活udev和selinux

    c.挂载/etc/fstab文件中定义的文件系统

    d.去检测根文件系统,并以读写方式重装挂载根文件系统

    e.设置系统时钟;

    f.激活swap设备

    g.根据/etc/sysctl.conf文件设置内核参数

    h.激活lvm及软raid设备

    i.加载额外设备的驱动程序

    j.清理操作

3、总结文本处理工具sed及awk的用法;(必须附带示例)

    a.sed工具:sed是文本流编辑器,逐行对文件的内容进行处理

        用法:sed [option] ... ‘script‘ inputfile...

        选项:

            -n:静默模式,不输出模式空间的内容至屏幕

            -e:实现多点的功能编辑

            -f /path/from/script_file:从指定的文件读取编辑脚本

            -r:支持使用扩展的正则表达式

        地址界面方法:

            (1)不给地址:对全文进行处理

            (2)一个地址(单地址)

                #:指定的行

                /pattern/:被引用处模式所能够匹配到的每一行:

            (3)地址范围   

                 #,#:从第几行到第几行

                 #,+#:显示从第几行开始向后的N行

                 /pat1/,/pat2/:同时匹配2个参数

                  #,/pat1/:显示第几行匹配的内容

            (4)~:步进

     #sed -n 1~2p test.txt(第一行开始,每次增加2行,意思就是显示奇数行)

                    技术分享

     #sed -n 2~2p test.txt(从第二行开始显示,每次增加2行,意思就是显示偶数行)

                    技术分享

编辑命令:

        d:删除被地址界定选定的内容

        p:显示(打印)模式空间中的内容到屏幕上,只打印符合条件的行

        a \text:在行后面追加文本:支持使用\n实现多行追加;

        i \text:在行前面追加文本:支持使用\n实现多行追加;

        c \text:替换行为单行或多行文本:

        w /path/to/somefile:保存模式空间中匹配到的内容至指定文件中;

        r /path/from/somefile:读取指定文件的文本游戏 至模式空间中匹配到的行后;

        =:为模式空间中的行,打印行号;

        !:取反条件;对除了模式匹配到的行以外的行,进行操作;

        s///:支持使用其它分隔符,[email protected]@@,s###

替换标记:

g:行内全局进行替换:例:sed -n [email protected]@&[email protected] /etc/passwd  不带g选项,只替换每一行的第一次

p:如果替换成功,则显示替换成功的行

w /path/to/somefile:将替换成功的行保存至指定文件中

练习1:删除/boot/grub/grub.conf文件中所有以空白开头的行行首的空白字符

#sed ‘[email protected]^[[:space:]]\[email protected]@‘ /boot/grub/grub.conf

练习2:删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符

#sed ‘[email protected]^#[[:space:]]\[email protected]@‘ /etc/fstab 

练习3echo一个绝对路径给sed命令,取出其基名:

#echo "/etc/sysconfig" | sed ‘[email protected][^/]\[email protected]@‘

高级编辑命令:

h:把模式空间中的内容覆盖至保持空间中;

H:把模式空间的内容追加至保持空间中;

g:从保持空间取出数据覆盖至模式空间;

G:从保持空间取出数据追加至模式空间;

x:把模式空间中内容与保持空间中的内容进行互换操作

n:读取匹配到的行的下一行至模式空间;

N:追加匹配到的行的下一行至模式空间;

d:删除模式空间中的行;删除单行

D:删除多行模式空间中的所有行;

#sed -n n;p FILE(最出偶数行)

#sed 1!G;h;$!d test.txt(逆行显示文件内容)

#sed $!N;$!D test.txt(读文件的后2)

#sed $!d test.txt(最出文件最后一行)

#sed G test.txt(在每一行下面加一个空白行)

#sed /^$/d;G test.txt(每行间只保留一个空白行)

#sed n;d test.txt(只显示奇数行)

#sed -n 1!G;h;$p test.txt




        

    

本文出自 “激情燃烧的岁月” 博客,请务必保留此出处http://liuzhengwei521.blog.51cto.com/4855442/1738164

以上是关于linux运维实战练习-2016年1月19日-2月3日课程作业的主要内容,如果未能解决你的问题,请参考以下文章

linux运维实战练习-2016年1月19日-2月3日课程作业

linux运维实战练习-2016年1月19日-2月3日课程作业

linux运维实战练习-2016年1月19日-2月3日课程作业

linux运维实战练习-2016年3月4日-3月19日课程作业

linux运维实战练习-2016年3月4日-3月19日课程作业

linux运维实战练习-2016年3月4日-3月19日课程作业