作业一:
1) 开启Linux系统前添加一块大小为15G的SCSI硬盘
2) 开启系统,右击桌面,打开终端
3) 为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑分区,大小为5G
4) 格式化主分区为ext3系统
5) 将逻辑分区设置为交换分区
mkswap /dev/sdb5----sdb5是指逻辑分区
6) 启用上一步的交换分区
swapon /dev/sdb5
7) 查看交换分区的状态
swapon -s 查看交换分区状态
作业二:free命令查看内存
整理buffer与cache的作用
A buffer is something that has yet to be "written" to disk. A cache is something that has been "read" from the disk and stored for later use.
1、buffer(缓冲)是为了提高内存和硬盘(或其他I/O设备)之间的数据交换的速度而设计的。
2、cache(缓存)
从CPU角度考虑,是为了提高cpu和内存之间的数据交换速度而设计的,例如平常见到的一级缓存、二级缓存、三级缓存。 cpu在执行程序所用的指令和读数据都是针对内存的,也就是从内存中取得的。由于内存读写速度慢,为了提高cpu和内存之间数据交换的速度,在cpu和内存之间增加了cache,它的速度比内存快,但是造价高,又由于在cpu内不能集成太多集成电路,所以一般cache比较小,以后intel等公司为了进一步提高速度,又增加了二级cache,甚至三级cache,它是根据程序的局部性原理而设计的,就是cpu执行的指令和访问的数据往往在集中的某一块,所以把这块内容放入cache后,cpu就不用在访问内存了,这就提高了访问速度。当然若cache中没有cpu所需要的内容,还是要访问内存的。
从内存读取与磁盘读取角度考虑,cache可以理解为操作系统为了更高的读取效率,更多的使用内存来缓存可能被再次访问的数据。
缓冲(buffers)是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。linux有一个守护进程定期清空缓冲内容(即写入磁盘),也可以通过sync命令手动清空缓冲。
简单来说,buffer是即将要被写入磁盘的,而cache是被从磁盘中读出来的。 buffer是由各种进程分配的,被用在如输入队列等方面。一个简单的例子如某个进程要求有多个字段读入,在所有字段被读入完整之前,进程把先前读入的字段放在buffer中保存。
cache经常被用在磁盘的I/O请求上,如果有多个进程都要访问某个文件,于是该文件便被做成cache以方便下次被访问,这样可提高系统性能。
**** buffer是用于存放到要输出到disk(块设备)的数据,而cache是用于存放从disk上读出的数据。
计算真实的内存使用率
-/+buffer/cache used 除以 mem total
如图计算如下:
559480/100343212
内存真实剩余量:340120+20+103812=443952
buffers下的20,cached下面的103812只是分配给buffer和cache的,但是还未使用!
作业三:dd命令测试硬盘速度
标准答案:dd /if=/dev/zero of=/a.txt bs=8k count=1
此方法是非常业余的硬件速度测试方法
time dd if=/dev/zero of=/var/test/ bs=8k count=2
作业四:查找一个名为init的进程,并且将其强制杀死
ps aux | grep init
kill -9 781
作业五:rpm命令
1) 挂载光盘文件到/media目录
mount /dev/ser0 /media
2) 进去/media目录下的Packages目录
cd /media/Packages
3) 查看系统已安装的所有rpm包
rpm -qa
4) 查看系统是否安装dhcp软件包
rpm -qa | grep dhcp
5) 安装dhcp软件包
rpm -i dhcp*
6) 查看dhcp软件包的信息
rpm -qi dhcp
7) 查看dhcp软件包中所包含的所有文件
rpm -ql dhcp
8) 查看/bin/ls文件是由哪个软件包产生
rpm -qf /bin/ls
9) 卸载dhcp软件包
rpm -e dhcp
作业六:yum命令
1) 自定义yum仓库:createrepo
[root@localhost /]#mkdir /rpm_bak
[root@localhost /]#cp /media/Packages/apr-* /rpm_bak/
[root@localhost /]#cp /media/Packages/mailcap-2.1.41-2.el7.noarch.rpm /rpm_bak/
[root@localhost /]#cp /media/Packages/httpd-2.4.6-40.el7.centos.x86_64.rpm /rpm_bak/
[root@localhost /]# createrepo /rpm_bak/
Spawning worker 0 with 17 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@localhost rpm_bak]# ls -l /rpm_bak
出现repodata目录
drwxr-xr-x. 2 root root 4096 3月 17 18:41 repodata
2) 自定义repo文件
[root@localhost yum.repos.d]# pwd
/etc/yum.repos.d
[root@localhost yum.repos.d]# cat local.repo
[local]
name=local repo
baseurl=file:///rpm_bak
enabled=1
gpgcheck=0
3) 使用yum命令安装httpd软件包
yum -y install httpd
4) 卸载httpd软件包:
yum –y remove 软件名
5) 使用yum安装组件'KDE 桌面':
yum –y groupinstall 组件名
6) 掌握使用yum删除组件‘KDE 桌面’:
yum –y groupremove 组件名
7) 掌握清除yum缓存:
yum clean all
8) 使用yum查找软件包:
yum search 软件包名
作业七:源码安装python
或者
[root@localhost tools]# wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz 确保虚拟机可以上网
[root@localhost tools]# yum grouplist
[root@localhost tools]# yum groupinstall -y "开发工具"
tar xf Python-3.6.0.tgz
cd Python-3.6.0/
./configure --prefix=/usr/local/python36
make && make install
设置环境变量
[root@localhost python36]# PATH=/usr/local/python36/bin:$PATH
[root@localhost python36]# echo $PATH
/usr/local/python36/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@localhost python36]# export PATH
[root@localhost bin]# tail -2 /etc/profile
PATH=/usr/local/python36/bin:$PATH
export PATH