ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Ubuntu 22.04 LTS 开箱即用配置清单:从系统优化到开发环境搭建

Ubuntu 22.04 LTS 开箱即用配置清单:从系统优化到开发环境搭建 1. 从零到一为什么需要一个“开箱即用”的Ubuntu配置清单每次装完Ubuntu面对那个干净得有点“过分”的桌面你是不是也和我一样既兴奋又有点无从下手兴奋的是一个全新的、高效的工作环境即将诞生无从下手的是从系统语言、输入法到开发工具、日常应用有太多东西需要从头配置。这个过程熟练工可能半天搞定新手可能得折腾好几天甚至因为某个依赖问题卡住最终放弃。Ubuntu 22.04.3 LTSJammy Jellyfish作为一个长期支持版本稳定性和软件生态都相当成熟是个人桌面和工作站的首选。但“稳定”的另一面是它自带的软件仓库版本相对保守很多我们日常需要的最新版软件或国内常用工具并不在默认源里。这就引出了我们配置的核心思路在保持系统主干稳定的前提下通过添加可靠的第三方软件源PPA、Snap/Flatpak通用包以及AppImage等方式快速搭建一个兼顾生产力、开发效率和日常娱乐的现代化桌面环境。这份清单就是我多年使用Ubuntu作为主力系统反复安装、配置、优化后沉淀下来的精华。它不仅仅是一个软件列表更包含了我踩过无数坑后总结出的配置顺序、参数调优和问题排查技巧。目标很明确让你在安装完系统后的2-3小时内就能获得一个“开箱即用”、几乎无需再操心基础软件的工作站把宝贵的时间留给真正的创造和工作。2. 配置前的核心准备源、权限与备份在开始安装任何软件之前有三件至关重要的事情必须做。这就像盖房子前要打好地基、准备好图纸和工具一样能避免后续90%的奇怪错误。2.1 更换软件源为国内镜像Ubuntu默认的软件源服务器在国外国内直接访问速度慢且不稳定更新和安装软件时会非常痛苦。更换为国内镜像源是第一步也是速度提升最明显的一步。备份原始源列表这是一个安全习惯。在终端中执行sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak这样万一新源有问题我们可以随时恢复。选择合适的国内镜像国内常用的有阿里云、腾讯云、华为云、清华TUNA、中科大USTC等。以阿里云镜像为例我们可以手动编辑源列表文件sudo nano /etc/apt/sources.list将文件内容全部删除替换为阿里云的源适用于Ubuntu 22.04 Jammydeb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse deb https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse deb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse deb-src https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse deb-src https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse deb-src https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse deb-src https://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse deb-src https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse按CtrlO保存再按CtrlX退出nano编辑器。注意如果你不熟悉命令行编辑器Ubuntu 22.04 的“软件和更新”应用提供了图形化界面更换源。打开“软件和更新”在“Ubuntu软件”标签页将“下载自”下拉菜单选择为“中国的服务器”然后选择一个镜像即可系统会自动完成替换。更新软件包列表更换源后必须让系统重新获取新的软件索引。sudo apt update这个命令本身不升级任何软件只是更新本地缓存的软件包信息列表。如果看到从mirrors.aliyun.com拉取数据的记录并且没有报错说明换源成功。2.2 理解sudo权限与apt包管理在Ubuntu中sudo是一个让你以管理员root身份执行命令的工具。安装软件、修改系统配置等操作都需要它。apt(Advanced Package Tool) 是Debian/Ubuntu系列的包管理器我们安装、更新、卸载软件都靠它。几个最核心的命令sudo apt update更新软件源列表刚才用过。sudo apt upgrade升级所有已安装的软件包到最新版本。在大量安装新软件前建议先执行一次。sudo apt install 软件包名安装软件。sudo apt remove 软件包名卸载软件保留配置文件。sudo apt purge 软件包名卸载软件并删除配置文件。sudo apt autoremove自动删除那些为了满足其他软件依赖而自动安装但现在不再需要的包。定期运行可以清理空间。2.3 系统快照或重要数据备份在进行大规模软件安装和配置前如果你使用的是虚拟机如VMware、VirtualBox强烈建议创建一个“快照”。快照能完整保存当前系统的状态后续任何操作导致系统崩溃或混乱都可以一键回滚到这个干净的状态这是最安全的“后悔药”。如果是物理机至少确保你的个人文件~/Documents,~/Pictures等已备份到外部硬盘或云盘。对于/etc/目录下的系统配置文件如果你做了自定义修改也最好备份一下。3. 基础系统优化与桌面环境增强系统装好源换完我们先不急着装应用而是把系统本身调教得更顺手、更高效。3.1 安装必备的系统工具和编译环境有些工具是后续安装其他软件的基础依赖一次性装好省得后面报错。sudo apt install -y vim git curl wget net-tools htop build-essentialvim终端下的高效文本编辑器比默认的nano功能强大很多。git版本控制工具开发必备。curl/wget命令行下载工具。net-tools包含ifconfig等传统网络诊断工具。htop增强型的系统进程查看器比top更直观。build-essential包含GCC、G、make等编译工具链。很多软件从源码编译安装时都需要它。3.2 解决中文显示与输入法搜狗输入法实战这是中文用户最关心也最容易出问题的一环。Ubuntu自带的IBus框架和拼音输入法能用但词库和流畅度不如搜狗。下面是最稳的搜狗输入法安装流程。安装fcitx输入法框架搜狗输入法基于fcitx而非系统默认的IBus。sudo apt install -y fcitx5 fcitx5-chinese-addons fcitx5-frontend-gtk4 fcitx5-frontend-gtk3 fcitx5-frontend-qt5这里我直接推荐fcitx5它是fcitx4的下一代版本在Ubuntu 22.04上更稳定、现代。同时安装了对GTK和Qt程序的前端支持确保在各种应用里都能正常调出。配置环境变量编辑用户配置文件让系统启动时加载fcitx。nano ~/.profile在文件末尾添加export GTK_IM_MODULEfcitx export QT_IM_MODULEfcitx export XMODIFIERSimfcitx保存退出。然后非常重要的一步注销当前用户重新登录。或者重启电脑。只有这样环境变量才能生效。下载并安装搜狗输入法DEB包访问搜狗输入法官网的Linux版页面下载对应Ubuntu 22.04的DEB包。或者直接在终端用wget下载请以官网最新链接为准wget https://ime.sogouimecdn.com/202410211452/dl/index/1674143003/sogoupinyin_4.2.1.145_amd64.deb安装下载的DEB包sudo apt install ./sogoupinyin_4.2.1.145_amd64.deb如果遇到依赖问题可以尝试sudo apt --fix-broken install添加输入法并配置重新登录后你应该能在屏幕右上角或系统托盘看到fcitx的键盘图标。点击它选择“配置”。在“输入法”选项卡点击左下角的“”号添加输入法。取消“只显示当前语言”在列表中找到“搜狗拼音”添加它。你可以把不需要的输入法如键盘-英语移除只保留“搜狗拼音”。现在你就可以按CtrlSpace切换中英文输入了。踩坑实录最常见的问题是安装后无法调出输入法。99%的原因在于没有正确注销/重启以加载环境变量或者环境变量配置有误。务必确保.profile文件修改正确并重新登录。另一个问题是与GNOME Shell扩展冲突如果遇到可以尝试在终端运行fcitx5 -d --replace来重启fcitx5守护进程。3.3 安装图形化包管理器和字体Ubuntu Software基于Snap有时比较慢我们可以安装更轻量、快速的gnome-software和synaptic新立得。sudo apt install -y gnome-software synaptic同时安装一些常用的中文字体和等宽编程字体让终端和代码编辑器看起来更舒服sudo apt install -y fonts-wqy-zenhei fonts-wqy-microhei fonts-noto-cjk fonts-firacodeFira Code是一款带有编程连字特性的等宽字体在VSCode等编辑器里显示箭头、等号等符号时特别美观。4. 开发环境全家桶安装与配置对于开发者而言这是配置的核心部分。我们将搭建一个覆盖前端、后端、数据库的完整开发环境。4.1 版本控制Git安装与基础配置Git通常已经包含在build-essential或系统基础包中如果没有安装很简单sudo apt install -y git安装后第一件事是配置全局用户信息这是你每次提交代码的“身份证”git config --global user.name 你的名字 git config --global user.email 你的邮箱example.com为了让Git在终端里更有色彩、更易读可以启用颜色高亮和设置默认分支名git config --global color.ui auto git config --global init.defaultBranch main # 将默认初始分支名从 master 改为 main如果你需要连接GitHub、GitLab等建议配置SSH密钥认证比每次输密码方便安全得多。生成密钥对ssh-keygen -t ed25519 -C 你的邮箱example.com一路回车使用默认路径和空密码。然后查看公钥并复制到剪贴板cat ~/.ssh/id_ed25519.pub将这个公钥内容添加到你的Git托管平台如GitHub的SSH Keys设置页面即可。4.2 编程语言环境Node.js与PythonNode.jsUbuntu默认源里的Node.js版本很旧。推荐通过NodeSource维护的PPA来安装最新的LTS版本。# 添加NodeSource PPA curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - # 安装Node.js sudo apt install -y nodejs安装后验证版本node --version和npm --version。国内使用npm安装包可能很慢建议立即更换为淘宝镜像源npm config set registry https://registry.npmmirror.comPythonUbuntu 22.04 默认已经安装了 Python 3.10。我们只需要确保pipPython包管理器是最新的并安装虚拟环境管理工具venv。sudo apt install -y python3-pip python3-venv sudo pip3 install --upgrade pip同样可以为pip配置国内镜像以加速下载创建或编辑~/.pip/pip.conf文件[global] index-url https://pypi.tuna.tsinghua.edu.cn/simple trusted-host pypi.tuna.tsinghua.edu.cn4.3 数据库MySQL安装与安全初始化通过APT安装MySQL服务器sudo apt install -y mysql-server安装完成后MySQL服务会自动启动。但更重要的是运行安全初始化脚本sudo mysql_secure_installation这个交互式脚本会引导你完成以下关键安全设置设置root用户的密码即使你看到有些教程说Ubuntu的MySQL默认使用auth_socket插件无密码登录也强烈建议设置一个。移除匿名用户。禁止root用户远程登录提高安全性。移除测试数据库。立即重新加载权限表。完成后你可以登录MySQLsudo mysql -u root -p输入你刚设置的密码。如果你想创建一个专门用于开发的数据库用户而不是一直用root可以在MySQL shell里执行CREATE USER devuserlocalhost IDENTIFIED BY 你的强密码; GRANT ALL PRIVILEGES ON *.* TO devuserlocalhost WITH GRANT OPTION; FLUSH PRIVILEGES;4.4 集成开发环境Visual Studio CodeVSCode是跨平台的轻量级但功能强大的代码编辑器。虽然可以通过Snap安装但我更推荐从微软官方APT源安装更新更及时与系统集成更好。导入微软GPG密钥并添加仓库wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor packages.microsoft.gpg sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg echo deb [archamd64,arm64,armhf signed-by/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main | sudo tee /etc/apt/sources.list.d/vscode.list /dev/null更新并安装VSCodesudo apt update sudo apt install -y code基础配置与插件推荐 安装后可以从终端用code命令启动或从应用菜单启动。首次启动后建议安装以下核心插件以提升开发体验Chinese (Simplified) Language Pack中文语言包。Python微软官方Python支持提供智能提示、调试、测试等功能。C/C微软官方C/C支持。ESLintJavaScript/TypeScript代码质量检查。Prettier代码格式化工具。GitLens超级强大的Git历史查看和代码注解工具。Docker管理Docker容器和镜像。Remote - SSH/Remote - Containers远程开发神器。你可以在VSCode的设置中 (Ctrl,) 搜索terminal.integrated.defaultProfile.linux将其值改为bash这样内置终端就会默认使用Bash。4.5 容器化与虚拟化Docker安装Docker极大地简化了应用部署和环境隔离。安装步骤如下卸载旧版本如有sudo apt remove docker docker-engine docker.io containerd runc设置Docker的APT仓库sudo apt update sudo apt install -y ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod ar /etc/apt/keyrings/docker.asc echo deb [arch$(dpkg --print-architecture) signed-by/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release echo $VERSION_CODENAME) stable | sudo tee /etc/apt/sources.list.d/docker.list /dev/null安装Docker引擎sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin将当前用户加入docker组避免每次使用docker都要加sudosudo usermod -aG docker $USER重要执行此命令后你需要完全注销并重新登录或者重启电脑这个组权限变更才会生效。验证安装docker --version docker run hello-world如果能看到“Hello from Docker!”的提示信息说明安装成功。实操心得国内拉取Docker镜像速度可能很慢务必配置镜像加速器。创建或编辑/etc/docker/daemon.json文件添加如下内容以阿里云镜像加速器为例需自行申请{ registry-mirrors: [https://your-id.mirror.aliyuncs.com] }然后重启Docker服务sudo systemctl restart docker。5. 生产力与日常应用软件精选系统底层和开发环境搞定后我们来装那些让你用起来更舒心的日常软件。5.1 浏览器Chrome/EdgeFirefox是Ubuntu自带的优秀浏览器但有些网站或Web应用对Chromium内核兼容性更好。安装Google Chromewget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add - sudo sh -c echo deb [archamd64] http://dl.google.com/linux/chrome/deb/ stable main /etc/apt/sources.list.d/google-chrome.list sudo apt update sudo apt install -y google-chrome-stable或者如果你更喜欢微软Edge也可以从微软官方源安装步骤类似。5.2 通讯与协作钉钉、微信、Telegram对于国内用户钉钉和微信几乎是工作生活必需品。幸运的是它们都有官方或优秀的第三方Linux版本。钉钉有官方.deb包直接去官网下载安装即可。微信官方没有Linux版。推荐使用开源的Electronic WeChat或Deepin-Wine版本的微信。更稳定省事的方法是使用Flatpak安装com.qq.weixin.deepin深度移植版# 首先确保系统已安装Flatpak支持 sudo apt install -y flatpak flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo # 安装深度微信 flatpak install -y com.qq.weixin.deepinFlatpak版本兼容性较好且与系统其他部分隔离不会污染你的主系统库。Telegram可以直接通过Snap安装更新及时sudo snap install telegram-desktop。5.3 办公与文档WPS Office、PDF阅读器LibreOffice功能强大但界面和兼容性有时不如MS Office。WPS Office for Linux是很好的替代品界面接近MS Office对.docx,.pptx,.xlsx格式兼容性很好。去WPS官网下载.deb包安装即可。PDF阅读器系统自带的“文档查看器”已经很好用。如果需要更多标注功能可以安装okularsudo apt install -y okular5.4 媒体与图像VLC、GIMPVLC万能媒体播放器几乎能播放任何格式的视频音频。sudo apt install -y vlcGIMP功能强大的开源图像编辑器堪称Linux下的Photoshop。sudo apt install -y gimp截图工具Ubuntu 22.04自带的截图工具已经很强大了快捷键ShiftPrintScreen可区域截图PrintScreen全屏截图。如果需要滚动截图、标注等更高级功能可以安装flameshotsudo apt install -y flameshot安装后可以在设置中将自定义快捷键如CtrlAltA绑定到命令flameshot gui。5.5 其他实用工具归档解压安装p7zip-full和unrar以支持更多压缩格式。sudo apt install -y p7zip-full unrar剪贴板管理器CopyQ或GPaste可以保存剪贴板历史非常提升效率。sudo apt install -y copyq系统监控gnome-system-monitor图形化任务管理器或者之前安装的命令行神器htop。6. 进阶配置与个性化调优基础软件齐备后我们可以进行一些“锦上添花”的配置让系统更符合个人习惯。6.1 终端美化与Oh My Bash默认的Bash终端功能足够但不够美观和高效。我们可以用Oh My Bash来美化它。# 安装Oh My Bash bash -c $(curl -fsSL https://raw.githubusercontent.com/ohmybash/ohmybash/master/tools/install.sh)安装过程中会询问是否将默认主题改为“agnoster”一个很流行的主题按需选择。安装完成后重新打开终端你会看到更漂亮的提示符包含了Git分支状态等信息。如果你更喜欢Zsh和Oh My Zsh也可以安装但Bash的兼容性更广。Oh My Bash足以满足大部分美化需求。6.2 GNOME Shell扩展管理GNOME桌面环境可以通过扩展来增加功能比如在顶栏显示网速、天气或者改变窗口管理行为。首先需要安装浏览器连接插件和扩展管理器sudo apt install -y chrome-gnome-shell gnome-shell-extension-manager安装后在应用菜单打开“扩展管理器”。你可以在这里浏览、安装、管理扩展。几个必装的扩展推荐User Themes允许使用Shell主题。Dash to Panel或Dash to Dock将顶栏和Dash程序坞合并或自定义提供类似Windows或macOS的桌面体验。Arc Menu提供一个更强大的开始菜单。GSConnect与KDE Connect配合实现手机和电脑间的文件传输、通知同步等需要在手机上也安装KDE Connect。6.3 窗口置顶与快捷键自定义你提到的“在窗口标题栏右键‘Always on Top’”这是GNOME桌面环境自带的功能。当你右键点击任何窗口的标题栏时在菜单里选择“始终在最前”该窗口就会保持在所有其他窗口之上。这个功能是窗口管理器Mutter原生支持的无需额外配置。你可以通过“设置”-“键盘”-“查看及自定义快捷键”来修改或添加快捷键。例如我发现“始终在最前”这个功能没有默认快捷键我可以自定义一个比如SuperTSuper键通常是Windows键或Command键。6.4 时间同步NTP配置确保系统时间准确对于日志记录、证书验证等至关重要。Ubuntu默认使用systemd-timesyncd进行时间同步。你可以检查其状态timedatectl status如果显示“NTP service: active”且时间正确则无需操作。如果需要手动配置NTP服务器比如使用国内的NTP服务器可以编辑/etc/systemd/timesyncd.confsudo nano /etc/systemd/timesyncd.conf取消#NTP的注释并添加服务器例如NTPntp.aliyun.com ntp1.aliyun.com然后重启时间同步服务并启用sudo systemctl restart systemd-timesyncd sudo systemctl enable systemd-timesyncd7. 故障排除与常见问题实录即使按照最详细的教程也难免会遇到问题。这里记录了几个我遇到的高频问题及其解决方案。7.1 软件安装失败依赖问题与PPA冲突问题使用sudo apt install时经常遇到“无法满足依赖关系”、“有未满足的依赖项”等错误。排查思路首先更新源sudo apt update确保软件列表是最新的。尝试修复安装sudo apt --fix-broken install这个命令会尝试修复损坏的依赖关系。使用 aptitudeaptitude是一个更智能的包管理器有时能提供更优的依赖解决方案。sudo apt install -y aptitude sudo aptitude install 软件包名运行后它会给出几个解决方案比如降级某些包你可以选择接受。检查PPA冲突如果你添加了多个第三方PPA它们可能提供了同一个软件的不同版本导致冲突。可以暂时注释掉可疑的PPA源在/etc/apt/sources.list.d/目录下找到对应的.list文件在行首加#然后sudo apt update再试。终极方案如果确定是某个已安装的包导致问题可以尝试卸载它sudo apt remove 冲突包名但务必清楚你在做什么。7.2 输入法无法切换或候选框不出现问题安装了搜狗输入法但按CtrlSpace没反应或者打字时看不到候选词框。解决步骤确认fcitx运行在终端输入fcitx5看是否有错误输出。或者检查系统托盘是否有fcitx图标。确认环境变量执行echo $GTK_IM_MODULE应该输出fcitx。如果不是请确保已正确修改~/.profile并重新登录。检查输入法配置运行fcitx5-configtool确保“搜狗拼音”已添加并位于输入法列表中。杀死进程重启有时候fcitx进程会卡住。可以结束它们再重启killall fcitx5 fcitx5 -d特定应用不生效某些Qt或GTK老版本应用可能需要额外配置。对于Qt5应用可以尝试在启动命令前加QT_IM_MODULEfcitx例如QT_IM_MODULEfcitx qalculate-gtk。7.3 Docker命令需要sudo权限问题安装Docker后运行docker ps等命令提示权限不足。原因当前用户没有加入docker用户组。解决确保已执行将用户加入docker组的命令sudo usermod -aG docker $USER最关键的一步注销并重新登录或者重启电脑。仅仅新开一个终端窗口是无效的因为组信息在登录时加载。重新登录后验证groups | grep docker应该能看到docker。再运行docker ps应该就正常了。7.4 双系统时间不一致问题电脑安装了Windows和Ubuntu双系统进入Windows后发现时间慢了8小时。原因Windows将硬件时钟RTC视为本地时间而Linux默认将其视为UTC时间然后根据时区转换。这导致两者解读不一致。解决让Ubuntu也使用“本地时间”处理硬件时钟。timedatectl set-local-rtc 1 --adjust-system-clock执行后重启进入Windows时间应该就正确了。如果想改回UTC时间将1改为0即可。7.5 软件打开缓慢或Snap问题问题通过Snap安装的软件如某些版本的VSCode、Firefox启动特别慢。原因Snap应用在首次启动时需要解压和挂载一个只读的SquashFS镜像这个过程可能较慢尤其是在机械硬盘上。此外Snap应用严格沙盒化有时访问用户目录外的文件需要权限。缓解方案尽量使用APT或Flatpak版本如前所述VSCode、Firefox等都有非Snap的安装方式。如果必须用Snap首次启动慢是正常的后续启动会快很多。对于权限问题可以使用snap connect命令授予额外权限但需谨慎操作。配置一个顺手的Ubuntu系统就像打磨一件称手的兵器。它没有一劳永逸的终极答案只有最适合自己工作流的组合。这份清单是我多年实践下来的一个平衡点兼顾了稳定性、易用性和功能性。最重要的是理解每个步骤背后的“为什么”这样当遇到新需求或新问题时你才能举一反三自己找到解决方案真正把Linux系统变成提升生产力的利器而不是折腾的对象。
返回列表