4 Star 20 Fork 9

Feng_Yu / grub-cfg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
grub.cfg 5.65 KB
一键复制 编辑 原始数据 按行查看 历史
Feng_Yu 提交于 2016-12-16 22:51 . upgrade linuxmint to 18.1
# path to the partition holding ISO images (using UUID)
probe -u $root --set=rootuuid
set imgdevpath="/dev/disk/by-uuid/$rootuuid"
# define globally (i.e outside any menuentry)
insmod search_fs_uuid
search --no-floppy --set=isopart --fs-uuid $rootuuid
set isopath=/boot/iso # 定义iso文件存放的路径
# 定义各种要启动的iso镜像名
set ubuntu=ubuntu-16.04.1-desktop-amd64.iso # ubuntu桌面版镜像,支持12.04-16.04
set ubuntuserver=ubuntu-16.04.1-server-amd64.iso # ubuntu服务器版镜像,支持14.04-16.04
set debianlive=debian-live-8.6.0-amd64-gnome-desktop.iso # debian livecd镜像,支持debian8
set deepin15=deepin-15.3-amd64.iso # deepin15镜像
set linuxmint=linuxmint-18.1-cinnamon-64bit.iso # linuxmint镜像,支持17-18
set ubuntukylin=ubuntukylin-16.04.1-desktop-amd64.iso # ubuntukylin镜像,支持14.04-16.04
set centosdvd=CentOS-7-x86_64-Minimal-1511.iso # centos DVD版镜像,包括DVD/Everything/Minimal/Netinstall镜像,支持6-7
set centoslive=CentOS-7-x86_64-LiveGNOME-1511.iso # centos livecd镜像,包括livecd/livedvd,支持7(6似乎不支持直接引导ISO,期待PR解决)
# grub模块配置
loadfont unicode
set lang=zh_CN
insmod all_video
insmod gfxterm
insmod gettext
insmod gfxmenu
insmod png
insmod part_msdos
insmod xfs
insmod loopback
insmod iso9660
terminal_output gfxterm
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
gfxmode keep
set vt_handoff=vt.handoff=7
# 主题配置
set gfxmode=auto
set timeout_style=menu
set timeout=10
set theme=$prefix/themes/Tuxkiller2/theme.txt
export theme
menuentry '从本地硬盘启动' --class harddrive {
set root=(hd1)
chainloader +1
}
if [ -f "$isopath/$linuxmint" ]; then
menuentry "Linux Mint ISO" --class linuxmint --class gnu-linux --class gnu --class os {
set isofile="$isopath/$linuxmint"
loopback loop ($isopart)$isofile
echo '载入Linux Mint ...'
linux (loop)/casper/vmlinuz file=/cdrom/preseed/linuxmint.seed boot=casper iso-scan/filename=$isofile noeject noprompt splash locale=zh_CN.UTF-8 --
echo '载入初始化内存盘 ...'
initrd (loop)/casper/initrd.lz
}
fi
if [ -f "$isopath/$ubuntu" ]; then
menuentry "Ubuntu Desktop ISO" --class ubuntu --class gnu-linux --class gnu --class os {
set isofile="$isopath/$ubuntu"
loopback loop ($isopart)$isofile
echo '载入Ubuntu Desktop ...'
linux (loop)/casper/vmlinuz.efi file=/cdrom/preseed/ubuntu.seed boot=casper iso-scan/filename=$isofile noeject noprompt splash locale=zh_CN.UTF-8 --
echo '载入初始化内存盘 ...'
initrd (loop)/casper/initrd.lz
}
fi
if [ -f "$isopath/$ubuntukylin" ]; then
menuentry "UbuntuKylin Desktop ISO" --class ubuntukylin --class gnu-linux --class gnu --class os{
set isofile="$isopath/$ubuntukylin"
loopback loop ($isopart)$isofile
echo '载入UbuntuKylin Desktop ...'
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noeject noprompt splash locale=zh_CN.UTF-8 --
echo '载入初始化内存盘 ...'
initrd (loop)/casper/initrd.lz
}
fi
# 特别注意: Ubuntu Server会出现安装的时候检测不到光驱的现象
# 此时手工进入shell下,将iso镜像挂载在/cdrom继续即可
# mount /dev/sdb1 /media
# mount -o loop /media/boot/iso/ubuntu-*-server-*.iso /cdrom
if [ -f "$isopath/$ubuntuserver" ]; then
menuentry "Ubuntu Server ISO" --class ubuntu --class gnu-linux --class gnu --class os{
set isofile="$isopath/$ubuntuserver"
loopback loop ($isopart)$isofile
set gfxpayload=keep
echo '载入Ubuntu Server ...'
linux (loop)/install/vmlinuz file=/cdrom/preseed/ubuntu-server.seed iso-scan/filename=$isofile quiet ---
echo '载入初始化内存盘 ...'
initrd (loop)/install/initrd.gz
}
fi
if [ -f "$isopath/$deepin15" ]; then
menuentry "Deepin 15 ISO" --class deepin --class gnu-linux --class gnu --class os{
set isofile="$isopath/$deepin15"
loopback loop ($isopart)$isofile
echo '载入Deepin ...'
linux (loop)/live/vmlinuz.efi boot=live config findiso=$isofile noeject noprompt locales=zh_CN.UTF-8 --
echo '载入初始化内存盘 ...'
initrd (loop)/live/initrd.lz
}
fi
if [ -f "$isopath/$debianlive" ]; then
menuentry "Debian LiveCD ISO" --class debian --class gnu-linux --class gnu --class os{
set isofile="$isopath/$debianlive"
loopback loop ($isopart)$isofile
echo '载入Debian LiveCD ...'
linux (loop)/live/vmlinuz boot=live config findiso=$isofile noeject noprompt locales=zh_CN.UTF-8 --
echo '载入初始化内存盘 ...'
initrd (loop)/live/initrd.img
}
fi
if [ -f "$isopath/$centosdvd" ]; then
menuentry "CentOS DVD ISO" --class centos --class gnu-linux --class gnu --class os{
set isofile="$isopath/$centosdvd"
loopback loop ($isopart)$isofile
echo '载入CentOS DVD ...'
linux (loop)/isolinux/vmlinuz inst.stage2=hd:UUID=$rootuuid:/$isofile inst.lang=zh_CN.UTF-8 rhgb
echo '载入初始化内存盘 ...'
initrd (loop)/isolinux/initrd.img
}
fi
if [ -f "$isopath/$centoslive" ]; then
menuentry "CentOS LiveCD ISO" --class centos --class gnu-linux --class gnu --class os{
set isofile="$isopath/$centoslive"
loopback loop ($isopart)$isofile
echo '载入CentOS LiveCD ...'
probe -l -s isolable (loop)
linux (loop)/isolinux/vmlinuz0 boot=isolinux root=live:LABEL="$isolable" iso-scan/filename=$isofile rd.live.image LANG=zh_CN rd.locale.LANG=zh_CN rhgb
echo '载入初始化内存盘 ...'
initrd (loop)/isolinux/initrd0.img
}
fi
menuentry '关闭系统' --class halt {
echo '关机中 ...'
halt
}
menuentry '重启系统' --class reboot {
echo '重启系统中 ...'
reboot
}
1
https://gitee.com/abcfy2/grub-cfg.git
git@gitee.com:abcfy2/grub-cfg.git
abcfy2
grub-cfg
grub-cfg
master

搜索帮助