Linux环境定制LiveUSB启动盘

简介:

摘自:https://wiki.gentoo.org/wiki/LiveUSB#Write_the_LiveCD_image_to_the_USB_drive
LiveUSB/HOWTO
 本文解释如何创建一个Gentoo Linux LiveUSB安装盘,旨在驱动x86或者AMD64的Gentoo Linux LiveCD
通过使用USB闪存驱动。旨在没有CD-ROM驱动的情况下,安装Gentoo Linux系统到现代物理机器上。
 尽管你会发现本文中的描述主要是针对Gentoo Linux LiveCD ,但是通过修改设备名称,也可以在任何的设备
上正常工作。

Using the Gentoo LiveDVD
 当使用LiveDVD而不是LiveCD,最有效而且直接的方式就是拷贝ISO镜像到USB设备上,dd指令完全可以胜任
这份工作。假设USB设备是/dev/sdc,
root # dd if=/path/to/livedvd.iso of=/dev/sdc
On Windows,dd指令也应用在不同的项目当中,例如GNUWin32或者Chrysocome
本文主要针对的是LiveCD,所以LiveDVD需要参考其他的内容。

前提
应用Gentoo Linux LiveUSB ,你需要作如下的准备:
1GB的可启动USB闪存设备
支持从USB启动的物理计算机)i686 或x86_64)


准备USB闪存设备
设备分区
警告:备份USB设备中的数据否则将会格式化U盘的所有数据。
请确定当前的USB设备对应的盘符是/dev/sdc,主要是防止类似的SCSI的设备占用这个
盘符,导致格式化错误的设备。

在USB上创建一个FAT16分区,然后将分区设置成可启动,使用fdisk 命令,别忘记了
a的终极含义。操作完成之后应该是下面样子的:
root # fdisk -l /dev/sdc
--------------------------------------------------------------------------------
Disk /dev/sdc: 2063 MB, 2063597056 bytes
255 heads, 63 sectors/track, 250 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
  
   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1   *           1         250     2008124+   6  FAT16
当然如果你发现FAT16 ID是怎么来的,请使用t ,然后制定system id
尽管应该是指定。
笔记:如果设备大于4GB,请使用-F 32创建一个FAT32文件系统
root # emerge --ask sys-fs/dosfstoolsroot 
# mkdosfs -F 16 /dev/sdc1
--------------------------------------------------------------------------------
mkfs.fat 3.0.22 (2013-07-19)


安装主引导扇区Master Boot Record
安装预编译的Master Boot Record (MBR),从syslinux上,到USB设备
root # emerge --ask --verbose sys-boot/syslinuxroot # dd if=/usr/share/syslinux/mbr.bin of=/dev/sdc
--------------------------------------------------------------------------------
0+1 records in
0+1 records out
440 bytes (440 B) copied, 0.00522668 s, 84.2 kB/s

挂载Gentoo Linux 安装CD
将CD挂载到/mnt/cdroom目录
## (Create the /mnt/cdrom mount point if needed)
# mkdir -p /mnt/cdrom
# mount -o loop,ro -t iso9660 /path/to/iso.iso /mnt/cdrom
笔记:如果你尝试挂载ISO镜像文件,接收到无法找到任何的循环挂载设备错误的信息,
你需要开启内核中的配置参数Loopback 设备

挂载LiveUSB
挂载USB设备到/mnt/usb目录上
root # mkdir -p /mnt/usb 
root # mount -t vfat /dev/sdc1 /mnt/usb

拷贝文件
从光盘镜像中拷贝文件到USB启动分区目录下,由于我们是使用syslinux,而不是
isolinux启动系统,所以会进行如下的修改。
root # cp -r /mnt/cdrom/* /mnt/usb 
root # mv /mnt/usb/isolinux/* /mnt/usb
root # mv /mnt/usb/isolinux.cfg /mnt/usb/syslinux.cfg
root # rm -rf /mnt/usb/isolinux*
root # mv /mnt/usb/memtest86 /mnt/usb/memtest
卸载挂载分区
root # umount /mnt/cdrom

调整启动参数
请使用sed修改syslinux.cfg文件的参数。在尝试挂载文件系统的时候,slowusb参数可能
会产生一定的延时,检测USB的完整性是必须的。
root # sed -i -e "s:cdroot:cdroot slowusb:" -e "s:kernel memtest86:kernel memtest:" /mnt/usb/syslinux.cfg


卸载USB
请确保在安装bootloader之前已经卸载USB设备。
root # umount /mnt/usb

 

安装syslinux
最终安装syslinux bootloader到USB设备上
root # syslinux /dev/sdc1

核心:一旦修改了syslinux.cfg文件,你需要重新使用syslinux /dev/sdc1安装
boot loader.

使用LiveUSB



     本文转自fengyuzaitu 51CTO博客,原文链接:http://blog.51cto.com/fengyuzaitu/1535077,如需转载请自行联系原作者



相关文章
|
17天前
|
Ubuntu Linux Shell
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
(已成功解决)Linux环境报错—bash: wget: command not found;常见Linux发行版本,Linux中yum、rpm、apt-get、wget的区别;Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
190 68
(已解决)Linux环境—bash: wget: command not found; Docker pull报错Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled
|
3月前
|
安全 Linux 网络安全
Linux环境中安装和使用Paramiko
Linux环境中安装和使用Paramiko
190 12
|
3月前
|
Java 关系型数据库 MySQL
Linux环境
Linux环境
43 5
|
14天前
|
消息中间件 Java Kafka
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
本文介绍了Kafka集群的搭建过程,涵盖从虚拟机安装到集群测试的详细步骤。首先规划了集群架构,包括三台Kafka Broker节点,并说明了分布式环境下的服务进程配置。接着,通过VMware导入模板机并克隆出三台虚拟机(kafka-broker1、kafka-broker2、kafka-broker3),分别设置IP地址和主机名。随后,依次安装JDK、ZooKeeper和Kafka,并配置相应的环境变量与启动脚本,确保各组件能正常运行。最后,通过编写启停脚本简化集群的操作流程,并对集群进行测试,验证其功能完整性。整个过程强调了自动化脚本的应用,提高了部署效率。
【手把手教你Linux环境下快速搭建Kafka集群】内含脚本分发教程,实现一键部署多个Kafka节点
|
2月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
49 4
|
3月前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
616 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
2月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
148 3
|
2月前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
67 3
|
3月前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
82 6
|
2月前
|
Linux UED iOS开发

热门文章

最新文章