一,为什么Java后端程序员要学习Linux
1. 编写程序只是开发的一部分
假设我们编写了一个 Spring Boot 项目,实现了用户登录、查询数据等功能
在开发阶段,我们可以直接在 Windows 中使用 IDEA 启动项目,并通过浏览器或 Postman 测试接口
但是,当项目开发完成后,如果希望其他用户也能访问这个项目,我们通常需要将它部署到服务器上,让程序能够持续运行并处理用户请求
许多企业会使用 Linux 服务器运行 Java 后端程序,以及 MySQL、Redis 等服务
因此,作为 Java 后端开发人员,我们不仅需要知道如何编写程序,还需要了解程序在服务器上是如何运行的
2. Linux 在实际开发中有什么作用?
假设我们把 Spring Boot 项目部署到 Linux 服务器上,运行一段时间后,突然发现用户无法正常登录。
这时可能出现以下问题:
-
Java 程序意外退出。
-
应用日志中出现异常。
-
服务监听的端口不正确。
-
服务器内存不足或磁盘空间耗尽。
-
程序无法连接 MySQL 或 Redis。
为了定位问题,我们需要检查程序的运行状态、查看日志、检查端口和系统资源,并结合应用配置进一步排查。
Linux 提供了许多工具和命令,可以帮助我们完成这些操作。
需要注意的是,Linux 并不是唯一能够进行故障排查的操作系统。Windows 同样可以检查进程、日志和端口。我们学习 Linux,是因为它在服务器和后端开发环境中非常常见。
因此,学习 Linux 的目标不是成为运维工程师,而是让自己具备运行、部署和排查 Java 后端项目的基本能力。
所以我们该如何从零接受这个东西:
Linux一般是Java程序后端部署到的地方,一般后端程序就在这上面运行的,并不是windows不可以部署,而是Linux是企业服务器上非常常见的选择,所以我们需要学习这个,它的优势不只是排查错误方便,更重要的是运行成本、稳定性、安全管理、自动化能力,以及和云计算、Docker 等技术的良好配合
二,学习Linux的前期准备
Linux我们也是耳熟能详,是一个操作系统,那我们学习这个Linux是不是需要重装系统之类的呢,很多同学听到这个就会觉得会非常的麻烦或者有点害怕的心理,其实可以不用,windows系统上也可以运行Linux,那首先我们需要下载WSL以及Ubuntu,首先我们先来介绍一下这两个东西,然后我们再教大家该如何进行下载
准备的东西是什么
WSL:
WSL 的全称是 Windows Subsystem for Linux,即适用于 Linux 的 Windows 子系统
它让我们能够在 Windows 中运行 Linux 环境,不必替换当前的 Windows 系统
我们下载这个也就是让Windows能够运行和管理Linux环境
Ubuntu:
这个也就是Linux的一个发行版,并且是常用于个人学习,开发以及服务器运行的一款
Linux 内核负责系统的核心管理工作,但实际使用时,还需要命令行工具、系统库、软件包管理器等组件。
将这些组件组合起来,就可以形成一套完整的 Linux 发行版。
为什么选择这个组合
因为不需要重装系统,可以继续使用现有的Windows软件和idea,并且也可以在Linux中练习真实的命令
当然,WSL 与独立的 Linux 服务器仍有区别,例如网络环境、硬件资源和生产部署配置等。但它足以帮助我们掌握大部分入门知识
开始准备
1. 检查 Windows 版本
首先按下 Win + R,输入:
winver
按回车后,可以查看当前 Windows 的版本信息。
确认系统满足 WSL 的安装要求后,再继续后面的操作。

2. 检查是否已经安装 WSL
打开管理员 PowerShell,执行:
wsl --status
这条命令用于查看 WSL 的状态。
接着执行:
wsl --list --verbose
这条命令用于查看已经安装的 Linux 发行版,以及它们使用的 WSL 版本。
如果尚未安装 WSL,可以继续进行安装。

我这个就是已经安装完毕了,默认分发:Ubuntu;默认版本:2,虽然显示我们不支持wsl1,但是不影响,因为我们使用的是wsl2
第二个命令的结果就是名称是Ubuntu,版本2,也就是wsl2,状态是stopped
3. 安装 WSL 基础组件
本次使用以下命令安装 WSL,但暂时不安装 Linux 发行版:
wsl --install --no-distribution
其中:
-
wsl:调用 WSL 命令行工具。 -
--install:执行安装操作。 -
--no-distribution:暂时不安装 Linux 发行版。
安装完成后,如果系统要求重启,应先保存其他工作,再根据提示重启电脑。

我这个已经是下载好了的
4. 检查是否支持指定安装位置
为了将 Ubuntu 安装到 D 盘,可以先查看 WSL 支持的命令:
wsl --help
在帮助信息中检查是否支持 --location 参数。该参数用于指定 Linux 发行版的安装目录。
这一步的目的是确认当前环境支持我们需要的安装方式,避免 Ubuntu 默认安装到其他位置。

其中这一部分就说明你可以选择你的安装地点,也就是可以安装到d盘
5. 将 Ubuntu 安装到 D 盘
执行:
wsl --install Ubuntu --location "D:\WSL\Ubuntu"
这条命令用于安装 Ubuntu,并将该发行版的数据安装到指定目录。
等待下载和安装完成。如果系统要求重启,则按照提示操作。
6. 创建 Linux 用户
首次启动 Ubuntu 时,系统会要求创建 Linux 用户名和密码。
例如,本次创建的用户名为:
lenovo
设置密码时需要注意:Linux 终端通常不会显示密码输入内容,也不会显示星号,这是正常的安全设计(就是什么都看不到,你输入了什么也没有,但是不影响,只是单纯你看不到)
输入密码后按回车,再根据提示重复输入一次进行确认。
密码只用于对应的 Linux 用户操作,不要与重要账号重复,也不要将密码公开。
完成初始化后,我们就可以进入 Ubuntu 的命令行环境。
7. 验证 Ubuntu 是否安装成功
安装完成后,可以在 PowerShell 中执行:
wsl --list --verbose
查看 Ubuntu 是否已经出现在发行版列表中,以及它使用的 WSL 版本。
也可以通过以下命令启动 Ubuntu:
wsl -d Ubuntu
成功进入后,终端会显示类似这样的提示符:
lenovo@LAPTOP-XXXX:~$
其中:
-
lenovo是当前 Linux 用户名。 -
LAPTOP-XXXX是经过简化展示的计算机名称。 -
~表示当前用户的主目录。 -
$是普通用户常见的命令提示符。
到这里,我们就完成了 Linux 学习环境的基本准备。

上面的警告wsl:的内容是因为我开了梯子,没有任何的影响,所以不需要管
到底为止,我们的Linux的环境就准备就绪了,我们只需要在最后一句话的后面输入Linux命令就可以
三、第一条 Linux 命令:pwd

1.pwd是什么:
我们首先学习 pwd 命令。
pwd 是 print working directory 的缩写,作用是显示当前工作目录。
在 Ubuntu 终端中输入:
pwd
执行后,终端会输出当前所在目录的完整路径。
例如,我第一次执行命令时,得到的结果是:
/mnt/c/Windows/system32
这说明当前所在目录是 /mnt/c/Windows/system32。
2. 为什么我的结果不是 /home/lenovo?
刚开始学习时,我原本以为进入 Ubuntu 后,当前目录就会直接是 Linux 用户的主目录。
但实际结果并不是这样。
原因是,我当时在 Windows PowerShell 的 C:\Windows\system32 目录中执行了:
wsl -d Ubuntu
启动 Ubuntu 时,WSL 将原来的 Windows 工作目录映射成了 Linux 中的路径。
3. 切换到自己的 Linux 用户主目录
既然当前目录位于 Windows 的映射路径中,那么如果我想回到 Ubuntu 自己的用户主目录,应该怎么做?
这就需要学习另一个命令:cd。
cd 是 change directory 的缩写,作用是切换当前工作目录。
在 Ubuntu 中输入:
cd ~
然后执行:
pwd
预期输出:
/home/lenovo
这说明我们已经切换到了当前 Linux 用户的主目录。
这里的 ~ 是一个特殊表示,通常代表当前用户的主目录。
对于当前用户 lenovo 来说,它对应的路径就是:
/home/lenovo

本节总结
本节认识了两个重要的 Linux 命令:
| 命令 | 作用 |
|---|---|
pwd |
查看当前工作目录 |
cd ~ |
切换到当前用户的主目录 |
之后我们想使用Linux,可以使用powershell输入wsl -d Ubuntu,也可以直接用Ubuntu