0

作为 PCI 驱动程序开发实验的结果,我的内核崩溃了。现在我处于操作系统启动并再次崩溃的情况,因为它试图加载我的错误驱动程序。修复它的方法是什么,可能避免启动我的驱动程序,以便我可以在“安全”模式下登录系统,然后修复我的驱动程序或至少从系统中卸载?

更新阅读http://docs.oracle.com/cd/E36784_01/pdf/E36801.pdf和其他文档后,似乎步骤如下:

1) 从 solaris CD 引导

2)选择壳牌

3)zpool import -R /a rpool

4)zfs mount rpool/ROOT/zfsBE

5)cd /a并从/usr/kernel/drv/

不完全确定,我不想再搞砸系统,所以想从 Solaris 大师那里得到确认。

UPDATE2所以上面的修复方案几乎对我有用,也就是说我能够导入rpool并且它自动安装/export/home在下面,这让我可以删除我的错误驱动程序,因为早些时候我从;/a建立了一个软链接到它。/usr/kernel/drv基本上我能够重新启动并启动 solaris,没有任何问题,也没有错误消息,所以我什至没有运行fsck. 但是对我不起作用的是zfs mount rpool/ROOT/solaris哪个是根 FS,因为我想从/usr/kernel/drv. 错误消息说我应该用mount.

顺便说一句,现在我复制我的驱动程序/tmp并创建一个链接/usr/kernel/drv/amf64/mydrv,所以如果发生崩溃,系统会重新启动并清理 /tmp 分区。稍后我将需要在 beadm 上投入一些时间。

谢谢。

4

1 回答 1

1

从 CD/DVD 启动,或阅读本文档的第 81 页,假设您在 x86 硬件上运行。

基本上,您需要绕过设备的加载。如果您没有安全模式 GRUB 选项(再次假设 x86),或者如果安全模式仍然加载您的驱动程序,那么仅引导 Solaris CD/DVD、挂载/导入根池以及从文件系统中删除您的驱动程序。

于 2015-07-15T20:28:57.893 回答