news 2026/5/1 11:12:19

Ubuntu24.04 日常运维合集

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Ubuntu24.04 日常运维合集

食用指南

本文汇总在工作过程中遇到的Ubuntu24.04操作系统运维问题,以便不时之需,每个Q对于一个问题。

Q1. 重置密码

环境:Virtual Box

开机获取鼠标焦点后立即长按 Shift 键:

然后按 e 进入编辑模式,将 “ro quiet splash $vt_handoff” 部分删除,替换为:

rwinit=/bin/bash

安然按 Ctrl-X 或者 F10 执行:

这时候我们可以重置 root 账号密码,或者重置其他用户的密码:

最后重启系统即可:

reboot

Q2. 安装 N 卡驱动

驱动官网:https://www.nvidia.cn/geforce/drivers/

进入官网,选择显卡型号与操作系统,然后搜索显卡驱动:

在搜索结果中,选择一个稳定版本的驱动,然后下载:

下载后的驱动文件NVIDIA-Linux-x86-64-570.207.run,执行指令安装:

sudobashNVIDIA-Linux-x86_64-570.207.run

安装完成后,验证驱动:

nvidia-smi


Q3. 安装 CUDA

查看当前 N 卡驱动版本:

nvidia-smi

根据驱动版本,到官网https://developer.nvidia.com/cuda-toolkit-archive下载对应的CUDA Toolkit

根据官网指令,直接下载runfile

wgethttps://developer.download.nvidia.com/compute/cuda/12.8.0/local_installers/cuda_12.8.0_570.86.10_linux.run

然后执行安装:

sudoshcuda_12.8.0_570.86.10_linux.run

如果驱动已经安装过,则不用勾选“Driver”,不然安装报错。选择“Install”执行安装。

============Summary============Driver: Not Selected Toolkit: Installedin/usr/local/cuda-12.8/ Pleasemakesure that -PATHincludes /usr/local/cuda-12.8/bin - LD_LIBRARY_PATH includes /usr/local/cuda-12.8/lib64, or,add/usr/local/cuda-12.8/lib64 to /etc/ld.so.conf and run ldconfig as root To uninstall the CUDA Toolkit, run cuda-uninstallerin/usr/local/cuda-12.8/bin ***WARNING: Incomplete installation!This installation did notinstallthe CUDA Driver. A driver of version at least570.00is requiredforCUDA12.8functionality to work. Toinstallthe driver using this installer, run the following command, replacing<CudaInstaller>with the name of this run file:sudo<CudaInstaller>.run --silent --driver Logfile is /var/log/cuda-installer.log

配置环境变量:

sudovim~/.bashrcexportPATH=/usr/local/cuda-12.8/bin${PATH:+:${PATH}}exportLD_LIBRARY_PATH=/usr/local/cuda-12.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}exportCUDA_HOME=/usr/local/cuda-12.8source~/.bashrcsudoldconfig

验证安装:

nvcc -V


Q4. 禁用 Chrome 自动更新

问题描述:

每次打开Chrome浏览器的时候都会自动检查更新,并且会频繁提示:

解决方案:

修改google-chrome-stable文件:

ls/usr/bin/google-chrome-stable
sudovim/usr/bin/google-chrome-stable

找到这一行:

# Note: exec -a below is a bashism.exec-a"$0""$HERE/chrome""$@"

后面追加:

--disable-background-networking

修改后的效果:

# Note: exec -a below is a bashism.exec-a"$0""$HERE/chrome""$@"--disable-background-networking

重启 Chrome,再也没有更新提示,非常清爽:


Q5. 解决Docker GPU问题

报错描述:

Error response from daemon: could not select device driver "" with capabilities: [[gpu]]

查看显卡驱动:

nvidia-smi

如果之前一直都可以正常运行,只是突然报错,可以先尝试重启Docker解决:

sudosystemctl restart docker

如果重启Docker无法解决,可以尝试以下方法。

添加软件仓库:

$distribution=$(./etc/os-release;echo$ID$VERSION_ID)\&&curl-fsSL https://nvidia.github.io/libnvidia-container/gpgkey|sudogpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg\&&curl-s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list|\sed's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g'|\sudotee/etc/apt/sources.list.d/nvidia-container-toolkit.list

安装nvidia-docker2

sudoapt-getupdatesudoapt-getinstall-y nvidia-docker2

重启 Docker:

sudosystemctl restart docker

测试:

sudodocker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi

参考文档 https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html


Q6. 切换内核版本

  • Step1、查看当前内核版本
ls/lib/modules
6.11.0-25-generic 6.11.0-28-generic 6.14.0-24-generic 6.14.0-28-generic 6.11.0-26-generic 6.11.0-29-generic 6.14.0-27-generic
  • Step2、修改启动内核
sudogrepmenuentry /boot/grub/grub.cfg
if [ x"${feature_menuentry_id}" = xy ]; then menuentry_id_option="--id" menuentry_id_option="" export menuentry_id_option menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-4473259f-d548-4303-9388-92fe3811c8f3' { submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-4473259f-d548-4303-9388-92fe3811c8f3' { menuentry 'Ubuntu, with Linux 6.14.0-28-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.14.0-28-generic-advanced-4473259f-d548-4303-9388-92fe3811c8f3' { menuentry 'Ubuntu, with Linux 6.14.0-28-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.14.0-28-generic-recovery-4473259f-d548-4303-9388-92fe3811c8f3' { menuentry 'Ubuntu, with Linux 6.14.0-27-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.14.0-27-generic-advanced-4473259f-d548-4303-9388-92fe3811c8f3' { menuentry 'Ubuntu, with Linux 6.14.0-27-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.14.0-27-generic-recovery-4473259f-d548-4303-9388-92fe3811c8f3' { menuentry 'Ubuntu, with Linux 6.11.0-29-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.11.0-29-generic-advanced-4473259f-d548-4303-9388-92fe3811c8f3' { menuentry 'Ubuntu, with Linux 6.11.0-29-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.11.0-29-generic-recovery-4473259f-d548-4303-9388-92fe3811c8f3' { menuentry "Memory test (memtest86+x64.efi)" --class memtest $menuentry_id_option 'memtest86+' { menuentry 'Memory test (memtest86+x64.efi, serial console)' --class memtest $menuentry_id_option 'memtest86+-serial' { menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
sudovim/etc/default/grub

顺序从0开始,则第五个内核菜单的下标为4

GRUB_DEFAULT="1>4"

  • Step3、刷新grub配置
sudoupdate-grub

Step4、重启电脑

reboot

Q7. 配置 Fcitx5 输入法

安装 fcitx5 :

sudoapt-getinstallfcitx5 fcitx5-configtool fcitx5-chinese-addons

fcitx5 配置 :

输入效果:

快捷键:

添加搜狗词库:

https://pinyin.sogou.com/dict/

打开 Fcitx5 配置面板:

导入完毕,点击确定关闭窗口即可。

注意事项:APP 应用商店中的VS Code不兼容Fcitx5,无法输入和切换输入法,需要到VS Code官方下载安装。


Q8. N 卡掉驱动

问题描述:屏幕花了,并且查看显卡驱动时报错

nvidia-smi
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

检查 CUDA :

nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2025 NVIDIA Corporation Built on Wed_Jan_15_19:20:09_PST_2025 Cuda compilation tools, release 12.8, V12.8.61 Build cuda_12.8.r12.8/compiler.35404655_0

查看版本:

ls/usr/src|grepnvidia
nvidia-575.64.03

修复驱动:

sudoapt-getinstalldkmssudodkmsinstall-m nvidia -v575.64.03
Error! Could not locate dkms.conf file.

这里报错是因为驱动文件不全,需要重新安装。可以按照Q2. 安装N卡驱动重新下载驱动进行安装,也可以按照以下步骤进行 apt 安装:

更新软件:

sudoaptupdate&&sudoaptupgrade
sudoaptinstallbuild-essential dkms

卸载驱动:

sudoapt-getremove --purge'^nvidia-.*'

查看:

sudolshw -c display
sudoubuntu-drivers devices

关键!安装推荐的驱动:

sudoubuntu-drivers autoinstall
prime-select query

重启:

reboot


Q9. 扩展虚拟内存

查看当前内存状态:

free-h

检查当前交换空间:

swapon--showcat/proc/swaps

禁用现有交换:

sudoswapoff -a

删除旧交换文件(假设是 /swap.img):

sudorm/swap.img

创建新的更大交换文件(例如扩展到 8GB):

# 创建 8GB 的交换文件sudofallocate -l 8G /swap.img# 如果 fallocate 不可用,使用 dd# sudo dd if=/dev/zero of=/swapfile bs=1M count=8192# 设置正确权限sudochmod600/swap.img# 格式化为交换空间sudomkswap/swap.img# 启用交换sudoswapon/swap.img

验证结果:

# 检查交换空间free-h# 查看交换详细信息swapon--show# 查看内存使用情况cat/proc/meminfo|grep-i swap

注意事项:

  1. 性能考虑:交换空间在 SSD 上性能较好,在 HDD 上会显著降低系统响应速度
  2. 合理大小:对于 16GB 内存的系统,8-12GB 交换空间通常足够
  3. 根本解决:OOM 问题的根本解决应该是优化应用程序内存使用,而不是仅仅增加交换空间
  4. 监控:使用htopvmstat等工具监控内存使用情况

Q10. CUDA 显存碎片优化

sudovim~/.bashrc

添加以下环境变量:

# 配置环境变量即可,注意max_split_size_mb需要大于20exportPYTORCH_CUDA_ALLOC_CONF=expandable_segments:True,max_split_size_mb:32

注意事项:有些框架需要关闭该环境变量运行。


Q11. 修改 Docker 存储位置

Docker 默认将镜像、容器等数据存储在/var/lib/docker目录下,当这个位置空间不足时,可以修改 Docker 的存储位置。

这里使用符号链接实现:

  1. 停止 Docker 服务:

    sudosystemctl stop docker
  2. 移动现有 Docker 数据:

    sudomv/var/lib/docker /new/path/docker
  3. 创建符号链接:

    sudoln-s /new/path/docker /var/lib/docker
  4. 启动 Docker 服务:

    sudosystemctl start docker

注意:修改存储位置后,原有的镜像和容器将不可用,除非将原有数据迁移到新位置。


Q12. 清除 Docker 缓存文件

查看 Docker 磁盘使用情况:

sudodocker systemdf

TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 13 7 102.7GB 60.44GB (58%) Containers 9 0 281.3MB 281.3MB (100%) Local Volumes 48 1 1.082GB 1.014GB (93%) Build Cache 7 0 0B 0B

一键清理 Build Cache:

sudodocker builder prune
WARNING! This will remove all dangling build cache. Are you sure you want to continue? [y/N] y

一键清理容器:未运行的容器被删除,包括相关卷

sudodocker system prune

一键清理容器和镜像:未运行的容器和镜像会被删除,非常彻底

sudodocker system prune -a

Q13. 安装下载器

安装某雷:

sudoaptinstallflatpak flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo flatpakinstallflathub com.xunlei.Thunder

注意,目录是映射到下载目录的,不要修改,参考:

  • https://dev59.com/askubuntu/akbXs4cB2Jgan1zn9J9Y
  • https://blog.csdn.net/tianrei_y/article/details/146182394

安装Motrix:

https://motrix.app/download

下载deb文件,然后安装:

sudodpkg -i Motrix_1.8.19_amd64.deb


Q14. 挂载新硬盘分区

例如,我这里有一个新的机械硬盘4TB,需要挂载到/data路径。

查看分区:

lsblk

sudofdisk-l

创建挂载目录:

sudomkdir-p /data
sudoblkid /dev/sda
/dev/sda: UUID="08898795-08e8-4b22-941b-9434d3fd496a" BLOCK_SIZE="4096" TYPE="ext4"

这里的 UUID 非常重要,记下来,在配置fstab时需要用到:

sudovim/etc/fstab
UUID=08898795-08e8-4b22-941b-9434d3fd496a /data ext4 defaults 0 2
sudomount-a
sudosystemctl daemon-reload
df-h

/data路径无权限,则赋权:

sudochown-R$USER:$USER/data
ls-ld /data

OK!


持续补充中…

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 19:17:36

工业零代码平台是什么?能做什么?

低零代码&#xff08;No-Code&#xff09;是可视化应用开发工具,通过拖拽组件、配置参数快速构建应用&#xff0c;降低技术门槛。工业零代码平台是一种专为工业领域设计的应用开发工具&#xff0c;无需编写代码即可通过可视化配置快速构建定制化应用系统。其核心价值在于降低技…

作者头像 李华
网站建设 2026/5/1 7:21:34

四大顶流蛋白质预测模型实战指南:从部署到测试全流程解锁

四大顶流蛋白质预测模型实战指南&#xff1a;从部署到测试全流程解锁 蛋白质结构与功能的精准预测是生物信息学领域的核心难题&#xff0c;也是药物研发、疾病机制解析的关键突破口。随着AI技术的爆发&#xff0c;ESM2、ScanNet、RFdiffusion、RoseTTAFold-All Atom等前沿模型…

作者头像 李华
网站建设 2026/4/23 13:06:32

MindSpore 2.0 函数式编程与Ascend图模式加速指南

在昇腾&#xff08;Ascend&#xff09;计算产业生态中&#xff0c;MindSpore作为核心AI框架&#xff0c;其最大的优势在于“端边云协同”以及与Ascend硬件的深度融合。对于开发者而言&#xff0c;从MindSpore 1.x的面向对象编程过渡到MindSpore 2.x的函数式编程&#xff08;Fun…

作者头像 李华
网站建设 2026/5/1 7:17:09

《Java数据结构与算法》第四篇(三)二叉树遍历详解_CSDN文章

Java数据结构之树&#xff1a;二叉树的三种遍历方法详解&#xff08;递归与非递归实现&#xff09; 目录 一、二叉树遍历的定义与重要性二、前序遍历&#xff08;DLR&#xff09;详解三、中序遍历&#xff08;LDR&#xff09;详解四、后序遍历&#xff08;LRD&#xff09;详解…

作者头像 李华
网站建设 2026/5/1 7:16:48

Comsol模拟绝缘材料电击穿之电树枝现象

comsol模拟绝缘材料电击穿&#xff0c;产生电树枝。最近在研究绝缘材料的电击穿问题&#xff0c;发现利用Comsol来模拟电树枝的产生过程十分有趣且实用&#xff0c;今天就来和大家分享一下相关经验。 一、绝缘材料电击穿与电树枝简介 绝缘材料在高电场作用下&#xff0c;会发生…

作者头像 李华