温馨提示×

linux驱动如何备份

小樊
40
2026-10-12 10:22:25
栏目: 智能运维

在 Linux 下,“驱动备份”通常分为内核自带驱动(模块)和第三方/自己编译的驱动两种情况。下面按常见场景说明如何备份和恢复。


一、备份内核模块(.ko 文件)

大多数 Linux 驱动以**内核模块(kernel module)**形式存在,文件一般在:

/lib/modules/$(uname -r)/

1. 查看当前内核版本

uname -r

2. 备份整个驱动目录

cp -a /lib/modules/$(uname -r) /backup/modules_$(uname -r)

或打包:

tar czf modules_$(uname -r).tar.gz -C /lib/modules $(uname -r)

✅ 恢复时:

tar xzf modules_$(uname -r).tar.gz -C /lib/modules
depmod -a

二、备份驱动源码(如果是自己编译的)

如果驱动是你自己 make 的:

tar czf mydriver_src.tar.gz mydriver/

建议你同时备份:

  • 源码目录
  • Makefile
  • 使用的内核头文件版本

三、备份已加载驱动信息(用于记录)

1. 查看当前加载的驱动

lsmod

备份列表:

lsmod > lsmod_backup.txt

2. 查看某个驱动详情

modinfo e1000

四、备份 initramfs(含关键驱动)

有些驱动在系统启动早期就需要(如磁盘、网卡):

cp /boot/initramfs-$(uname -r).img /backup/

或重新生成:

mkinitrd /backup/initramfs-$(uname -r).img $(uname -r)

五、第三方闭源驱动(如 NVIDIA)

NVIDIA 驱动

nvidia-smi -q | head

备份方式通常是:

  • 保存安装包(.run)
  • 或记录版本号:
nvidia-smi

重装:

sh NVIDIA-Linux-x86_64-xxx.run

六、推荐备份方案(实战)

✅ 最稳妥方式:

  1. 备份 /lib/modules/$(uname -r)
  2. 备份 /boot
  3. 记录 uname -r
  4. 备份驱动源码(如有)

七、注意事项

  • ❗ 驱动不能跨内核版本使用
  • 升级内核后需重新编译/安装驱动
  • 建议使用 dkms 管理第三方驱动

如果你能说明:

  • 是 哪个驱动(网卡/显卡/USB?)
  • 发行版(Ubuntu/CentOS/OpenEuler?)
  • 是 系统自带还是自己编译

我可以给你更精确的备份命令。

0 踩