【问题标题】:VMware Workstation on Chrubuntu 12.04 [closed]Chrubuntu 12.04 上的 VMware Workstation [关闭]
【发布时间】:2013-11-29 03:22:11
【问题描述】:

我正在尝试在运行 Chrubuntu 12.04 的三星 XE500C21 上安装 VMware Workstation。我能够检索并安装 3.4.0 的通用 linux 头文件。但是,每当我尝试启动 VMware Workstation 时,我仍然会得到:

未找到 3.4.0 版的内核标头。

即使在指向 /usr/src 中的标题之后,我也得到:

找不到与您正在运行的内核匹配的 C 头文件。

有人对我如何启动 VMware Workstation 并在我的 Chrubuntu 机器上工作有任何想法吗?我已经研究和试验了两天了。

运行 uname -r 给出:3.4.0

另外,我了解到 VMware Player 可以在任何 Linux 发行版上运行:https://superuser.com/questions/571384/can-vmware-player-run-on-an-acer-a7-running-chrubuntu

但我不确定为什么 VMware Workstation 不能使用通用 3.4.0 标头。

【问题讨论】:

  • 问题是我没有关于这个问题的更多细节。我不知道为什么 VMware Workstation 不工作。我的 /usr/src 文件夹中有 linux-headers-3.4.0-030400 和 linux-headers-3.4.0-030400-generic 文件夹。我还按照本指南安装 Chrubuntu:chromeos-cr48.blogspot.com/2012/04/…
  • 我还尝试了人们为 C7 Chromebook 编写的每个内核构建脚本,但没有一个能奏效。

标签: ubuntu-12.04 virtual-machine vmware-workstation


【解决方案1】:

最后,我解决了我的问题。我制作的以下教程解释了如何在三星 Series 5 Chromebook 上安装和使用自定义 3.4.0 内核头文件。注意:您必须有一个非 ARM 处理器才能工作。另外,如果您还没有安装 Chrubuntu 12.04 到三星 Series 5,请使用本教程:http://chromeos-cr48.blogspot.com/2012/04/chrubuntu-1204-now-with-double-bits.html

确保在运行脚本之前以 root 身份登录。

1. 运行我根据 Acer C7 教程修改的脚本(注意:收到消息时不要覆盖内核。只需点击是。如果您覆盖内核,可能会导致您的 Chrubuntu 安装出现故障):

#!/bin/bash
#Edited 11/27/2013 
#Fixes the old_bins directory not found error

set -x

#
# Grab verified boot utilities from ChromeOS.
#
mkdir -p /usr/share/vboot

#
#Make a new directory called old_bins
#
mkdir -p /usr/bin/old_bins


mount -o ro /dev/sda3 /mnt

#
#copy the vbutil_* commands to the old_bins directory
#
cp /mnt/usr/bin/vbutil_* /usr/bin/
cp /mnt/usr/bin/vbutil_* /usr/bin/old_bins


cp /mnt/usr/bin/dump_kernel_config /usr/bin
rsync -avz /mnt/usr/share/vboot/ /usr/share/vboot/
umount /mnt

#
# On the Acer C7, ChromeOS is 32-bit, so the verified boot binaries need a
# few 32-bit shared libraries to run under ChrUbuntu, which is 64-bit.
#
apt-get install libc6:i386 libssl1.0.0:i386

#
# Fetch ChromeOS kernel sources from the Git repo.
#
apt-get install git-core
cd /usr/src
git clone  https://git.chromium.org/git/chromiumos/third_party/kernel.git
cd kernel
git checkout origin/chromeos-3.4

#
# Configure the kernel
#
# First we patch ``base.config`` to set ``CONFIG_SECURITY_CHROMIUMOS``
# to ``n`` ...
cp ./chromeos/config/base.config ./chromeos/config/base.config.orig
sed -e \
  's/CONFIG_SECURITY_CHROMIUMOS=y/CONFIG_SECURITY_CHROMIUMOS=n/' \
  ./chromeos/config/base.config.orig > ./chromeos/config/base.config
./chromeos/scripts/prepareconfig chromeos-intel-pineview
#
# ... and then we proceed as per Olaf's instructions
#
yes "" | make oldconfig

#
# Build the Ubuntu kernel packages
#
apt-get install kernel-package
make-kpkg kernel_image kernel_headers

#
# Backup current kernel and kernel modules
#
tstamp=$(date +%Y-%m-%d-%H%M)
dd if=/dev/sda6 of=/kernel-backup-$tstamp
cp -Rp /lib/modules/3.4.0 /lib/modules/3.8.0-backup-$tstamp

#
# Install kernel image and modules from the Ubuntu kernel packages we
# just created.
#
dpkg -i /usr/src/linux-*.deb

#
# Extract old kernel config
#
vbutil_kernel --verify /dev/sda6 --verbose | tail -1 > /config-$tstamp-orig.txt
#
# Add ``disablevmx=off`` to the command line, so that VMX is enabled (for VirtualBox & Co)
#
sed -e 's/$/ disablevmx=off/' \
  /config-$tstamp-orig.txt > /config-$tstamp.txt

#
# Wrap the new kernel with the verified block and with the new config.
#
vbutil_kernel --pack /newkernel \
  --keyblock /usr/share/vboot/devkeys/kernel.keyblock \
  --version 1 \
  --signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk \
  --config=/config-$tstamp.txt \
  --vmlinuz /boot/vmlinuz-3.4.0 \
  --arch x86_64

#
# Make sure the new kernel verifies OK.
#
vbutil_kernel --verify /newkernel

#
# Copy the new kernel to the KERN-C partition.
#
dd if=/newkernel of=/dev/sda6

2.它不应该完成第一次运行。您将收到关于 fstack-protector-strong 的错误消息。导航到 /usr/src/kernel/arch/x86/Makefile 并将第 78 行从 stackp-y := -fstack-protector-strong 编辑为 stackp-y := -fstack-protector-all

3. 使用新修改的 Makefile 再次运行脚本。同样,不要覆盖内核。

4.您应该会遇到更多错误,但不要担心。现在是时候打开 VMware Workstation 了。当你得到 Kernel 3.4.0 headers are missing 提示时,将提示框指向:/usr/src/linux-headers-3.4.0/include

5.你完成了!现在一切都应该正常了。感谢 michaela_elise(Reddit) 创建原始脚本并指出 -fstack-protector-strong 问题。 (注意:第二次也是最后一次运行脚本后,您可能需要重新启动。第二次运行脚本后,VMware Workstation 出现故障。)

【讨论】:

    【解决方案2】:

    三星 chromebook 具有 ARM 处理器,所以我不确定它们是否会。我建议你放弃。我对在我的 Acer Chromebook 上安装 linux-headers-3.4.0 进行了详尽的研究,但无济于事。人们说它有效,我已经运行了至少 10 个不同的脚本,但都失败了。我通过 goo.gl/tnyga 安装了 64 位 ChrUbuntu 12.04。

    【讨论】:

    • 我有一个 x86 处理器,但我发现了我的问题。
    • 如果您有 x86 Acer Chromebook,请尝试使用我上面的方法
    猜你喜欢
    • 2011-05-09
    • 1970-01-01
    • 2010-09-19
    • 1970-01-01
    • 2013-08-04
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2010-10-14
    相关资源
    最近更新 更多