跟我学LFS LiveUSB制作
- 2023-08-25 05:07:18
- 来源:网络
- 在手机上看
扫一扫立即进入手机端
LFS LiveCD 不是可以用光盘启动吗?
LFS LiveCD镜像 不是可以从硬盘上启动吗?
不是可以不用 LFS LiveCD, 直接在另外一个发行版编译、学习LFS吗?
这个…… 没错,制作 LFS LiveUSB 是因为有人闲得蛋疼
插入U盘,查看U盘相应的设备名
$ sudo /sbin/fdisk -l
...
Device Boot Start End Blocks Id System
/dev/sdb1 1 250 2008093+ 83 Linux
卸载U盘,分区并格式化
$ sudo umount /dev/sdb1
$ sudo /sbin/fdisk /dev/sdb
...
// fdisk的操作省略
// 详细教程请阅读 Gentoo文档 https://img.601958.cn/images/20221208/aanztamc4ux 中的“4.c. 使用fdisk来为你的磁盘分区“
// 关键点在于为第一个分区添加boot启动标记
// e.g. Command (m for help): a
$ sudo mkfs.ext3 /dev/sdb1
安装grub到U盘
$ sudo mount /dev/sdb1 /media/usb
//安装gurb到/media/usb
$ sudo grub-install --root-directory=/media/usb /dev/sdb1
$ sudo umount /dev/sdb1
$ sudo grub
> root (hd1,0) //第2个设备的第1个分区
> setup (hd1) //将grub装入hd1的mbr
> quit
复制文件
$ sudo mount /dev/sdb1 /media/usb
// LFS LiveCD镜像下载下来后,命名为lfs.iso (为方便重启系统后,grub命令行的调试)
// initramfs_data.cpio.gz、linux等文件从lfs.iso中的/boot/syslinux下取得
// 复制命令省略,复制后的文件列表如下
$ find /media/usb
/media/usb/lfs.iso
/media/usb/boot/initramfs_data.cpio.gz
/media/usb/boot/linux
编辑menu.lst
$ cat /media/usb/boot/grub/menu.lst
default 0
timeout 1
color cyan/blue white/blue
title LFS Live
root (hd0,0)
kernel /boot/linux root=iso:/dev/sdb1:/lfs.iso rw rootdelay=20
initrd /boot/initramfs_data.cpio.gz
// /dev/sdb1 从启动失败的过程中,在grub命令行中手工打root,kernel,initrd进入的shell的'mount命令+tab'获得
// rootdelay=20 从启动失败的过程中,屏幕的错误提示知道,因为是usb设备,所以要给时间检测设备
重启系统,插入刚制作好的 LFS LiveUSB,设置好BIOS,一切OK