在 Acer C7 上更新 Chrubuntu 14.04 内核(当前为 3.4.0)

在 Acer C7 上更新 Chrubuntu 14.04 内核(当前为 3.4.0)

关于此问题还有另一个类似的问题这里,但它适用于旧版本的 ubuntu,并且脚本不再起作用。

在安装过程中,脚本运行正常,直到:

+ vbutil_kernel --verify /dev/sda6 --verbose + tail -1 + sed -e s/$/ disablevmx=off/ /config-2013-05-22-2259-orig.txt + vbutil_kernel --pack /newkernel --keyblock /usr/share/vboot/devkeys/kernel.keyblock --version 1 --signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk --config=/config-2013-05-22-2259.txt --vmlinuz /boot/vmlinuz-3.8.0 --arch x86_64 ERROR: Error reading kernel file. + vbutil_kernel --verify /newkernel ERROR: Unable to stat /newkernel: No such file or directory + dd if=/newkernel of=/dev/sda6 dd: opening ‘/newkernel’: No such file or directory

所以问题是这个/newkernel被调用了,但是它还没有被脚本创建,这在过去显然不是一个问题。

评论原网站脚本中提到了同样的问题,以及针对 14.04 的解决方案。不幸的是,我对这个东西完全是新手,并不完全理解如何实施解决方案:

简单说一下,我使用了 3.8 版脚本来让内核在 chrubutu Acer 上运行,以满足 14.04 的视频要求。必须将 old_bins 放到位,如下所示:

mount -o ro /dev/sda3 /mnt cd /usr/bin cp -a /mnt/usr/bin/old_bins/

并在 kernel_next/Makefile 中注释掉 halt-on-warning 指令:

# KBUILD_CFLAGS += -Werror

并在 KBUILD_CFLAGS 中添加:

-fno-tree-vrp

最后得到了运行良好的 3.8.11 内核。

所以我猜这是一个请求。有人可以更新脚本并进行必要的更改,或者更详细地描述需要做什么吗?

答案1

我没有 chromebook,但我是 Linux 用户,所以......

mount -o ro /dev/sda3 /mnt
cd /usr/bin
cp -a /mnt/usr/bin/ old_bins/

这些是在终端仿真器上执行的命令,只需打开一个终端仿真器并root使用该su命令登录,然后发出它们即可。(#shell 中的符号表示您以用户身份执行命令root)。

$ su
<enter your root password>
# mount -o ro /dev/sda3 /mnt
# cd /usr/bin
# cp -a /mnt/usr/bin/ old_bins/

我假设该old_bins/部分与其他部分是分开的,因为该cp命令至少需要 2 个参数才能工作。它的作用是将/mnt/usr/bin/目录(及其内容)复制到old_bins/目录(最终将位于/usr/binnot内/mnt/usr/bin)。

我假设您可以访问位于名为 的目录中的此文件kernel_next/Makefilemakefile因此kernel_next,您必须使用您喜欢的文本编辑器打开它,并#在行 之前添加一个符号(在许多语言中,它表示“注释以下行”)KBUILD_CFLAGS += -Werror。如下所示:

KBUILD_CFLAGS += -Werror

# KBUILD_CFLAGS += -Werror

然后将-fno-tree-vrp标志添加到KBUILD_CFLAGS语句中,如下所示:KBUILD_CFLAGS += -fno-tree-vrp。您最终会在 makefile 中看到类似这样的内容:

# KBUILD_CFLAGS += -Werror
KBUILD_CFLAGS += -fno-tree-vrp

然后你就可以继续做你正在做的事情了。祝你好运。

相关内容