vm新建一个CentOS7虚拟机后要做的事
一、桥接模式固定ip(跳过)
下面直接跳过即可,我后面选择了使用NAT模式的固定ip。
问题:虚拟机的NAT、桥接、仅主机模式的区别?底层原理理解?
主要是为了避免NAT模式下ip变动问题,特别时有些需要配置ip的软件,当然一般在家庭网络中设备较少时一般很少变动,设备较多时且设备上下线较频繁时使用固定ip也会有ip冲突的问题,不知道有没有较好的解决办法
1. 查看win的本地网络配置
再查看一下centos的网络配置
默认网卡应该都是ens33,执行如下指令查看
cat /etc/sysconfig/network-scripts/ifcfg-ens33
为了方便,创建虚拟机时使用的是NAT网络连接,下面进行配置修改,注意这个配置文件对于root用户以外的用户只读,因此需要以root用户进行修改
BOOTPROTO=static # 静态ip, 手动配置 IPADDR=192.168.31.110 # 手动配置的ip, 需要与Win的ip在同一网段 NETMASK=255.255.255.0 # 子网掩码, 需要与 Win 的一致 GATEWAY=192.168.31.1 # 网关, 同上 DNS1=192.168.31.1 # DNS服务器, 同上 DNS1=8.8.8.8 # 8.8.8.8为Google提供的免费DNS服务器的IP地址
关机 ,修改虚拟机网络连接方式为桥接,虚拟机右键 --> 设置
当然如果你的虚拟机启动配置的时候就是使用桥接模式启动的,那么只需要按以下命令重启网络服务即可
systemctl restart network.service
启动测试
ping www.baidu.com
当然此时双方进行互ping,那么一般来说Win可以ping通CentOS,但是CentOS无法ping通Win,这是因为Win的防火墙问题,一般来说也不影响使用
二、NAT模式固定ip
1. 确定NAT模式对应网络适配器,一般来说是VMnet8
也可以通过vm虚拟机界面查看
2. 在物理机上修改上面的NAT适配器属性
下面配置ip地址的时候不需要和主机在同一个网段,为什么?
3. 配置vm
4. 修改为nat
5. 修改虚拟机网络配置
root用户执行
vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet" PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="static" # 静态ip 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="3c34d363-d2a3-44e8-b414-277e2f0ab9a1" DEVICE="ens33" ONBOOT="yes" # 开机自启 IPADDR=192.168.33.100 # 自己配置的静态ip地址, 需要和NAT前面配置的NAT网卡配置的地址在同一个网段 NETMASK=255.255.255.0 # 子网掩码 GATEWAY=192.168.33.2 # 网关, 需要和在VM界面查看到的网关地址一致 DNS1=192.168.33.2 # DNS服务器地址, 配置和上面的网关一致即可 DNS1=8.8.8.8
6. 测试
# 重启网络服务 sudo systemctl restart netweok # 访问外网 ping www.baidu.com # ping 主机,后面的ip设置为你自己的主机ip ping 192.168.31.210 # 主机ping虚拟机 ping 192.168.33.100
三、修改源(可选)
我这里修改为阿里的源(如果下载速度可以,并不慢的话实际也可以不处理,我重复安装了几次后,后面的安装没有再修改源了,因为发现本身自带的就挺快的)
注:可直接访问这个网址清华大学开源镜像站,里面有如何处理,centos | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
先安装一下wget方便后续下载
sudo yum install -y wget
备份源
cd /etc/yum.repos.d cp -a CentOS-Base.repo CentOS-Base.repo.backup
下载源并覆盖上面的源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
修改源文件:CentOS-Base.repo,将http全修改为https。vim打开,进入命令模式,全局替换
%s/http/https/g
若报错:Could not resolve host: mirrors.cloud.aliyuncs.com,则删除所有相关行即可
更新缓存
清除缓存:yum clean all 生成缓存:yum makecache
更新软件至源中最新
sudo yum -y update
四、安装一些基础命令
网络
ip addr:查看网络ip地址的,系统自带
sudo yum install -y net-tools
lsof命令
sudo yum install -y lsof
vim
sudo yum install -y vim
传输问题的sz、rz
sudo yum -y install lrzsz
traceroute命令
sudo yum install -y traceroute
tree命令
sudo yum install -y tree
其他一些东西以后遇到再说,比如g++、gcc、jdk等,注意gcc和g++的版本问题,好像不指定版本安装时默认安装的版本是比较低的,那么当其他依赖这些库的软件安装时可能出问题,因此可以安装较新的版本
五、升级内核版本(可选)
反正是自己用,一些东西可以升级得较新
参考文章:Centos7 升级内核版本 - 大胖猴 - 博客园 (cnblogs.com)
Linux centos7升级内核(两种方法:内核编译和yum更新)_zsk_john的博客-CSDN博客_centos升级内核
1. 查看当前内核版本
[chen@docker ~]$ uname -r 3.10.0-1160.el7.x86_64 [chen@docker ~]$ uname -a Linux docker 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux [chen@docker ~]$ cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)
2. 添加源
更新 yum 源仓库
sudo yum -y update
启用ELRTepo仓库
ELRepo 仓库是基于社区的用于企业级 Linux 仓库,提供对 RedHat Enterprise (RHEL) 和 其他基于 RHEL的 Linux 发行版(CentOS、Scientific、Fedora 等)的支持。
ELRepo 聚焦于和硬件相关的软件包,包括文件系统驱动、显卡驱动、网络驱动、声卡驱动和摄像头驱动等。
导入ELRepo仓库的公共密钥
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
安装ELRepo仓库的yum源
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
3. 查看可选内核版本
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
4. 安装最新内核版本
sudo yum --enablerepo=elrepo-kernel install -y kernel-ml
--enablerepo
选项开启 CentOS 系统上的指定仓库。默认开启的是 elrepo
,这里用 elrepo-kernel
替换
5. 设置grub2
内核安装好后,需要设置为默认启动选项并重启后才会生效
查看系统上的可用内核
sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
设置内核为grub2默认版本,下面的0即为上面列出的
sudo grub2-set-default 0
6. 删除旧内核(可选,虚拟机每次启动时都可以看见可选内核)
当然在新内核安装完成后(重启后)再处理,否则不知道会不会出现问题
查看系统中全部可选内核
rpm -qa | grep kernel
yum remove 删除旧内核的 RPM 包
sudo yum remove -y kernel-tools-libs-3.10.0-1160.49.1.el7.x86_64 \ kernel-3.10.0-1160.49.1.el7.x86_64 \ kernel-3.10.0-1160.el7.x86_64 \ kernel-tools-3.10.0-1160.49.1.el7.x86_64
ELRepo 仓库是基于社区的用于企业级 Linux 仓库,提供对 RedHat Enterprise (RHEL) 和 其他基于 RHEL的 Linux 发行版(CentOS、Scientific、Fedora 等)的支持。
ELRepo 聚焦于和硬件相关的软件包,包括文件系统驱动、显卡驱动、网络驱动、声卡驱动和摄像头驱动等。