实验拓扑

1[root@localhost ~]# fdisk /dev/sdb     fdisk/dev/sdc)(fdisk/dev/sdd

欢迎使用 fdisk (util-linux 2.23.2)

更改将停留在内存中,直到您决定将更改写入磁盘。

使用写入命令前请三思。

Device does not contain a recognized partition table

使用磁盘标识符 0xcc7d50b6 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助)n

Partition type:

   p   primary (0 primary, 0 extended, 4 free)

   e   extended

Select (default p): p

分区号 (1-4,默认 1)

起始 扇区 (2048-167772159,默认为 2048)

将使用默认值 2048

Last 扇区, +扇区 or +size{K,M,G} (2048-167772159,默认为 167772159)+20G

分区 1 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助)n

Partition type:

   p   primary (1 primary, 0 extended, 3 free)

   e   extended

Select (default p):

Using default response p

分区号 (2-4,默认 2)

起始 扇区 (41945088-167772159,默认为 41945088)

将使用默认值 41945088

Last 扇区, +扇区 or +size{K,M,G} (41945088-167772159,默认为 167772159)+20G

分区 2 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助)n

Partition type:

   p   primary (2 primary, 0 extended, 2 free)

   e   extended

Select (default p):

Using default response p

分区号 (3,4,默认 3)

起始 扇区 (83888128-167772159,默认为 83888128)

将使用默认值 83888128

Last 扇区, +扇区 or +size{K,M,G} (83888128-167772159,默认为 167772159)+20G

分区 3 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助)wq

The partition table has been altered!

Calling ioctl() to re-read partition table.

正在同步磁盘。

[root@localhost ~]# lsblk

NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT

sda               8:0    0   30G  0 disk

├─sda1            8:1    0  500M  0 part /boot

└─sda2            8:2    0 29.5G  0 part

  ├─centos-root 253:0    0 27.5G  0 lvm  /

  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]

sdb               8:16   0   80G  0 disk

├─sdb1            8:17   0   20G  0 part

├─sdb2            8:18   0   20G  0 part

└─sdb3            8:19   0   20G  0 part

sdc               8:32   0   40G  0 disk

├─sdc1            8:33   0   20G  0 part

├─sdc2            8:34   0    5G  0 part

└─sdc3            8:35   0    5G  0 part

sdd               8:48   0   40G  0 disk

├─sdd1            8:49   0   20G  0 part

├─sdd2            8:50   0    5G  0 part

└─sdd3            8:51   0    5G  0 part

sr0              11:0    1    4G  0 rom  /run/media/root/CentOS 7 x86_64

[root@localhost ~]# mdadm -Cv /dev/md5 -l5 -n3 /dev/sd[bcd]1

mdadm: layout defaults to left-symmetric

mdadm: layout defaults to left-symmetric

mdadm: chunk size defaults to 512K

mdadm: size set to 20955136K

mdadm: Defaulting to version 1.2 metadata

mdadm: array /dev/md5 started.

[root@localhost ~]# pvcreate /dev/md5

  Physical volume "/dev/md5" successfully created

[root@localhost ~]# vgcreate myvg /dev/md5

  Volume group "myvg" successfully created

[root@localhost ~]# lvcreate -L 50 -n mylv myvg

  Rounding up size to full physical extent 52.00 MiB

  Logical volume "mylv" created.

[root@localhost ~]# mkfs -t xfs /dev/myvg/mylv

log stripe unit (524288 bytes) is too large (maximum is 256KiB)

log stripe unit adjusted to 32KiB

meta-data=/dev/myvg/mylv         isize=256    agcount=2, agsize=6528 blks

         =                       sectsz=512   attr=2, projid32bit=1

         =                       crc=0        finobt=0

data     =                       bsize=4096   blocks=13056, imaxpct=25

         =                       sunit=128    swidth=256 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=0

log      =internal log           bsize=4096   blocks=624, version=2

         =                       sectsz=512   sunit=8 blks, lazy-count=1

realtime =none                   extsz=4096   blocks=0, rtextents=0

2、安装apache(步骤省略)

(1)、挂载光盘

卸载光盘:umount /dev/sr0

挂载光盘:mount /dev/sr0 /media/

查看:ls /media/

(2)、修改本YUM仓库客户端配置文件

构建本地YUM仓库文档:cd /etc/yum.r*

                                        mkdir a/

                                         mv C* a/

创建本地YUM仓库文档:vi ./local.repo

[cdrom]                         //仓库名称

name=cdrom                

baseurl=file:///media     //指定rpm包的位置

enabled=1                    //启用本地YUM仓库

gpgcheck=0                 //禁用gpg校验

(3)、清除、重建YUM缓存:yum -y clean all

                                          yum makecache

(4)源代码安装准备工作

通过xftp等工具将httpd-2.2.17.tar传到linux虚拟机中

[root@localhost ~]# ls
anaconda-ks.cfg httpd-2.2.17.tar.gz 公共 模板 视频 图片 文档 下载 音乐 桌面

完整性校验 计算 MD5校验和,不一致不要用

[root@localhost ~]# md5sum httpd-2.2.17.tar.gz 
66d8e107f85acc039fd5e624e85728a9 httpd-2.2.17.tar.gz              

挂载镜像

[root@localhost ~]# umount /dev/sr0
[root@localhost ~]# mount /dev/sr0 /media/
mount: /dev/sr0 写保护,将以只读方式挂载

[root@localhost ~]# ls /media
CentOS_BuildTag GPL LiveOS RPM-GPG-KEY-CentOS-7
EFI images Packages RPM-GPG-KEY-CentOS-Testing-7
EULA isolinux repodata TRANS.TBL

(5)确认源代码编译环境,未安装则进行安装

[root@localhost ~]# rpm -q gcc gcc-c++ make
未安装软件包 gcc 
未安装软件包 gcc-c++ 
make-3.82-21.el7.x86_64

[root@localhost ~]# yum -y install gcc gcc-c++

[root@localhost ~]# rpm -q gcc gcc-c++ make
gcc-4.8.5-36.el7_6.2.x86_64
gcc-c++-4.8.5-36.el7_6.2.x86_64
make-3.82-21.el7.x86_64

源代码安装(apache)

[root@localhost ~]# tar xf httpd-2.2.17.tar.gz -C /usr/src/      //解包
[root@localhost ~]# cd /usr/src/httpd-2.2.17/                         //到http-2.2.17.tar.gz-C下查看有没有东西

[root@localhost httpd-2.2.17]# ls                                            //查看内容
ABOUT_APACHE config.layout INSTALL NOTICE srclib
acinclude.m4 configure InstallBin.dsp NWGNUmakefile support
Apache.dsw configure.in LAYOUT os test
build docs libhttpd.dsp README VERSIONING
BuildAll.dsp emacs-style LICENSE README.platforms
BuildBin.dsp httpd.dsp Makefile.in README-win32.txt
buildconf httpd.spec Makefile.win ROADMAP
CHANGES include modules server

[root@localhost httpd-2.2.17]# ./configure --prefix=/usr/local/apache     //设置"--prefix="软件安装目录

[root@localhost httpd-2.2.17]# make                                                       //编译

[root@localhost httpd-2.2.17]# make install                                             //安装

[root@localhost httpd-2.2.17]# cd /usr/local/apache/conf/                       //备份,防止出错
[root@localhost conf]# cp httpd.conf{,.bak}

[root@localhost conf]# vi /usr/local/apache/conf/httpd.conf                     //进入编辑器

# ServerName www.example.com:80                                                      //将第九十七行前面的“#”号删除,wq:保存退出

[root@localhost ~]# systemctl stop firewalld                                             //复制一个新的通道,关闭防火墙(临时)

[root@localhost ~]# systemctl disable firewalld                                         //永久
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'

[root@localhost ~]# setenforce 0                                                               //关闭安全机制(临时)
[root@localhost ~]# sed -i '7 s/enforcing/disabled/' /etc/selinux/config      //关闭安全机制(永久)
[root@localhost ~]# sed -n '7p' /etc/selinux/config                                     //查看有没有变成disabled
SELINUX=disabled

[root@localhost conf]# /usr/local/apache/bin/apachectl start                     //运行
[root@localhost conf]# rpm -q lynx                                                             //检测之前检查有没有lynx软件包
未安装软件包 lynx

[root@localhost conf]# yum -y install lynx                                                   //没有则用yum进行安装

[root@localhost conf]# rpm -q lynx                                                              //查看lynx软件包是否安装成功
lynx-2.8.8-0.3.dev15.el7.x86_64

3、用户需把/dev/myvg/mylv逻辑卷以支持磁盘配额的方式挂载到网页目录下(/usr/local/apache/htdocs

[root@localhost ~]# mount -o usrquota,grpquota /dev/myvg/mylv /usr/local/apache/htdocs/

4、在网页目录下创建测试文件index.html,内容为用户名称,通过浏览器访问测试

[root@localhost ~]# ls /usr/local/apache/htdocs/

[root@localhost ~]# cd /usr/local/apache/htdocs/

[root@localhost htdocs]# touch index.html

[root@localhost htdocs]# ls

index.html

[root@localhost htdocs]# vi index.html 

5、创建用户账户,对LVM配置磁盘配额限制用户磁盘容量为软限制80M,硬限制100M;文件数量软限制100个,硬限制80个。

[root@localhost ~]# useradd litianyang

[root@localhost ~]# quotacheck -avug

quotacheck: Skipping /dev/mapper/myvg-mylv [/usr/local/apache/htdocs]

quotacheck: Cannot find filesystem to check or filesystem not mounted with quota option.

[root@localhost ~]# quotaon -avug

[root@localhost ~]# edquota -u litianyang

原文地址:https://www.cnblogs.com/990624lty-jhc/p/11301413.html