Syslinux使用
1. 介绍
Syslinux是一个功能强大的引导加载程序, 可以装在U盘上来引导系统
在5.00版本以前,几乎所有c32模块是独立的,即没有其他模块依赖;但在5.00以后,很多c32模块则是依赖于其他模块
这里同时介绍4.05和6.03版本
2. 使用
Windows下使用方式如下
1. 将U盘格式成FAT32
2. 在U盘根目录里建立boot/syslinux文件夹
3. 打开命令行,找到U盘目录,进入syslinux目录里执行如下命令,假设U盘盘符为H
V4.: ~\win32>syslinux.exe -ma -d \boot\syslinux H:
V6.: ~\bios\win32>syslinux.exe --mbr --active --directory /boot/syslinux/ --install H:
执行成功后将在/boot/syslinux目录下生成启动系统文件ldlinux.sys
4. 在syslinux-*\bios文件夹里搜索如何文件(对于6.03需要找到对应的依赖库)
memdisk 引导IMG镜像文件
menu.c32 窗口模块
vesamenu.c32 窗口模块
chain.c32 指定分区(硬盘)启动
reboot.c32 重新启动计算机
poweroff.c32 关闭计算机
几个文件复制到U盘的boot/syslinux文件夹里,同时在此文件里新建配置文件syslinux.cfg。
3. 配置
syslinux的配置文件syslinux.cfg需要填写菜单及相关系统配置项
3.1 菜单项
菜单项的配置可参考
<Syslinux Menu>
<Archlinux Syslinux>
3.2 引导配置项
WinPE
LABEL Winpe
MENU LABEL Winpe
kernel /boot/isope.bin
append initrd=/boot/SETUPLDR.BIN
Linux
LABEL linux
MENU LABEL Puppy linux
kernel /boot/linux/vmlinuz
append initrd=/boot/syslinux/initrd.gz
硬盘
LABEL StartHD
MENU LABEL StartHD
COM32 /boot/syslinux/chain.c32 hd0
关闭系统
LABEL Poweroff
MENU LABEL Poweroff
COM32 /boot/syslinux/poweroff.c32
重启系统
LABEL reboot
MENU LABEL Reboot
COM32 /boot/syslinux/reboot.c32
磁盘镜像引导
syslinux支持gzip或zip压缩格式的(memdisk),标准floppy镜像可直接引导启动,非标准(容量大于2880K)要附加CHS参数
其中,CHS参数可通过软件GDParam来获取
LABEL maxdos
kernel memdisk
append initrd=boot/maxdos.img floppy c= h= s=
ISO光盘
LABEL WIN7PE.iso
LINUX memdisk
INITRD /boot/wins/WIN7PE.iso
APPEND iso raw
LiveCD
引导LiveCD需要指定root设备(通过UUID或LABEL)和squashfs所在路径(实际路劲为/boot/CentOS/squashfs.img)
LABEL CentOS
MENU LABLE CentOS
kernel /boot/CentOS/vmlinuz0
append initrd=/boot/CentOS/initrd0.img root=UUID=4C9E-56D3 rootfstype=vfat rw quiet liveimg SQUASHED="/sysroot/boot/CentOS/squashfs.img"
#root=LABEL=FIX
其中,获取UUID的方法如下
/* Linux */
# /lib/udev/vol_id -u $dev -> 获取UUID
# /lib/udev/vol_id -l $dev -> 获取LABEL
# blkid -> 获取UUID /* Windows */
C:\> wmic LogicalDisk where "DriveType='2'" get VolumeSerialNumber / value
VolumeSerialNumber=72E11326 -> UUID为72E1-
关于LiveCD,参考:
<Linux Live Kit>
<Fedora LiveOS>
其他比较不错的LiveCD有4MLinux,Slitaz
4. PE定制
首先来了解下iso和img镜像格式
iso: ISO CD/DVD image, ElTorito
img: 磁盘映像, 准确的来说是Floppy Disk Image
iso修改工具有WinISO和UltraISO;可引导需要Bootable_NoEmulation.img
img文件可以使用WinImage进行修改;.SI_文件通常是使用CAB压缩的文件,可使用WinCab中的makecab.exe来得到
makecab.exe WinPE.iso WINPE.IS_
<WinPE的DIY知识简介>
<Windows Preinstallation Phases>
参考:
<Syslinux Wiki>
<Syslinux HowTos>
Syslinux使用的更多相关文章
- syslinux 3.84 2009-12-18 ebios copyright (c) 1994-2009 H. Peter Anvin et al
使用USB方式安装win7+Ubuntu12.04双系统时出现"syslinux 3.84 2009-12-18 ebios copyright (c) 1994-2009 H. Peter ...
- 理解syslinux,SYSLINUX和PXELINUX
在研究网络装机的过程中,菜菜地被Syslinux.SYSLINUX和PXELINUX这些定义折磨了一下 它们有什么区别和联系?为什么配置PXELINUX要安装的是Syslinux而不是Pxelinux ...
- syslinux 和 grub
syslinux是一个功能强大的引导加载程序,而且兼容各种介质.它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘.它的安装很简单,一旦安装syslinux好之后,sysLinu ...
- syslinux启动盘制作
# <font color=DarkCyan >syslinux启动盘制作</font> # ### 准备工具 ### 1. BOOTICEx64 软件 ##分区引导制作工具 ...
- Syslinux编译环境配置简要步骤
由于毕业设计要做一个加密U盘的LINUX,需要修改一sysylinux引导程序,在网上很少有关于syslinux编译环境配置的文章,在此简要总结一下,发出来共享. 需要的软件: 1. vmware ...
- 关于SYSLINUX的一些重要描述摘录
以下资源都来自官方文档,原文摘录 The SYSLINUX suite contains the following boot loaders ("derivatives"), f ...
- SYSLINUX官方文档
帮助正确认识SYSLINUX http://www.syslinux.org/wiki/index.php/Doc/syslinux http://www.syslinux.org/wiki/inde ...
- x01.os.23: 制作 linux LiveCD
1.首先运行如下命令 sudo apt-get install wget bc build-essential gawk genisoimage 2.下载如下资源,make all 即可 http: ...
- Linux PXE无盘工作站
• 关于PXE无盘工作站系统的简介 PXE无盘工作站系统是指由一台或多台“系统服务器”和多台“PXE客户端(无盘工作站)”通过 交换机 相连组成的局域网系统. (图1:无盘工作站系统部署拓扑图) • ...
随机推荐
- php扩展开发-快速上手
系统环境CentOS release 6.5 (Final) PHP版本php-5.6.27 扩展开发需要有php环境及php的源代码,我的PHP安装目录/home/zhangxiaomin/stud ...
- python 爬虫豆瓣top250
网页api:https://movie.douban.com/top250?start=0&filter= 用到的模块:urllib,re,csv 捣鼓一上午终于好了,有些小问题 (top21 ...
- astyle 使用说明 —— 集成到开发平台中
转自:https://www.cnblogs.com/jiangxinnju/p/4908575.html 欢迎关注我的社交账号: 博客园地址: http://www.cnblogs.com/jian ...
- PowerShell批量启动/关闭Azure VM
备注:以下例子中出现的JohnsonWeb, JohnsonVm均是虚拟机的名称.在运行Powershell脚本之前,请导入您的订阅文件. 根据条件启动/关闭虚拟机,例如根据虚拟机名称,批量启动/关闭 ...
- android json 解析 kotlin
前面 写了一次 kotlin解析json 但是,真的写得太烂,直接删掉了,现在重新整理一下.顺便记录一下今天坑了我很久的小问题. 1.首先从最简单的入手吧 一个json的字符串:=====就叫做jso ...
- UVa 1649 Binomial coefficients 数学
题意: \(C(n, k) = m(2 \leq m \leq 10^{15})\),给出\(m\)求所有可能的\(n\)和\(k\). 分析: 设\(minK = min(k, n - k)\),容 ...
- leetcode 【 Unique Paths 】python 实现
题目: A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). ...
- centOS6.6虚拟机启动后登陆界面无法显示
1.图一和图二对比就很明显发现,我的登陆界面不见了(突然断电导致不正常关机,造成图形界面桌面崩溃) 2.解决方法:启动按Ctrl+Alt+f2切换进命令行界面,root账号进入,重新下载图形界面
- MOCTF-火眼金睛
MOCTF-火眼金睛 http://119.23.73.3:5001/web10/ 把这个题目当作python爬虫来练习. 首先要获取到文本框里面的全部信息, import requests impo ...
- Chrome autocomplete="off"无效
如果不希望输入框自动填充,可以设置 input 或 textarea 标签的属性 autocomplete="off". 但是有时 Chrome 会忽视 autocomplete ...