1、自建yum仓库,分别为网络源和本地源
2、编译安装http2.4,实现可以正常访问,并将编译步骤和结果提交。
3、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统 ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项
4、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小 为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录
1、自建yum仓库,分别为网络源和本地源
一、网络源
(1)备份CentOS-Base.repo
# cd /etc/yum.repos.d/
# cp CentOS-Base.repo{,.bak}
(2)从网上下载yum源
# wget http://mirrors.aliyun.com/repo/Centos-7.repo
(3)将下载的yum源设置为默认源
# mv Centos-7.repo CentOS-Base.repo
(4)清除源缓存并生成新缓存
# yum clean all
# yum makecache
二、本地源
挂载方式有多种:
ftp://
http://
nfs://
file://
此处我直接使用本地下载的centos7镜像文件挂载为本地yum源
(1)挂载centos7镜像所在的设备文件到/mnt/cdrom
创建挂载点目录:
# mkdir /mnt/cdrom
挂载
# mount /dev/cdrom /mnt/cdrom/
(2)到/etc/yum.repo.d下去修改CentOS-Media.repo文件
# cd /etc/yum.repos.d
# vim CentOS-Media.repo
baseurl=file:///mnt/cdrom 表示这个源的文件路径
gpgcheck=1 表示对从这个源下载的rpm包进行校验
enable=1 启用此仓库
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-CentOS-7 此路径为挂载点目录下的文件,表示下载rpm包的校验码
(3)修改CentOS-Base.repo默认源不启动
直接将其重命名为CentOS-Base.repo.bak即不会启用
# mv CentOS-Base.repo CentOS-Base.repo.bak
(4)查看yum缓存
# yum repolist
显示已经缓存成功
下载程序包做验证
================================================================================================
2、编译安装http2.4,实现可以正常访问,并将编译步骤和结果提交。
编译环境:
操作系统:CentOS Linux release 7.7.1908 (Core)
内核版本:3.10.0-1062.el7.x86_64
httpd版本:httpd-2.4.41
依赖包:apr-1.7.0.tar.gz , apr-util-1.6.1.tar.gz , httpd-2.4.41.tar.gz
IP地址:192.168.10.101
一、环境准备
提供开发工具及开发环境
# yum install -y gcc gcc++ zlib zlib-devel expat-devel pcre-devel
二、编译安装
编译安装apr-1.7.0.tar.gz
# cd ~
# tar xf apr-1.7.0.tar.gz
# cd apr-1.7.0
# ./configure --prefix=/usr/local/apr
# make && make install
编译安装apr-util-1.6.1.tar.gz
# cd ..
# tar xf apr-util-1.6.1.tar.gz
# cd apr-util-1.6.1
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make && make install
编译安装 httpd-2.4.41.tar.gz
# cd ..
# tar xf httpd-2.4.41.tar.gz
# cd httpd-2.4.41
# ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
# make && make install
三、安装后的配置
至此:找到apache二进制文件的安装目录,其下有一个apachectl的文件
# cd /usr/local/apache/bin
给apachectl传递一个参数start,可以看到已经监听了80端口,说明httpd服务已经启动
# ./apachectl start
尝试访问,关闭防火墙
# systemctl stop firewalld
至此已经完成安装。但是默认的环境变量中并不存在/usr/local/apache/bin的路径,所以需要导出二进制程序目录至PATH环境变量中.用echo $PATH查看环境变量路径
# vim /etc/profile.d/httpd.sh
在/etc/profile.d/目录下新建一个.sh结尾的文件,插入以下信息
export PATH=/usr/local/apache/bin/:$PATH
导出库文件路径。
一般上我们运行程序,Linux系统会在特定的路径下为应用查找所以来的库文件:/usr/lib、/usr/lib64、/lib、/lib64这四个目录下面,但是自己编译安装的程序提供的库文件有可能不在系统搜索的路径中,因此我们需要在系统里面添加一下。注意以.conf结尾。
创建新的库文件httpd.conf
# vim /etc/ld.so.conf.d/httpd.conf
写入安装的apache的库文件路径
/usr/local/apache/lib
让系统重新生成缓存
# ldconfig
导出头文件,apache安装生成的include头文件不在默认的头文件/usr/include/目录,可以通过符号链接或者直接复制的方式加入该目录,此处使用符号链接
# ln -sv /usr/local/apache/include/ /usr/include/apache
导出帮助手册,apache安装生成的帮助手册不在系统默认路径/etc/man_db.conf文件中
# vim /etc/man_db.conf
MANDATORY_MANPATH /usr/local/apache/man
四、将apachectl加入systemctl并设置开机自启动,重命名为httpd
首先将/usr/local/apache/bin/apachectl 复制到/etc/init.d/目录下
# cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d
# mv /etc/rc.d/init.d/apachectl /etc/rc.d/init.d/httpd
编辑/etc/rc.d/init.d/httpd
# vim /etc/rc.d/init.d/httpd
#chkconfig: 2345 10 90 其中2345是默认启动级别,10是启动优先级,90是停止优先级,优先级范围是0-100,数字越大,优先级越低
用chkconfig命令将httpd添加到系统服务并设置开机启动
# chkconfig --add httpd
# chkconfig httpd on
此时使用systemctl命令就能正常管理到apachectl服务了
================================================================================================
3、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统 ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项
一、 新加一块40G的硬盘进行实验:
二、分区
linux里的分区工具有fdisk,parted,gdisk,这里使用fdisk创建一个2G的分区
保存退出
查看是否被内核识别
三、创建文件系统
创建并格式化文件系统,块大小为2048byte,预留1%可用空间,文件系统 ext4,卷标为TEST
# mkfs.ext4 -L TEST -b 2048 -m 1 /dev/sdb1
查看创建的ext文件系统属性信息
# dumpe2fs /dev/sdb1 -h
设置此分区的默认挂载选项支持acl
# tune2fs -o acl /dev/sdb1
查看属性信息,是否已支持acl
# tune2fs -l /dev/sdb1
检查文件系统完整,必须在挂载前才能检测
# e2fsck /dev/sdb1 -y -f
e2fsck 1.42.9 (28-Dec-2013)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
TEST: 12/131072 files (0.0% non-contiguous), 53927/1048576 blocks
四、挂载文件系统, 此分区开机后自动挂载至/test目录
创建挂载点/test目录
# mkdir /test
获取该分区的UUID,使用UUID来做挂载
# blkid /dev/sdb1
/dev/sdb1: LABEL="TEST" UUID="90b8fa66-fc98-4970-ab6d-436b79ec083e" TYPE="ext4"
编辑/etc/fstab文件,将该文件系统挂载开机自启动
# vim /etc/fstab
写入红色框框标注的信息
重启设备验证
验证该文件系统是否支持acl,先复制一个文件到/test目录
# cd /test
# cp /etc/fstab ./# getfacl fstab
新增一个用户centos,设置其对/test/fstab的权限为rw-
# useradd centos
# setfacl -m u:centos:rw- fstab
# getfacl fstab
设置成功则显示以下红框的内容
================================================================================================
4、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小 为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录
一、创建pv
pv可以创建在磁盘上或分区上或RAID上,本次在/dev/sdb上创建两个为10G大小的分区作为PV
第3题已完成分区,再次不显示创建过程:
将分区类型调整为LVM
保存退出
刷新并查看内核和系统是否已经识别这两个分区
# partx -a /dev/sdb 一遍不行就执行两遍
将/dev/sdb3和/dev/sdb2创建为pv
# pvcreate /dev/sdb2
hysical volume "/dev/sdb2" successfully created.
# pvcreate /dev/sdb3
Physical volume "/dev/sdb3" successfully created.
二、创建VG
创建由两个PV组成的大小为20G的名为testvg的VG,使其上的PE大小创建为16MB(一旦创建不可修改PE大小,除非格式化重建)
# vgcreate testvg /dev/sdb2 /dev/sdb3 -s 16
Volume group "testvg" successfully created
三、创建LV
在卷组中创建大小为5G的逻辑卷testlv
(一旦创建不可修改PE大小,除非格式化重建)
# lvcreate -L 5G -n testlv testvg
Logical volume "testlv" created.
四、挂载
挂载至/users目录
1、创建目录/users
# mkdir /users
2、格式化文件系统为ext4
# mke2fs -t ext4 /dev/testvg/testlv
3、挂载
# mount /dev/testvg/testlv /users