第三章 Linux 体系与服务构建运维
3.1 实战案例——Linux 操作体系安装
3.1.1 案例目标
( 1 )相识服务器操作体系安装。 ( 2 )相识 CentOS 体系的安装。 3.1.2 案例分析
1. 规划节点 Linux 操作体系的单节点规划,见表 3-1-1 。 表 3-1-1 节点规划 IP 192.168.200.10 主机名 localhost 节点 Linux 服务器节点 2. 基础准备 使用本地 PC 环境的 VMWare Workstation 软件进行实操练习,镜像使用提供的 CentOS-7-x86_64-DVD-1511.iso ,硬件资源如图 3-1-1 所示。 图 3-1-1 硬件资源 3.1.3 案例实施
1. 安装步骤 Linux 最小化安装,安装时需要按照以下步骤进行: ①安装时请选择英文界面,然后单击右下角“ Continue ”按钮,如图 3-1-2 所示。 图 3-1-2 选择语言 ② 单击“ INSTALLATION DESTINATION ”按钮进行分区,如图 3-1-3 所示。 2 图 3-1-3 磁盘分区 ③选择磁盘并选中“ I will configure partitioning ”单选按钮,单击左上角“ Done ”按钮, 进行手动分区,如图 3-1-4 所示。 图 3-1-4 选择磁盘分区方式 ④单击“ Click here to create them automatically ”按钮主动创建分区,分区完成单击左上 角“ Done ”按钮,如图 3-1-5 、图 3-1-6 所示。 3 图 3-1-5 选择主动创建分区 图 3-1-6 分区 ⑤单击“ Accept Changes ”按钮保存修改,如图 3-1-7 所示。 图 3-1-7 保存修改 ⑥单击“ Begin Installation ”按钮开始安装,如图 3-1-8 所示。 4 图 3-1-8 开始安装 ⑦单击“ ROOT PASSWORD ”按钮设置 root 密码,设置密码为 000000 。单击两次“ Done ” 按钮保存退出,如图 3-1-9 、图 3-1-10 所示。 图 3-1-9 设置 Root 密码 5 图 3-1-10 保存退出 ⑧安装完成后单击右下角“ Reboot ”按钮重启体系,如图 3-1-11 所示。 图 3-1-11 重启体系 ⑨输入用户名密码登录体系,操作体系安装完成,如图 3-1-12 所示。 6 3-1-12 登录 7 8 3.2 实战案例——LVM 逻辑卷的使用
3.2.1 案例目标
( 1 )相识 LVM 逻辑卷的安装。 ( 2 )相识 LVM 逻辑卷的设置与使用。 3.2.2 案例分析
1. 规划节点 Linux 操作体系的单节点规划,见表 3-2-1 。 表 3-2-1 节点规划 IP 192.168.200.10 主机名 localhost 节点 Linux 服务器节点 2. 基础准备 使用实战案例 3.1 安装的 Linux 体系进行下述实行。 3.2.3 案例实施
1. 设置 IP 地点 查看假造网络编辑器,查看本机 NAT 模式的网络信息,如图 3-2-1 ,图 3-2-2 所示。 图 3-2-1 假造网络编辑器 图 3-2-2 NAT 设置详情 回到假造机界面,编辑网卡设置文件,将网络设置成 192.168.200.10 ,命令如下: [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 [root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno16777736 TYPE=Ethernet BOOTPROTO=statis DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no 9 NAME=eno16777736 UUID=25acd229-1851-4454-9219-8dcee56b798c DEVICE=eno16777736 ONBOOT=yes IPADDR=192.168.200.10 NETMASK=255.255.255.0 GATEWAY=192.168.200.2 设置完成后,重启网络并查看 IP ,命令如下: [root@localhost ~]# systemctl restart network [root@localhost ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:d6:48:b7 brd ff:ff:ff:ff:ff:ff inet 192.168.200.10/24 brd 192.168.200.255 scope global eno16777736 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fed6:48b7/64 scope link valid_lft forever preferred_lft forever 设置完 IP 后,可以通过 PC 机的长途毗连工具 SecureCRT 毗连假造机。 2. 添加硬盘 在 VMwareWorkstation 中的假造机设置界面,单击下方“添加”按钮,选择“硬盘”, 然后单击右下角“下一步”按钮,如图 3-2-3 所示。 10 图 3-2-3 添加硬盘 选择 SCSI ( S )磁盘,单击右下角“下一步”按钮,如图 3-2-4 所示。 图 3-2-4 选择磁盘范例 选择“创建新假造磁盘( V )”选项,然后单击右下角“下一步”按钮。如图 3-2-5 所 11示。 图 3-2-5 选择磁盘 指定磁盘大小为 20 GB ,选择“将假造磁盘存储为单个文件( O )”选项,如图 3-2-6 所示。 12 图 3-2-6 指定磁盘容量 文件名不做修改,使用默认名称,然后单击右下角“完成”按钮,如图 3-2-7 所示。 图 3-2-7 指定磁盘文件 添加完磁盘后,重启假造机。重启事后,使用命令查看磁盘,命令如下: [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─ sda1 8:1 0 500M 0 part /boot └─ sda2 8:2 0 19.5G 0 part ├─ centos-root 253:0 0 17.5G 0 lvm / └─ centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk sr0 11:0 1 4G 0 rom 可以看到存在一块名叫 sdb 的块装备,大小为 20 GB 。 3.LVM 逻辑卷的使用 ( 1 )创建物理卷 在创建物理卷之前,需要对磁盘进行分区。起首使用 fdisk 命令对 sdb 进行分区操作, 13 分出两个大小为 5 GB 的分区,命令如下: [root@localhost ~]# fdisk /dev/sdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0x9e46a7c2. Command (m for help): p Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x9e46a7c2 Device Boot Start End Blocks Id System Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): First sector (2048-41943039, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +5G 14 Partition 1 of type Linux and of size 5 GiB is set Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): First sector (10487808-41943039, default 10487808): Using default value 10487808 Last sector, +sectors or +size{K,M,G} (10487808-41943039, default 41943039): +5G Partition 2 of type Linux and of size 5 GiB is set Command (m for help): p Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x9e46a7c2 Device Boot Start End Blocks Id System /dev/sdb1 2048 10487807 5242880 83 Linux /dev/sdb2 10487808 20973567 5242880 83 Linux Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. 15 Syncing disks. [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─ sda1 8:1 0 500M 0 part /boot └─ sda2 8:2 0 19.5G 0 part ├─ centos-root 253:0 0 17.5G 0 lvm / └─ centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk ├─ sdb1 8:17 0 5G 0 part └─ sdb2 8:18 0 5G 0 part sr0 11:0 1 4G 0 rom 分完分区后,对这两个分区进行创建物理卷操作,命令如下: [root@localhost ~]# pvcreate /dev/sdb1 /dev/sdb2 Physical volume "/dev/sdb1" successfully created Physical volume "/dev/sdb2" successfully created 创建完毕后,可以查看物理卷的简单信息与具体信息,命令如下: 物理卷简单信息: [root@localhost ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 19.51g 40.00m /dev/sdb1 lvm2 --- 5.00g 5.00g /dev/sdb2 lvm2 --- 5.00g 5.00g 物理卷具体信息: [root@localhost ~]# pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name centos PV Size 19.51 GiB / not usable 3.00 MiB Allocatable yes 16 PE Size 4.00 MiB Total PE 4994 Free PE 10 Allocated PE 4984 PV UUID 78lNjC-ofC2-YQIH-O2RA-3ZHG-N8dM-d4Hve2 "/dev/sdb1" is a new physical volume of "5.00 GiB" --- NEW Physical volume --- PV Name /dev/sdb1 VG Name PV Size 5.00 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID 73POMD-3fHz-k0Gj-vG64-KAA0-qnzO-ZqdvnB "/dev/sdb2" is a new physical volume of "5.00 GiB" --- NEW Physical volume --- PV Name /dev/sdb2 VG Name PV Size 5.00 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID ImEUkD-dEb9-zvE3-gyO4-9kpN-MPCb-NchoSf 17 ( 2 )创建卷组 使用刚才创建好的两个物理卷,创建名为 myvg 的卷组,命令如下: [root@localhost ~]# vgcreate myvg /dev/sdb[1-2] Volume group "myvg" successfully created 查看卷组信息,(可以查看到创建的 myvg 卷组,名字为 centos 的卷组是体系卷组,因 为在安装体系的时候,是使用 LVM 模式安装的)命令如下: [root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- 19.51g 40.00m myvg 2 0 0 wz--n- 9.99g 9.99g 查看卷组具体信息,命令如下: [root@localhost ~]# vgdisplay --- Volume group --- VG Name centos System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 19.51 GiB PE Size 4.00 MiB Total PE 4994 Alloc PE / Size 4984 / 19.47 GiB 18 Free PE / Size 10 / 40.00 MiB VG UUID 2H21hv-L20X-mqhJ-SvzR-crT2-ln9v-jj2gTY --- Volume group --- VG Name myvg System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 9.99 GiB PE Size 4.00 MiB Total PE 2558 Alloc PE / Size 0 / 0 Free PE / Size 2558 / 9.99 GiB VG UUID PYGJuQ-s1Ix-ZwGf-kFaV-4Lfh-ooHl-QXcy6a 当多个物理卷组合成一个卷组后时, LVM 会在全部的物理卷上做类似格式化的工作, 将每个物理卷切成一块一块的空间,这一块一块的空间就称为 PE ( Physical Extent ),它的 默认大小是 4 MB 。 由于受内核限定的原因,一个逻辑卷( Logic Volume )最多只能包含 65536 个 PE ( Physical Extent ),以是一个 PE 的大小就决定了逻辑卷的最大容量, 4 MB 的 PE 决定了单个逻辑卷 最大容量为 256 GB ,若希望使用大于 256 Gb 的逻辑卷,则创建卷组时需要指定更大的 PE 。 删除卷组,重新创建卷组,并指定 PE 大小为 16 MB ,命令如下: 19 [root@localhost ~]# vgremove myvg Volume group "myvg" successfully removed [root@localhost ~]# vgcreate -s 16m myvg /dev/sdb[1-2] Volume group "myvg" successfully created [root@localhost ~]# vgdisplay --- Volume group --- VG Name centos System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size 19.51 GiB PE Size 4.00 MiB Total PE 4994 Alloc PE / Size 4984 / 19.47 GiB Free PE / Size 10 / 40.00 MiB VG UUID 2H21hv-L20X-mqhJ-SvzR-crT2-ln9v-jj2gTY --- Volume group --- VG Name myvg System ID Format lvm2 20 Metadata Areas 2 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 9.97 GiB PE Size 16.00 MiB Total PE 638 Alloc PE / Size 0 / 0 Free PE / Size 638 / 9.97 GiB VG UUID dU0pP2-EW9d-6c0h-8tgQ-t1bN-tBIo-FDqfdR 可以查看到如今 myvg 卷组的 PE 大小为 16 MB 。 向卷组 myvg 中添加一个物理卷,在 /dev/sdb 上再分一个 /dev/sdb3 分区,把该分区加到 卷组 myvg 中。命令如下: [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─ sda1 8:1 0 500M 0 part /boot └─ sda2 8:2 0 19.5G 0 part ├─ centos-root 253:0 0 17.5G 0 lvm / └─ centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk ├─ sdb1 8:17 0 5G 0 part ├─ sdb2 8:18 0 5G 0 part └─ sdb3 8:19 0 5G 0 part 21 sr0 11:0 1 4G 0 rom 将创建的 /dev/sdb3 添加到 myvg 卷组中,在添加的过程中,会主动将 /dev/sdb3 创建为 物理卷,命令如下: [root@localhost ~]# vgextend myvg /dev/sdb3 Physical volume "/dev/sdb3" successfully created Volume group "myvg" successfully extended [root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- 19.51g 40.00m myvg 3 0 0 wz--n- 14.95g 14.95g [root@localhost ~]# vgdisplay myvg --- Volume group --- VG Name myvg System ID Format lvm2 Metadata Areas 3 Metadata Sequence No 2 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 3 Act PV 3 VG Size 14.95 GiB PE Size 16.00 MiB Total PE 957 Alloc PE / Size 0 / 0 Free PE / Size 957 / 14.95 GiB 22 VG UUID dU0pP2-EW9d-6c0h-8tgQ-t1bN-tBIo-FDqfdR 可以查看到如今卷组中存在 3 个物理卷装备。 ( 3 )创建逻辑卷 创建逻辑卷,名称为 mylv ,大小为 5 GB 。命令如下: [root@localhost ~]# lvcreate -L +5G -n mylv myvg Logical volume "mylv" created. ⚫ -L :创建逻辑卷的大小 large 。 ⚫ -n :创建的逻辑卷名称 name 。 查看逻辑卷,命令如下: [root@localhost ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 17.47g swap centos -wi-ao---- 2.00g mylv myvg -wi-a----- 5.00g 扫描上一步创建的 lv 逻辑卷。命令如下: [root@localhost ~]# lvscan ACTIVE '/dev/centos/root' [17.47 GiB] inherit ACTIVE '/dev/centos/swap' [2.00 GiB] inherit ACTIVE '/dev/myvg/mylv' [5.00 GiB] inherit 使用 ext4 文件体系格式化逻辑卷 mylv 。命令如下: [root@localhost ~]# mkfs.ext4 /dev/mapper/myvg-mylv mke2fs 1.42.9 (28-Dec-2013) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 327680 inodes, 1310720 blocks 65536 blocks (5.00%) reserved for the super user 23 24 First data block=0 Maximum filesystem blocks=1342177280 40 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done 把逻辑卷 mylv 挂载到 /mnt 下并验证。命令如下: [root@localhost ~]# mount /dev/mapper/myvg-mylv /mnt/ [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 872M 17G 5% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sda1 497M 125M 373M 25% /boot tmpfs 378M 0 378M 0% /run/user/0 /dev/mapper/myvg-mylv 4.8G 20M 4.6G 1% /mnt 然后对创建的 LVM 卷扩容至 1 GB 。 [root@localhost ~]# lvextend -L +1G /dev/mapper/myvg-mylv Size of logical volume myvg/mylv changed from 5.00 GiB (320 extents) to 6.00 GiB (384 extents). Logical volume mylv successfully resized. [root@localhost ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 17.47g swap centos -wi-ao---- 2.00g mylv myvg -wi-ao---- 6.00g [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 872M 17G 5% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sda1 497M 125M 373M 25% /boot tmpfs 378M 0 378M 0% /run/user/0 /dev/mapper/myvg-mylv 4.8G 20M 4.6G 1% /mnt 可以查看到 LVM 卷的大小变成了 6 GB ,但是挂载信息中没有发生变化,这时体系还识 别不了新添加的磁盘文件体系,以是还需要对文件体系进行扩容。 [root@localhost ~]# resize2fs /dev/mapper/myvg-mylv resize2fs 1.42.9 (28-Dec-2013) Filesystem at /dev/mapper/myvg-mylv is mounted on /mnt; on-line resizing required old_desc_blocks = 1, new_desc_blocks = 1 The filesystem on /dev/mapper/myvg-mylv is now 1572864 blocks long. [root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 872M 17G 5% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm 25 26 tmpfs 1.9G 8.6M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/sda1 497M 125M 373M 25% /boot tmpfs 378M 0 378M 0% /run/user/0 /dev/mapper/myvg-mylv 5.8G 20M 5.5G 1% /mnt 扩容逻辑卷成功。 27 3.3 实战案例——FTP 服务的使用
3.3.1 案例目标
( 1 )相识 FTP 服务的安装。 ( 2 )相识 FTP 的设置与使用。 3.3.2 案例分析
1. 规划节点 Linux 操作体系的单节点规划,见表 3-3-1 。 表 3-3-1 节点规划 IP 192.168.200.10 主机名 localhost 节点 Linux 服务器节点 2. 基础准备 使用实战案例 3.1 安装的 Linux 体系进行下述实行。 3.3.3 案例实施
1. 设置 YUM 源 回到 VMware Workstation 界面,将 CD 装备进行毗连,右击打开快捷菜单,选择“可移 动装备”→“ CD/DVD ( IDE )” →“毗连”命令,如图 3-3-1 所示。 图 3-3-1 毗连 CD 装备 回到假造机界面,将 CD 装备挂载到 /opt/centos (可自行创建)目录下,命令如下: [root@localhost ~]# mount /dev/cdrom /opt/centos mount: /dev/sr0 is write-protected, mounting read-only [root@localhost ~]# ll /opt/centos total 636 -r--r--r--. 1 root root 14 Dec 9 2015 CentOS_BuildTag dr-xr-xr-x. 3 root root 2048 Dec 9 2015 EFI -r--r--r--. 1 root root 215 Dec 9 2015 EULA -r--r--r--. 1 root root 18009 Dec 9 2015 GPL dr-xr-xr-x. 3 root root 2048 Dec 9 2015 images dr-xr-xr-x. 2 root root 2048 Dec 9 2015 isolinux dr-xr-xr-x. 2 root root 2048 Dec 9 2015 LiveOS dr-xr-xr-x. 2 root root 612352 Dec 9 2015 Packages dr-xr-xr-x. 2 root root 4096 Dec 9 2015 repodata -r--r--r--. 1 root root 1690 Dec 9 2015 RPM-GPG-KEY-CentOS-7 -r--r--r--. 1 root root 1690 Dec 9 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r--. 1 root root 2883 Dec 9 2015 TRANS.TBL 设置本地 YUM 源文件,先将 /etc/yum.repos.d/ 下的文件先移走,然后创建 local.repo 文 件,命令如下: [root@localhost ~]# mv /etc/yum.repos.d/* /media/ [root@localhost ~]# vi /etc/yum.repos.d/local.repo [root@localhost ~]# cat /etc/yum.repos.d/local.repo [centos7] name=centos7 baseurl=file:///opt/centos gpgcheck=0 enabled=1 至此, YUM 源设置完毕。 2. 安装 FTP 服务 使用命令安装 FTP 服务,命令如下: [root@localhost ~]# yum install vsftpd -y 安装完成后,编辑 FTP 服务的设置文件,在设置文件的最上面,添加一行代码,命令 28 如下: [root@localhost ~]# vi /etc/vsftpd/vsftpd.conf [root@localhost ~]# cat /etc/vsftpd/vsftpd.conf anon_root=/opt # Example config file /etc/vsftpd/vsftpd.conf …… …… 启动 vsftp 服务,命令如下: [root@localhost ~]# systemctl start vsftpd [root@localhost ~]# netstat -ntpl Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1556/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2517/master tcp6 0 0 :::21 :::* LISTEN 3359/vsftpd tcp6 0 0 :::22 :::* LISTEN 1556/sshd tcp6 0 0 ::1:25 :::* LISTEN 2517/master 使用 netstat -ntpl 命令可以看到 vsftpd 的 21 端口。(若无法使用 netstat 命令,可自行安 装 net-tools 工具) 在使用浏览器访问 FTP 服务之前,还需要关闭 SELinux 和防火墙,命令如下: [root@localhost ~]# setenforce 0 [root@localhost ~]# systemctl stop firewalld 3.FTP 服务的使用 使用浏览器访问 ftp://192.168.200.10 ,如图 3-3-2 所示。 29 30 图 3-3-2 FTP 界面 可以查看到 /opt 目录下的文件,都被 FTP 服务成功共享。 进入假造机的 /opt 目录,创建 xcloud.txt 文件,刷新浏览器界面,可以看到新创建的文 件,如图 3-3-3 所示。 图 3-3-3 刷新的 FTP 界面 关于 FTP 服务的使用,简单来说,就是将用户想共享的文件或者软件包,放入共享目 录即可。 31 3.4 实战案例——NFS 服务的使用
3.4.1 案例目标
( 1 )相识 NFS 服务的安装。 ( 2 )相识 NFS 的设置与使用。 3.4.2 案例分析
1. 规划节点 Linux 操作体系的单节点规划,见表 3-4-1 。 表 3-4-1 节点规划 IP 192.168.200.10 192.168.200.20 主机名 nfs-server nfs-client 节点 NFS 服务节点 NFS 客户端节点 2. 基础准备 该实战案例需要使用两台服务器,使用实战案例 3.1 安装的 Linux 体系作为 nfs-server 节点,再安装一台 CentOS 7.2 的假造机( 1 核 /2G 内存 /20G 硬盘),作为 nfs-client 进行下 述实行。 3.4.3 案例实施 NFS 是 Network File System 的缩写,即网络文件体系。客户端通过挂载的方式将 NFS 服务器端共享的数据目录挂载到本地目录下。重要功能指的是共享文件。 为什么需要安装 NFS 服务?当服务器访问流量过大时,需要多台服务器进行分流,而 这多台服务器可以使用 NFS 服务进行共享。( NFS 服务是最基础的共享服务) NFS 应用场景,常用于高可用文件共享,多台服务器共享同样的数据,可扩展性比力 差,本身高可用方案不完满,取而代之的数据量比力大的可以接纳 MFS 、 TFS 、 HDFS 等等 分布式文件体系。 1. 基础设置 修改两个节点的主机名,第一台机器为 nfs-server ;第二台机器为 nfs-client 。命令如下: nfs-server 节点: [root@nfs-server ~]# hostnamectl set-hostname nfs-server [root@nfs-server ~]# hostnamectl Static hostname: nfs-server Icon name: computer-vm Chassis: vm Machine ID: 1d0a70113a074d488dc3b581178a59b8 Boot ID: 7285608fd50c4da886e94c6a33873ed9 Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-327.el7.x86_64 Architecture: x86-64 nfs-client 节点: [root@nfs-client ~]# hostnamectl set-hostname nfs-client [root@nfs-client ~]# hostnamectl Static hostname: nfs-client Icon name: computer-vm Chassis: vm Machine ID: 06c97bdf0e6c4a89898aa7d58c6be2cc Boot ID: f07cf0f9d31e4b2185de0f8db7dd456b Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-327.el7.x86_64 Architecture: x86-64 2. 安装 NFS 服务 nfs-client 节点按照实战案例 3.3 中的方法设置 YUM 源。两个节点安装 NFS 服务。命令 如下: nfs-server 节点: [root@nfs-server ~]# yum -y install nfs-utils rpcbind 32 nfs-client 节点: [root@nfs-client ~]# yum -y install nfs-utils rpcbind 注意:安装 NFS 服务必须要依赖 RPC ,以是运行 NFS 就必须要安装 RPC 。 3.NFS 服务使用 在 nfs-server 节点创建一个用于共享的目录,命令如下: [root@nfs-server ~]# mkdir /mnt/test 编辑 NFS 服务的设置文件 /etc/exports ,在设置文件中加入一行代码,命令如下: [root@nfs-server ~]# vi /etc/exports [root@nfs-server ~]# cat /etc/exports /mnt/test 192.168.200.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501) 生效设置,命令如下: [root@nfs-server ~]# exportfs -r 设置文件说明: ⚫ /mnt/test :为共享目录(若没有这个目录,请新建一个)。 ⚫ 192.168.200.0/24 :可以为一个网段,一个 IP ,也可以是域名。域名支持通配符,例 如, *.qq.com 。 ⚫ rw : read-write ,可读写。 ⚫ ro : read-only ,只读。 ⚫ sync :文件同时写入硬盘和内存。 ⚫ async :文件暂存于内存,而不是直接写入内存。 ⚫ no_root_squash : NFS 客户端毗连服务端时,如果使用的是 root ,那么对服务端共享 的目录来说,也拥有 root 权限。显然开启这项是不安全的。 ⚫ root_squash : NFS 客户端毗连服务端时,如果使用的是 root ,那么对服务端共享的目 录来说,拥有匿名用户权限,通常它将使用 nobody 或 nfsnobody 身份。 ⚫ all_squash :岂论 NFS 客户端毗连服务端时使用什么用户,对服务端共享的目录来说, 都拥有匿名用户权限。 ⚫ anonuid :匿名用户的 UID ( User Identification ,用户身份证明)值,可以在此处自行 设定。 ⚫ anongid :匿名用户的 GID ( Group Identification ,共享资源体系使用者的群体身份) 33 值。 nfs-server 端启动 NFS 服务,命令如下: [root@nfs-server ~]# systemctl start rpcbind [root@nfs-server ~]# systemctl start nfs nfs-server 端查看可挂载目录,命令如下: [root@nfs-server ~]# showmount -e 192.168.200.10 Export list for 192.168.200.10: /mnt/test 192.168.200.0/24 可以查看到共享的目录。 转到 nfs-client 端,在客户端挂载前,先要将服务器的 SELinux 服务和防火墙服务关闭, 命令如下: [root@nfs-client ~]# setenforce 0 [root@nfs-client ~]# systemctl stop firewalld 在 nfs-client 节点,进行 NFS 共享目录的挂载,命令如下: [root@nfs-client ~]# mount -t nfs 192.168.200.10:/mnt/test /mnt/ 无提示信息则表示成功,查看挂载情况。命令如下: [root@nfs-client ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 878M 17G 5% / devtmpfs 903M 0 903M 0% /dev tmpfs 913M 0 913M 0% /dev/shm tmpfs 913M 8.6M 904M 1% /run tmpfs 913M 0 913M 0% /sys/fs/cgroup /dev/sda1 497M 125M 373M 25% /boot tmpfs 183M 0 183M 0% /run/user/0 /dev/sr0 4.1G 4.1G 0 100% /opt/centos 192.168.200.10:/mnt/test 5.8G 20M 5.5G 1% /mnt 可以看到 nfs-server 节点的 /mnt/test 目录已挂载到 nfs-client 节点的 /mnt 目录下。 4. 验证 NFS 共享存储 在 nfs-client 节点的 /mnt 目录下创建一个 abc.txt 的文件并盘算 MD5 值,命令如下: 34 35 [root@nfs-client ~]# cd /mnt/ [root@nfs-client mnt]# ll total 0 [root@nfs-client mnt]# touch abc.txt [root@nfs-client mnt]# md5sum abc.txt d41d8cd98f00b204e9800998ecf8427e abc.txt 回到 nfs-server 节点进行验证,命令如下: [root@nfs-server ~]# cd /mnt/test/ [root@nfs-server test]# ll total 0 -rw-r--r--. 1 root root 0 Oct 30 07:18 abc.txt [root@nfs-server test]# md5sum abc.txt d41d8cd98f00b204e9800998ecf8427e abc.txt 可以发现,在 client 节点创建的文件和 server 节点的文件是一样的。 36 3.5 实战案例——CIFS(Samba)服务的使用
3.5.1 案例目标
( 1 )相识 CIFS 服务的安装。 ( 2 )相识 CIFS 的设置与使用。 3.5.2 案例分析
1. 规划节点 Linux 操作体系的单节点规划,见表 3-5-1 。 表 3-5-1 节点规划 IP 主机名 节点 192.168.200.20 samba samba 服务节点 2. 基础准备 该实战案例需要使用一台服务器,使用实战案例 3.4 安装的 nfs-client 作为 samba 节点, 进行下述实行。 3.5.3 案例实施 CIFS 是实现文件共享服务的一种文件体系,重要用于实现 Windows 体系中的文件共享, Linux 体系中用的比力少,一般 Linux 体系中使用 CIFS 文件体系实现文件共享,需要安装 Samba 服务。它使步伐可以访问长途 Internet 盘算机上的文件,并要求此盘算机提供服务。 CIFS 使用客户 / 服务器模式。客户步伐哀求远在服务器上的服务器步伐为它提供服务。服务 器得到哀求并返反响应。 CIFS 是公共的或开放的 SMB 协议版本,并由 Microsoft 使用。 SMB 协议在局域网上用于服务器文件访问和打印的协议。像 SMB 协议一样, CIFS 在高层运行, 而不像 TCP/IP 协议那样运行在底层。 CIFS 可以看做是应用步伐协议,如文件传输协议和超 文本传输协议的一个实现。 1. 安装 Samba 服务 登录 192.168.200.20 假造机,起首修改主机名,命令如下: [root@nfs-client ~]# hostnamectl set-hostname samba [root@samba ~]# hostnamectl 37 Static hostname: samba Icon name: computer-vm Chassis: vm Machine ID: 1d0a70113a074d488dc3b581178a59b8 Boot ID: 7285608fd50c4da886e94c6a33873ed9 Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-327.el7.x86_64 Architecture: x86-64 安装 Samba 服务,命令如下: [root@samba ~]# yum install -y samba 2. 设置 Samba 服务 设置 Samba 的设置文件 /etc/samba/smb.conf 。 ① 修改 [global] 中的内容如下(找到设置文件中的字段并修改, disable spoolss = yes 是新 增的): load printers = no cups options = raw ; printcap name = /dev/null # obtain a list of printers automatically on UNIX System V systems: ; printcap name = lpstat ; printing = bsd disable spoolss = yes ②在设置文件的最后,添加如下内容: [share] path = /opt/share browseable = yes public = yes writable = yes 38 参数说明: ⚫ /opt/share :这个目录是将要共享的目录,若没有,需要创建。 ⚫ browseable :参数是操作权限; ⚫ public :参数是访问权限; ⚫ writable :参数是对文件的操作权限。 创建目录并赋予权限,命令如下: [root@samba ~]# mkdir /opt/share [root@samba ~]# chmod 777 /opt/share/ ③启动 Samba 服务,命令如下: [root@samba ~]# systemctl start smb [root@samba ~]# systemctl start nmb ④查看端口启动情况,命令如下( netstat 命令若不能用,自行安装 net-tools 软件包): [root@samba ~]# netstat -ntpl Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 2718/ smbd tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1469/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2168/master tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 2718/smbd tcp6 0 0 :::139 :::* LISTEN 2718/smbd tcp6 0 0 :::22 :::* LISTEN 1469/sshd tcp6 0 0 ::1:25 :::* LISTEN 2168/master tcp6 0 0 :::445 :::* LISTEN 2718/ smbd ⑤最后创建 Samba 用户。 [root@samba ~]# smbpasswd -a root # 这个用户必须是体系存在的用户 New SMB password: Retype new SMB password: Added user root. 本案例为了方便使用的是 root 用户,输入 smbpasswd -a root 后,再输入密码,设置的 密码为 000000 。 ⑥重启 Samba 服务。 [root@samba ~]# service smb restart 3. 使用 Samba 服务 使用 PC 机,按“ win+R ”键,并输入 Samba 服务的 IP 地点,(在使用 PC 访问 Samba 服务前,确保 Samba 服务器的 SELinux 服务与防火墙服务均处于关闭状态)如图 3-5-1 所示。 图 3-5-1 运行界面 在弹出界面输入用户名和密码,然后单击右下角的“确定”按钮(用户名为 root ,密码 为 000000 ),如图 3-5-2 所示。 39 图 3-5-2 登录界面 登录后如图 3-5-3 所示。 图 3-5-3 Samba 共享目录界面 可以看到一个 root 目录一个 share 目录, Samba 会默认共享用户目录, share 则是通过配 置文件共享的目录。 使用 Samba 服务,可以简单地理解为共享文件服务器,将需要被共享的文件,放入 share 目录即可,将之前移动到 /media 中的 repo 文件,移动到 share 目录,命令如下: [root@samba ~]# mv /media/* /opt/share/ 转到 PC 机,进入 share 目录,查看被共享的文件。如图 3-5-4 所示。 40 41 图 3-5-4 share 目录被共享的文件 至此,关于 Samba 的简单共享,已完成。关于 Samba 的权限控制,学生可以自行研究。 42 3.6 实战案例——构建 LNMP+WordPress
3.6.1 案例目标
( 1 )相识 LNMP 环境的组成。 ( 2 )相识 LNMP 环境的摆设与安装。 ( 2 )相识 WordPress 应用的摆设与使用。 3.6.2 案例分析
1. 规划节点 Linux 操作体系的单节点规划,见表 3-6-1。 表 3-6-1 节点规划 IP 192.168.200.20 主机名 lnmp 节点 lnmp 服务节点 2. 基础准备 该实战案例需要使用一台服务器,使用实战案例 3.5 使用过的 Samba 节点作为本实行的 lnmp 节点,进行下述实行。 3.6.3 案例实施
LNMP 代表的是 Linux 体系下 Nginx+MySQL+PHP 这种网站服务器架构。 Linux 是一类 Unix 盘算机操作体系的统称,是目前最流行的免费操作体系。代表版本 有 Debian 、 CentOS 、 Ubuntu 、 Fedora 、 Gentoo 等。 Nginx 是一个高性能的 HTTP 和反向署理服务器,也是一个 IMAP/POP3/SMTP 署理服 务器。 MySQL 是一个小型关系型数据库管理体系。 PHP 是一种在服务器端实行的嵌入 HTML 文档的脚本语言。 这 4 种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服 务体系。 1. 安装 LNMP 环境 登录 192.168.200.20 假造机,起首修改主机名,命令如下: [root@samba ~]# hostnamectl set-hostname lnmp [root@lnmp lnmp1.6-full]# hostnamectl Static hostname: lnmp Icon name: computer-vm Chassis: vm Machine ID: 06c97bdf0e6c4a89898aa7d58c6be2cc Boot ID: b05f421c261c4a26b5e5d5b67566c826 Virtualization: vmware Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-327.el7.x86_64 Architecture: x86-64 将提供的 lnmp1.6-full.tar.gz 软件包,上传到假造机的 /root 目录下,并解压,命令如下: [root@lnmp ~]# tar -zxvf lnmp1.6-full.tar.gz 解压完毕后,进入 lnmp1.6-full 目录,实行安装脚本,(在实行脚本前,需设置 DNS ) 命令如下: [root@lnmp ~]# cd lnmp1.6-full [root@lnmp lnmp1.6-full]# ./install.sh 根据假造机设置的差别,安装时间会有差别,在实行脚本完毕后,会有成功的提示,如 图 3-6-1 所示。(根据提示,选择默认的软件安装版本,设置数据库密码,安装成功后按 Ctrl+C 键退出) 43 图 3-6-1 安装成功 使用浏览器,输入假造机 IP 为 192.168.200.20 ,查看界面,如图 3-6-2 所示。 图 3-6-2 安装完毕首页 关于安装 LNMP 环境,已使用脚本进行一键摆设,感兴趣的同学可以查看脚本,分析 44 安装步骤,这边不再赘述。 2. 摆设 WordPress 应用 在摆设 WordPress 之前,还需要做几个基础的设置,起首是数据库,需要登录数据库, 创建 WordPress 数据库并赋予长途权限,命令如下: [root@lnmp ~]# mysql -uroot -p000000 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.5.62-log Source distribution Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> create database wordpress; Query OK, 1 row affected (0.01 sec) mysql> grant all privileges on *.* to root@localhost identified by '000000' with grant option; Query OK, 0 rows affected (0.00 sec) mysql> grant all privileges on *.* to root@"%" identified by '000000' with grant option; Query OK, 0 rows affected (0.00 sec) mysql> Ctrl-C -- exit! Aborted [root@lnmp default]# 45 46 将提供的 wordpress-4.7.3-zh_CN.zip 压缩包上传至假造机的 /root 目录并解压,命令如下: [root@lnmp ~]# unzip wordpress-4.7.3-zh_CN.zip 进入 /home/wwwroot/default 目录,将 index.html 删除,命令如下:(该目录为 Nginx 的 项目目录,删除本来存在的默认页面) [root@lnmp default]# rm -rf index.html 回到 /root/wordpress 目录,将该目录下的全部文件,复制到 /home/wwwroot/default 目录 下,并赋予 777 的权限,命令如下: [root@lnmp wordpress]# cp -rvf * /home/wwwroot/default [root@lnmp wordpress]# cd /home/wwwroot/default/ [root@lnmp default]# chmod 777 * 在 /home/wwwroot/default/ 目录下,可以看见一个 wp-config-sample.php 设置文件,该文 件是 WordPress 应用提供了一个模板设置文件,将该模板复制一份并改名为 wp-config.php , 然后编辑该文件,命令如下: [root@lnmp default]# cp wp-config-sample.php wp-config.php [root@lnmp default]# vi wp-config.php // ** MySQL 设置 - 具体信息来自您正在使用的主机 ** // /** WordPress 数据库的名称 */ define('DB_NAME', 'wordpress'); /** MySQL 数据库用户名 */ define('DB_USER', 'root'); /** MySQL 数据库密码 */ define('DB_PASSWORD', '000000'); /** MySQL 主机 */ define('DB_HOST', '127.0.0.1'); /** 创建数据表时默认的笔墨编码 */ define('DB_CHARSET', 'utf8'); /** 数据库整理范例。如不确定请勿更改 */ define('DB_COLLATE', ''); 修改完毕后,保存退出,在浏览器中输入地点 192.168.200.20 ,刷新页面,进入 WordPress 安装界面,填写须要信息,然后单击左下角“安装 WordPress ”按钮,如图 3-6-3 所示。 图 3-6-3 WordPress 安装界面 安装完毕后,刷新页面,单击左下角“登录”按钮,如图 3-6-4 所示。 47 图 3-6-4 安装完毕 使用安装时填写的账户和密码信息,然后单击右下角“登录”按钮,登录 WordPress , 如图 3-6-5 所示。 图 3-6-5 登录界面 登录后,进入 WordPress 应用的配景仪表盘界面,如图 3-6-6 所示。 48 图 3-6-6 WordPress 配景界面 单击左上角“ myblog ”图标,进入博客首页,可以在这里发表文章,记录古迹等,如 图 3-6-7 所示。 图 3-6-7 WordPress 首页 至此, WordPress 应用摆设完毕,学习动手搭建一个属于自己的博客体系吧。 以上内容搬运时会出现小错误,类似增长了数字等,
代码请勿直接复制粘贴哟~~
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |