Centos虚拟机安装与网络设置

发布于 2020-04-21  130 次阅读


使用虚拟机作为测试开发用的服务器。
安装Centos虚拟机和相关的网络设置,使虚拟机可以联网且与主机组成区域网。

一.安装虚拟机步骤
1.创建虚拟机-自定义
2.稍后安装操作系统(提前准备好.iso文件)
Centos官网找下载地址,可以选择一个镜像站,通常路径都是http://网址/centos/大版本号/isos/x86_64/CentOS-8.1.1911-x86_64-dvd1.iso
举例:https://mirrors.aliyun.com/centos/7.7.1908/isos/x86_64/
3.选择系统类型Centos6/7 64位
4.选择虚拟磁盘路径
5.选择网络模式:
NAT网络:虚拟网卡-与主机组成局域网-虚拟机可能无法上网-可自由设定外网IP
桥接网络:共享网卡-与主机组成局域网-可以上网-外网IP自动分配在主机的网段
服务器设计IP:是192.168.1.100(1号网段)或者192.168.11.200(11号网段)都差别不大,地址需要固定死。
拿虚拟机作为服务器使用时,虚拟机没必要联通internet,但是要提供一个固定的IP给客户端访问。
主机IP:由猫或者路由器决定,用网线(192.168.1.3)或Wifi(192.168.31.10)会更改IP。
NAT网络切换网段:编辑-虚拟网络编辑器-更改设置(管理员)-选择VMnet8(NAT模式)-设置子网IP-192.168.XXX.0
6.创建完成,其他选项可选择默认值。

二.编辑虚拟机设置
1.自定义硬件-CD-指定.iso文件
2.移除打印机

三.安装系统
Centos6
1.开启此虚拟机-点击虚拟机屏幕范围
2.选项1-安装
3.跳过检查(Skip)
4.检测到不支持的硬件(OK)
5.Basic Storage Devices - Yes,Discard any data.
6.Hostname:Sekia
7.root password:bidll123
8.Use All Space - Write changes to disk - Reboot

Centos7
1.开启此虚拟机-点击虚拟机屏幕范围
2.选项1-安装
3.选择语言-Done
4.安装配置总览
时间设置-设置时区、当前时间
软件安装设置-默认最小化安装-可选择安装GUI
磁盘分区-I will configure partitioning-
“+”按钮挂载点(mount point)
设置容量(选择挂载点 输入容量大小)
/boot 200m
/ 10g
swap 2g
Done-AcceptChanges
网络和主机名设置-打开网卡-设置Host name-Done
全部设置好后可以选择Begin Installation(开始安装)
5.设置root密码-(可选-添加额外账号)
6.等待安装完成-选择重启

三.网络配置
网络设置解释:
桥接模式下,主机与虚拟机在同一个网段,桥接的目标是主机正在使用的网卡。
IP中的第3个数一致时,即在同一个网段。
如果使用了路由器,根据品牌(如小米、华为),可能会将主机分配到非1号网段。
去掉路由器直接连猫再重启电脑,就可以被分配到1号网段。
设置好虚拟机的网关和IP后,虚拟机可以联网,虚拟机和主机可以互ping(可能需关闭主机的防火墙)。

网络设置
Centos6:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
Centos7:
vi /etc/sysconfig/network-scripts/ifcfg-ens33

(Centos7的值需要填在“”里,根据文件里已有的格式即可。)
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.XXX.XXX
NETMASK=255.255.255.0
GATEWAY=192.168.XXX.1
DNS1=8.8.8.8

vi /etc/sysconfig/network
Centos6添加:
GATEWAY=192.168.XXX.1
Centos7添加:
NETWORKING=yes

关闭防火墙
Centos6:
chkconfig iptables off
Centos7:
systemctl stop firewalld
systemctl disable firewalld

重启网络服务
service network restart

查看虚拟机IP
ip addr

测试网络连通性
ping baidu.com
ctrl+C

ping 192.168.XXX.XXX(主机的IP)
ctrl+C

Centos7前端配置

安装Nginx
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/nginx.repo;sed -i -e '6,$d' -e '1c [nginx]' -e '2c name=nginx repo' -e '3c baseurl=http://nginx.org/packages/centos/7/$basearch/' -e '4c gpgcheck=0' -e '5c enabled=1' /etc/yum.repos.d/nginx.repo;yum install nginx -y;systemctl enable nginx;

安装PHP
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y;yum install php72 -y;yum install php72-php-fpm php72-php-gd php72-php-json php72-php-mbstring php72-php-mysqlnd php72-php-xml php72-php-xmlrpc php72-php-opcache php72-php-pecl-zip -y;systemctl enable php72-php-fpm.service;

配置PHP:使用nginx作为Web引擎
sed -i -e '24c user = nginx' -e '26c group = nginx' /etc/opt/remi/php72/php-fpm.d/www.conf;

配置Nginx:可使用php文件作为主页
sed -i -e '10c index index.php index.html index.htm;' -e '9a\if (-f $request_filename/index.html){rewrite (.*) $1/index.html break;}' -e '9a\if (-f $request_filename/index.php){rewrite (.*) $1/index.php;}' -e '9a\if (!-f $request_filename){rewrite (.*) /index.php;}' -e '12a\location ~ \.php$ {' -e '12a\root /usr/share/nginx/html;' -e '12a\fastcgi_pass 127.0.0.1:9000;' -e '12a\fastcgi_index index.php;' -e '12a\include fastcgi_params;' -e '12a\fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;}' /etc/nginx/conf.d/default.conf;

创建info.php页面:检查php状态(访问http:你的IP/info.php)
rm -rf /usr/share/nginx/html/*;cp /etc/yum.repos.d/CentOS-Base.repo /usr/share/nginx/html/info.php;sed -i -e '4,$d' -e '1c <?php' -e '2c phpinfo();' -e '3c ?>' /usr/share/nginx/html/info.php;

安装网络工具(可使用netstat命令)
yum install net-tools -y;

代码合并-用于一次性复制粘贴
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/nginx.repo;sed -i -e '6,$d' -e '1c [nginx]' -e '2c name=nginx repo' -e '3c baseurl=http://nginx.org/packages/centos/7/$basearch/' -e '4c gpgcheck=0' -e '5c enabled=1' /etc/yum.repos.d/nginx.repo;yum install nginx -y;systemctl enable nginx;yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm -y;yum install php72 -y;yum install php72-php-fpm php72-php-gd php72-php-json php72-php-mbstring php72-php-mysqlnd php72-php-xml php72-php-xmlrpc php72-php-opcache php72-php-pecl-zip -y;systemctl enable php72-php-fpm.service;sed -i -e '24c user = nginx' -e '26c group = nginx' /etc/opt/remi/php72/php-fpm.d/www.conf;sed -i -e '10c index index.php index.html index.htm;' -e '9a\if (-f $request_filename/index.html){rewrite (.*) $1/index.html break;}' -e '9a\if (-f $request_filename/index.php){rewrite (.*) $1/index.php;}' -e '9a\if (!-f $request_filename){rewrite (.*) /index.php;}' -e '12a\location ~ \.php$ {' -e '12a\root /usr/share/nginx/html;' -e '12a\fastcgi_pass 127.0.0.1:9000;' -e '12a\fastcgi_index index.php;' -e '12a\include fastcgi_params;' -e '12a\fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;}' /etc/nginx/conf.d/default.conf;rm -rf /usr/share/nginx/html/*;cp /etc/yum.repos.d/CentOS-Base.repo /usr/share/nginx/html/info.php;sed -i -e '4,$d' -e '1c <?php' -e '2c phpinfo();' -e '3c ?>' /usr/share/nginx/html/info.php;yum install net-tools -y;


关注成长,注重因果。