多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

从英文版Linux安装到系统初始化:运维实践与常见问题排查

从英文版Linux安装到系统初始化:运维实践与常见问题排查 1. 从一次重装系统说起为什么我坚持安装英文版Linux我第一次给一台停产的老服务器重装系统时发现原系统里的中文乱码和半英半中的界面反而成了最大的障碍。从那次之后我自己的笔记本、工作中的工控机、测试用的虚拟机只要不是给完全没有 Linux 经验的人用我都安装英文版Linux。原因不是英语多好而是英文版在大量真实运维和开发场景里更省事、更稳、更符合实际工作流。1.1 从服务器到嵌入式设备英文系统几乎就是行业默认如果买过国内主流云服务器或者在公司折腾过内网机器大概都有这个体验登录 SSH 之后是一水儿的英文提示。嵌入式领域更明显Buildroot、Yocto 生成的 rootfs开机日志和 shell 提示全是英文。连不少网络设备的命令行管理界面也都是从英文起步的。如果你本机装的是中文版 Linux日常会经常遇到这几个麻烦本地终端和远程服务器的提示语言不一致复制粘贴命令之后分不清哪些是系统输出、哪些是你输入的回显。很多开源软件根本没有中文语言包中文环境下照样夹英文界面反而变成半中半英的缝合怪。部分编译工具、测试框架对终端字符集敏感中文环境可能导致日志乱码、输出错位排错成本直线上升。用户主目录如果用了中文名部分旧脚本和程序对非 ASCII 路径支持不好解压源码、配置环境变量时容易出现怪异报错。反过来英文版 Linux 的本机环境在大量场景里反而像是一个低摩擦的基座终端输出稳定、日志关键词好搜、开源软件兼容性最好、远程运维时所见即所得。等你真的到了排查线上故障那一步就会明白系统提示语言和搜索引擎结果一致这件事有多值钱。1.2 中文版和英文版的真实差异对照很多刚接触 Linux 的朋友会以为中英文版本只是安装界面语言的区别实际上还牵扯到系统区域设置locale、字体、输入法、目录名称、软件包语言包等一整套东西。我见过最多的情况是装完中文版后发现某些代码编辑器里的终端插件会把中文路径吃掉。为了不折腾这些干脆从源头用英文系统省下一大串麻烦。对比项中文版 Linux英文版 Linux安装界面全程中文入门友好英文需要认识 Install、Partition、Username 等词用户目录如果用中文用户名会生成中文路径默认英文路径兼容性最好终端输出与日志中英混杂部分软件无中文包标准英文报错直接复制到搜索引擎就能命中输入法自带中文输入框架装完还要配默认英文输入没有多余干扰软件生态和英文版体量相同但多语言包文件更多包依赖往往更简单英文官方文档可直接照抄适合人群初学者、日常办公用户开发者、运维、嵌入式、爱折腾的用户所以选中文版还是英文版本质不是哪个高级而是你的使用场景对混乱有多高的容忍度。我的建议是第一次接触 Linux 的人可以先在虚拟机里装中文版练手等到要正经做开发、运维、部署项目时换英文版后面省下的时间远超刚开始那点陌生感。2. 装英文版 Linux 前的准备镜像下载、启动盘和虚拟机三条路线确定了要装英文版接下来要解决两个问题一是从哪里拿到官方原版系统镜像二是在物理机还是虚拟机上装。这两件事看似基础实际翻车概率一点都不低而且翻车方式往往都差不多。2.1 官方镜像站和国内镜像源到底选哪个Linux 发行版很多最常见的几大系是 Debian 系Ubuntu、Debian、Linux Mint、Red Hat 系CentOS、Rocky Linux、AlmaLinux、Arch 系和 SUSE 系。绝大多数人入门和干活Ubuntu LTS 或者 Debian 是足够稳的选择如果要做服务器跑业务Rocky Linux 或 AlmaLinux 会更偏生产环境。下载镜像时首选肯定是官网。以 Ubuntu 为例去 ubuntu.com/download/desktop 挑一个 LTS 版本下载 ISO 文件即可。但官网服务器在国外国内下载速度慢、偶尔还断流所以国内用户基本都走镜像站。国内常用的高校和企业镜像站有清华 TUNA、阿里云、中科大、华为云等Ubuntu 的 ISO 都可以在 mirrors.tuna.tsinghua.edu.cn 或 mirrors.aliyun.com 找到。有一点要提醒镜像站的目录结构和官网不同但只要取用 release 目录下的同名 ISO校验值是一样的。下载完之后最好用 sha256sum 验一下哈希防止文件在传输过程中损坏。安装到一半才发现镜像坏了那才叫欲哭无泪。sha256sum ubuntu-24.04.1-desktop-amd64.iso把输出的哈希值和官网页面上公布的 SHA-256 比对一致再继续。2.2 物理机安装、U盘启动盘与虚拟机安装的取舍我见过不少第一次装系统的朋友直接把 ISO 拷进 U 盘就说已经做好启动盘了结果开机发现根本引导不进去。ISO 文件本身不能简单拷贝进 U 盘使用它需要被写为可引导介质这一步很多人漏掉了。制作 U 盘启动盘我最常用的是 RufusWindows 下操作和 Ventoy。Rufus 的好处是步骤少、选项直观选择 ISO 文件、目标 U 盘点 Start 然后等待写入就行Ventoy 更灵活可以反复把多个 ISO 文件丢进同一个 U 盘在启动时自己选择引导哪个适合经常装不同发行版的人。Linux 下也可以直接用 dd 命令写盘但风险大、容易选错设备名新手不建议第一站就用 dd。物理机上装系统还需要注意 UEFI 和 Legacy BIOS 的区别。新机器默认 UEFI启动盘要选 GPTUEFI 模式老机器如果坚持用 Legacy BIOS启动盘要选 MBR 模式。Rufus 一般会自动识别但部分老主板会认 U 盘不认 ISO这时候要回头检查 U 盘的分区表类型和文件系统格式。如果你只是学习、测试配置或者不想动主力电脑更推荐虚拟机。VMware Workstation Pro 和 VirtualBox 都是常用选择。虚拟机的好处是随时快照、随时回滚、不怕把系统玩坏。我自己常用 VMware 装 Ubuntu 英文版做测试装完系统第一步就打个干净快照之后随便改配置、删库、跑脚本出问题还原一下就好。2.3 制作启动盘和创建虚拟机的关键参数制作启动盘以 Rufus 为例步骤插入 U 盘打开 Rufus选择设备。引导类型选择下载好的 ISO 镜像。分区类型选择 UEFI如果电脑支持否则按需选择 MBR。文件系统选 FAT32兼容性最好或 NTFS大文件更稳但老主板兼容性差。点击开始等待写入完成。虚拟机安装以 VMware 为例参数建议客户机操作系统选择 Linux版本选择 Ubuntu 64-bit。内存给 4GB 以上硬盘 40GB虚拟磁盘动态分配。网络模式默认 NAT 就够用桥接模式留给需要独立 IP 的场景再说。创建完成后在 CD/DVD 设置里挂载 ISO 镜像然后开机。注意较新的 VMware 版本偶尔会因为虚拟硬件版本和镜像内核不兼容导致开机黑屏或蓝屏。如果遇到安装中途蓝屏优先检查虚拟机设置里的固件类型是不是和 ISO 引导模式匹配再考虑关闭 3D 加速、减少内存条数。3. 英文版 Ubuntu 安装全程详解从引导到首次进桌面下面以 Ubuntu 24.04 LTS 为例完整走一遍英文版安装流程。整个过程大约十五到二十分钟绝大部分时间其实是在等待复制文件。3.1 引导进入安装器语言选择一定要想清楚从 U 盘或虚拟机光盘启动后会出现一个 GRUB 引导界面。Ubuntu 桌面版默认给的是 Try or Install Ubuntu 这样的菜单。第一项是直接进入试用桌面第二项才是正式安装。如果你在物理机上看到界面一直循环、进不去很可能是启动盘引导模式和电脑固件模式不匹配回到启动盘制作工具检查分区类型。启动到安装器欢迎界面后左侧是语言列表默认会高亮 English。这里有第一个选择如果坚持用英文系统直接保持 English 即可如果只是想先看看中文界面再改也可以临时选中文但后续还是要切换。我建议一开始就选 English减少之后切换的麻烦。点击 Continue 进入下一屏。3.2 键盘布局、网络连接这些小事别选错键盘布局界面默认会给你选 English (US) 或 English (UK)。国内绝大多数键盘是美式布局选 English (US) 就对了。如果不确定可以点下方的 Detect Keyboard Layout按提示按几个键系统会自动判断布局。这里有个容易忽略的点键盘布局和输入法框架是两回事。键盘布局决定每个按键的输出输入法框架负责多语言输入切换。装英文系统时选 US 布局后面即使装了中文输入法也不需要改键盘布局保持 US 布局再加上一个拼音或五笔输入法就好。下一步是连接网络。如果前面已经插了网线或连了 Wi-Fi安装器会自动进入联网检查。联网对安装不是绝对必需但会关联后面两步驱动下载和更新源配置。建议在有网络的环境下安装装完直接就能把补丁打全。3.3 磁盘分区界面的英文选项怎么理解安装类型界面会出现几个选项Install alongside existing operating system和现有系统共存Erase disk and install Ubuntu抹掉整个磁盘安装Manual partitioning手动分区对新手来说如果是全新硬盘或所有数据都已备份的电脑选 Erase disk and install Ubuntu 最省事安装器会自动完成分区和格式化。如果电脑上还有 Windows想保留双系统选第一项安装器会缩减现有分区腾出空间。手动分区这里我多说两句。很多人第一次看到这类界面因为术语不熟而紧张其实核心只需要搞懂几个词/根分区系统所有文件挂载的根目录一般分配磁盘剩余空间。/boot启动文件分区EFI 机器还需要一个 EFI 系统分区通常是 FAT32 格式。/home用户数据分区可选。单独分出来之后重装系统可以保留个人文件。swap交换分区类似 Windows 的虚拟内存。Ubuntu 现在默认用 swapfile也可以不手动分。如果不熟就交给安装器自动处理。手动分区最怕的是选错磁盘把有数据的盘抹掉。操作前务必备份我是亲眼见过同事在双硬盘机器上 Erase disk 选错盘的。3.4 设置用户信息用户名别用中文加密盘没必要就别开设置用户名和计算机名这一步有一点我强烈建议用户名务必用英文小写字母不要用中文也不要用大写开头。因为 Linux 的登录用户名会对应一个 /home 下的目录例如 /home/david如果用中文、数字开头或者带空格后续很多命令行路径、软件配置都会遇到坑。输入密码时如果用的是英文键盘布局密码里别加非 ASCII 字符免得登录时怎么都输不对。安装完成后还有个 Pick a password 和 Choose a name 的提示是加密磁盘用的。如果勾选了加密磁盘开机就必须先输入加密密码再进系统这不是所有用户都需要的。对平时折腾配置的人来说没必要加密免得以后做运维恢复时多一道锁。接下来是时区选择。地图上点击上海即可但注意时区影响的是系统时间和硬件时钟的对应关系。如果你装了双系统Windows 对硬件时钟的读写方式和 Linux 不一样经常会出现装完 Linux 再进 Windows 发现时间差了 8 小时的问题。解决思路是让 Windows 以 UTC 方式读取硬件时钟或者让 Linux 把硬件时钟设为 Local Time后面我会在配置章节再细说。时区搞定后继续点击 Install安装器开始复制文件此时可以起身等几分钟。安装完成后会提示重启拔掉 U 盘或移除光盘 ISO重启进入系统。4. 装完英文版只是开始初始化配置与常用命令速查系统能够开机、进入桌面安装这一步就算完成了但离能干活还很远。英文版 Ubuntu 装完需要做的初始化配置和中文版几乎一样只是命令里的路径、提示信息是英文反而更适合照着网上的官方文档敲。4.1 apt 换源与系统更新这是第一件事Ubuntu 默认用的官方源在国内速度一般般建议直接换成国内镜像源。修改源文件sudo sed -i s/archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g /etc/apt/sources.list如果系统是 Ubuntu 24.04 以后的版本源文件的位置变成了 /etc/apt/sources.list.d/ubuntu.sources 或类似路径里面的 URL 字串也要对应替换。改完之后执行更新和升级sudo apt update sudo apt upgrade -yapt update 是刷新软件包索引apt upgrade 是升级已安装软件这是所有基于 Debian 的系统里最常用的两个操作。英文系统下如果看到 Hit、Get、Ign 这些输出不需要太紧张Hit 表示命中缓存Get 表示正在下载索引。4.2 时区同步、SSH 远程登录与防火墙放行时区如果安装时选错了可以用 timedatectl 修改sudo timedatectl set-timezone Asia/Shanghai如果想在自己电脑上远程运维安装 OpenSSH Server 是刚需操作。Ubuntu 默认不装 SSH 服务端执行sudo apt install openssh-server -y sudo systemctl enable --now sshsystemctl 是 Linux 服务管理的主力命令。enable 是设置开机自启--now 是立刻启动。之后在本机用 ip addr 查一下 IP再从别的机器 ssh 连接到该 IP 即可。如果系统防火墙 ufw 开着别忘记放行 22 端口sudo ufw allow 22/tcp sudo ufw enable4.3 文件操作、目录结构与后台运行的基本认知英文版系统装完后主目录下面基本是空的你会通过各种命令慢慢填满它。下面列几条我总结的不必全部记住但遇事要能想起来的命令ls列出当前目录内容配合 -l、-a 使用效果更佳。cd切换目录.. 表示上级目录。cp、mv、rm复制、移动、删除文件。删文件的命令要格外小心rm -rf 这种操作永远不要在真实环境里手抖输进去。chmod、chown修改权限和属主部署服务时经常遇到。grep搜索关键字运维排查日志的一把好手。systemctl服务管理启动、停止、查看服务状态都靠它。后台运行的问题也常被搜到热搜里有一条linux 让后台运行指令 不因界面退出而退出本质需求就是 nohup 和 setsid 这类工具。前端跑一个脚本CtrlC 或者关终端会导致进程一起退出时用以下方式可以把任务放到后台继续执行nohup command output.log 21 把 command 换成你的命令output.log 是日志输出文件21 是把错误输出重定向到同一个文件结尾的 表示后台运行。看到这里有 Windows 使用习惯的人可能会问这不就是后台任务吗对但 Linux 里更常见的还有 tmux、screen 这类终端复用器挂载会话后即使断网重连也能找回现场。这些都是我在实际服务器操作里用得最多的工具。5. 装成中文版之后想改英文一个通用切换方案并不是所有人都能一开始就利落地装英文版不少朋友是先装了中文版发现乱码、路径问题或者想彻底换英文环境。幸运的是Linux 的语言切换比 Windows 更彻底几乎所有发行版都支持安装语言包后直接切换。5.1 图形界面切换语言最简单第一步Ubuntu 桌面版里打开 Settings设置→ System系统→ Region Language区域与语言在界面里添加 English (United States) 作为首选语言注销重新登录后菜单、桌面文字都会变成英文。这个过程不需要重装系统推荐最先尝试。但要注意图形界面切换只能改桌面环境的语言系统级 locale 变量和终端输出未必会完全变成英文。很多时候你看到桌面是英文了终端里 app 提示还是中文或者反过来这时候需要在命令行层面再补一步。5.2 命令行修改 locale让系统彻底英文化Linux 系统的语言环境由 locale 变量控制核心变量包括 LANG、LANGUAGE、LC_ALL 等。查看当前配置locale如果显示 LANGzh_CN.UTF-8那么终端和很多程序默认输出中文。想改为英文可以修改系统级配置把默认语言写成 en_US.UTF-8sudo update-locale LANGen_US.UTF-8 LANGUAGEen_US如果系统提示 en_US.UTF-8 的 locale 不存在先安装语言包并生成sudo apt install language-pack-en -y sudo locale-gen en_US.UTF-8改完之后注销或重启再运行 locale 命令如果输出 LANGen_US.UTF-8就说明系统语言已经切换到英文了。如果是无桌面环境的服务器这样做比再折腾桌面配置清爽得多。5.3 语言切换后为什么还有残留中文即使 locale 全部改成英文偶尔还是会看到中文内容这通常有几个原因某些 GUI 软件自带语言包可能默认跟随桌面语言切换后没有重启时会有残留。用户主目录里的文档、浏览器书签、邮件内容不受 locale 影响不需要改。全局配置文件里如果写死了 zh_CN个别服务或脚本仍会输出中文需要分别检查对应的配置。系统里如果同时装了多个语言包切换优先级由 locale 配置和 /usr/share/i18n/locales 目录共同决定必要时可以删除不需要的 locale。排查残留中文的时候最有效的命令是 env | grep -i lang它会把所有语言相关的环境变量一次性列出来。看到哪个变量不对就改哪个按变量从局部到全局的覆盖顺序逐个排查基本都能解决。6. 安装全程最容易翻车的几个地方以及我的处理方法最后一块内容我想把安装过程中真正容易让人崩溃的细节集中说一下。这些问题几乎每个人都会遇到至少一个提前知道了能省下大量折腾时间。6.1 选错磁盘分区最大事故没有之一前面说过手动分区或者选择 Erase disk 时选错磁盘意味着数据直接消失。避免这个问题最有效的办法是安装前先执行 lsblk 查看所有磁盘和分区确认设备名到底是 sda 还是 nvme0n1。物理机装系统时可以把其他数据盘临时拔掉只留目标盘虚拟机安装时则要搞清楚挂载的虚拟磁盘是哪一个。即便发生了误格式化也千万别继续往坏盘里写数据。关机、挂载为只读、用 testdisk 等工具尝试恢复是相对常见的补救方式。但这些都是事后措施真正的保险还是提前备份。6.2 终端和文件名的乱码问题英文版系统本身不太容易出现终端乱码。但如果系统里装了中文字体文件名却显示成方块大概率是文件管理器的编码设置没配置好。Linux 文件名支持 UTF-8绝大多数现代发行版默认就是 UTF-8如果遇到乱码检查两个地方一是终端是否用了 UTF-8 编码二是系统 locale 是否被改成了非 UTF-8 的值。在命令行里遇到乱码时临时指定语言环境运行命令也很有用LANGen_US.UTF-8 python3 myscript.py这种用法在排查脚本因为语言环境导致的行为差异时特别好使。它是把语言环境变量作为临时环境传给单个命令不影响系统全局用完就不用管。6.3 虚拟机安装时蓝屏或黑屏热搜里能看到虚拟机安装 linux 蓝屏这类词说明确实有人遇到了。蓝屏原因比较多但常见的有三种虚拟机和主机系统不兼容、ISO 镜像不完整、虚拟机固件类型与系统引导方式不匹配。我在 VMware 上装新版 Ubuntu 时如果蓝屏第一件事是换成较新版本的 VMware或者改用 VirtualBox 试一次第二件事是关闭虚拟机的 3D 图形加速改为使用基础虚拟显卡第三件事是检查虚拟机固件是 UEFI 还是 BIOS和 ISO 的引导是否对齐。还有一个容易被忽略的因素内存设置过大或过小时某些虚拟机在安装过程中也会花屏。一般给到 4GB 是比较稳妥的值不要和主机抢内存。6.4 一张自检表帮你快速定位安装问题现象大概率原因解决方向启动盘无法引导U 盘分区类型不对用 Rufus 重做确认 UEFI/MBR安装到一半蓝屏虚拟硬件兼容性问题关闭 3D 加速换虚拟机版本时间总差 8 小时双系统硬件时钟设置不一致用 timedatectl 修改 localRTC终端乱码locale 不是 UTF-8修改 locale 为 en_US.UTF-8中文文件名乱码文件系统编码问题确认分区挂载参数用了 utf8apt 安装特别慢没换国内源修改 sources.list 指向镜像站装上英文版 Linux 之后的真实感受可能和很多人最初想象的不同系统并不会因此变得难用反而是很多曾经不能解释的报错在英文版里一眼就能看懂。用搜索引擎复制整段日志轻轻松松就能定位问题是哪个包、哪个参数。我个人装了这么多年系统从中文版切到英文版之后再也没回去过。如果你正准备接触 Linux不妨第一次就直接跨过语言这道门槛把精力花在实际的命令、配置和原理上这个起点会扎实很多。
返回列表