实验案例:检索、备份及编辑文件
实验环境:
为了进一步熟悉Linux服务器的配置文件,学会查看和编辑系统配置,需要管理员尽快掌握查看和检索文件内容的方法,以及在命令行界面中对vi文本编辑器的使用,并能够对文档进行备份与恢复操作。
需求描述:
一、练习文件查看及检索操作。
(1)查看/etc/filesystems文件,确认当前系统支持的文件系统类型。
查看/etc/filesystems文件:cat /etc/filesystems
(2)分页查看/etc/services文件,了解各种服务默认使用的协议、端口号。
分页查看:less /etc/services
(3)从/proc/meminfo文件中过滤出物理内存大小、空闲内存大小。
过滤、检索:grep “Mem” /proc/meminfo
二、练习备份与恢复操作。
(1)备份整个/etc目录树,制作成归档压缩包文件etc.tar.gz。
制作归档备份压缩文件:tar zcf etc.tar.gz /etc
(2)查看etc.tar.gz文件中包含的目录及文件列表。
Tar ztvf etc.tar.gz
(3)将etc.tar.gz文件恢复到/tmp目录下,确认后再删除/tmp/etc文件夹。
从归档文件中恢复数据:tar zxf etc.tar.gz -C /tmp
查看:ls -dl /tmp/etc/
删除:rm -rf /tmp/etc/
三、练习vi编辑器的基本使用。
(1)通过“man man | col -b > man.txt”操作创建man命令的文本手册页,用vi编辑器打开man.txt文件,以此文件作为练习素材。
创建man命令的文本手册页,保存为man.txt:man man | col �Cb > man.txt
打开man.txt文件:vi man.txt
(2)切换到末行模式,并输入“:set nu”命令显示出行号。
输入冒号“:”即切换到末行模式,直接输入“:set nu”即可显示行号。
(3)将第6行的内容复制到第2行,并删除第2行以后的几个空行。
复制:将光标移至第6行,按键yy,完成复制。
将光标移至第1行行末,按键p(小写的),完成粘贴。
或者:将光标移至第2行行首,按键P(大写的),完成粘贴。
删除:将光标移至第3行,按键“#dd”(#代表行数)(3行空行,按键3dd)
(4)在文件中查找“-K”字符串。
在命令模式下,按“/”键后输入指定的字符串。即输入“/-k”回车进行查找。
按n键可以移动到下一个查找结果;按N键移动到上一个查找结果。
(5)在文件中的所有“string”字符串替换成“BENET”。
在末行模式下,可以进行字符串的替换。
替换所有:输入“:% sub /string/BENET/g”(sub可简写为s,/g代表每一行所有匹配的都替换,去掉只替换每一行的第一个匹配的结果)
如果替换特定的范围时,可将%换成n,m(n,m代表数字范围)
(6)保存该文件后退出vi编辑器。
在末行模式下,执行保存退出:输入“:wq”即可。
(7)重新打开man.txt文件,只保留前5行,删除其余所有内容。
Vi man.txt
按“G”可以跳到最后一行,以便查看总的行数。
删除5行之后,将光标移至第6行,按键”#dd”,(#代表行数)
(8)复制/root/.bashrc文件的内容到第5行以后,然后另存为man2.txt文件。
在当前文件中读入其他文件内容,执行“:r 其他文件”
将光标移至第6行,在末行模式下输入“:r /root/.bashrc”按回车即可。
另存为:在末行模式下,执行“:w man2.txt”即可。
四、使用vi修改系统配置。
(1)为/etc/inittab、/etc/issue文件做好备份,以便在必要时进行恢复。
备份:1)cp /etc/inittab /etc/inittab.bak
2)cp /etc/issue /etc/issue.bak
(2)用vi编辑器打开/etc/inittab文件,查找到包含“id:5:initdefault:”字符串的行,将其修改为“id:3:initdefault:”。
Vi /etc/inittab
将“id:5:initdefault:”修改为“id:3:initdefault:”
重启后在引导中可以看到运行级别是3
(3)用vi编辑器打开/etc/issue文件,删除其中的所有内容,添加一行新的文字“Windows Server 2008 Enterprise RC2”(或者用户自己编写的其他文本)。
Vi /etc/issue
在命令模式下,删除所有内容:#dd(#代表行数)
在编辑模式(按a、i、o进行切换)下,编写新的内容即可。
按Esc退出编辑模式,输入“:wq”保存并退出。(“:”为末行模式)
(4)重启系统,观察Linux登录界面的变化(文本界面,个性化登录提示)。
重启系统:init 6
此时Linux登陆界面由图形界面切换到文本界面(即命令行模式)
个性化登录提示也变成了在/etc/issue编写的字样了~
(5)根据备份文件恢复/etc/inittab、/etc/issue文件的内容。
恢复备份文件:1)cp -f /etc/inittab.bak /etc/inittab
2)cp -f /etc/issue.bak /etc/issue
-f :覆盖目标同名文件或目录时不进行提醒,而直接强制复制。