初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

  • A+
所属分类:linux技术
摘要

​ 根据公司要求:集成一套LINUX系统,按照规定进行分区划分,组建LVM分区,创建用户;部署一套web+mysql,并通过shell脚本+cron执行定期自动备份数据。

一.项目目标

​ 根据公司要求:集成一套LINUX系统,按照规定进行分区划分,组建LVM分区,创建用户;部署一套web+mysql,并通过shell脚本+cron执行定期自动备份数据。

二.实施工具

​ 本次软件实施需要用到的工具: VMware Workstation虚拟机、rhel-server-7.5-x86_64-dvd.iso镜像文件、xshell远程连接工具。

三.项目实施计划

1.安装rhel7.5系统

  • ​ 首先,使用VMware Workstation12虚拟机进行模拟安装,操作系统是rhel7.5的版本,由于在实际工作环境中一般都是接触不了服务器的,都是通过远程工具xshell、crt这些工具进行远程连接操作,所以服务器是安装带gui的图形化界面,而在安装好操作系统之,可以通过配置/etc/sysconfig/network-scritpts/ifcfg-ensxx修改网卡信息,或者使用命令nmtui进行网卡的配置;
  • ​ 配置本地yum,满足后期安装各种软件或工具的需求;
  • ​ 在安装好操作系统之后关掉防火墙和Selinux,并设置防火墙开机不启动;
  • ​ 在上面的都配置后之后,需要为系统做一个快照,以防止以后系统出现不可修复的问题时,可以快速恢复系统,不影响应用的正常运行。

2.组建LVM分区:LVM分区比标准分区更好扩展,方便后期分区容量不足时,进行扩容。

3.安装apache服务

  • ​ ISO光盘镜像中有Apache程序,所以可以通过yum的方式来安装apache服务;
  • ​ 通过Web浏览器访问Apache的地址,测试Apache是否安装成功。

4.安装MySQL服务。

5.自动备份数据

  • ​ 通过cron和shell脚本自动备份数据;
  • ​ 在完成cron和shell备份之后,在shell脚本中添加自动删除5天前的备份数据。

四.安装rhel7.5操作系统

4.1 配置虚拟机

1.在虚拟机的主页上点击创建新的虚拟主机

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

2.选择自定义,然后下一步

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

3.一直默认下一步,直到选择安装源时选择稍后安装系统

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

4.客户机的操作系统选择linux,由于我们需要安装的时rhel7.5 64位的系统,所以在下面的版本选择Red Hat Enterprise Linux 7 64 位,

然后下一步

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

5.选择虚拟机的名称和虚拟机安装的位置,路径最好是自己选择,这样方便以后做迁移

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

6.一路默认,在选择网络的时候选择仅主机模式

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

7.一直下一步,直到选择磁盘,选择创建新虚拟磁盘,点击下一步

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

8.选择磁盘的容量和磁盘是否为单个文件,本人在这里的选择是磁盘大小20G,为单个文件,点击下一步

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

9.在这一步可以自定义硬件,也可以点击完成,在后面在完善虚拟机的硬件信息,本人是选择之后再配置硬件信息,所以是直接点击完成

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

10.配置完成之后可以在界面看到配置好的主机信息

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

选择编辑虚拟机设置

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

11.由于声卡和打印机可以不要,所以可以点击移除,而安装系统需要镜像即iso文件,所以在CD/DVD选择你的镜像文件

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

12.自此,虚拟机的配置就完成了,下面开始安装操作系统。

4.2 安装操作系统

1.点击开启此虚拟机

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

界面说明
Install Red Hat Enterprise Linux 7.2 安装RHEL7.2
Test this media & install Red HatEnterprise Linux 7.2 测试安装文件并安装RHEL 7.2
Troubleshooting 修复故障

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

2.在这一步可以点击回车继续安装,或者等待一会自动继续安装

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

3.选择语言:简体中文(新手选择中文,老手选择英文)

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

4.需要把界面上的都配置好才可以进行下一步的安装,本地化的日期和时间、键盘和语言支持都选默认,不用修改

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

5.把SECURITY的开启改为关闭

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

6.选择服务器的软件安装,这里选择的是带GUI的服务器,但是由于在实际环境中都是通过xshell、crt这些远程工具连接的,所以后期安装好系统之后也会用远程工具进行连接

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

7.选择安装位置,进行磁盘分区

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

8.选择-其它存储选项-分区-我要配置分区,点左上角的“完成”,进入下面的界面,在分区方案有标准分区,btrfs,LVM,LVM简单配置,这里默认LVM就可以,然后单击"+"创建新的分区,分区提前规划好,一般swap分区为物理内存的1.5~2倍,/boot分区300M-500M,/home分区给2G,剩余的空间全部给/分区,实际工作中可以创建数据分区,一般把数据和系统分开

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

创建/boot分区

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

9.设备类型选择默认的标准分区,文件系统类型为xfs,RHEL7支持brtfs,生产环境不建议选择,btrfs文件系统目前技术尚未成熟,只是作为一种前瞻技术

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

10.创建/swap分区

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

11.创建/home分区

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

12.创建/分区(期望容量不填,代表把剩余的所有空间都给/分区)

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

13.选择接受更改(这里相当于windows的格式化分区)

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

14.配置网络,选择开启,开启之后会自动获取一个ip,如果需要手动配置的话,可以选择配置,也可以在系统安装完成之后再进行配置,在这里就先不配置,等安装好系统之后再进行配置,然后点击开始安装

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

15.设置root密码,这里提示密码强度较差,因为是虚拟机所以密码不用太复杂,但在实际环境中,密码的设定需要符合安全性的标准

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

16.下图代表操作系统正在安装,等待即可

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

17.安装完成之后,点击重启,进行最后的配置

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

18.进入启动界面

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

19.首次启动许可配置,选择同意许可协议即可

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

20.点击完成配置

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

21.最后确认语言和键盘输入

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

22.配置时区,如果在前面开启了网络,这里会自动获取时区,如果没有开启的话,可以选择shangghai会自动出现相关的选项

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

23.配置登陆的个人账号密码

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

24.系统到这里已经正式安装完成

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

4.3 系统配置

4.3.1 网络配置

1.网络配置可以使用nmtui、nmtui-connect和修改配置文件3种方法,配置网络需要使用root用户。查看网卡的信息,可以使用ifconfig

或ip addr, 由于在安装的时候没有开启网络,所以ifconfig是看不到相应的ip地址信息的。

2.配置静态IP,网卡配置信息地址:/etc/sysconfig/network-scripts/ifcfg-ensxx (网卡一般是ens开头的,后面是随机的数字),使用vim

编辑器修改之后用:wq或者:x保存退出

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33     [root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33 TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" #IPV6INIT="yes" #IPV6_AUTOCONF="yes" #IPV6_DEFROUTE="yes" #IPV6_FAILURE_FATAL="no" #IPV6_ADDR_GEN_MODE="stable-privacy" NAME="ens33" UUID="1d4c270e-2a48-474d-b963-ad0e68eafbcd" DEVICE="ens33" ONBOOT="yes" DNS1=114.114.114.114 IPADDR=192.168.110.184 NETMASK=255.255.255.0 GATEWAY=192.168.110.2 ZONE= 

3.重启网络服务(systemctl restart NetworkManager和service network restart任选其一即可)

#重启网卡 [root@localhost ~]# systemctl restart NetworkManager  #查看网卡状态 [root@localhost ~]# systemctl status NetworkManager ● NetworkManager.service - Network Manager    Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)    Active: active (running) since Tue 2020-12-15 10:32:54 CST; 8s ago      Docs: man:NetworkManager(8)  Main PID: 100634 (NetworkManager)    CGroup: /system.slice/NetworkManager.service            ├─100634 /usr/sbin/NetworkManager --no-daemon            └─100657 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-ens37.pid -lf /var/lib/NetworkManager/dhclient-31881a66-4327-3e39-a2ab-b060a3b74062-ens37.lease -cf /var/lib/Ne... ......   [root@localhost ~]# service network restart Restarting network (via systemctl):                        [  OK  ]  [root@localhost ~]# service network status Configured devices: lo ens33 Currently active devices: lo ens33  

4.添加DNS

[root@localhost ~]# vim /etc/resolv.conf    [root@localhost ~]# cat /etc/resolv.conf # Generated by NetworkManager search localdomain nameserver 192.168.110.2 nameserver 114.114.114.114 

5.测试网络是否畅通

#-c:代表ping的次数 #有数据返回代表网络正常 [root@localhost ~]# ping -c 4 www.g.cn PING www.g.cn (203.208.40.98) 56(84) bytes of data. 64 bytes from 203.208.40.98 (203.208.40.98): icmp_seq=1 ttl=128 time=27.9 ms 64 bytes from 203.208.40.98 (203.208.40.98): icmp_seq=2 ttl=128 time=28.7 ms 64 bytes from 203.208.40.98 (203.208.40.98): icmp_seq=3 ttl=128 time=28.4 ms 64 bytes from 203.208.40.98 (203.208.40.98): icmp_seq=4 ttl=128 time=28.5 ms  --- www.g.cn ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3007ms rtt min/avg/max/mdev = 27.921/28.417/28.746/0.305 ms 

4.3.2 修改主机名

1.方法一:使用命令:nmtui

[root@localhost ~]# nmtui 

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

2.方法二:命令:hostnamectl set-hostname 需要修改的主机名

[root@localhost ~]# hostnamectl set-hostname node5 [root@localhost ~]# hostname node5 

修改主机名之后重启系统,输入账号密码之后就发现主机名已经变成刚才设置的了

4.3.3 关闭防火墙和selinux

1.关闭防火墙

#关闭防火墙 [root@node5 ~]# systemctl stop firewalld  #禁止防火墙开机自启动 [root@node5 ~]# systemctl disable firewalld  #查看防火墙是否成功禁止开机自启,命令:systemctl status firewalld.service 	 #因为在前面已经关掉防火墙和禁止开机自启,所以查看一下防火墙状态即可 [root@node5 ~]# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon    Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)    Active: inactive (dead)      Docs: man:firewalld(1)  #查看防火墙是否禁止开机自启动 [root@node5 ~]# systemctl is-enabled firewalld disabled 

2.关闭selinux:selinux配置文件的路径:/etc/selinux/config,把SELINUX=enforcing注释,在最后添加一行SELINUX=disabled,保存退出之后重启系统

[root@node5 ~]# vim /etc/selinux/config   [root@node5 ~]# cat /etc/selinux/config   # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: #     enforcing - SELinux security policy is enforced. #     permissive - SELinux prints warnings instead of enforcing. #     disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three two values: #     targeted - Targeted processes are protected, #     minimum - Modification of targeted policy. Only selected processes are protected.  #     mls - Multi Level Security protection. SELINUXTYPE=targeted   #查看selinux是否关闭 #命令为:getenforce或sestatus -v [root@node5 ~]# getenforce Disabled [root@node5 ~]# sestatus -v SELinux status:                 disabled 

4.3.4 配置本地yum源

1.挂载光盘

[root@node5 ~]# mount /dev/sr0 /media      

2.编辑yum源配置文件,路径:/etc/yum.repos.d

[root@node5 ~]# vim /etc/yum.repos.d/dvd.repo [dvd]			#yum源名称,唯一的,用来区分不同的yum源 name=yum server		#对yum源描述信息 baseurl=file:///media  	#yum源的路径(repodata目录所在的目录) enabled=1    	#为1,表示启用yum源 gpgcheck=0   	#为1,表示使用公钥检验rpm的正确性 

3.清除缓存信息,更新yum菜单

[root@node5 ~]# yum clean all 		 [root@node5 ~]# yum list 			 

4.测试yum是否配置成功,能安装软件就成功

[root@node5 ~]# yum -y install gcc 

5.设置开机自动挂载iso镜像文件,把光盘写进/etc/fstab,实现开机自启,命令: echo '/dev/sr0 /media iso9660 defaults 0 0'>>/etc/fstab

[root@node5 ~]# echo '/dev/sr0 /media iso9660 defaults 0 0'>>/etc/fstab    

4.3.5 创建快照

选中虚拟机->快照->拍摄快照->名称按自己的需要(我的是配置好yum源的,名称就写yum源已配置)->描述可写可不写(怕自己忘记可以在描述中讲述除了yum源还配置了什么或者做了什么操作)

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

正在做快照

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

五.组建LVM

1.新添加一块30G的硬盘

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

2.创建挂载点

[root@node5 ~]# mkdir -p /backup/web /backup/app /backup/tools /backup/logs 

3.创建分区(gdisk或者fdisk)

#lsblk查看磁盘情况,发现新增的磁盘没有出现,重启即可 [root@node5 ~]# lsblk NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT sda               8:0    0   35G  0 disk  ├─sda1            8:1    0    1G  0 part /boot └─sda2            8:2    0   19G  0 part    ├─centos-root 253:0    0   17G  0 lvm  /   └─centos-swap 253:1    0    2G  0 lvm  [SWAP] sdb               8:16   0    1G  0 disk  ├─sdb1            8:17   0   50M  0 part /sdb1 ├─sdb2            8:18   0    1K  0 part  ├─sdb5            8:21   0  200M  0 part /sdb5 └─sdb6            8:22   0  298M  0 part /sdb6 sr0              11:0    1 1024M  0 rom    #重启机器 [root@node5 ~]# init 6  #新增的磁盘sdc出现了 [root@node5 ~]# lsblk NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT sda               8:0    0   35G  0 disk  ├─sda1            8:1    0    1G  0 part /boot └─sda2            8:2    0   19G  0 part    ├─centos-root 253:0    0   17G  0 lvm  /   └─centos-swap 253:1    0    2G  0 lvm  [SWAP] sdb               8:16   0    1G  0 disk  ├─sdb1            8:17   0   50M  0 part /sdb1 ├─sdb2            8:18   0    1K  0 part  ├─sdb5            8:21   0  200M  0 part /sdb5 └─sdb6            8:22   0  298M  0 part /sdb6 sdc               8:32   0   30G  0 disk  sr0              11:0    1 1024M  0 rom    #使用gdisk进行磁盘分区,也可以使用fdisk进行磁盘分区 [root@node5 ~]# gdisk /dev/sdc  GPT fdisk (gdisk) version 0.8.10  Partition table scan:   MBR: not present   BSD: not present   APM: not present   GPT: not present  Creating new GPT entries.  #新增分区 Command (? for help): n Partition number (1-128, default 1):  First sector (34-62914526, default = 2048) or {+-}size{KMGTP}:  Last sector (2048-62914526, default = 62914526) or {+-}size{KMGTP}:  Current type is 'Linux filesystem' #L查看所有分区类型 Hex code or GUID (L to show codes, Enter = 8300): L 0700 Microsoft basic data  0c01 Microsoft reserved    2700 Windows RE           3000 ONIE boot             3001 ONIE config           4100 PowerPC PReP boot    4200 Windows LDM data      4201 Windows LDM metadata  7501 IBM GPFS             7f00 ChromeOS kernel       7f01 ChromeOS root         7f02 ChromeOS reserved    8200 Linux swap            8300 Linux filesystem      8301 Linux reserved       8302 Linux /home           8400 Intel Rapid Start     8e00 Linux LVM            a500 FreeBSD disklabel     a501 FreeBSD boot          a502 FreeBSD swap         a503 FreeBSD UFS           a504 FreeBSD ZFS           a505 FreeBSD Vinum/RAID   a580 Midnight BSD data     a581 Midnight BSD boot     a582 Midnight BSD swap    a583 Midnight BSD UFS      a584 Midnight BSD ZFS      a585 Midnight BSD Vinum   a800 Apple UFS             a901 NetBSD swap           a902 NetBSD FFS           a903 NetBSD LFS            a904 NetBSD concatenated   a905 NetBSD encrypted     a906 NetBSD RAID           ab00 Apple boot            af00 Apple HFS/HFS+       af01 Apple RAID            af02 Apple RAID offline    af03 Apple label          af04 AppleTV recovery      af05 Apple Core Storage    be00 Solaris boot         bf00 Solaris root          bf01 Solaris /usr & Mac Z  bf02 Solaris swap         bf03 Solaris backup        bf04 Solaris /var          bf05 Solaris /home        bf06 Solaris alternate se  bf07 Solaris Reserved 1    bf08 Solaris Reserved 2   bf09 Solaris Reserved 3    bf0a Solaris Reserved 4    bf0b Solaris Reserved 5   c001 HP-UX data            c002 HP-UX service         ea00 Freedesktop $BOOT    eb00 Haiku BFS             ed00 Sony system partitio  ed01 Lenovo system partit Press the <Enter> key to see more codes:  ef00 EFI System            ef01 MBR partition scheme  ef02 BIOS boot partition  fb00 VMWare VMFS           fb01 VMWare reserved       fc00 VMWare kcore crash p fd00 Linux RAID      #因为我们要创建LVM分区,所以选择8e00 Linux LVM Hex code or GUID (L to show codes, Enter = 8300): 8e00 Changed type of partition to 'Linux LVM'  #打印分区信息 Command (? for help): p Disk /dev/sdc: 62914560 sectors, 30.0 GiB Logical sector size: 512 bytes Disk identifier (GUID): 572B0DFD-325C-43E9-A641-6D287FB1F121 Partition table holds up to 128 entries First usable sector is 34, last usable sector is 62914526 Partitions will be aligned on 2048-sector boundaries Total free space is 2014 sectors (1007.0 KiB)  Number  Start (sector)    End (sector)  Size       Code  Name    1            2048        62914526   30.0 GiB    8E00  Linux LVM  #保存退出 Command (? for help): w  Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!!  Do you want to proceed? (Y/N): Y OK; writing new GUID partition table (GPT) to /dev/sdc. The operation has completed successfully. 

4.创建LVM

#上一步进行磁盘分区之后,现在出现了/dev/sdc1分区,现在进行格式化成PV [root@node5 ~]# ls /dev/sdc* /dev/sdc  /dev/sdc1  #创建PV [root@node5 ~]# pvcreate /dev/sdc1    Physical volume "/dev/sdc1" successfully created.  #创建VG [root@node5 ~]# vgcreate diskvg /dev/sdc1   Volume group "diskvg" successfully created  #创建容量为10G的LV [root@node5 ~]# lvcreate -L 10g -n weblv diskvg   Logical volume "weblv" created.  #创建容量为2G的LV [root@node5 ~]# lvcreate -L 2g -n applv diskvg   Logical volume "applv" created.  #创建容量为10G的LV [root@node5 ~]# lvcreate -L 10g -n toolslv diskvg   Logical volume "toolslv" created.  #创建容量为1G的LV [root@node5 ~]# lvcreate -L 1g -n logslv diskvg   Logical volume "logslv" created. 

5.格式化

#把LV格式化为xfs文件系统 [root@node5 ~]# mkfs.xfs /dev/diskvg/weblv  meta-data=/dev/diskvg/weblv      isize=512    agcount=4, agsize=655360 blks          =                       sectsz=512   attr=2, projid32bit=1          =                       crc=1        finobt=0, sparse=0 data     =                       bsize=4096   blocks=2621440, imaxpct=25          =                       sunit=0      swidth=0 blks naming   =version 2              bsize=4096   ascii-ci=0 ftype=1 log      =internal log           bsize=4096   blocks=2560, version=2          =                       sectsz=512   sunit=0 blks, lazy-count=1 realtime =none                   extsz=4096   blocks=0, rtextents=0 [root@node5 ~]#  [root@node5 ~]#  [root@node5 ~]# mkfs.xfs /dev/diskvg/applv  meta-data=/dev/diskvg/applv      isize=512    agcount=4, agsize=131072 blks          =                       sectsz=512   attr=2, projid32bit=1          =                       crc=1        finobt=0, sparse=0 data     =                       bsize=4096   blocks=524288, imaxpct=25          =                       sunit=0      swidth=0 blks naming   =version 2              bsize=4096   ascii-ci=0 ftype=1 log      =internal log           bsize=4096   blocks=2560, version=2          =                       sectsz=512   sunit=0 blks, lazy-count=1 realtime =none                   extsz=4096   blocks=0, rtextents=0 [root@node5 ~]#  [root@node5 ~]#  [root@node5 ~]# mkfs.xfs /dev/diskvg/toolslv  meta-data=/dev/diskvg/toolslv    isize=512    agcount=4, agsize=655360 blks          =                       sectsz=512   attr=2, projid32bit=1          =                       crc=1        finobt=0, sparse=0 data     =                       bsize=4096   blocks=2621440, imaxpct=25          =                       sunit=0      swidth=0 blks naming   =version 2              bsize=4096   ascii-ci=0 ftype=1 log      =internal log           bsize=4096   blocks=2560, version=2          =                       sectsz=512   sunit=0 blks, lazy-count=1 realtime =none                   extsz=4096   blocks=0, rtextents=0 [root@node5 ~]#  [root@node5 ~]# mkfs.xfs /dev/diskvg/logslv  meta-data=/dev/diskvg/logslv     isize=512    agcount=4, agsize=65536 blks          =                       sectsz=512   attr=2, projid32bit=1          =                       crc=1        finobt=0, sparse=0 data     =                       bsize=4096   blocks=262144, imaxpct=25          =                       sunit=0      swidth=0 blks naming   =version 2              bsize=4096   ascii-ci=0 ftype=1 log      =internal log           bsize=4096   blocks=2560, version=2          =                       sectsz=512   sunit=0 blks, lazy-count=1 realtime =none                   extsz=4096   blocks=0, rtextents=0 

6.把逻辑卷挂载到目录

#把LV挂载到目录上 [root@node5 ~]# mount /dev/mapper/diskvg-weblv /backup/web/ [root@node5 ~]#  [root@node5 ~]# mount /dev/mapper/diskvg-applv /backup/app/ [root@node5 ~]#  [root@node5 ~]# mount /dev/mapper/diskvg-toolslv /backup/tools/ [root@node5 ~]#  [root@node5 ~]# mount /dev/mapper/diskvg-logslv /backup/logs/ 

7.设置开机自动挂载分区

#blkid查看分区的UUID [root@node5 ~]# blkid /dev/sdb1: UUID="ddcb232e-96ca-4e54-935a-3100e81dbce4" TYPE="xfs"  /dev/sdb5: UUID="ddb20b01-0912-4c95-a304-980dc5c70659" TYPE="ext4"  /dev/sdb6: UUID="457d31a7-28d8-424d-87fe-cca3fe9b907c" TYPE="xfs"  /dev/sda1: UUID="6503b4ad-2975-4152-a824-feb7bea1b622" TYPE="xfs"  /dev/sda2: UUID="nqZ4uJ-ksnN-KzYS-N42b-00m3-Ohc2-BJXunP" TYPE="LVM2_member"  /dev/sdc1: UUID="1OMTEO-ewOI-eSfH-QkM4-3yy2-fAFE-GljDN7" TYPE="LVM2_member" PARTLABEL="Linux LVM" PARTUUID="5f8c525f-e394-4e11-a6c1-d4ee4b82dd1f"  /dev/mapper/centos-root: UUID="c1d38b37-821d-48e7-8727-3937ccc657a4" TYPE="xfs"  /dev/mapper/centos-swap: UUID="c2fcaf11-42d8-4e4c-bf9e-6464f0777198" TYPE="swap"  /dev/mapper/diskvg-weblv: UUID="5fcc4412-52b3-46b0-b428-8d57d590964c" TYPE="xfs"  /dev/mapper/diskvg-applv: UUID="041e2bd3-9115-4ab7-9151-1382006945c0" TYPE="xfs"  /dev/mapper/diskvg-toolslv: UUID="27397965-9079-4cd1-8140-4063b4c8b255" TYPE="xfs"  /dev/mapper/diskvg-logslv: UUID="e1eb72f4-cf6c-419e-9ef5-67a021437d8c" TYPE="xfs"   [root@node5 ~]# echo "UUID=5fcc4412-52b3-46b0-b428-8d57d590964c /backup/web/ xfs defaults 0 0" >> /etc/fstab    [root@node5 ~]# echo "UUID=041e2bd3-9115-4ab7-9151-1382006945c0 /backup/app/ xfs defaults 0 0" >> /etc/fstab    [root@node5 ~]# echo "UUID=27397965-9079-4cd1-8140-4063b4c8b255 /backup/tools/ xfs defaults 0 0" >> /etc/fstab   [root@node5 ~]# echo "UUID=e1eb72f4-cf6c-419e-9ef5-67a021437d8c /backup/logs/ xfs defaults 0 0" >> /etc/fstab    [root@node5 ~]# cat /etc/fstab  # # /etc/fstab # Created by anaconda on Fri Apr 26 17:09:16 2019 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/centos-root /                       xfs     defaults        0 0 UUID=6503b4ad-2975-4152-a824-feb7bea1b622 /boot                   xfs     defaults        0 0 /dev/mapper/centos-swap swap                    swap    defaults        0 0 192.168.110.180:/webapp /usr/local/apache-tomcat-8.0.51/webapps/ROOT/ nfs _netdev 0 0 /dev/sdb1  /sdb1 xfs defaults 0 0  /dev/sdb5  /sdb5 ext4 defaults 0 0  /dev/sdb6  /sdb6 xfs defaults 0 0  UUID=5fcc4412-52b3-46b0-b428-8d57d590964c /backup/web/ xfs defaults 0 0 UUID=041e2bd3-9115-4ab7-9151-1382006945c0 /backup/app/ xfs defaults 0 0 UUID=27397965-9079-4cd1-8140-4063b4c8b255 /backup/tools/ xfs defaults 0 0 UUID=e1eb72f4-cf6c-419e-9ef5-67a021437d8c /backup/logs/ xfs defaults 0 0   #mount -a命令自动挂载/etc/fstab里的分区 [root@node5 ~]# mount -a 

8.查看最终分区情况

[root@node5 ~]# df -h Filesystem                  Size  Used Avail Use% Mounted on /dev/mapper/centos-root      17G   13G  4.4G  75% / devtmpfs                    3.9G     0  3.9G   0% /dev tmpfs                       3.9G  8.0K  3.9G   1% /dev/shm tmpfs                       3.9G  8.8M  3.9G   1% /run tmpfs                       3.9G     0  3.9G   0% /sys/fs/cgroup /dev/sdb5                   190M  1.6M  175M   1% /sdb5 /dev/sdb1                    47M  2.7M   45M   6% /sdb1 /dev/sda1                  1014M  125M  890M  13% /boot /dev/sdb6                   295M   16M  280M   6% /sdb6 tmpfs                       785M     0  785M   0% /run/user/0 /dev/mapper/diskvg-weblv     10G   33M   10G   1% /backup/web /dev/mapper/diskvg-applv    2.0G   33M  2.0G   2% /backup/app /dev/mapper/diskvg-toolslv   10G   33M   10G   1% /backup/tools /dev/mapper/diskvg-logslv  1014M   33M  982M   4% /backup/logs 

六.使用yum安装apache服务

1.查看是否已经安装了apache,没有就用yum安装。

#查看有无httpd的包,没有就代表没有安装httpd服务 [root@node5 ~]# rpm -qa | grep httpd     #yum安装会解决依赖包的问题 #安装httpd、mariadb服务 [root@node5 ~]# yum -y install httpd mariadb-server mysql mariadb	 

2.查看httpd服务状态

[root@node5 ~]# systemctl status httpd ● httpd.service - The Apache HTTP Server    Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)    Active: inactive (dead)      Docs: man:httpd(8)            man:apachectl(8) 

3.开启httpd服务

[root@node5 ~]# systemctl start httpd [root@node5 ~]# systemctl status httpd ● httpd.service - The Apache HTTP Server    Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)    Active: active (running) since Tue 2020-12-15 18:04:28 CST; 2s ago      Docs: man:httpd(8)            man:apachectl(8)  Main PID: 4529 (httpd)    Status: "Processing requests..."    CGroup: /system.slice/httpd.service            ├─4529 /usr/sbin/httpd -DFOREGROUND            ├─4530 /usr/sbin/httpd -DFOREGROUND            ├─4531 /usr/sbin/httpd -DFOREGROUND            ├─4532 /usr/sbin/httpd -DFOREGROUND            ├─4533 /usr/sbin/httpd -DFOREGROUND            └─4534 /usr/sbin/httpd -DFOREGROUND  Dec 15 18:04:28 node5 systemd[1]: Starting The Apache HTTP Server... Dec 15 18:04:28 node5 httpd[4529]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 192.168.110.184. Set the 'ServerName' directive globally to suppress this message Dec 15 18:04:28 node5 systemd[1]: Started The Apache HTTP Server. Hint: Some lines were ellipsized, use -l to show in full.  #停止服务的命令是: [root@node5 ~]# systemctl stop httpd  #把httpd设置为开机自启动 [root@node5 ~]# systemctl enable httpd 

4.测试能否访问:使用浏览器访问IP地址即可,比如:http://192.168.110.184/,如果出现以下界面,说明Apache服务安装成功,功能正常。

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

5.把/etc/passwd复制到/var/www/html,并改名为index.html

[root@node5 ~]# cp /etc/passwd /var/www/html/index.html cp: overwrite ‘/var/www/html/index.html’? y 

6.使用浏览器进行访问

初阶项目一-集成一套linux系统:红帽系统,LVM分区,Apache服务,MySQL服务,数据定时备份脚本

通过上面的测试,httpd能正常访问,apache服务搭建完成。

七.自动备份数据

1.创建备份脚本和上传脚本

#创建备份脚本:备份/var/www/html目录下的日志 [root@node5 ~]# vim ~/backup.sh [root@node5 ~]# cat ~/backup.sh #!/bin/bash find /backup -name "*_tar.gz" -mtime +5 -delete  &> /dev/null tar -zcvf /backup/`date +%Y-%m-%d`_tar.gz /var/www/html  &> /dev/null  [root@node5 ~]# chmod +x ~/backup.sh  #创建上传脚本:把192.168.110.184的备份文件上传给192.168.110.186 [root@node5 ~]# vim ~/upload.sh #!/bin/bash IP=192.168.110.186 DIR=/backup scp $DIR/*_tar.gz root@$IP:$DIR  &> /dev/null  [root@node5 ~]# chmod +x ~/upload.sh 

2.设置定时任务

#设置定时任务 [root@node5 ~]# crontab -e [root@node5 ~]# crontab -l 30 1 * * * bash ~/backup.sh 0 5 * * * bash ~/upload.sh 

3.由于需要把192.168.110.184的备份文件上传给192.168.110.186,所以配置node5和node8之间ssh免密登录

[root@node5 ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa):  Enter passphrase (empty for no passphrase):  Enter same passphrase again:  Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: SHA256:4Sb6zDBrHbGlK0aOhQs9ityD19qQbWAGNPDYiYtm1zU root@node5 The key's randomart image is: +---[RSA 2048]----+ |oo               | |.=..             | |o.+    E.        | |... . o.o.       | |o+ * ..=S        | |+ B *.+o         | |oooX=+ o         | |ooo+OOo          | |  .++o+          | +----[SHA256]-----+  [root@node5 ~]# ssh-copy-id root@192.168.110.186 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@192.168.110.186's password:   Number of key(s) added: 1  Now try logging into the machine, with:   "ssh 'root@192.168.110.186'" and check to make sure that only the key(s) you wanted were added. 

4.创建node8的接收备份文件的目录

[root@node8 ~]# mkdir /backup [root@node8 ~]# systemctl restart crond  #重启crond服务 [root@node8 ~]# systemctl enable crond   #设置开机自启动