我在WIN7系统下安装ylmf os到U盘上,重启后点击U盘但打开不得,于是格式化U盘,重启电脑之后就进入不了桌

我在WIN7系统下安装ylmf os到U盘上,重启后点击U盘但打开不得,于是格式化U盘,重启电脑之后就进入不了桌,第1张

这是因为你在把ylmfos装到u盘的时候,把grub2引导的mbr给安装到硬盘的mbr了,但是你的ubuntu系统又是在u盘中的,grub2也是在u盘中的,所以grub2找不到所需文件,只能进入rescue模式。grub rescue是grub2的最核心,grub2是模块化设计,它还没加载模块,一般系统会正确配置grub.cfg会正常加载模块的,grub2的功能都被模块化了, 连ls功能都没有,需加ls.mod后才能ls。加载ntfs.mod才能支挂ntfs文件系统。加载模块如:

set root=(hd0,0)

set prefix=/boot/grub

insmod ntfs 或 insmod $prefix/ntfs.mod

但许多时候并不会成功,因为模块间有依赖关系,加载了a模块,加载b模块才会成功

需要用你的u盘制作成启动盘,启动电脑后给硬盘安装一个引导,你用的是win7可用bootmgr引导、gurb4dos、syslinux等,建议用grub4dos,具有命令行模式功能强大灵活,用grub4dos引导win7:

find --set-root /bootmgr

chainloader +1

boot

相信你会喜欢上grub

GRUB2命令

Set 设置环境变量 set root='hd0,msdos1'

menuentry "title" [--class=class …] [--users=users] [--unrestricted] [--hotkey=key] [--id=id] [arg …] { command… }

定义一个名为"title"的菜单项。当此菜单项被选中时,GRUB将会把环境变量"chosen"的值设为"id"(使用了[--id=id]选项)或"title"(未使用[--id=id]选项),然后执行花括号中的命令列表,如果列表中最后一个命令执行成功,并且已经载入了一个内核,那么将执行"boot"命令。

可以使用 --class 选项指定菜单项所属的"样式类"。从而可以使用指定的主题样式显示菜单项。

可以使用 --users 选项指定只允许特定的用户访问此菜单项。如果没有使用此选项,则表示允许所有用户访问。

可以使用 --unrestricted 选项指明允许所有用户访问此菜单项。

可以使用 --hotkey 选项设置访问此菜单项的热键(快捷键)。"key"可以是一个单独的字母,或者'backspace','tab','delete'之一。

可以使用 --id 选项为此菜单项设置一个全局唯一的标识符。"id"必须由ASCII字母/数字/下划线组成,且不得以数字开头。

[arg …]是可选的参数列表。你可以把它们理解为命令行参数。实际上"title"也是命令行参数,只不过这个参数是个必须参数而已。这些参数都可以在花括号内的命令列表中使用,"title"对应着"$1",其余的以此类推。

insmod module

载入名为"module"的GRUB2模块。

chainloader [--force] file

链式加载"file"文件。通常使用磁盘块表示法,例如用'+1'表示当前根分区的第一个扇区。

linux16 file …

以传统的16位启动协议从"file"载入一个Linux内核映像,并将其余的字符作为内核的命令行参数逐字传入。这通常用于启动一些遵守Linux启动协议的特殊工具(例如 MEMDISK )。

[注意]使用传统的16位启动协议意味着:(1)'vga='启动选项依然有效,(2)不能启动纯64位内核(也就是内核必须要'CONFIG_IA32_EMULATION=y'才行)。

initrd16 file

为以16位协议启动的Linux内核载入一个"initial ramdisk",并在内存里的Linux设置区域设置合适的参数。

[注意]这个命令必须放在"linux16"命令之后使用。

loopback [-d] device file

将"file"文件映射为"device"回环设备。例如:

loopback loop0 /path/to/image

ls (loop0)/

可以使用 -d 选项,删除先前使用这个命令创建的设备。

default

默认选中第几个菜单项(从'0'开始计数)

default

默认选中第几个菜单项(从'0'开始计数)

gfxpayload

设置Linux内核启动时的视频模式,可以指定一组由逗号或分号分隔的模式以供逐一尝试:每个模式的格式必须是:'text'(普通文本模式,不能用于UEFI平台),'keep'(继承"gfxmode"的值),'auto'(自动检测),'宽x高','宽x高x色深'之一,并且只能使用VBE标准指定的模式[640x480,800x600,1024x768,1280x1024]x[16,24,32]。在BIOS平台上的默认值是'text',在UEFI平台上的默认值是'auto'。除非你想明确设置Linux控制台的分辨率(要求内核必须"CONFIG_FRAMEBUFFER_CONSOLE=y"),或者打算在BIOS平台上使用图形控制台(要求内核必须"CONFIG_FRAMEBUFFER_CONSOLE=y"),否则不要设置此变量

root

设置"根设备"。任何未指定设备名的文件都视为位于此设备。初始值由GRUB在启动时根据"prefix"变量的值自动设置。在大多数情况下,你都需要修改它。

superusers

设置一组"超级用户"(使用空格/逗号/分号进行分隔),以开启安全认证的功能。

theme

设置菜单界面的主题风格文件的位置,例如:"/boot/grub/themes/starfield/theme.txt"。关于如何定制界面风格(背景图片/字体/颜色/图标等)的细节,可以参考GRUB2手册中的"<u>Theme file format </u>"部分。

timeout

在启动默认菜单项前,等待键盘输入的秒数。默认值是'5'秒。'0'表示直接启动默认菜单项(不显示菜单),'-1'表示永远等待。

pager

如果设为'1',那么每一满屏后暂停输出,等待键盘输入。缺省是'',表示不暂停。

Insmod模块

pxe.modDriver to provide access to the pxe filesystem

pxecmd.mod Command to control the PXE device

cat.modShow the contents of a file. 显示文件内容

cmp.modCompare two files.

configfile.mod configure - Load another config file.

cpuid.mod Check for CPU features

crc.modCalculate the crc32 checksum of a file.

echo.mod Display a line of text.

halt.mod halts the computer. This command does not work on all firmware.

suspend.modHalt the system, if possible using APM

hello.mod Say hello

help.mod Show a help message.

hexdump.modDump the contents of a file or memory.

ls.mod List devices and files.

lspci.mod List PCI devices

normal.mod Grub2 的常规模式(于此对应的是安全模式,内置于 kernel 中)

pci.mod

play.mod 播放音频文件 (体验功能) Play a tune

read.mod Set variable with user input

reboot.mod Reboot the computer. 重启计算机

search.mod Search devices by file, filesystem label or filesystem UUID.

serial.mod

sleep.mod Wait for a specified number of seconds

terminal.mod Select a terminal.

terminfo.mod Set terminfo type.

test.mod test -

ieee1275_suspend Return to Open Firmware prompt

分区管理

pc.mod pc 机上的分区类型(主分区、扩展分区)管理

sun.modsun 机上的分区类型管理

gpt.modRead GUID Partition Tables (GPT).

apple.mod 苹果机的分区管理

acorn.mod Linux/ADFS partition tables.

amiga.mod Amiga partition tables (RDB).

图形相关:

vga.mod字符终端

gfxterm.mod图形终端

font.mod Specify one or more font files to display.

vbe.modpc 上图形核心库

vbeinfo.modList compatible VESA BIOS extension video modes.

vbetest.modTest VESA BIOS Extension 2.0+ support

video.mod

videotest.mod Test video subsystem

bitmap.mod 图片格式基类

jpeg.mod JPG 图片格式解码

tga.modTGA 图片格式解码

png.modPNG 图片格式解码

文件系统

affs.mod Amiga Fast FileSystem.

afs.modThe native AtheOS file-system.

cpio.mod cpio and tar filesystem.

ext2.mod Second Extended filesystem

fat.modFAT filesystem

hfs.modHFS

hfsplus.modHFS+ Filesystem.

iso9660.modiso9660 implementation with extensions: SUSP, Rock Ridge. (光盘文件系统)

jfs.modJFS

minix.mod The minix filesystem, version 1 and 2.

ntfs.mod NTFS filesystem

ntfscomp.mod compression support for the NTFS filesystem

reiserfs.mod ReiserFS versions up to 3.6

sfs.modAmiga Smart FileSystem.

udf.modUniversal Disk Format filesystem. (光盘文件系统)

ufs.modUnix File System

xfs.modXFS

fshelp.mod Filesystem helper functions (查找文件、读取文件 *** 作)

磁盘访问

ata.modATA disk access.

fs_uuid.modAccess disks by their filesystem UUID.

host.mod Dummy disk driver to provide access to the hosts filesystem. (grub-emu 用以访问宿主文件系统)

loopback.mod Make a device of a file. (command to add loopback devices.)

biosdisk.mod BIOS 磁盘设备 (cdrom, hdd, cdrom 访问层)

lvm.modmodule to read Logical Volumes. (加密卷)

memdisk.modAccess embedded memory disk

raid.mod module to read RAID arrays.

引导器

appleloader.modBoot legacy system. (apple legacy boot loader.)

multiboot.mod multiboot - Load a Multiboot kernel.

linux.mod linux- Load a linux kernel.

loadenv.modload_env - Load variables from environment block file.

blocklist.mod Print a block list.

boot.mod Boot an operating system.

bsd.modfreebsd - load freebsd kernel

chain.mod load another boot loader

其他 (未知)

aout.mod

elf.mod

_bsd.mod

_chain.mod

_linux.mod

_multiboot.mod

IO hook

bufio.mod buffered io access

gzio.mod decompression support for gzip

GRUB2对设备与分区的命名规则举例如下,看看就能明白。需要说明的是磁盘从"0"开始计数,分区从"1"开始计数。

上面所举的例子仅是最常用的情形,更多高级的设备命名规则请参考GRUB2手册中的"<u>Naming convention </u>"与"<u>How to specify devices </u>"部分。此外,如果你想看看当前系统上有哪些设备可用,可以在GRUB SHELL中使用"ls"命令(可能需要先加载必要的驱动模块)。

文件的命名方法有两种:(1)绝对路径表示法,(2)相对路径表示法。举例如下:

上面所举的例子仅是最常用的情形,更多高级的文件命名规则请参考GRUB2手册中的"<u>How to specify files </u>"部分。

磁盘块的命名方法同样也有两种:(1)绝对路径表示法,(2)相对路径表示法。举例如下:

磁盘块几乎只用于链式引导(chainloader)的场合。更多高级的磁盘块命名规则请参考GRUB2手册中的"<u>How to specify block lists </u>"部分。

这是我记录的一些常用的知识点,详细使用以及例子请到这里:

GRUB2配置文件"grub.cfg"详解(GRUB2实战手册) [金步国]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11927930.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存