20189205 《Liunx内核原理与分析》第一周作业
实验一、二 Liunx系统介绍
本部分介绍了Liunx系统的历史以及基本操作。
通过学习,我了解到Liunx是一款定制性极强的免费开源系统,其软件支持虽然不如Windows系统,但个性化以及安全性胜之一筹。
另外,Liunx系统主要是通过shell进行交互,它就像Windows中的命令行,通过基本输入输出进行命令操作。
实验三、四、五、六、七 Liunx的文件系统
本部分介绍了Liunx的文件系统与目录结构
Liunx的一个重要理念是:一切皆文件。系统中一切信息皆以文件形式存储,Linux 是以树形目录结构的形式来构建整个系统的,可以理解为树形目录是一个用户可操作系统的骨架,而系统中一切信息皆以文件形式存储在树形目录中。因此,文件管理是Linux系统中的一个重要内容。
实验三介绍了Liunx的用户管理以及文件权限设置:
* 通过adduser、deluser,我们可以进行用户添加、删除;
* 通过groups、usermod,我们可以查看、修改用户的用户组;
* 通过ls、ll、chown、chmod我们可以查看文件属性、修改文件所有人、修改文件读写执行权限。
实验四介绍了Liunx的目录结构和基本文件操作
* cd 切换当前路径
* mkdir 创建目录
* touch 创建空白文件
* cp 复制文件或目录(-r)
* rm 删除文件或目录(-r)
* mv 移动文件,亦可用于重命名文件
* cat、tac、nl 查看文件内容
* file 查看文件类型
* 作业 创建一个 homework 目录,建立名为 1.txt~10.txt 文件,并删除 1.txt~5.txt 。
实验五介绍了shell环境变量配置以及文件查找
* 作业 找出 /etc/ 目录下的所有以 .list 结尾的文件。
第一次查找时发现有部分目录查找权限不足,第二次使用root权限进行查找
实验六介绍了Liunx中文件的打包压缩方式,主要有zip和tar两种命令类型
* 作业 创建一个名为test的文件,分别用zip和tar打包成压缩包,再解压到/home/shiyanlou目录。
操作:
结果:
实验七介绍了磁盘管理
* 通过df、du查看磁盘与目录信息
* 通过dd复制数据内容
* 通过mkfs格式化磁盘
* 通过mount将磁盘挂载到系统上
* 作业 找出当前目录下面占用最大的前十个文件
挑战1 寻找文件
目标
1.找到sources.list文件
2.把文件所有者改为自己(shiyanlou)
3.把权限修改为仅仅只有自己可读可写
操作
1.利用find找到sources.list文件
2.利用chown和chmod修改文件所有者和文件权限
3.利用ll查看操作结果
实验八 帮助命令
本部分介绍了Liunx系统中的帮助命令,在操作中对于命令如果有疑问可以通过这些帮助命令进行查询。
主要有help、man、info三种类型。
实验九 任务计划
本部分介绍了Liunx系统中的crontab,通过设置crontab文件,并启动cron功能,系统可以周期性地自动执行设置的功能。
挑战2 备份日志
目标
1.为shiyanlou用户添加计划任务
2.每天凌晨3点的时候定时备份alternatives.log到/home/shiyanlou/tmp/目录
3.命名格式为年-月-日,比如今天是2017年4月1日,那么文件名为2017-04-01
操作
- 在crontab文件中添加: 00 3 * * * cp /var/log/alternatives.log /home/shiyanlou/tmp/(date +%Y-%m-%d)
2.打开cron功能
实验十、十一、十二、十三 文本内容操作
Linux系统中大量信息都存储在文本文件中,本部分介绍了如何在shell对这些文本内容进行操作
命令执行顺序:
; 用于顺序执行每一条命令
&& 若前一条命令执行结果为0则执行后一条命令
|| 若前一条命令执行结果不0则执行后一条命令
管道:
| 将前一条命令的输出做为后一条命令的输入
重定向:重定向标准输入输出的文件
>、>> 将前一条命令的输出重定向到其他文件
文件内容处理:
* cut 打印文本每一行的某一字段
* wc 计数工具,记录文本行数、单词数、字节数、字符数和输入文本中最长一行的字节数等信息
* sort 排序工具
* uniq 去重工具,可用来记录重复字段的数目
* grep 匹配字符串
* sed 对文本中的匹配字符串进行批量编辑
* awk 文本编辑器
* tr 删除或替换文本中的内容
* col 将文本中的tab替换为空格
* join 将两个文件内容进行匹配链接
* paste 简单讲多个文件内容连接起来
- 作业
- 在不使用dos2unix和unix2dos工具的情况下,使用前面学过的命令手动完成 dos 文本格式到 UNIX 文本格式的转换。
挑战3 历史命令
目标:
1.处理文本data,从里面找出出现频率次数前3的命令
2.将结果写入result
3.结果包含次数和命令,如“100 ls”
操作:
首先用cat读取文本内容,再用cut命令读取8位后的内容,再用uniq命令进行去重和计数,再用sort进行从多至少排序,再用head读取排名前三的命令,最后重定向存入result文件中。
挑战4 数据提取
目标:
1.在文件data中匹配数字开头的行,结果写入/home/shiyanlou/num文件
2.在文件data中匹配出正确格式的邮箱,结果写入一个名为/home/shiyanlou/mail的文件
操作:
数字:
邮箱:
实验十四 Linux系统软件安装
本部分介绍了如何在Linux系统中安装软件,包括了一下四种方法:
1.在线安装
2.从磁盘安装deb软件包
3.从二进制软件包安装
4.从源代码编译安装
实验十五、十六 Linux进程管理
本部分介绍了Linux系统中程序、进程、线程的概念和区别,并介绍了如何在Linux系统中查看进程的执行顺序和运行状态。
包括ps、pstree、top、kill、nice、renice等命令
实验十七 Linux日志系统
本部分介绍了Linux系统的日志功能与日志的备份、轮替功能。