LFS - Linux From Scratch 从零开始全记录 - 1 准备篇
上次折腾 LFS 已经是好几年前了,只记得最后用 VMware 引导成功了,好多技术细节已经不记得了。趁着最近有空,再来折腾一次。这一次用的一台新的 Win10 PC,目标是在一个 U 盘上构建 LFS,然后用 U 盘引导物理机,顺便记录一下整个过程。
准备阶段
下载虚拟机、Ubuntu 镜像
- 下载安装 Microsoft Visual C++ Redistributable 2019,VirtualBox 依赖于该组件,如果安装其他程序的时候已安装过这个包,则可跳过
- 下载安装 VirtualBox
- 下载 Ubuntu 22.04.2 LTS 镜像 ubuntu-22.04.2-desktop-amd64.iso 考虑到网速,我从清华镜像站下载的
虚拟机设置
按照我的个人习惯,创建两个磁盘文件
- /dev/sda 用于系统:BIOS boot、EFI System(/boot)、RootFS(/)
- /dev/sdb 用于主目录(/home)。万一今后系统挂掉了,我们平时保存资料的 /home 里面的东西都还在,重新搞个虚拟机,再挂载上去就可以了。当然,也可以方便地把这个 vdi 虚拟磁盘文件挂载到其他 Linux 系统
创建虚拟机、挂载上述两个 vdi 文件,挂载光盘镜像,启动,安卓 Ubuntu,按照提示一路下一步即可,安装完成后,弹出 Ubuntu 光盘镜像。
安装后的 Linux 配置
按照个人习惯的可选配置
# 安装 gcc、vim 等工具
sudo apt install vim gcc
# 安装 sshd,这样就可以在 Windows Terminal 中通过 SSH 访问,不再需要 VirtualBox 的图形界面了
sudo apt install openssh-server
# 把 Windows 的公钥 id_rsa.pub 拷贝到 Linux 虚拟机 ~/.ssh/authorized_keys 中,之后可以免密登录。Windows 公钥可以在 PowerShell 通过 ssh-keygen.exe 命令生成,一路回车即可,默认保存在 C:\Users\<username>\.ssh\id_rsa.pub 中
vi ~/.ssh/authorized_keys
# 按照个人习惯设置提示符、命令别名等
vi ~/.bashrc
# 修改 PS1='\w '
# 增加以下别名
# alias l='ls -lh'
# alias sl='ls'
# alias mkae='make'
分区、格式化
# 分区,把 sdb 只分了一个 gpt 分区
sudo cfdisk /dev/sdb # 顺便记下 sdb1 的 Filesystem UUID: 3d7d0be8-02de-420c-9af3-ec0a6c4cca16,后面自动挂载分区要用
# 格式化为 ext4 格式
sudo mkfs -t ext4 -F /dev/sdb1
自动挂载 /dev/sdb
修改 /etc/fstab 自动挂载 /home
sudo vi /etc/fstab
增加下面一行,其中 UUID 来自上面分区的步骤
UUID=3d7d0be8-02de-420c-9af3-ec0a6c4cca16 /home ext4 errors=remount-ro 0 1
转移 /home 到 /dev/sdb
# 备份整个 ~ 目录到 /tmp,其中 -a 可以复制其中的隐藏文件、保留链接、文件属性等
cp -a /home/zijian/ /tmp
sudo rm -rf /home/*
# 挂载
sudo mount /dev/sdb1 /home # 顺便提一句,卸载是 sudo umount /home,并且当前不能在 /home 目录里执行 umount 命令
# 把主目录拷贝到 /dev/sdb 中
sudo cp -a /tmp/zijian /home
新的虚拟机差不多就这样,下一篇开始按照 LFS 教程开始操作!
LFS - Linux From Scratch 从零开始全记录 - 1 准备篇的更多相关文章
- LFS(Linux From Scratch)学习
一.简介 LFS──Linux from Scratch,就是一种从网上直接下载源码,从头编译LINUX的安装方式.它不是发行版,只是一个菜谱,告诉你到哪里去买菜(下载源码),怎么把这些生东西( ra ...
- LFS Linux From Scratch 笔记2(经验非教程)BLFS
LFS 完了. 其实还没完,还要装一些其他的组件,系统才算是对人类有用的系统. 正好这里有个BLFS Beyound Linux From Scratch 的教程. 其实,按照现有的可运行的LFS系统 ...
- cmd&Linux 下使用mysql全记录
php mysql数据库常用cmd命令集 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop ...
- LFS Linux From Scratch 笔记(经验非教程)
做了一个自己的DIY Linux系统.从编译每一行代码,建立每一个文件系统结构开始. 创造自己的GNU/Linux系统,不同于任何发行版.按照的教程是来自 linuxfromscratch.org 来 ...
- Redis Linux 安装运行实战全记录
下载Redis 去Redis官网下载最新的Linux包,Redis官方没有Windows版的下载. https://redis.io/ 下载后把包上传到Linux服务器. 安装Redis 1.解压Re ...
- Welcome to Linux From Scratch!
/**************************************************************************** * Welcome to Linux Fro ...
- LFS(Linux From Scratch)构建过程全记录(五):交叉工具链的构建
写在前面 本文将详细讲述如何构建工具链 前置知识 在LFS-BOOK中,我们需要学习一些关于"交叉编译"的内容,详见书本 安装Binutils-2.39 我们cd到sources文 ...
- Linux From Scratch(从零开始构建Linux系统,简称LFS)- Version 7.7(三)
八. 构建LFS系统 1. 准备虚拟内核文件系统 内核会挂载几个文件系统用于自己和用户空间程序交换信息.这些文件系统是虚拟的,并不占用实际磁盘空间, 它们的内容会放在内存里. mkdir -pv $L ...
- Linux From Scratch(从零开始构建Linux系统,简称LFS)(三)
九. 系统配置 1. 安装 LFS-Bootscripts-20150222 软件包包含一套在 LFS 系统启动和关闭时的启动和停止脚本. cd /sources tar -jxf lfs-boots ...
- Linux From Scratch(从零开始构建Linux系统,简称LFS)- Version 7.7(一)
一. 准备工作 1. 需要一个Linux宿主系统,例如早先版本的 LFS,Ubuntu/Fedora,SuSE 或者是在你的架构上可以运行的其它发行版 如果想实现Win7与Linux双系统,可参考我的 ...
随机推荐
- 12 款最棒 Vue 开源 UI 库
文章目录 Element Plus - 经典中的经典,全面支持 Vue 3 TDesign Vue - 鹅厂优质 UI 组件,配套工具完满,设计工整,文档清晰 ArcoDesign Vue- 字节优质 ...
- replace批量替换、表删除数据查询用法
一. select * from baec_file where bacti='1'order by baec01; select baec02,REPLACE(baec02,'白班','A班') f ...
- CPU占用99%
晚间迁移数据库后,第二天下午来调优,发现CPU占用达到惊人的99%,如下: 分析15:00-16:00期间AWR报告,发现SQL硬解析严重,如下: 每秒硬解析达到69.9次,library hit%太 ...
- CF451B
题目简化和分析: 这题就是判断将一段翻转后是否能变为升序的数组. 我的方法是保存原数组每一个数出现的位置(相同任意一个),让后另外用一个数组存储排好序后的原数组,逐一进行比较. 若同,则跳到下一个元素 ...
- 深入理解 Python 虚拟机:协程初探——不过是生成器而已
深入理解 Python 虚拟机:协程初探--不过是生成器而已 在 Python 3.4 Python 引入了一个非常有用的特性--协程,在后续的 Python 版本当中不断的进行优化和改进,引入了新的 ...
- JVM 学习
目录 1. 类加载器及类加载过程 1.1 基本流程 1.2 类加载器子系统作用 1.3 类加载器角色 1.4 加载过程 (1) 加载 loading (2) 链接 linking 验证 verify ...
- mysql查看索引利用率
-- mysql查看索引利用率 -- 如果很慢把排序去掉,加上limit 并且在where条件中限定表名. -- cardinality越接近0,利用率越低 SELECT t.TABLE_SCHEMA ...
- OpenGL 基础光照详解
1. 光照 显示世界中,光照环境往往是相对复杂的.因为假设太阳作为世界的唯一光源,那么太阳光照在物体A上A将阳光进行反射后,A又做为一个新的光源共同作用于另一个物体B.所以于B来讲光源是复杂的.然而这 ...
- 关于Delphi
# 关于Delphi ··Delphi中使用的面向对象pascal编程语言. ··Pascal语言最初由瑞士苏黎士理工学院的尼古拉斯-沃斯(Niklaus Wirth)教授在1971年设计. ··19 ...
- [AI]生物本能vs机器人工程:谁才有“意识”?
[AI]生物本能vs机器人工程:谁才有"意识"? 引子 我们已经就人类意识的初级形式和高级形式进行了初步探讨.通过对比分析,我们将初级意识定义为可以无需高级意识参与的本能反应.而高 ...