轻松实现 MagicLinux3-XX.iso 在U盘或硬盘上 Live 运行
最简单的方法是用 UltraISO 写进 USB,这里提供制做引导盘的办法对 Magic 进行 Live 运行。现在 grub2 在 win 上的工具很难找到,我这里采用的方法是先安装虚拟机,然后 Live 运行 Linux 再行操作:
VBOX 下载地址:
https://www.virtualbox.org/wiki/Downloads
建立并虚拟运行 MagicLinux:
插入 U 盘,让 VBOX 菜单中绑定 U 盘设备,于是在启动的 MagicLinux 的 Live 系统中我运行指令
blkid 除了未格式化的主分区 /dev/sda 外,可以看到两个设备 /dev/sr0 和 /dev/sdb1,其它的 /dev/loop(1234) 或是 /dev/zram0 都是 Live 挂载的临时数据。
sr0 指的是光盘,也就是我们的 ISO 文件,所以/dev/sdb1 是我们插入绑定的 U 盘。
现在我把 grub2 安装到 U 盘上,我从右下角托盘先打开 U 盘,在 U 盘根目录下面按 F4 打开 dolphin 终端执行以下指令:grub2-install --root-directory=./ /dev/sdb --force复制 MagicLinux-3.0.5-Live-x86_64.iso 到U盘根目录
在 U 盘内写入 boot/grub2/grub.cfgkwrite boot/grub2/grub.cfggrub.cfg 的内容如下:
menuentry "MagicLinux-3.0.5-Live-x86_64.iso"{
set isofile="/MagicLinux-3.0.5-Live-x86_64.iso"
loopback loop $isofile
linux (loop)/BOOT/vmlinuz from=$isofile ramdisk_size=8888 root=/dev/ram0 rw
initrd (loop)/BOOT/initrfs.img
}
假设我把 MagicLinux 的 iso 镜像复制到第一个硬盘第二分区,也就是 Win 显示的 D 盘,grub.cfg 的内容如下:
menuentry "MagicLinux-3.0.5-Live-x86_64.iso"{
set root=(hd1,5)
set isofile="/MagicLinux-3.0.5-Live-x86_64.iso"
insmod ntfs
loopback loop $isofile
linux (loop)/BOOT/vmlinuz from=$isofile ramdisk_size=8888 root=/dev/ram0 rw
initrd (loop)/BOOT/initrfs.img
}
提示:
grub2 和 grub 不同,hd1 指的是第一只硬盘,(hd1,1)'指的是类似 Win 上的 C 盘。
2014.7.17 日下午上传的 MGC 3.0.5 更新了内核,不再出现 LIVEUSB 上认不到数据的问题。
特别声明:不要在不同的硬盘分区里存放同名却不同内容的 ISO,这样 Live 加载后随意寻找一个分区根目录的 ISO 文件。
重启计算机,跟据 Bios 按特殊键并选择启动硬盘为U盘,接下来就是见证 Live 运行 MagicLinux 的时刻。
以下图片截取自 VBOX: 2.5.15 的Live用别的工具都启动不起来,连dd命令都不行
只有用这个,强 dd 是最笨的办法,我也用过,备份的 mbr引导才发现它只适用于同型号的机子。 使用 grub2-install --root-directory=./ /dev/sdc
结果Path `./boot/grub2' is not readable by GRUB on boot. Installation is impossible. Aborting. 你进 U 盘了? 提示是你操作的目录不能写入。
而且如果你是单硬盘的,你的 U 盘可能是 /dev/sdb,而不是 /dev/sdc。 换了个u盘Installation finished. No error reported.
上个尤盘是sdc1 结果同样 错误 在盘里写了boot但不完全
这个好了 如何能改下使用其他版本 原帖由 jd0965 于 2012-7-15 00:51 发表 http://forum.linuxfans.org/images/common/back.gif
如何能改下使用其他版本
如果是 magic,直接换掉 ISO 就可以了,其它的系统修改一下 grub.cfg 应该也可以。 老大您好,请问下如果我的U盘已经安装了GRUB4DOS,那么想启动您的 MagicLinux,LST文件具体该怎么写呢?这玩意根本找不到CFG文件!只有LST文件~~ 再找找吧 GRUB24DOS 而不是 GRUB4DOS
如果是 GRUB4DOS,把文件全部解压到 fat32 分区根目录,比如是C 盘。meau.lst 写为
kernel (hd0,0)/boot/vmlinuz root=/dev/ram ramdisk_size=8888
initrd (hd0,0)/boot/initrd.gz 很悲催的报道了。
无法进入界面,全部黑屏,偶尔用鼠标划过,能看看鼠标移到文本框的样式。
【MagicLinux-2.5.16-Live】
使用的是grub2,进入命令行模式,直接输入
set isofile="/MagicLinux-2.5.16-Live.iso"
loopback loop $isofile
linux (loop)/boot/vmlinuz from=$isofile ramdisk_size=6666 root=/dev/ram0 rw
initrd (loop)/boot/initrd.gz
boot 在进入桌面后,按 ctrl +alt + f1 (f2),切换到终端模式。
然后尝试删除 /etc/X11/xorg.conf,给出你的显卡配置,最好用lspci|grep VGA 看看是什么。如果删掉 xorg.conf 还不能进入系统,可以尝试一下显示最差的 vesa 驱动。
尝试一下,如果能解决,给出lspci|grep VGA 的信息,下次如果上传 ISO 时会在 Live 脚本中做出修正。 MagicLinux:
# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Device 0116 (rev 09)
01:00.0 VGA compatible controller: nVidia Corporation Device 0df5 (rev a1)
UbuntuLinux:
~$ lspci|grep VGA
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF108 (rev ff)
删除了xorg.conf,依然不能进入界面,依然是黑色的。
还没试过修改vesa 话说,使用/etc/X11/xorg.conf 这个文件提供的配置 vesa 后,init5 后依然屏幕是黑色的。没有改变。 原帖由 loneil 于 2012-8-26 10:50 发表 http://forum.linuxfans.org/images/common/back.gif
MagicLinux:
# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Device 0116 (rev 09)
01:00.0 VGA compatible controller: nVidia Corporation Device 0df5 (rev a1)
U ...
汗了,你这个是双显卡,可以尝试删掉 xorg.conf 看能否工作。
你能不能把系统默认识别成的驱动列给我看一下,你再尝试把它改成 intel 试下?