我只是尝试在一个新的Ubuntu12.10服务器上安装一个代替initramfs的工具dracut,使用dracut的高级特性从NFS启动两个绑定接口。
不幸的是,安装遇到了以下冲突:
root@ubuntu:~# aptitude install dracut
The following NEW packages will be installed:
cryptsetup{a} cryptsetup-bin{a} dmraid{a} dracut{b} kpartx{a} kpartx-boot{a} libcryptsetup4{a} libdevmapper-event1.02.1{a} libdmraid1.0.0.rc16{a} libreadline5{a} lvm2{a} mdadm{a} postfix{a} ssl-cert{a} watershed{a}
0 packages upgraded, 15 newly installed, 0 to remove and 2 not upgraded.
Need to get 3,004 kB of archives. After unpacking 8,428 kB will be used.
The following packages have unmet dependencies:
dracut : Conflicts: initramfs-tools but 0.103ubuntu0.2 is installed.
Conflicts: initramfs-tools:i386 which is a virtual package.
The following actions will resolve these dependencies:
Keep the following packages at their current version:
1) dracut [Not Installed]
Accept this solution? [Y/n/q/?] 建议的解决方案"dracut 未安装“没有帮助。不幸的是,我没有在Ubuntu上找到多少关于dracut的信息,这样我就可以确定它是否应该工作。我在debian中找到了以下bug报告,到目前为止还没有解决:http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=669342
我很快在Ubuntu12.04服务器上测试了dracut的安装,它安装得很好,但是我需要它来安装Ubuntu12.10。
我已经试图强迫dpkg忽略冲突,但结果是一样的。
aptitude -o Dpkg::Options::="--force-conflicts" install dracut从源代码安装dracut是可行的,但是要将网络设置包含在initramfs中,需要一个包dracut-network,我找不到它的源代码,即使它在Ubuntu 12.10中也是可用的,这取决于dracut软件包.
有人能帮我如何安装dracut,也许可以分享一下为什么在Ubuntu中使用dracut如此困难的原因吗?
发布于 2013-01-29 14:16:53
这里的问题是,智能并不建议您删除initramfs,因为它被认为是一个核心包,而且智能从不建议删除核心包。
解决这个问题的唯一显而易见的方法是告诉智能如何删除initramfs-tools:
aptitude install dracut initramfs-tools-但是,如果您尝试这个命令,您将看到它会触发其他重要的依赖关系问题:
The following packages have unmet dependencies:
dmsetup : Depends: initramfs-tools but it is not going to be installed.
console-setup : Depends: initramfs-tools (>= 0.85eubuntu12) but it is not going to be installed.
linux-image-3.5.0-22-generic : Depends: initramfs-tools (>= 0.36ubuntu6) but it is not going to be installed.
linux-image-3.5.0-17-generic : Depends: initramfs-tools (>= 0.36ubuntu6) but it is not going to be installed.
kpartx-boot : Depends: initramfs-tools but it is not going to be installed.
[...]所有这些包实际上应该依赖于linux-initramfs-tools (这是一个由initramfs-tools和dracut提供的虚拟包)。这是一个bug,应该是按此报告。
简而言之,唯一的解决方案是修改该包的依赖关系。在当前情况下,如果没有损坏的包,就无法安装dracut。(不过,如果您可以使用损坏的包,则可以使用dpkg --force-all、删除initramfs-tools和安装dracut。)
发布于 2013-02-28 16:48:59
由于科贝里尼的帮助,问题已经被发现,并在bug报告无法在Ubuntu12.10上安装dracut软件包中被跟踪。bug报告依赖linux-initramfs-工具中跟踪底层问题。任何帮助提高对上一个bug报告的认识,以便尽快解决它是非常感谢的。
与dracut包的Debian维护人员一起,我们提出了通过将冲突移至initramfs-tools来安装dracut的解决方案。详细信息可以在博客文章安装并配置dracut,通过VLAN标记网络,使用绑定接口从NFS启动Ubuntu12.10中找到。
简而言之,这些步骤是
sudo apt-get build-dep dracut # install build dependencies for dracut
sudo apt-get install dpkg-dev # install dpkg-dev to build dracut .deb package
cd ~ # change to your home folder
git clone git://git.kernel.org/pub/scm/boot/dracut/dracut.git # checkout dracut
cd dracut
sed -i 's/Conflicts: initramfs-tools/Conflicts: /' debian/control # fix conflict
sed -i 's/usr\/etc/etc/g' debian/dracut.install # fix another issue
dpkg-buildpackage -b # build .deb packages
cd ..
dpkg -i dracut*.deb # install dracut and dracut-networkhttps://askubuntu.com/questions/248970
复制相似问题