《操作系统真象还原》记录全流程——第一章

2024-03-21 19:36

本文主要是介绍《操作系统真象还原》记录全流程——第一章,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

提示: 写这篇文章的目的是只是激励自己完成这本书的linux内核项目,本文不够细致。

指路大佬:操作系统真象还原 自制操作系统_Love 6的博客-CSDN博客

感谢CSDN上的前辈们的热心分享。

搭建环境。

1. 选择vmware虚拟机。我一开始利用virtualbox虚拟机搭建环境,但是无论是共享文件夹还是USB还是共享粘贴板,都无法传输文件,增强模式也无法改变。需要下载的那个文件,网络还访问不了。之前我用过vmware虚拟机的vmtool实现了复制粘贴共享。所以我抛弃了virtualbox虚拟机,用vmware重新搭建了Ubuntu环境。

2. 搭建Ubuntu环境。本来搭建的是CentOS环境,但是网上的资料比较少。更多的是Ubuntu,反正我们实现的是一个小linux内核,Ubuntu也是可以的。我选择了Ubuntu。

3. 安装boch。这里我遇到了非常多的报错,过程很痛苦。主要报错如下:

(1)Ubuntu 无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够) 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend)

解决方案:权限不够。

在终端输入:sudo passwd root

然后输入两次密码

再输入:su

再输入一次密码,就完成root提升

此处参考资料:【解决】Ubuntu 无法打开锁文件 /var/lib/dpkg/lock - open (13: 权限不够) 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend)_e: 无法打开锁文件 /var/lib/dpkg/lock-frontend - open (13:-CSDN博客

(2)admin is not in the sudoers file. 

修改用户权限。升级为root。


此处参考资料: 

admin is not in the sudoers file. This incident will be reported_admin is not in the sudoers file. this incident wi-CSDN博客

(3).bochsrc:9: romimage directive malformed.

这里,我的bochsrc配置文件里,romimage对应的文件路径写错了。

此处参考资料:

操作系统真象还原中bochs的bochsrc.disk配置bochs2.6.9_bochsrc.disk:193:cpu-CSDN博客

(4)bochsrc:247: cpu directive malformed

linux终端下:bochs -help cpu,选择了amd_k6_2_chomper。修改bochsrc配置文件

cpu: model=amd_k6_2_chomper

此处参考资料:

ubuntu下bochs的安装和配置_sudo apt-get install build-essential xorg-dev libg-CSDN博客

(5)message: fstat floppy 0 drive image file returns error: bad file descriptor

创建一个虚拟键盘,bximage命令

此处参考资料:

《操作系统真象还原》第一章 ---- 安装Vmware Station 安装Ubuntu 装载配置Bochs 安装Vmware tools 开始乘帆历险!_学习操作系统真相还原安装虚拟机-CSDN博客

这篇关于《操作系统真象还原》记录全流程——第一章的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/833694

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

nodejs打包作为公共包使用的完整流程

《nodejs打包作为公共包使用的完整流程》在Node.js项目中,打包和部署是发布应用的关键步骤,:本文主要介绍nodejs打包作为公共包使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言一、前置准备二、创建与编码三、一键构建四、本地“白嫖”测试(可选)五、发布公共包六、常见踩坑提醒

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

一个Java的main方法在JVM中的执行流程示例详解

《一个Java的main方法在JVM中的执行流程示例详解》main方法是Java程序的入口点,程序从这里开始执行,:本文主要介绍一个Java的main方法在JVM中执行流程的相关资料,文中通过代码... 目录第一阶段:加载 (Loading)第二阶段:链接 (Linking)第三阶段:初始化 (Initia

Linux中查看操作系统及其版本信息的多种方法

《Linux中查看操作系统及其版本信息的多种方法》在服务器运维或者部署系统中,经常需要确认服务器的系统版本、cpu信息等,在Linux系统中,有多种方法可以查看操作系统及其版本信息,以下是一些常用的方... 目录1. lsb_pythonrelease 命令2. /etc/os-release 文件3. h

docker编写java的jar完整步骤记录

《docker编写java的jar完整步骤记录》在平常的开发工作中,我们经常需要部署项目,开发测试完成后,最关键的一步就是部署,:本文主要介绍docker编写java的jar的相关资料,文中通过代... 目录all-docker/生成Docker打包部署文件配置服务A的Dockerfile (a/Docke

MySQL使用EXISTS检查记录是否存在的详细过程

《MySQL使用EXISTS检查记录是否存在的详细过程》EXISTS是SQL中用于检查子查询是否返回至少一条记录的运算符,它通常用于测试是否存在满足特定条件的记录,从而在主查询中进行相应操作,本文给大... 目录基本语法示例数据库和表结构1. 使用 EXISTS 在 SELECT 语句中2. 使用 EXIS

Git打标签从本地创建到远端推送的详细流程

《Git打标签从本地创建到远端推送的详细流程》在软件开发中,Git标签(Tag)是为发布版本、标记里程碑量身定制的“快照锚点”,它能永久记录项目历史中的关键节点,然而,仅创建本地标签往往不够,如何将其... 目录一、标签的两种“形态”二、本地创建与查看1. 打附注标http://www.chinasem.cn

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践