云计算学习、第三章Linux 系统与服务构建运维

第三章 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 实战案例——CIFSSamba)服务的使用

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 应用部署完毕,学习动手搭建一个属于自己的博客系统吧。

以上内容搬运时会出现小错误,类似增加了数字等,

代码请勿直接复制粘贴哟~~

  • 22
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

茶杯盖儿~

你的鼓励是小茶杯学习的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值