chu*_*utz 6 redhat kickstart centos centos6 anaconda
我需要为anaconda制作一个驱动程序盘。该磁盘将包含一个更新的模块,适用于最近的笔记本电脑的网卡,目标是使 CentOS 6.2 的网络安装工作正常。我正在使用 cobbler,所以即使是 kickstart 文件本身也在网络上。我不介意安装是否完全无人值守,我不介意在安装过程中将带有驱动程序磁盘映像的 U 盘粘贴到 USB 记忆棒上并手动选择正确的项目,但我确实希望将其他所有内容保留在网络上(内核映像、initrd、kickstart 文件、RPM 存储库)。
我已经构建了更新的驱动程序,我什至在 /usr/lib/rpm/redhat/kmodtool 的帮助下构建了一个“kmod”RPM。不幸的是,我完全没有发现有关驱动程序磁盘是什么样子的文档。
http://www.phil.muni.cz/~letty/linuxfaq/pracovni/driver-disk-howto是我能找到的唯一链接,它描述了与我做同样事情的人的挣扎 - 下载驱动程序磁盘并试图探索它们。不幸的是,CentOS 6 中的格式似乎发生了变化,我能做的最好的事情就是让 anaconda 告诉我:“驱动程序磁盘对于此版本的 CentOS 无效。”。日志本身说“找不到/tmp/drivers/rpms/x86_64/repodata”,直到现在我还没有看到带有“repodata”的驱动程序磁盘。
目前正在深入研究 anaconda 源代码,但我希望有人能指出我正确的方向。
毕竟,我可能已经在anaconda 来源中找到了答案。
要生成 CentOS 6 兼容的驱动程序磁盘,您可以使用以下布局创建一个 squashfs 映像(其他文件系统也可能工作,但目前最容易创建的是 squashfs):
rhdd3 - 一个用简单的单行注释来描述磁盘的文件.rundepmod- 该文件的存在告诉安装程序它应该运行depmod以获取模块rpms/x86_64 - 包含 kmod RPM 的可选 yum 存储库lib/modules/2.6.32-220.el6.x86_64/...- 实际的内核模块放在这里;如果驱动盘包含上游驱动的更新驱动,那么这里的目录结构应该匹配上游内核模块的位置。内核的版本当然应该与安装程序的版本相匹配。由于一张图片值一千字,这里是我们用来启动最近需要更新atl1c.ko驱动程序的笔记本电脑的示例驱动程序磁盘:
$ unsquashfs -ls driver-disk.dd
Parallel unsquashfs: Using 2 processors
8 inodes (26 blocks) to write
squashfs-root
squashfs-root/.rundepmod
squashfs-root/lib
squashfs-root/lib/modules
squashfs-root/lib/modules/2.6.32-220.el6.x86_64
squashfs-root/lib/modules/2.6.32-220.el6.x86_64/kernel
squashfs-root/lib/modules/2.6.32-220.el6.x86_64/kernel/drivers
squashfs-root/lib/modules/2.6.32-220.el6.x86_64/kernel/drivers/net
squashfs-root/lib/modules/2.6.32-220.el6.x86_64/kernel/drivers/net/atl1c
squashfs-root/lib/modules/2.6.32-220.el6.x86_64/kernel/drivers/net/atl1c/atl1c.ko
squashfs-root/lib/modules/2.6.32-220.el6.x86_64/updates
squashfs-root/rhdd3
squashfs-root/rpms
squashfs-root/rpms/x86_64
squashfs-root/rpms/x86_64/kmod-compat-wireless-3.3_2_n-2.el6.x86_64.rpm
squashfs-root/rpms/x86_64/repodata
squashfs-root/rpms/x86_64/repodata/filelists.xml.gz
squashfs-root/rpms/x86_64/repodata/other.xml.gz
squashfs-root/rpms/x86_64/repodata/primary.xml.gz
squashfs-root/rpms/x86_64/repodata/repomd.xml
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9214 次 |
| 最近记录: |