当前位置: 首页 > news >正文

虚拟机- + linux

一、虚拟机概念

        虚拟机,其本质其实也是一个程序。 但是这个程序,模仿了一台完整的主机,一旦进入了这个程序,就放佛进入了另一台独立的电脑。

好处:在你的windows系统中 可以用虚拟机安装、操作 linux系统

1.安装虚拟机-VMWare

虚拟机(VMware)安装,保姆级教程(附所有安装包及所有安装步骤)_vmware虚拟机-CSDN博客

虚拟机网络认识  四种

  • 桥接        虚拟机≈独立物理机        
  • 场景:你用笔记本(宿主机,IP:192.168.1.10)连接家里的路由器,想让虚拟机里的 系统直接访问局域网内的打印机(IP:192.168.1.20),同时能连互联网。
  • 操作: 获得一个与宿主机网络相同的 IP 地址范围,路由器分配的 IP(如 192.168.1.11)。
  • 结果:虚拟机可以直接访问打印机(192.168.1.20),也能正常浏览网页,局域网内其他设备(如手机,IP:192.168.1.12)也能访问虚拟机里的共享文件。
  • NAT 模式    虚拟机通过宿主机 “转发” 上网

  • 场景:你在公司电脑(宿主机,IP:10.0.0.50,公司局域网限制新增设备)上装了虚拟机,只想让虚拟机连互联网查资料,不需要被其他同事的电脑访问。
  • 操作:虚拟机选择 “NAT 模式”,开机后虚拟机获取到宿主机分配的私有 IP(如 192.168.122.10)。【虚拟机的 IP 地址通常会在一个私有地址段内,无法直接被外部网络访问】
  • 结果:虚拟机可以正常浏览网页、下载文件,但同事的电脑(IP:10.0.0.51)无法访问虚拟机里的内容,也不会占用公司局域网的 “独立设备名额”。
  • 仅主机        虚拟机只和宿主机通信
     
网络模式能否连互联网能否被局域网设备访问IP 来源核心用途
桥接模式能(需局域网通)路由器 / DHCP 服务器虚拟机需作为独立设备(如服务器、共享设备)
NAT 模式能(靠宿主机转发)不能宿主机虚拟 DHCP仅需虚拟机上网,无需对外提供服务
仅主机模式不能不能宿主机虚拟 DHCP本地测试、数据隔离(如开发调试)
自定义模式看所选虚拟网络配置看所选虚拟网络配置看网络配置(DHCP / 手动)灵活适配复杂场景(如多虚拟机分网段)

二、安装Linux系统

  • 新手用户:推荐 Ubuntu、Linux Mint 或 Zorin OS,易于上手,社区支持丰富。
  • 开发者:Fedora、Debian、Arch Linux 或 Manjaro 提供最新的软件包和灵活的配置。
  • 企业用户RHELCentOS、AlmaLinux 或 openEuler 提供稳定性和长期支持。
  • 中文用户:deepin 和 Kylin 提供良好的中文支持和本地化体验。

注意:此次用CentoS版[只是测试使用]

“镜像” 是指原始数据或实体的复制品,其内容与源保持一致。

安装虚拟机时,镜像指的是操作系统的安装文件或完整的系统副本【也可理解为系统文件复制品】

在 VMWare 中安装操作系统,用的是安装镜像的办法。 CentOS的镜像地址有多,可以选择

虚拟机VMware上安装CentOS(详细图文教程)-腾讯云开发者社区-腾讯云

三、防火墙

        控制进出网络流量的安全工具。它根据预定义的规则来允许或阻止网络流量,保护系统免受未授权的访问

常见的防火墙工具有 iptablesfirewalld

cat /etc/os-release   # 查看系统版本信息(包含发行版名称、版本号等)

CentOS  发行版

1. iptables(传统的防火墙工具)

sudo iptables -L  # 会列出当前的 iptables 规则  

输入链:默认策略是 ACCEPT,表示所有进入的流量都允许通过,除非有其他规则显式阻止它。

转发链:默认策略是 DROP,意味着所有转发流量都被拒绝,除非有规则明确允许。

输出链:默认同输入链

或者 service iptables status  令查看防火墙的状态
 

  • 添加一条规则: 例如,允许通过端口 80(HTTP)的流量:
    sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  • 删除规则: 删除一条规则,可以指定规则的编号,先使用 -L --line-numbers 查看规则编号,再删除:
  • sudo iptables -D INPUT 1  【此时删除输入链的第一个规则】
  • 保存规则(使规则在重启后依然有效)
    sudo service iptables save  
    CentOS 7 之后  sudo iptables-save > /etc/sysconfig/iptables
  • 重新加载规则   修改规则并应用它们  ,可以重新加载iptables
    sudo systemctl restart iptables

2.firewalld

1.查看防火墙状态        systemctl status firewalld

如果输出显示 firewalld 服务处于 activerunning 状态,那么系统使用的是 firewalld

如果状态是 inactivedead,说明 firewalld 没有启用

按照上述 没启用,没安装

2.安装防火墙        yum -y install firewalld firewall-config

3.生命周期管理

为了启动防火墙,要先重启下 dbus..        systemctl restart dbus


然后通过如下命令进行防火墙生命周期管理
启动一个服务:systemctl start firewalld.service

关闭一个服务:systemctl stop firewalld.service

重启一个服务:systemctl restart firewalld.service

显示一个服务的状态:systemctl status firewalld.service

在开机时启用一个服务:systemctl enable firewalld.service

在开机时禁用一个服务:systemctl disable firewalld.service

查看服务是否开机启动:systemctl is-enabled firewalld.service

查看已启动的服务列表:systemctl list-unit-files|grep enabled

查看启动失败的服务列表:systemctl --failed

4.
防火墙配置工作
查看版本:firewall-cmd --version

查看帮助:firewall-cmd --help

显示状态:firewall-cmd --state

查看所有打开的端口:firewall-cmd --zone=public --list-ports

更新防火墙规则:firewall-cmd --reload

查看区域信息:   firewall-cmd --get-active-zones

查看指定接口所属区域:firewall-cmd --get-zone-of-interface=eth0

拒绝所有包  firewall-cmd --panic-on  慎用,最好就不用!

取消拒绝状态:firewall-cmd --panic-off

查看是否拒绝: firewall-cmd --query-panic

开放一个防火墙端口

1.firewall-cmd --zone=public --add-port=80/tcp --permanent    【添加永久规则】

2.firewall-cmd --reload   【重新加载防火墙,才会生效 】


查看  firewall-cmd --zone=public --query-port=80/tcp

删除  firewall-cmd --zone= public --remove-port=80/tcp --permanent

 

四、其他常用命令

nslookup www.baidu.com  # 查询 DNS 记录的工具,可以将域名解析为 IP 地址,或查询 DNS 服务器信息。

[root@localhost sysconfig]# nslookup www.baidu.comServer:		172.11.33.16        // DNS 服务器的 IP 地址,它是 负责解析域名的服务器
Address:	172.11.33.16#53     // 端口号是 53(标准 DNS 端口)Non-authoritative answer:
www.baidu.com	canonical name = www.a.shifen.com.  //前者 别名指向真正主机名www.a.shifen.com    
Name:	www.a.shifen.com
Address: 110.242.70.57       // 主机名对应的 IPv4 地址  
Name:	www.a.shifen.com
Address: 110.242.69.21      // 主机名对应的 IPv4 地址  多个说明shifen.com部署多台服务器

cat /etc/resolv.conf   查看你所配置的DNS 地址

nameserver 8.8.8.8
nameserver 8.8.4.4
search shenzi
  • nameserver 后面跟的是 DNS 服务器的 IP 地址,系统会按顺序使用这些服务器进行域名解析
  • search   访问短域名时,系统会自动尝拼接这些后缀进行解析

举例:ping testserver  系统会自动帮你补全成 ping testserver.shenzi

文件通常由系统自动维护(比如通过 DHCP 服务获取 DNS 信息时),但在某些情况下也可以手动编辑来修改 DNS 配置。

ip address     或者  ip addr  查看和管理网络接口配置的命令   [传统的 ifconfig 命令]

  • 接口名称:如 lo(本地回环)、eth0(以太网)、wlan0(无线网卡)等
  • IP 地址:包括 IPv4 和 IPv6 地址(格式为 inet 或 inet6 后跟地址 / 子网掩码)
  • MAC 地址:硬件地址(格式为 link/ether 后跟地址)
  • 接口状态UP(启用)或 DOWN(禁用)等

netstat -anp|grep 8080        网络,查端口、连接、路由

  • netstat -tuln:查看所有监听中的 TCP/UDP 端口(常用!)

    • -t:显示 TCP 连接
    • -u:显示 UDP 连接
    • -l:只显示监听状态的端口
    • -n:以数字形式显示 IP 和端口(不解析域名)

wget https://www.baidu.com        文件下载,适合批量或后台下载 

curl https://www.baidu.com    查看网页源码 

wgetcurl
主要用途专注文件下载多功能网络工具(下载、请求等)
协议支持较少(HTTP/HTTPS/FTP 为主)更多(支持 SCP、SFTP、SMTP 等)
脚本 / 编程友好较弱较强(易与其他命令结合)
后台 / 批量下载更方便(内置功能)需要配合其他工具(如 nohup
默认行为自动保存文件(用 URL 文件名)默认输出到终端

五、linux基础命令

Linux命令大全(非常详细)零基础入门到精通,收藏这一篇就够了_linux常用命令-CSDN博客

史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了!_linux命令-CSDN博客

六、知道某个错误 去查日志看具体信息

linux查找文件并查看详情_linux查找文件后保存结果怎么看-CSDN博客

七、日志查错

linux、windows常用命令——参数解释_windows free -h-CSDN博客

http://www.dtcms.com/a/361702.html

相关文章:

  • UFUNCTION C++ 的再次理解
  • 凸集与优化
  • Python OpenCV图像处理与深度学习:Python OpenCV视频处理入门
  • C++实时视频抽帧抓图功能(附源码)
  • DeepSeek-V3.1 模型 API 新特性拆解:逆向 + 火山双渠道适配与推理模式智能切换指南
  • 基于FPGA的红外与可见光图像融合算法
  • Day42 Grad-CAM与Hook函数
  • 进程与线程 - 并发的基石
  • SQL执行过程及原理详解
  • [SWPUCTF 2018]SimplePHP
  • 实现自己的AI视频监控系统-第三章-信息的推送与共享2
  • 刘洋洋《一笔相思绘红妆》上线,献给当代痴心人的一封情书
  • 互斥量(Mutex,全称 Mutual Exclusion)用于保证同一时间只有一个线程(或进程)访问共享资源,从而避免并发操作导致的数据不一致问题
  • RAG-文本到SQL
  • SOME/IP-SD中IPv4端点选项与IPv4 SD端点选项
  • 突破超强回归模型,高斯过程回归!
  • 使用 BayesFlow 神经网络简化贝叶斯推断的案例分享(二)
  • 无重复字符的最长子串,leetCode热题100,C++实现
  • 【FireCrawl】:本地部署AI爬虫+DIFY集成+V2新特性
  • FFmpeg 不同编码的压缩命令详解
  • 速卖通自养号测评系统开发指南:环境隔离与行为模拟实战
  • 测试-用例篇
  • FFMPEG AAC
  • 【LeetCode每日一题】19. 删除链表的倒数第 N 个结点 24. 两两交换链表中的节点
  • Java内存模型下的高性能锁优化与无锁编程实践指南
  • 几种特殊的数字滤波器---原理及设计
  • 【零碎小知识点 】(四) Java多线程编程深入与实践
  • MongoDB主从切换实战:如何让指定从库“精准”升级为主库?保姆级教程!
  • 36. Ansible变量+管理机密
  • 【Android】使用Handler做多个线程之间的通信