名词相关
EDK2: Intel发起的UEFI开发环境
OVMF: 基于EDK2的开源虚拟机UEFI固件
seaBios: 基于传统BIOS的开源虚拟机固件
tianocore:EDK2 的社区
相关网站
tiancore: http://www.tianocore.org/edk2/
EDK2源码: https://github.com/tianocore/edk2
seaBios源码: git://git.seabios.org/seabios.git
相关参考
https://www.seabios.org/Build_overview
https://fossies.org/linux/qemu/roms/seabios/src/Kconfig
https://access.redhat.com/sites/default/files/attachments/ovmf-whtepaper-031815.pdf
默认的virtual-manager没有安装及打开虚拟机的UEFI支持,其解决方式有二:
一、安装发行版提供的OVMF套件
二、自编译并启用该启动固件
编译依赖 nasm bison flex uuid-dev
编译该固件,则只需要下载EDK2源码,手动修改Conf/target.txt
target.txt主要说明:
ACTIVE_PLATFORM = Nt32Pkg/Nt32Pkg.dsc(目标平台描述)
TARGET = RELEASE (RELEASE or DEBUG)
TARGET_ARCH = Ia32 X64 (目标平台)
TOOL_CHAIN_TAG = GCC48(编译工具)
也可以使用 build -a (IA32 X64) -p (OvmfPkg/OvmfPkgIa32.dsc | OvmfPkg/OvmfPkgIa32X64.dsc |OvmfPkg/OvmfPkgX64.dsc) -t (GCCxx | VS2008) -D (CSM_ENABLE=TRUE,很少用到CSM的模块,需要先编译seaBios获取Csm16.bin)直接指定
编译带CSM支持的,则需要另外获取seaBios代码编译出Csm16.bin
主要命令
seaBios
cd seaBios
make menuconfig (target需要选CSM)
make
cp out/Csm16.bin EDK2/Ovmf/Csm/Csm16/
EDK2
cd EDK2 && source edksetup.sh
cd BaseTools && make
build
cp Build/OvmfXXX/FVRELEASE_GCCxx/FV/{OVMF,OVMF_CODE,OVMF_VARS}.fd TARGET
折腾斋
2017年3月7日星期二
2015年11月15日星期日
2014年8月5日星期二
Debian 8/jessie 安装 ia32
最近需要在一台64位debian 8上安装 i386的系统包,但是怎么都安装不了,查询debian官网后发现是ia32系列的包被废弃了
Installing i386 packages on Debian 8 x64 but the ia32-libs missing
现在的过程具体是
Installing i386 packages on Debian 8 x64 but the ia32-libs missing
现在的过程具体是
dpkg --add-architecture i386
apt-get update
apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 (取代ia32-libs ia32-libs-gtk ia32-libs-dev)
2014年6月3日星期二
2014年4月27日星期日
kernel 3.14 编译
紧跟时代潮流,Debian大叔在jessie上的内核已经是3.14了,再加上最近Debian动作连连,又是systemd又是btrfs的,忍不住又装了一台debian 8提高一下逼格
配置如下:Q9300+4G+500G
分盘如下 /boot 512M ext4 / btrfs 30G swap 2G /var ext4 3G /home ext4 400G+
1.systemd 升级问题:systemd目前并不是jessie系统默认的启动管理系统,需要安装systemd systemd-sysv 两个包。碰到的问题1是systemd-sysv安装时死循环,解决方式是需要先升级其他可升级包在单独安装systemd-sysv。
2 kernel 3.14 编译问题:安装后无法成功启动,系统能加载vmlinux但在加载btrfs支持时出现问题。由于使用了btrfs和systemd,起初一直认为是兼容问题后来实在不死心,又按照make menuconfig > make -j5 > make install > make modules > make modules_install 次序重新安装一次,在 make install 中发现提示 没有在 /lib/modules/ 找到相应模块。
解决 :make menuconfig > make -j5 > make modules > make modules_install > make install
另:transmission-daemon 在systemd上有问题。
配置如下:Q9300+4G+500G
分盘如下 /boot 512M ext4 / btrfs 30G swap 2G /var ext4 3G /home ext4 400G+
1.systemd 升级问题:systemd目前并不是jessie系统默认的启动管理系统,需要安装systemd systemd-sysv 两个包。碰到的问题1是systemd-sysv安装时死循环,解决方式是需要先升级其他可升级包在单独安装systemd-sysv。
2 kernel 3.14 编译问题:安装后无法成功启动,系统能加载vmlinux但在加载btrfs支持时出现问题。由于使用了btrfs和systemd,起初一直认为是兼容问题后来实在不死心,又按照make menuconfig > make -j5 > make install > make modules > make modules_install 次序重新安装一次,在 make install 中发现提示 没有在 /lib/modules/ 找到相应模块。
解决 :make menuconfig > make -j5 > make modules > make modules_install > make install
另:transmission-daemon 在systemd上有问题。
2013年9月6日星期五
n900 折腾记
前些日子,熬不住对power内核的好奇,终于安装了power52内核,结果踏上了一条不归路。
由于错误地在安装power内核后使用Community-ssu-enaber命令致使使用了功能不完整的社区内核覆盖了power内核,导致手机内存卡变成了只读;默认的超频设置导致系统多次启动失败
错误的内核导致mmcblk0p1、mmcblk1p1 的挂载方式变为 default,设备无法使用user用户写入数据,最终解决方式是重刷eMMC+38周。
完整重刷后问题解决,超频及文件系统问题解决
由于错误地在安装power内核后使用Community-ssu-enaber命令致使使用了功能不完整的社区内核覆盖了power内核,导致手机内存卡变成了只读;默认的超频设置导致系统多次启动失败
这是默认的fstab
错误的内核导致mmcblk0p1、mmcblk1p1 的挂载方式变为 default,设备无法使用user用户写入数据,最终解决方式是重刷eMMC+38周。
完整重刷后问题解决,超频及文件系统问题解决
标签:
fstab,
kernel-power,
mmcblk,
N900,
overclock
订阅:
博文 (Atom)