开发环境配置 - Linux(Ubuntu)

系统说明

Ubuntu 18.04 LTS;

步骤简略

  1. 安装 VirtualBox
  2. 安装 Vagrant
  3. 导入 Homestead Box 虚拟机盒子
  4. 安装 Git
  5. 安装 Homestead 管理脚本
  6. 配置 Homestead.yaml 文件
  7. 通过Mok管理工具,禁用 Secure boot
  8. 启动 Homestead 虚拟机

Ubuntu 系统开发环境配置的方法与 MacOS 的非常类似。
第 1 ~ 6 步可参考 MacOS 教程
其中第 4 步,改为通过 apt-get 命令进行安装:

sudo apt-get install git

主要问题出现在启动 Homestead 虚拟机,本文着重说明第 7 步

踩坑情景复现

第 1 ~ 6 步操作完成后,接下来试着开启虚拟机

cd ~/Homestead && vagrant up

在Ubuntu 系统下,如无意外结果会如下图所示:
file
按照提示继续操作:
file
发现问题在于 kernel module( VitrualBox 的必要模块) 未加载,于是按照提示输入命令:
file
结果模块加载还是失败了...

网上查阅各种资料后,发现根本问题是 Secure Boot 安全机制拒绝未注册模块加载。
感兴趣的朋友可以看看 反 Secure Boot 垄断SecureBoot Wiki

解决方案

最终解决方案如下:
通过 Mok 管理工具禁用 Secure Boot

sudo mokutil --disable-validation

输入上述命令后,会要求你设置一个 8-16位的密码

设置好密码后重启

reboot

重启后会先进入 Mok 设置系统:
file
file
选择 Change Secure Boot state 后,会要求进行密码验证
file

注意:这一步要求输入的是上面设置的密码的第几位是什么字符串,例如我的密码是 password1 ,这里要输入的是 1

密码校验通过后,选择 Yes 禁用 Secure boot
file
随后再次重启
file

重启后再次启动虚拟机
file
妥!

解决方案出处:http://forum.ubuntu.org.cn/viewtopic.php?f...

本作品采用《CC 协议》,转载必须注明作者和本文链接
ChoChik
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

:+1:终于找到解决方案了

6年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!