【Linux编译环境的搭建】Linux都没有,怎么学Linux编程?

194 阅读4分钟

本文准备从0开始,一步步搭建一套属于自己的多节点Linux系统环境,这将是后续学Linux用LinuxLinux环境编程应用和项目部署工具实验等一系列学习和实践的基石,希望对小伙伴们有帮助。

提前备好Linux编程实验环境非常重要,建议人手一套,这样以后每当学完一个理论知识需要实践时,立马就可以拿到上面去练手了。

因此本文先把环境给搭建起来!

![](https://upload-images.jianshu.io/upload_images/24175598-825086ed1c527fa6?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

软件准备

✪ VMware虚拟机软件:本文使用的是VMware Fusion 10.1.0版本

✪ CentOS操作系统ISO镜像:CentOS 7.4 64位

✪ SSH终端软件:SecureCRT

✪ SFTP文件传输工具:Transmit

✪ 物理宿主机系统:macOS Catalina 10.15.4

安装Linux操作系统

1、创建新的虚拟机

![](https://upload-images.jianshu.io/upload_images/24175598-97aa14ded21c7798?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

2、选择固件类型

![](https://upload-images.jianshu.io/upload_images/24175598-0e8d08c3b6ebdd91?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

默认即可

3、选择自定义设置

![](https://upload-images.jianshu.io/upload_images/24175598-e5325a6110cf3f6f?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

4、进入自定义设置

我们初步需要自定义的主要也就是处理器内存硬盘,可以根据宿主机性能按需分配。

![](https://upload-images.jianshu.io/upload_images/24175598-12bbdba93fdd1016?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-06a60688d2551072?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-ce5393ff576af0ba?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

5、启动虚拟机

![](https://upload-images.jianshu.io/upload_images/24175598-df0efc4a681fab1f?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

如果有权限提示,记得打开权限允许,否则可能会报错

![](https://upload-images.jianshu.io/upload_images/24175598-dfe915b0cc2f02b1?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

正式点击启动键,过程中各种提示权限的允许动作,建议都通过一下。

6、进入系统安装界面

![](https://upload-images.jianshu.io/upload_images/24175598-a47894fdb8f92b31?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-01888bb4762481a9?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

7、选择安装语言

![](https://upload-images.jianshu.io/upload_images/24175598-8647201750e24897?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

8、选择预安装的软件

![](https://upload-images.jianshu.io/upload_images/24175598-18176e963aa61c95?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-bd8daa951589233d?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

9、配置分区

![](https://upload-images.jianshu.io/upload_images/24175598-061f9d9457734c5f?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-6bcdecebafb7c3aa?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

没有特别需求可以选择自动分区,大家如果有需要可以自定义分区。

10、进入正式安装过程

![](https://upload-images.jianshu.io/upload_images/24175598-6a25984ab40380b7?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-b05079f4431ce231?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

11、安装完成并重启

![](https://upload-images.jianshu.io/upload_images/24175598-98bf910529158af8?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

12、进入新系统

![](https://upload-images.jianshu.io/upload_images/24175598-b521be64c1257dd3?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-b71cdaf74c554d8f?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

系统是装好了,但还有几个问题

**问题一:**虚拟机内Linux系统与外网无法连通

![](https://upload-images.jianshu.io/upload_images/24175598-b65dc2126003e494?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

**问题二:**虚拟机内Linux系统与外部宿主机无法连通

比如我这里的物理宿主机的IP地址为:192.168.31.35

![](https://upload-images.jianshu.io/upload_images/24175598-e18df5b5d0ebfea5?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

**问题三:**虚拟机内Linux系统节点与节点之间无法连通(如果装了多个Linux节点的话)

网络配置(极其重要!)

1、首先尝试查看虚拟机系统的IP地址

使用命令ifconfig进行查看。我们会发现装好的系统并没有为它设置IP地址。

2、设置虚拟机与物理宿主机的网络连接

![](https://upload-images.jianshu.io/upload_images/24175598-e17861b20b0a5b61.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

首先选择桥接模式,另外由于我的物理主机是通过WiFi的方式连接到路由器最终访问外网,所以此处我选择的是Wi-Fi这一项

![](https://upload-images.jianshu.io/upload_images/24175598-32f6ad81502c158e?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

小伙伴们可以按实际情况进行选择。

3、为虚拟机配置固定静态IP

首先使用dhclient工具为本机分配一个网络内可用的IP地址:

![](https://upload-images.jianshu.io/upload_images/24175598-e3a4b07b625a13da?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

接下来编辑虚拟机系统网卡配置,将上面分配所得的IP地址配置进去:

使用命令编辑:vim /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=824ec4bd-a9ae-4410-8346-17ce7f3dd111

DEVICE=ens33

ONBOOT=yes

IPADDR=192.168.31.110

NETMASK=255.255.255.0

GATEWAY=192.168.31.1

DNS1=119.29.29.29

————————————

尤其注意下图红色标记部分的配置:

![](https://upload-images.jianshu.io/upload_images/24175598-d7a80a3d525d1b23?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

编辑完成,重启网络设置即可

systemctl restart network.service

检查安装配置结果

1、首先检查IP配置结果

![](https://upload-images.jianshu.io/upload_images/24175598-7a18f517f0fd7cb4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

2、检验虚拟机系统网络和外界的连通性

包括检查和外网的连通、和物理宿主机的连通、以及和兄弟节点(前提是你安装了多个虚拟机系统节点的话)之间的连接

![](https://upload-images.jianshu.io/upload_images/24175598-7bf6ae80850eb93a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

3、反向检查物理宿主机和虚拟机系统网络的连接性

![](https://upload-images.jianshu.io/upload_images/24175598-44e0983cb3897792.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

至此,大功告成!

SSH远程连接

在宿主机通过SSH终端连接虚拟机内Linux系统,成功!

![](https://upload-images.jianshu.io/upload_images/24175598-abd22755f326a8c1?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

SFTP文件传输

在宿主机通过SFTP工具即可访问虚拟机内Linux节点,从而可以实现本地和服务器的文件互传

![](https://upload-images.jianshu.io/upload_images/24175598-830fbb6b764183a6?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

这样一来,一个可用的Linux节点就打造完成了!

何不再多弄几个节点?

可以完全重复以上步骤再打造出多个Linux节点,当然更简单的方式则是直接通过上面已经装好了的虚拟机节点直接克隆,来快速生成其他节点。

![](https://upload-images.jianshu.io/upload_images/24175598-85bae08c8754d532?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![](https://upload-images.jianshu.io/upload_images/24175598-a76e0477a8298100?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

克隆完成之后,只需要再配置一下新节点的网络即可。

后记

好啦,现在多节点的Linux环境终于搭建完成了,后续不管是学Linux用Linux,还是Linux环境编程应用和项目部署工具实验,都有可以动手实践的地方了。

————————

看到这里你是不是对“Linux”又有了一点新的认知呢~

如果你喜欢这篇文章的话,动动小指,点个赞再走~

如果你想学编程,小编推荐一个C语言/C++、windows、Qt、Linux****编程学习基地【点击进入】!

![](https://upload-images.jianshu.io/upload_images/24175598-eb2801bb4cbb7d80.gif?imageMogr2/auto-orient/strip)

一个活跃、高逼格、高层次的编程学习殿堂;编程入门只是顺带,思维的提高才有价值!

**涉及:**编程入门、游戏编程、网络编程、Windows编程、Linux编程、Qt界面开发、黑客等等....