基于 LFS-6.3 将 系统放入 虚拟机中的 U盘

2024-05-27 16:08
文章标签 系统 虚拟机 6.3 放入 lfs

本文主要是介绍基于 LFS-6.3 将 系统放入 虚拟机中的 U盘,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

按照 LFS详细搭建指南——适合初学者使用 https://blog.csdn.net/u012333520/article/details/50533002
搭建的 系统 是 建立在 虚拟机的硬盘中的,不太方便
为了将 系统安装到 U盘 上,做了一些探索,最终成功安装到了U盘,并从U盘启动
(还是基于虚拟机,不过系统已经全部在U盘上了,后期尝试在PC上直接从U盘启动)grub 的 stage1 stage2 (没用到stage1_5)都在 U盘上
kernel 也在U盘上
rootfs 也在U盘上
步骤
    1. U盘分区
// lfs-6.3 上
fdisk 分 /dev/sda2 为两个区
mkfs.ext3 /dev/sda2 // 实验测出不同平台 做的 ext3 不一样,不兼容 , 可能和 mkfs.ext3 有关
// 在 基于虚拟机的 lfs-6.3 无法成功,在其他系统下才成功
    1. 挂载U盘(/dev/sda2),拷贝所需文件到 /dev/sda2
// lfs-6.3 上
// 在 基于虚拟机的 lfs-6.3 不识别 U盘 ,在其他系统下才成功
// 挂载 /dev/sda2 到 /mnt
// 对 lfs-6.3 中的文件夹(bin boot etc lib sbin usr )打包(scp拷贝链接文件有问题),然后通过scp拷贝到其他 linux发行版,加压到 /mnt
// 修修补补,基于 https://blog.csdn.net/u012333520/article/details/50533002 补上其他的文件夹及文件夹下的内容   dev  home    media  mnt  opt  proc  root  srv  sys  tmp  var并在/mnt 下做一个动作  echo usbboot > /mnt/stamp
    1. 安装 grub 到 /dev/sda2
// lfs-6.3 上
mount -v --bind /dev /mnt/dev
chroot /mnt /usr/bin/env -i \
HOME=/root TERM="$TERM" PS1='\u:\w\$ ' \
PATH=/bin:/usr/bin:/sbin:/usr/sbin \
/bin/bash --login然后 通过 grub 命令行 安装 grub  到 MBR 
// 此时不修改 /boot/grub/menu.lst
    1. 让VMware的BIOS 识别 U盘
VMware的BIOS不能识别USB启动设备,即使已经把USB设备连接上去。
解决这一问题的做法是直接添加硬盘,硬盘指向物理硬盘,即USB设置。
请查看 https://blog.csdn.net/JackLiu16/article/details/79800164
    1. 连接USB设备到 LFS-6.3 所在的虚拟机

    1. 启动 vmware 中的 LFS-6.3 到 BIOS,并设置 从 添加的硬盘(映射到U盘) 启动
    1. 重新启动进入grub,并修改grub启动脚本
1. 进入grub 命令行
2. find stamp,会出现 (hd0,1) // 表示 /boot 目录 在 (hd0,1)
3. root (hd0,1)
4. kernel /boot/lfskernel-2.6.22.5 root=/dev/sda2 // 通过设置 kernel /boot/lfskernel-2.6.22.5 root=/dev/hda2 ,启动后 看到了 /dev/sda2 , 挂载后发现就是我们做的U盘
5. boot
6. 启动成功后,修改 /etc/grub/menu.lst 为  // 也可添加一个 title,兼容 usb上的系统 和 之前硬盘上的系统root (hd0,1)kernel /boot/lfskernel-2.6.22.5 root=/dev/sda2
7. 重新启动
8. 成功启动进入 rootfs

测试:拿U盘做PC的启动盘 启动系统

无法启动

这篇关于基于 LFS-6.3 将 系统放入 虚拟机中的 U盘的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻