欧青拉少 發表於 2025-10-2 21:49:00

Linux 基础入门:系统安装、远程连接、命令行入门

<h1 id="linux-基础入门系统安装远程连接命令行入门">Linux 基础入门:系统安装、远程连接、命令行入门</h1>
<h2 id="一linux-概述与基础认知">一、Linux 概述与基础认知</h2>
<h3 id="11-什么是-linux">1.1 什么是 Linux?</h3>
<p><strong>Linux 和 Windows 类似,它们都是操作系统(Operating System)。</strong> 只不过 Linux 一般用于企业服务器环境,相对更加稳定安全。我们可以通过一个对比来快速理解:</p>
<table>
<thead>
<tr>
<th style="text-align: center">项目</th>
<th style="text-align: left">Linux</th>
<th style="text-align: left">Windows</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center"><strong>共同点</strong></td>
<td style="text-align: left"><strong>都是操作系统,用于管理计算机硬件和软件资源</strong></td>
<td style="text-align: left"></td>
</tr>
<tr>
<td style="text-align: center"><strong>费用</strong></td>
<td style="text-align: left"><code>免费开源</code></td>
<td style="text-align: left">收费</td>
</tr>
<tr>
<td style="text-align: center"><strong>稳定性</strong></td>
<td style="text-align: left">较为稳定</td>
<td style="text-align: left">相对漏洞多,需频繁更新</td>
</tr>
<tr>
<td style="text-align: center"><strong>使用场景</strong></td>
<td style="text-align: left">企业服务器、云计算、嵌入式设备</td>
<td style="text-align: left">个人电脑、办公场景</td>
</tr>
<tr>
<td style="text-align: center"><strong>界面</strong></td>
<td style="text-align: left">以命令行为主(也有桌面环境)</td>
<td style="text-align: left">图形化界面为主</td>
</tr>
</tbody>
</table>
<h3 id="12-linux-发展历史--从-unix-到-linux">1.2 Linux 发展历史 —— 从 Unix 到 Linux</h3>
<p>了解 Linux 的起源有助于理解它的设计哲学。Linux 的发展可以追溯到 Unix 系统:</p>
<table>
<thead>
<tr>
<th style="text-align: left">关键人物</th>
<th style="text-align: left">贡献</th>
<th style="text-align: left">说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>肯·汤普森 &amp; 丹尼斯·里奇</strong></td>
<td style="text-align: left">创建 Unix(Minix)</td>
<td style="text-align: left">在贝尔实验室开发出最初的 Unix 系统</td>
</tr>
<tr>
<td style="text-align: left"><strong>理查德·斯托曼 (Richard Stallman)</strong></td>
<td style="text-align: left">GNU 项目 + GPL 协议</td>
<td style="text-align: left">发起自由软件运动,制定 GPL 公共通用许可协议:<br>① 所有软件必须开源,可随意修改<br>② 修改后的内容也必须开源</td>
</tr>
<tr>
<td style="text-align: left"><strong>林纳斯·托瓦兹 (Linus Torvalds)</strong></td>
<td style="text-align: left">开发 Linux 内核</td>
<td style="text-align: left">1991 年发布 Linux 内核,成为 GNU 项目的核心组件</td>
</tr>
</tbody>
</table>
<blockquote>
<p>💡 <strong>温馨提示:</strong> Linux 也被称为 <strong>GNU/Linux</strong> —— GNU 提供了各种工具软件,Linux 提供了操作系统内核核心。</p>
</blockquote>
<h3 id="13-学习-linux-需要很好的英文吗">1.3 学习 Linux 需要很好的英文吗?</h3>
<p>不需要!你只需要做到两点:</p>
<ol>
<li><strong>掌握常见的错误提示信息</strong> —— 遇到报错时能看懂大概意思(推荐积累常见错误词汇)</li>
<li><strong>积累常用的 Linux 命令单词</strong> —— 比如 ls(list 列表)、cd(change directory 改变目录)等</li>
</ol>
<p>Linux 运维岗位的认证(如 RHCE)<strong>未来需要时再去考即可</strong>,大部分互联网公司更看重你的实际技术能力和解决问题的态度。</p>
<h3 id="14-linux-的组成结构--鸡蛋模型详解">1.4 Linux 的组成结构 —— "鸡蛋模型"详解</h3>
<p>Linux 的组成可以用一个<strong>"鸡蛋"</strong>来形象地比喻,从外到内分为三层:</p>
<table>
<thead>
<tr>
<th style="text-align: center">鸡蛋部分</th>
<th style="text-align: left">对应组件</th>
<th style="text-align: left">详细说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center"><strong>🥚 蛋壳</strong></td>
<td style="text-align: left">各种命令、服务、应用程序</td>
<td style="text-align: left">我们日常使用的所有 Linux 命令(如 ls、cd、cat)、各种系统服务和应用软件都在这一层。是用户直接接触的部分。</td>
</tr>
<tr>
<td style="text-align: center"><strong>🤍 蛋清</strong></td>
<td style="text-align: left">Shell 命令解释器(Bash)</td>
<td style="text-align: left">负责<strong>解释和执行</strong>用户输入的 Linux 命令。相当于一个"翻译官",将你输入的命令翻译成内核能理解的指令。<br>GNU 项目中的 Shell 叫做 <strong>Bash</strong>(Bourne Again Shell)</td>
</tr>
<tr>
<td style="text-align: center"><strong>🟡 蛋黄</strong></td>
<td style="text-align: left">Linux 内核 (Kernel)</td>
<td style="text-align: left">由 <strong>林纳斯·托瓦兹</strong> 开发,是系统的<strong>核心</strong>,直接控制硬件资源(CPU、内存、磁盘等)。用户无法直接操作内核,必须通过 Shell 来间接访问。</td>
</tr>
</tbody>
</table>
<pre><code>┌─────────────────────────────────────────┐
│            用户 (User)               │
└──────────────────┬──────────────────────┘
                   │ ▼
┌─────────────────────────────────────────┐
│   蛋壳:命令 / 服务 / 应用程序            │
│       (ls, cd, cat, nginx...)         │
├─────────────────────────────────────────┤
│    蛋清:Shell 命令解释器 (Bash)         │
│      翻译用户命令 → 内核指令             │
├─────────────────────────────────────────┤
│            蛋黄:Linux 内核               │
└──────────────────┬──────────────────────┘
                   │ ▼
          CPU / 内存 / 磁盘等硬件
</code></pre>
<h3 id="15-linux-发行版本与选型指南-">1.5 Linux 发行版本与选型指南 ⭐⭐⭐⭐⭐</h3>
<h4 id="什么是发行版本">什么是发行版本?</h4>
<p><strong>发行版 = Linux 内核 + Shell + 不同的桌面环境/应用程序组合</strong></p>
<p>不同的组织或公司基于 Linux 内核,打包了不同的软件套件和界面,就形成了各种各样的"发行版"。这就像同样是 Android 系统,有小米的 MIUI、华为的 EMUI、OPPO 的 ColorOS 一样。</p>
<h4 id="主流-linux-发行版一览">主流 Linux 发行版一览</h4>
<table>
<thead>
<tr>
<th style="text-align: left">系列</th>
<th style="text-align: left">发行版名称</th>
<th style="text-align: left">特点与适用场景</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>Debian 系列</strong> <code>稳定派</code></td>
<td style="text-align: left"><strong>Debian</strong></td>
<td style="text-align: left">更新频率低,极其稳定安全,适合企业生产环境</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>Ubuntu</strong></td>
<td style="text-align: left">桌面美观易用,开发者友好,也有服务器版。<br><code>推荐 LTS 版本:18.04 / 20.04</code></td>
</tr>
<tr>
<td style="text-align: left"><strong>红帽系列</strong> <code>企业级</code></td>
<td style="text-align: left"><strong>RHEL</strong></td>
<td style="text-align: left">Red Hat 企业版,付费,由 IBM 旗下红帽公司维护,企业级支持完善</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>CentOS</strong> ⭐</td>
<td style="text-align: left"><strong>国内最常用的 Linux 系统!</strong>原为 RHEL 的免费克隆版,后被红帽收购。<br><code>推荐版本:CentOS 7.x(7.9)</code></td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>Rocky Linux</strong></td>
<td style="text-align: left">CentOS 创始人新推出的系统,作为 CentOS 的替代品</td>
</tr>
<tr>
<td style="text-align: left"><strong>国产系列</strong> <code>国产化</code></td>
<td style="text-align: left"><strong>中标麒麟 Kylin / 红旗 Linux / 欧拉 openEuler</strong></td>
<td style="text-align: left">中标麒麟有桌面和服务器版本;欧拉(openEuler)是华为推出的<br><code>麒麟 v10 基于 CentOS 7 更新了内核</code></td>
</tr>
<tr>
<td style="text-align: left"><strong>其他(了解)</strong></td>
<td style="text-align: left"><strong>SUSE / openSUSE</strong></td>
<td style="text-align: left">德国出品,在欧洲使用较多</td>
</tr>
</tbody>
</table>
<h4 id="版本选型建议">版本选型建议</h4>
<blockquote>
<p>📌 <strong>核心原则:优先选择 LTS 版本(长期支持版本)或稳定版!</strong></p>
</blockquote>
<table>
<thead>
<tr>
<th style="text-align: left">发行版</th>
<th style="text-align: left">推荐版本</th>
<th style="text-align: left">说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>Ubuntu</strong></td>
<td style="text-align: left">LTS 18.04 或 20.04</td>
<td style="text-align: left">LTS = Long Term Support,官方长期维护</td>
</tr>
<tr>
<td style="text-align: left"><strong>Debian</strong></td>
<td style="text-align: left">最新稳定版即可</td>
<td style="text-align: left">本身更新保守,稳定即可</td>
</tr>
<tr>
<td style="text-align: left"><strong>CentOS</strong></td>
<td style="text-align: left">7.x(建议 7.9)</td>
<td style="text-align: left">无 LTS 概念,选择较新的稳定版本</td>
</tr>
<tr>
<td style="text-align: left"><strong>麒麟 Kylin</strong></td>
<td style="text-align: left">V10</td>
<td style="text-align: left">基于 CentOS 7 并更新了内核</td>
</tr>
</tbody>
</table>
<blockquote>
<p>💡 <strong>新手入门建议:</strong> 课程中我们统一使用 <strong>CentOS 7</strong>(内核版本 3.10.0),它是目前国内企业中使用最广泛的 Linux 发行版,网上资料丰富,遇到问题容易找到解决方案。</p>
</blockquote>
<hr>
<h2 id="二环境搭建与-centos-系统安装">二、环境搭建与 CentOS 系统安装</h2>
<h3 id="21-为什么需要虚拟机">2.1 为什么需要虚拟机?</h3>
<p>在企业工作环境中,Linux 系统<strong>运行在服务器上</strong>,而不是直接装在你的个人电脑上。<strong>虚拟机(Virtual Machine)</strong>可以让你在一台电脑上模拟出多台独立的"虚拟电脑",每台虚拟机之间互不影响,非常接近真实的服务器工作环境。</p>
<blockquote>
<p>⚠️ <strong>不推荐安装双系统!</strong> 双系统切换麻烦且容易出错,使用虚拟机才是正确姿势。</p>
</blockquote>
<h3 id="22-主机配置要求">2.2 主机配置要求</h3>
<table>
<thead>
<tr>
<th style="text-align: left">配置项</th>
<th style="text-align: left">最低要求</th>
<th style="text-align: left">推荐配置</th>
<th style="text-align: left">备注</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>电脑系统</strong></td>
<td style="text-align: left">--</td>
<td style="text-align: left">Windows(Intel/AMD CPU)或 Mac</td>
<td style="text-align: left">不推荐 M1/M2 芯片的 Mac(兼容性问题)</td>
</tr>
<tr>
<td style="text-align: left"><strong>CPU</strong></td>
<td style="text-align: left">i5 及以上</td>
<td style="text-align: left">i5 / i7</td>
<td style="text-align: left">Intel 或 AMD 都可以</td>
</tr>
<tr>
<td style="text-align: left"><strong>内存</strong></td>
<td style="text-align: left">8G</td>
<td style="text-align: left"><strong>16G</strong></td>
<td style="text-align: left">内存越大,虚拟机运行越流畅</td>
</tr>
<tr>
<td style="text-align: left"><strong>硬盘空间</strong></td>
<td style="text-align: left">200G</td>
<td style="text-align: left"><strong>500G+</strong></td>
<td style="text-align: left">需要存放虚拟机文件和视频教程</td>
</tr>
<tr>
<td style="text-align: left"><strong>VMware 版本</strong></td>
<td style="text-align: left">--</td>
<td style="text-align: left"><strong>推荐 VMware 16</strong></td>
<td style="text-align: left">⚠️ 一旦选定版本就继续用,中途别换</td>
</tr>
</tbody>
</table>
<h3 id="23-创建虚拟机的两种方式">2.3 创建虚拟机的两种方式</h3>
<p><strong>方式一:典型安装(推荐,更快)</strong></p>
<ol>
<li>打开 VMware → "创建新的虚拟机" → 选择 <strong>"典型(推荐)"</strong></li>
<li>选择 <strong>"稍后安装操作系统"</strong>(避免自动安装带来的问题)</li>
<li>选择操作系统类型:<strong>Linux → CentOS 7 64位</strong></li>
<li>设置虚拟机名称和存储位置(建议单独分区存放,如 D:\vmware\虚拟机01)</li>
<li>设置磁盘大小(默认 20G 即可)</li>
<li>最后自定义硬件:调整<strong>内存至少 1G(推荐 2G)</strong>,然后加载 CentOS 镜像(ISO 文件)</li>
</ol>
<p><strong>方式二:自定义安装(灵活控制每个细节)</strong></p>
<p>典型安装无法满足时可以选择自定义方式,可以手动指定:CPU 数量、内存大小、网络类型、磁盘控制器类型等参数。</p>
<blockquote>
<p>💡 <strong>VMware 注册码(仅用于学习):</strong></p>
<ul>
<li>ZF3R0-FHED2-M80TY-8QYGC-NPKYF</li>
<li>YF390-0HF8P-M81RQ-2DXQE-M2UT6</li>
<li>ZF71R-DMX85-08DQY-8YMNC-PPHV8</li>
</ul>
</blockquote>
<h3 id="24-vmware-实用小技巧">2.4 VMware 实用小技巧</h3>
<table>
<thead>
<tr>
<th style="text-align: left">功能</th>
<th style="text-align: left">快捷键/操作</th>
<th style="text-align: left">作用</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>挂起</strong></td>
<td style="text-align: left">工具栏 → 挂起</td>
<td style="text-align: left">暂停当前运行的虚拟机,不关闭。下次恢复时保持之前的状态(类似手机待机)</td>
</tr>
<tr>
<td style="text-align: left"><strong>快照</strong></td>
<td style="text-align: left">工具栏 → 快照 → 拍摄快照</td>
<td style="text-align: left">给虚拟机当前状态拍个"存档点",以后随时可以回滚到这个状态。可在开机/挂起/关机状态下拍摄</td>
</tr>
<tr>
<td style="text-align: left"><strong>全屏切换</strong></td>
<td style="text-align: left">Ctrl + Alt + Enter</td>
<td style="text-align: left">在全屏模式和窗口模式间切换</td>
</tr>
</tbody>
</table>
<h3 id="25-准备工作--centos-7-镜像文件">2.5 准备工作 —— CentOS 7 镜像文件</h3>
<p>你需要准备 CentOS 7 的镜像文件:</p>
<pre><code class="language-bash">CentOS-7-x86_64-DVD-2009.iso# DVD 版本包含常用软件包,推荐下载此版本
</code></pre>
<h3 id="26-安装启动--关键一步修改网卡命名规则-">2.6 安装启动 —— 关键一步:修改网卡命名规则 ⭐⭐⭐</h3>
<p>启动虚拟机后,在安装界面的第一个画面,需要<strong>立即按下 Tab 键</strong>或<strong>E 键编辑启动参数</strong>,在原有内容末尾添加以下参数:</p>
<pre><code class="language-bash">biosdevname=0 net.ifnames=0
# 这两行的作用:将 CentOS 7 默认的网卡名 ens33 改为 eth0 格式
# 为什么要改?因为统一网卡名字(eth0, eth1...)便于后续管理,
# 否则不同机器的网卡名字不一致,很多服务软件和命令可能无法正常使用!
</code></pre>
<blockquote>
<p>⚠️ <strong>这一步非常重要!</strong> 如果漏掉这一步,安装完成后网卡名字会是 ens33 而不是 eth0,后续配置会比较麻烦。</p>
</blockquote>
<h3 id="27-选择安装模式">2.7 选择安装模式</h3>
<table>
<thead>
<tr>
<th style="text-align: left">选项</th>
<th style="text-align: left">含义</th>
<th style="text-align: left">选择建议</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>Install CentOS 7</strong></td>
<td style="text-align: left">直接安装系统</td>
<td style="text-align: left">✅ <strong>选这个!99%的情况都选它</strong></td>
</tr>
<tr>
<td style="text-align: left"><strong>Test this media &amp; install CentOS 7</strong></td>
<td style="text-align: left">先检测光盘完整性再安装</td>
<td style="text-align: left">不推荐,太浪费时间</td>
</tr>
<tr>
<td style="text-align: left"><strong>Troubleshooting</strong></td>
<td style="text-align: left">故障排查 / 救援模式</td>
<td style="text-align: left">仅在系统无法启动时进入救援模式使用</td>
</tr>
</tbody>
</table>
<h3 id="28-安装过程中的关键配置步骤">2.8 安装过程中的关键配置步骤</h3>
<p><strong>Step 1:语言选择</strong> → 选择简体中文即可</p>
<p><strong>Step 2:配置网络与主机名</strong> ⭐⭐⭐</p>
<table>
<thead>
<tr>
<th style="text-align: left">配置项</th>
<th style="text-align: left">推荐值</th>
<th style="text-align: left">说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>IP 地址</strong></td>
<td style="text-align: left">10.0.0.200</td>
<td style="text-align: left">局域网 IP,类似每个人的家庭住址</td>
</tr>
<tr>
<td style="text-align: left"><strong>子网掩码</strong></td>
<td style="text-align: left">24</td>
<td style="text-align: left">即 255.255.255.0</td>
</tr>
<tr>
<td style="text-align: left"><strong>网关</strong></td>
<td style="text-align: left">10.0.0.2</td>
<td style="text-align: left">VMware NAT 模式的默认网关</td>
</tr>
<tr>
<td style="text-align: left"><strong>DNS</strong></td>
<td style="text-align: left">223.5.5.5 , 223.6.6.6</td>
<td style="text-align: left">阿里 DNS(配置时用逗号分隔)</td>
</tr>
</tbody>
</table>
<p><strong>Step 3:其他设置</strong></p>
<ul>
<li><strong>关闭 Kdump</strong> —— 内存不够用时可以关闭,节省资源</li>
<li><strong>磁盘分区</strong> —— 初学者选择"自动分区"即可</li>
<li><strong>软件包选择</strong> —— 最小安装(Minimal Install)或带 GUI 的服务器版</li>
<li><strong>检查时间</strong> —— 确保系统时间正确</li>
</ul>
<p><strong>Step 4:设置 root 密码并创建用户</strong></p>
<p>设置 <strong>root 用户密码</strong>(超级管理员密码),记住这个密码!然后点击"开始安装"。</p>
<h3 id="29-安装完成--进入-linux-系统">2.9 安装完成 —— 进入 Linux 系统</h3>
<p>安装完成后重启,你将看到 Linux 的登录界面:</p>
<pre><code class="language-bash">CentOS Linux 7 (Core)
Kernel 3.10.0 on an x86_64

localhost login: _          # ← 在这里输入用户名
Password:                  # ← 输入密码(不会显示字符,这是正常的!)
</code></pre>
<blockquote>
<p>⚠️ <strong>注意事项:</strong></p>
<ol>
<li>CentOS 7.x 的内核版本为 <strong>3.10.0</strong></li>
<li>登录时输入密码<strong>不会显示任何字符</strong>(连 * 号都没有),这是 Linux 的安全机制,不要以为没输进去</li>
<li><strong>严格区分大小写</strong>!Root 必须大写 R 开头</li>
<li>登录成功后看到 <code>#</code> 就表示你已经进入了 Linux 系统</li>
</ol>
</blockquote>
<h3 id="210-进入系统后的必要配置">2.10 进入系统后的必要配置</h3>
<p><strong>第一步:查看 IP 地址</strong></p>
<pre><code class="language-bash">ip a                        # 查看(或 ip addr / ip address),显示网卡IP信息
# 输出示例:
# 2: eth0: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
#   inet 10.0.0.200/24 brd 10.0.0.255 scope global eth0
</code></pre>
<p><strong>第二步:VMware 网络配置(仅需做一次)</strong></p>
<p>打开 VMware → 编辑 → <strong>虚拟网络编辑器</strong> → 设置 VMnet8(NAT模式):</p>
<ul>
<li>子网 IP:<code>10.0.0.0</code></li>
<li>子网掩码:<code>255.255.255.0</code></li>
<li>网关(NAT设置):<code>10.0.0.2</code></li>
<li>取消"使用本地 DHCP 服务"</li>
</ul>
<p><strong>这样做的目的:让所有虚拟机的 IP 统一在 10.0.0.x 这个网段内。</strong></p>
<p><strong>第三步:使用 nmtui 配置网卡(图形化管理工具)</strong></p>
<pre><code class="language-bash">nmtui                         # network manager text user interface
                           # 网卡管理的图形界面工具(TUI终端图形界面)
                           # 可以用来配置IP地址、开启/关闭网卡等
</code></pre>
<p>运行后会弹出 TUI 图形界面,按方向键选择 Edit a connection → 选择 eth0 → Edit → 配置 IP 信息 → OK → Quit 即可。</p>
<hr>
<h2 id="三远程连接与网络基础-">三、远程连接与网络基础 ⭐⭐⭐⭐⭐</h2>
<h3 id="31-为什么需要远程连接">3.1 为什么需要远程连接?</h3>
<p>在实际工作中,Linux 服务器一般放在<strong>机房(IDC数据中心)</strong>里,运维人员不可能每次都跑去机房操作。因此需要通过<strong>远程连接工具</strong>,在自己的电脑上通过网络连接到远程的 Linux 服务器来执行命令、管理系统。</p>
<h3 id="32-主流远程连接工具">3.2 主流远程连接工具</h3>
<table>
<thead>
<tr>
<th style="text-align: left">平台</th>
<th style="text-align: left">工具名称</th>
<th style="text-align: left">特点</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>Windows</strong></td>
<td style="text-align: left"><strong>Xshell</strong> ⭐</td>
<td style="text-align: left"><code>推荐新手</code> 功能强大,免费版够用(5.x 家庭/学校免费)</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>SecureCRT</strong></td>
<td style="text-align: left">专业级工具,功能全面,收费</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>PuTTY</strong></td>
<td style="text-align: left">轻量级开源工具,功能简单</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>MobaXterm</strong></td>
<td style="text-align: left">功能非常多,集成了多种网络工具</td>
</tr>
<tr>
<td style="text-align: left"><strong>Mac</strong></td>
<td style="text-align: left"><strong>iTerm2</strong></td>
<td style="text-align: left">Mac 上最受欢迎的终端工具</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>SecureCRT</strong></td>
<td style="text-align: left">同样有 Mac 版本</td>
</tr>
<tr>
<td style="text-align: left"></td>
<td style="text-align: left"><strong>FinalShell</strong></td>
<td style="text-align: left">国产工具,有中文界面</td>
</tr>
</tbody>
</table>
<h3 id="33-远程连接的核心三要素ip端口协议-">3.3 远程连接的核心三要素:IP、端口、协议 ⭐⭐⭐⭐⭐</h3>
<p>要连接任何一台 Linux 服务器,你必须知道以下四个条件:</p>
<table>
<thead>
<tr>
<th style="text-align: left">条件</th>
<th style="text-align: left">说明</th>
<th style="text-align: left">示例</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>① IP 地址</strong></td>
<td style="text-align: left">设备在网络中的位置,类似家庭住址</td>
<td style="text-align: left">10.0.0.200</td>
</tr>
<tr>
<td style="text-align: left"><strong>② 端口</strong></td>
<td style="text-align: left">计算机上的"窗户",区分不同服务的通道</td>
<td style="text-align: left">22</td>
</tr>
<tr>
<td style="text-align: left"><strong>③ 用户名</strong></td>
<td style="text-align: left">登录账户</td>
<td style="text-align: left">root</td>
</tr>
<tr>
<td style="text-align: left"><strong>④ 密码</strong></td>
<td style="text-align: left">对应的密码</td>
<td style="text-align: left">******</td>
</tr>
</tbody>
</table>
<h4 id="深入理解ip-地址">深入理解:IP 地址</h4>
<table>
<thead>
<tr>
<th style="text-align: left">IP 类型</th>
<th style="text-align: left">说明</th>
<th style="text-align: left">来源</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>局域网 IP</strong><br>(内网/私网 IP)</td>
<td style="text-align: left">只能在特定范围(如教室、办公室、机房内部)使用的 IP</td>
<td style="text-align: left">由路由器/DHCP 自动分配,一般不固定<br><strong>常见段:</strong> 10.0.0.xxx / 192.168.xx.xx / 172.16.x.x</td>
</tr>
<tr>
<td style="text-align: left"><strong>公网 IP</strong><br>(外网 IP)</td>
<td style="text-align: left">可以在互联网上被任意位置访问的 IP,数量有限</td>
<td style="text-align: left">向运营商购买获得,企业公网 IP 一般是固定的</td>
</tr>
</tbody>
</table>
<h4 id="深入理解端口port">深入理解:端口(Port)</h4>
<p>可以把计算机想象成一个<strong>密不通风的大房子</strong>,端口就是房子上的一个个<strong>窗户</strong>。不同的服务通过不同的端口对外提供服务:</p>
<table>
<thead>
<tr>
<th style="text-align: left">服务名称</th>
<th style="text-align: center">默认端口号</th>
<th style="text-align: left">说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>SSH 远程连接服务</strong> (sshd)</td>
<td style="text-align: center"><code>22</code></td>
<td style="text-align: left">我们连接 Linux 就是连接 22 端口 ⭐⭐⭐⭐⭐</td>
</tr>
<tr>
<td style="text-align: left"><strong>HTTP 网站服务</strong></td>
<td style="text-align: center"><code>80</code></td>
<td style="text-align: left">访问网站时浏览器默认连接 80 端口</td>
</tr>
<tr>
<td style="text-align: left"><strong>HTTPS 加密网站服务</strong></td>
<td style="text-align: center"><code>443</code></td>
<td style="text-align: left">加密网站访问端口</td>
</tr>
<tr>
<td style="text-align: left"><strong>FTP 文件传输</strong></td>
<td style="text-align: center">21 / 20</td>
<td style="text-align: left">文件上传下载</td>
</tr>
<tr>
<td style="text-align: left"><strong>DNS 域名解析</strong></td>
<td style="text-align: center">53</td>
<td style="text-align: left">域名 ↔ IP 转换</td>
</tr>
<tr>
<td style="text-align: left"><strong>MySQL 数据库</strong></td>
<td style="text-align: center">3306</td>
<td style="text-align: left">数据库服务</td>
</tr>
</tbody>
</table>
<blockquote>
<p>💡 <strong>记忆技巧:</strong> 端口号就像会所的暗号 —— 不同房间(服务)对应不同暗号(端口)。22 号房做远程连接,80 号房开网站,443 号房开加密网站...</p>
</blockquote>
<h4 id="深入理解协议protocol">深入理解:协议(Protocol)</h4>
<p><strong>协议 = 双方共同遵守的通信规则</strong></p>
<p>远程连接遵循的是 <strong>SSH 协议</strong>(Secure Shell,安全外壳协议),这是一种加密的网络协议,保证远程连接的安全性。</p>
<h3 id="34-远程连接排错三部曲-">3.4 远程连接排错三部曲 ⭐⭐⭐⭐⭐</h3>
<p>当远程连接失败时(提示 <code>Connection failed</code>),按照以下三个步骤逐一排查:</p>
<pre><code>┌──────────────────────────────────────┐
│   🔧 远程连接排错三部曲            │
├──────────────────────────────────────┤
│Step 1:道路是否通畅?            │
│   ping 目标 IP —— 检查网络连通性   │
│                  ↓                │
│Step 2:是否有劫财劫色?            │
│   防火墙 / 安全组 / 安全策略拦截?│
│                  ↓                │
│Step 3:是否提供服务?            │
│   telnet 检测端口是否开放可连接   │
│                  ↓                │
│      ✅ 连接成功!               │
└──────────────────────────────────────┘
</code></pre>
<h4 id="第一步检查道路是否通畅--ping-命令">第一步:检查道路是否通畅 —— ping 命令</h4>
<p>ping 命令用于检测从你的电脑到目标服务器之间的网络通路是否畅通:</p>
<pre><code class="language-bash"># 在 Xshell 的本地 Shell(Local Shell)中执行,等同于在 Windows 下运行 ping
ping 10.0.0.200            # ping 目标服务器的 IP 地址
ping www.baidu.com         # 也可以 ping 域名(测试外网连通性)
ping www.oldboyedu.com       # ping 老男孩教育的网站
</code></pre>
<blockquote>
<p>📌 <strong>判断标准:</strong></p>
<ul>
<li><strong>能 ping 通</strong>:看到来自目标的 Reply 回复 → 网络通畅 ✓</li>
<li><strong>ping 不通</strong>:Request timed out(请求超时)→ 网络不通 ✗,需要检查物理连线、VMware 网络、防火墙等</li>
</ul>
</blockquote>
<h4 id="第二步检查是否有劫财劫色--防火墙安全组">第二步:检查是否有"劫财劫色" —— 防火墙/安全组</h4>
<p>如果 ping 能通但还是连不上,可能是中间有"路障"拦着:</p>
<ul>
<li><strong>Linux 自身防火墙</strong>(firewalld / iptables)拦截了 22 端口</li>
<li><strong>云服务器安全组</strong>规则没有放行 22 端口(阿里云、腾讯云等)</li>
<li><strong>Windows 防火墙</strong>拦截(如果是 Windows 到 Linux 连接的话)</li>
<li>网络设备(路由器/交换机)上的 ACL 访问控制列表限制</li>
</ul>
<h4 id="第三步检查是否提供服务--telnet-检测端口">第三步:检查是否提供服务 —— telnet 检测端口</h4>
<p>前两步都没问题,就需要检查目标服务器的 SSH 服务是否正常运行、端口是否开放:</p>
<pre><code class="language-bash"># telnet 用于检测目标服务器的某个端口是否可以访问
telnet 10.0.0.200 22         # 检测 22 端口(SSH端口)是否开放
telnet 10.0.0.200 80         # 检测 80 端口(HTTP端口)是否开放
telnet www.baidu.com 443   # 检测百度的 443 端口
</code></pre>
<blockquote>
<p>📌 <strong>判断标准:</strong></p>
<ul>
<li><strong>端口开放</strong>:显示 Connected to ... 或 Escape character is ... → 服务正常 ✓</li>
<li><strong>端口未开放</strong>:显示 Connection refused / Connecting... 卡住 / 超时 → 服务未启动或端口被阻拦 ✗</li>
<li>退出 telnet 按:<strong>Ctrl + ]</strong> 然后 <strong>quit</strong></li>
</ul>
</blockquote>
<hr>
<h2 id="四命令行入门必知必会-">四、命令行入门必知必会 ⭐⭐⭐⭐⭐</h2>
<h3 id="41-认识-linux-命令行提示符">4.1 认识 Linux 命令行提示符</h3>
<p>成功登录 Linux 后,你会看到类似这样的命令行提示符:</p>
<pre><code class="language-bash">#
|       |    | |
|       |    | └─ # 表示当前是 root 用户($ 表示普通用户)
|       |    └── ~ 表示当前所在目录(~ 代表用户的家目录 /root)
|       └────── localhost 是主机名(每台机器应该有自己的名字)
└────────────── root 是当前登录的用户名
</code></pre>
<blockquote>
<p>⚠️ <strong>重要提示:</strong></p>
<ul>
<li><strong># 号表示 root 用户,$ 号表示普通用户</strong></li>
<li><strong>主机名务必修改!</strong> 默认 localhost 不方便区分不同服务器,建议改为有意义的名字(如 web01、db02 等)</li>
<li>Linux <strong>严格区分大小写</strong>!File.txt 和 file.txt 是两个不同的文件</li>
</ul>
</blockquote>
<h3 id="42-linux-命令的基本格式-">4.2 Linux 命令的基本格式 ⭐⭐⭐⭐⭐</h3>
<p>几乎所有 Linux 命令都遵循统一的格式:</p>
<pre><code class="language-bash">command   [选项(option)]   [参数(argument/parameter)]
│            │                   │
│            │                   └── 命令要处理的目标(文件名、目录名、文本等)
│            └────────────────────── 同一命令的不同功能开关(如 -l, -a, --help)
└───────────────────────────────────── 具体的命令名称(通常是英文单词或缩写)
</code></pre>
<table>
<thead>
<tr>
<th style="text-align: left">组成部分</th>
<th style="text-align: left">说明</th>
<th style="text-align: left">举例</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>命令 (Command)</strong></td>
<td style="text-align: left">Linux 中控制系统的基本单位,一般是英文单词或缩写</td>
<td style="text-align: left">ls, cd, cat, grep...</td>
</tr>
<tr>
<td style="text-align: left"><strong>选项 (Option)</strong></td>
<td style="text-align: left">同一命令的不同功能/开关,通常以 <strong>-</strong>(短选项)或 <strong>--</strong>(长选项)开头</td>
<td style="text-align: left">-l, -a, --help, --all</td>
</tr>
<tr>
<td style="text-align: left"><strong>参数 (Argument)</strong></td>
<td style="text-align: left">命令处理的对象目标</td>
<td style="text-align: left">文件路径、目录名、字符串等</td>
</tr>
</tbody>
</table>
<pre><code class="language-bash"># 示例:列出 /etc 目录下的详细文件列表
ls -l /etc                  
# 命令=ls选项=-l(长格式)参数=/etc(目标目录)

# 示例:查看 eth0 网卡配置文件
cat /etc/sysconfig/network-scripts/ifcfg-eth0
# 命令=cat参数=网卡配置文件的路径
</code></pre>
<blockquote>
<p>💡 <strong>温馨提示:</strong> 实际使用中,常将选项和参数统称为"参数"。并非所有命令都需要加选项和参数。</p>
</blockquote>
<h3 id="43-linux-与-windows-目录结构的根本区别-">4.3 Linux 与 Windows 目录结构的根本区别 ⭐⭐⭐</h3>
<p>这是初学者最容易困惑的地方,请务必牢记:</p>
<table>
<thead>
<tr>
<th style="text-align: left">对比项</th>
<th style="text-align: left">Linux</th>
<th style="text-align: left">Windows</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>目录起点</strong></td>
<td style="text-align: left"><strong>一切从根(/)开始</strong><br>形似一棵倒挂的大树 🌳</td>
<td style="text-align: left"><strong>从盘符开始</strong><br>C:\ 、D:\ 、E:\ ...</td>
</tr>
<tr>
<td style="text-align: left"><strong>路径分隔符</strong></td>
<td style="text-align: left"><code>/</code>(正斜杠)</td>
<td style="text-align: left"><code>\</code>(反斜杠)</td>
</tr>
<tr>
<td style="text-align: left"><strong>示例路径</strong></td>
<td style="text-align: left">/etc/sysconfig/network-scripts/ifcfg-eth0</td>
<td style="text-align: left">C:\Windows\System32\drivers\etc\hosts</td>
</tr>
</tbody>
</table>
<pre><code>Linux 目录结构(倒挂的大树):      Windows 目录结构:
                                    
          /(根)                           C:\
         │                              ├─Windows
    ┌──────┼──────┐                      ├─Program Files
    │      │      │                      ├─Users
   /etc   /home   /var                  └─...
配置文件用户    日志/数据            
    │            │                     
ifcfg-eth0   log/                     
               www/
</code></pre>
<h3 id="44-查询帮助--遇到不会的命令怎么办">4.4 查询帮助 —— 遇到不会的命令怎么办?</h3>
<p>Linux 提供了多种方式获取命令帮助:</p>
<table>
<thead>
<tr>
<th style="text-align: left">帮助方式</th>
<th style="text-align: left">用法</th>
<th style="text-align: left">特点</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>在线网站</strong> ⭐</td>
<td style="text-align: left">访问 <code>https://cmd.oldboyedu.com</code></td>
<td style="text-align: left"><code>推荐新手</code> 老男孩教育提供的 Linux 命令速查网站</td>
</tr>
<tr>
<td style="text-align: left"><strong>man 手册页</strong></td>
<td style="text-align: left"><code>man 命令名</code></td>
<td style="text-align: left">最权威的帮助文档,内容详尽。按 <code>q</code> 退出</td>
</tr>
<tr>
<td style="text-align: left"><strong>--help 选项</strong> ⭐</td>
<td style="text-align: left"><code>命令 --help</code></td>
<td style="text-align: left">精简版帮助信息,快速查看用法和选项</td>
</tr>
<tr>
<td style="text-align: left"><strong>info 帮助</strong></td>
<td style="text-align: left"><code>info 命令名</code></td>
<td style="text-align: left">超详细帮助(新手暂时不用)</td>
</tr>
<tr>
<td style="text-align: left"><strong>help 命令</strong></td>
<td style="text-align: left"><code>help</code></td>
<td style="text-align: left">查询 Shell 内置命令的帮助(暂时不用深究)</td>
</tr>
</tbody>
</table>
<pre><code class="language-bash"># 常用的帮助查询示例:
man ls                        # 查看 ls 命令的完整手册(按 q 退出)
ls --help                     # 查看 ls 命令的精简帮助
man man                     # 查看 man 命令自己的帮助(套娃 😄)
</code></pre>
<h3 id="45-linux-命令行快捷键-">4.5 Linux 命令行快捷键 ⭐⭐⭐⭐⭐</h3>
<p>熟练使用快捷键可以大幅提升你在命令行中的操作效率:</p>
<table>
<thead>
<tr>
<th style="text-align: left">快捷键</th>
<th style="text-align: left">功能说明</th>
<th style="text-align: center">重要程度</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>光标移动类(超实用!)</strong></td>
<td style="text-align: left"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + A</code></td>
<td style="text-align: left">光标跳到<strong>行首</strong>(A = Ahead/开头)</td>
<td style="text-align: center"><strong>必记</strong></td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + E</code></td>
<td style="text-align: left">光标跳到<strong>行尾</strong>(E = End/结尾)</td>
<td style="text-align: center"><strong>必记</strong></td>
</tr>
<tr>
<td style="text-align: left"><strong>删除/剪切类</strong></td>
<td style="text-align: left"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + U</code></td>
<td style="text-align: left">剪切(删除)<strong>光标到行首</strong>的内容 ⬅</td>
<td style="text-align: center"><strong>必记</strong></td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + K</code></td>
<td style="text-align: left">剪切(删除)<strong>光标到行尾</strong>的内容 ➡</td>
<td style="text-align: center">熟悉</td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + W</code></td>
<td style="text-align: left">删除光标前的一个单词</td>
<td style="text-align: center">熟悉</td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + Y</code></td>
<td style="text-align: left">粘贴刚才 Ctrl+U/K 剪切的内容</td>
<td style="text-align: center">了解</td>
</tr>
<tr>
<td style="text-align: left"><strong>功能性快捷键</strong></td>
<td style="text-align: left"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + L</code></td>
<td style="text-align: left"><strong>清屏</strong>(小写字母 L),等同于 clear 命令</td>
<td style="text-align: center"><strong>必记</strong></td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + C</code></td>
<td style="text-align: left"><strong>取消</strong>当前正在执行的命令(Cancel)</td>
<td style="text-align: center"><strong>必记</strong></td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + D</code></td>
<td style="text-align: left">退出当前会话(等于输入 exit)</td>
<td style="text-align: center">了解</td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl + Z</code></td>
<td style="text-align: left">将当前命令挂起到后台(不是撤销!)</td>
<td style="text-align: center">注意</td>
</tr>
</tbody>
</table>
<blockquote>
<p>⚠️ <strong>巨坑警告!Windows 与 Linux 快捷键冲突:</strong></p>
<table>
<thead>
<tr>
<th style="text-align: left">快捷键</th>
<th style="text-align: left">在 Linux 中的含义</th>
<th style="text-align: left">在 Windows 中的含义</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><code>Ctrl+S</code></td>
<td style="text-align: left"><code>锁屏冻结!</code>终端不动了</td>
<td style="text-align: left">保存文件</td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl+Q</code></td>
<td style="text-align: left">解锁(解除 Ctrl+S 的冻结)</td>
<td style="text-align: left">(大多无意义)</td>
</tr>
<tr>
<td style="text-align: left"><code>Ctrl+Z</code></td>
<td style="text-align: left">后台挂起当前进程</td>
<td style="text-align: left">撤销</td>
</tr>
</tbody>
</table>
<p>如果在 Linux 里不小心按了 Ctrl+S 屏幕冻住了,别慌!按 <strong>Ctrl+Q</strong> 就能解锁。</p>
</blockquote>
<blockquote>
<p>💡 <strong>记忆口诀:ACE LU —— A(行首) E(行尾) C(取消) L(清屏) U(删到行首)</strong></p>
<p>这五个是最常用的快捷键,必须形成肌肉记忆!</p>
</blockquote>
<h3 id="46-linux-关机和重启命令-️危险操作区域">4.6 Linux 关机和重启命令 ⚠️(危险操作区域)</h3>
<p>在生产环境中,<strong>关机和重启是非常危险的操作!</strong>一定要谨慎使用。以下是完整的关机/重启命令汇总:</p>
<table>
<thead>
<tr>
<th style="text-align: left">类别</th>
<th style="text-align: left">命令</th>
<th style="text-align: left">说明</th>
<th style="text-align: center">危险等级</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>关机命令</strong></td>
<td style="text-align: left"></td>
<td style="text-align: left"></td>
<td style="text-align: center"></td>
</tr>
<tr>
<td style="text-align: left"><strong>shutdown</strong></td>
<td style="text-align: left"><code>shutdown</code></td>
<td style="text-align: left">默认 1 分钟后关机,会通知所有在线用户</td>
<td style="text-align: center">中等</td>
</tr>
</tbody>
</table>
<blockquote>
<p>| <code>shutdown -h now</code> | <strong>立即关机</strong>(halt now) | <strong>高</strong> |<br>
| <code>shutdown -h 10</code> | 10 分钟后关机 | 中等 |<br>
| <code>shutdown -c</code> | <strong>取消</strong>已计划的关机 | 安全 |<br>
| | <code>halt</code> | 关机并关闭系统,可能需要手动切断电源 | <strong>高</strong> |<br>
| | <code>poweroff</code> | 直接关机断电 | <strong>高</strong> |<br>
| | <code>init 0</code> | 切换到运行级别 0(关机模式) | <strong>高</strong> |<br>
| <strong>重启命令</strong> | | | |<br>
| | <code>reboot</code> | <strong>重启</strong>(最常用) | 中等 |<br>
| <code>shutdown -r now</code> | 立即重启(reboot 的另一种写法) | 中等 |<br>
| <code>shutdown -r 20</code> | 20 分钟后重启 | 中等 |<br>
| <code>init 6</code> | 切换到运行级别 6(重启模式) | 中等 |</p>
</blockquote>
<blockquote>
<p>⚠️ <strong>生产环境铁律:</strong></p>
<ol>
<li><strong>绝对禁止在生产服务器上使用 shutdown -h now 或 reboot!</strong></li>
<li>必须关机/重启时,提前通知所有用户,使用带延时的 shutdown 给缓冲时间</li>
<li>可以用 <code>shutdown -c</code> 取消已经安排好的关机计划</li>
<li><code>shutdown</code> 是最安全的关机方式(会通知用户、保存数据),推荐使用</li>
</ol>
</blockquote>
<hr>
<h2 id="五常见故障排查汇总">五、常见故障排查汇总</h2>
<h3 id="51-故障一开启虚拟机时-windows-蓝屏或报错">5.1 故障一:开启虚拟机时 Windows 蓝屏或报错</h3>
<table>
<thead>
<tr>
<th style="text-align: left"></th>
<th style="text-align: left"></th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left"><strong>现象</strong></td>
<td style="text-align: left">点击"开启此虚拟机"后 Windows 蓝屏或弹出错误提示</td>
</tr>
<tr>
<td style="text-align: left"><strong>原因</strong></td>
<td style="text-align: left">1. <strong>CPU 虚拟化未开启</strong> —— 需要在 BIOS 中开启 VT-x / AMD-V 支持<br>2. <strong>Hyper-V 冲突</strong> —— Windows 自带的 Hyper-V 虚拟化技术与 VMware 冲突</td>
</tr>
</tbody>
</table>
<p><strong>解决方案:</strong></p>
<p><strong>A. 开启 CPU 虚拟化(VT-x)</strong></p>
<ol>
<li>开机时连续按 <strong>F2 / Del / F12</strong>(根据主板品牌不同)进入 BIOS</li>
<li>找到 Virtualization Technology / Intel VT-x / AMD-V 选项</li>
<li>将其设置为 <strong>Enabled(启用)</strong></li>
<li>保存并重启(Save &amp; Exit)</li>
</ol>
<p><strong>B. 关闭 Windows Hyper-V(最常见的原因!)</strong></p>
<ol>
<li><strong>Windows键 + X</strong> → 选择"应用和功能"(或"程序和功能")</li>
<li>左侧选择 <strong>"启用或关闭 Windows 功能"</strong></li>
<li><strong>取消勾选</strong> "Hyper-V" 相关的所有选项</li>
<li>点击确定,重启电脑</li>
</ol>
<blockquote>
<p>💡 <strong>如果找不到 Hyper-V 选项?</strong><br>
以<strong>管理员身份</strong>打开 PowerShell/CMD,运行以下命令后重启:</p>
<pre><code class="language-bash">bcdedit /set hypervisorlaunchtype off
</code></pre>
</blockquote>
<blockquote>
<p>⚠️ <strong>另一个坑:杀毒软件优化掉了 VMware 服务!</strong><br>
某些"管家"、"卫士"类软件会把 VMware 的后台服务当作"无用启动项"禁用掉。如果发现 VMware 无法正常启动虚拟机,检查一下是不是被这些软件"优化"了。</p>
</blockquote>
<h3 id="52-故障二远程连接失败connection-failed">5.2 故障二:远程连接失败(Connection failed)</h3>
<p>参考第三章的<strong>远程连接排错三部曲</strong>逐步排查:</p>
<ol>
<li><strong>ping 目标 IP</strong> → 不通则检查 VMware 网络配置、虚拟机是否开机、网卡是否启动</li>
<li><strong>检查防火墙</strong> → Linux 防火墙是否放行了 22 端口(<code>systemctl stop firewalld</code> 可临时关闭)</li>
<li><strong>telnet IP 22</strong> → 检查 sshd 服务是否运行(<code>systemctl status sshd</code>)</li>
</ol>
<h3 id="53-故障三忘记-root-密码--需要重置密码">5.3 故障三:忘记 root 密码 / 需要重置密码</h3>
<p>可以通过单用户模式(救援模式/Troubleshooting)重置 root 密码。具体步骤会在后续课程中详细介绍。简单来说:</p>
<ol>
<li>重启虚拟机,在启动界面选择 <strong>Troubleshooting</strong></li>
<li>选择 <strong>Rescue a CentOS system</strong>(救援模式)</li>
<li>进入后用 <code>passwd root</code> 重置密码</li>
</ol>
<h3 id="54-故障四网卡名字不是-eth0-而是-ens33">5.4 故障四:网卡名字不是 eth0 而是 ens33</h3>
<p>这是因为安装时<strong>遗漏了 biosdevname=0 net.ifnames=0 参数</strong>。解决方法:</p>
<ol>
<li>编辑网卡配置文件:<code>vi /etc/sysconfig/network-scripts/ifcfg-ens33</code></li>
<li>将其中的 DEVICE=ens33 改为 DEVICE=eth0,NAME=ens33 改为 NAME=eth0</li>
<li>将文件重命名为 ifcfg-eth0</li>
<li>重启网络:<code>systemctl restart network</code></li>
</ol>
<p>或者最简单的方案:<strong>重新安装,这次别忘了加那两个参数!</strong></p><br><br>
来源:https://www.cnblogs.com/gzjwo/p/19124061
頁: [1]
查看完整版本: Linux 基础入门:系统安装、远程连接、命令行入门