无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: 2011niumao
打印 上一主题 下一主题

[发布] SQUASHFS系统UBUNTU20.04与18.04,VHD系统UBUNTU16.04(64位)

    [复制链接]
271#
 楼主| 发表于 2015-2-6 17:51:08 | 显示全部楼层
2011xiongdeyuan 发表于 2015-2-6 13:42
老大,链接打不开,能否更新下

能打开的.只看一楼的第一个第二个链接吧.
中间经过一次所有连接失效.所以重新整理集中到这两个链接里了.
回复

使用道具 举报

272#
 楼主| 发表于 2015-5-5 18:05:10 | 显示全部楼层
nyhfsl 发表于 2015-5-5 17:46
我装了你的最新的“UBUNTU-14101.vhd”引导进去提示
“the system is running in low-graphics mode”
...

显卡的问题???建议自己安装15.04到固定vhd上,再手动制作可以引导固定vhd的initrd.img.
或者在启动菜单上加入 nomodeset.

点评

这个nomodeset直接加到这里后面吗?  详情 回复 发表于 2015-5-6 15:14
回复

使用道具 举报

273#
 楼主| 发表于 2015-5-6 19:35:48 | 显示全部楼层
nyhfsl 发表于 2015-5-6 15:14
这个nomodeset直接加到这里后面吗?

应该是加在 linux 或者 linuxefi 那个语句最后吧
例如 linux /ubuntu/vmlinuz-xxxxxxxxxxxxxxxx root=UUID=XXXXX  nomodeset

点评

这是菜单里面没你说的linux什么。。 只有加这里哪个地方。。  详情 回复 发表于 2015-5-7 09:11
回复

使用道具 举报

274#
 楼主| 发表于 2015-5-7 16:15:51 | 显示全部楼层
nyhfsl 发表于 2015-5-7 10:03
老大我用你的vhd在物理机引导,不提示显卡问题了,但是直接进入initramfs命令行咋回事?而且一直提示usb鼠 ...

感觉不能使用vboot引导吧.很早以前就抛开vboot vloop了.
仅仅在引导参数上使用了vloop 和 vlooppart两个名字.

如果用grub4ods引导 ,编辑menu.lst,  那么在kernel语句最后加上 nomodeset
如果用grub2引导,编辑grub.cfg或者grubpc.cfg 在linux语句后面加 nomodeset.
回复

使用道具 举报

275#
 楼主| 发表于 2015-5-7 16:17:25 | 显示全部楼层
本帖最后由 2011niumao 于 2015-5-7 16:22 编辑
nyhfsl 发表于 2015-5-7 10:03
老大我用你的vhd在物理机引导,不提示显卡问题了,但是直接进入initramfs命令行咋回事?而且一直提示usb鼠 ...


vboot就是grub2,加入了几个私有模块而已.但是比较古老了,不能用于grub-efi.
可以试试以下修改的菜单
  1. menuentry "VHD Ubuntu 10.04 64-bit, Linux 3.16.0-25-generic" {
  2.         kernel /vboot/grub/core.img
  3.         linux (hd0,1)/UBUNTU/vmlinuz-3.16.0-25-generic root=/dev/sda1 vloop=/UBUNTU/UBUNTU-14101.vhd vlooppart=p3  nomodeset
  4.         initrd (hd0,1)/UBUNTU//initrd.img-3.16.0-25-generic
  5. }
复制代码


点评

如果用grub4ods引导 ,编辑menu.lst 我的lst 还是悬停在initramfs命令。 如果用vboot引导 我的菜单 还是提示 [attachimg]216125[/attachimg] 我的vhd在硬盘C盘的UBUNTU目录下。  详情 回复 发表于 2015-5-7 17:48
回复

使用道具 举报

276#
 楼主| 发表于 2015-5-7 16:22:22 | 显示全部楼层
nyhfsl 发表于 2015-5-7 09:11
这是菜单里面没你说的linux什么。。
只有加这里哪个地方。。

kernel  /ubuntu/vmlinuz-3.16.0-25-generic root=UUID=%?%  vloop=/ubuntu/UBUNTU-14101.vhd vlooppart=p3 nomodeset
initrd  /ubuntu/initrd.img-3.16.0-25-generic
回复

使用道具 举报

277#
 楼主| 发表于 2015-5-7 18:17:05 | 显示全部楼层
本帖最后由 2011niumao 于 2015-5-7 19:31 编辑
nyhfsl 发表于 2015-5-7 17:48
如果用grub4ods引导 ,编辑menu.lst
我的lst


grub4dos应该注意 vlooppart=p1 还是 vlooppart=p3
看你的vhd的根分区在第几个分区上而定。如果是我的vhd14101,那应该是p3.

vboot那个就不太懂了。很长时间不用了。建议删除kernel那一句。只留下linux initrd两句试试。
此外 hd0,1 改为 hd0,2 看看。你可能有boot系统分区。如果是这样,可能 root=/dev/da1 也要更改为 root=/dev/sda2 .
vlooppart是p1还是p3 需要注意修正.
UBUNTU应该是小写才对吧.因为grub4dos找到了vmlinuz initrd.img
只是根分区没有挂好.而vboot是连vmlinuz都没有找到

点评

老大问你个问题,我在网上下一个海蜘蛛的软路由vhd版本的,怎么查看他是什么linux内核的?怎么引导? http://bbs.txwm.com/thread-1984057-1-1.html 这个帖子的。  详情 回复 发表于 2015-5-13 17:03
谢谢我找到原因了。除了你说的vlooppart=p1 改成 vlooppart=p3。。还有就是我引导路径文件名没有改完全,我的目录是大写,菜单里的是小写。我改了就进去了。。还能进去我自己用虚拟机装的“ubuntu-14.10-desktop-i38  详情 回复 发表于 2015-5-8 11:05
回复

使用道具 举报

278#
 楼主| 发表于 2015-5-13 20:04:40 | 显示全部楼层
nyhfsl 发表于 2015-5-13 17:03
老大问你个问题,我在网上下一个海蜘蛛的软路由vhd版本的,怎么查看他是什么linux内核的?怎么引导?
...

似乎可以 命令行 uname -a 看看.我下载了,但是在一个ubuntu系统里面使用命令sudo kpartx -av ly.vhd没有反应..说明它不是固定大小vhd,可能是动态大小的.可以另外建立一个固定大小vhd,把所有文件 sudo cp -a 过去,也许可以使用kloop模式引导它.

点评

我把下载的vhd文件ghost到固定vhd上可以吧。。  详情 回复 发表于 2015-5-14 09:30
回复

使用道具 举报

279#
 楼主| 发表于 2015-5-14 10:47:34 | 显示全部楼层
nyhfsl 发表于 2015-5-14 10:22
老大,我把原vhd文件内容ghost到用虚拟机VirtualBox创建的固定大小问vhd文件,用3.16.0-25-generic.zip ...

卡到initramfs是说明内核找到了.但是根没有挂载好.
注意有kloop vloop两种引导模式,参数不一样. 不能混用.
贴一下你的引导菜单.还有 vhd文件的放在哪里了.

点评

我的vhd文件放在C:\UBUNTU目录下新的vhd名字是Newlyvhd.vhd,我的存放路径图片 [attachimg]216497[/attachimg]  详情 回复 发表于 2015-5-14 11:33
回复

使用道具 举报

280#
 楼主| 发表于 2015-5-14 11:54:42 来自手机 | 显示全部楼层
菜单没错。是不是你下载的是kloop模式的内核啊。可以改vloop那一句的vloop为kloop。把vlooppart整个一句改为kroot=/dev/mapper/loop0p1
回复

使用道具 举报

281#
 楼主| 发表于 2015-5-14 14:52:27 | 显示全部楼层
nyhfsl 发表于 2015-5-14 11:33
我的vhd文件放在C:\UBUNTU目录下新的vhd名字是Newlyvhd.vhd,我的存放路径图片

我尝试一下也是进入了initramfs环境,但是ls /root 发现根目录挂载好了.
问题出在这个lyvhd不是一个完整的linux系统.它没有 /sbin/init文件.所以无法继续引导下去了.
看了看它附带的menu.lst文件如下.可以看出它直接把内存盘当作了最后的根目录.
这样就不能使用这里的 vloop kloop模式引导了.

  1. title Hi-Spider Router (with Kernel: 2.6.18)
  2.         root (hd0,0)
  3.         kernel /boot/vmlinuz root=/dev/ram0 loglevel=3
  4.         initrd /boot/initrd.gz
  5. title Hi-Spider Router Rescue mode (with Kernel: 2.6.18)
  6.         root (hd0,0)
  7.         kernel /boot/vmlinuz.bak root=/dev/ram0 rescue
  8.         initrd /boot/initrd.gz
复制代码

点评

格式是对的。你可以在使用另一个vhd的ubuntu系统虚拟机启动,就可以看到了。在/boot/grub/下面。  详情 回复 发表于 2015-5-14 19:12
你给的代码写在哪里呀?menu.lst里面不是这个格式吧。。。  详情 回复 发表于 2015-5-14 15:02
你给的代码写在哪里呀?menu.lst里面不是这个格式吧。。。  详情 回复 发表于 2015-5-14 15:02
回复

使用道具 举报

282#
 楼主| 发表于 2015-5-14 19:11:12 | 显示全部楼层
本帖最后由 2011niumao 于 2015-5-14 20:13 编辑
nyhfsl 发表于 2015-5-14 15:02
我把vhd挂载到win7下面,看到引导文件了,我把他的引导文件initrd.gz和vmlinuz提取出来,在我的menu.ls ...


搞不定啊。因为如果使用它的initrd.gz 则需要改写它的init文件,使得它可以挂载vhd,这时还需要把ntfs-3g,kpartx 给复制到initrd.gz里面。那么需要拆开initrd.gz再打包好。如果使用现成ubuntu可以引导固定vhd的内核,它本身系统没有/sbin/init ,导致引导的最后一步,就是 chroot到真实根分区上就无法执行了。所以内核只好停留在initramfs那里了。

关键在于它的init文件是二进制文件,不是文本文件.还是没有方法编辑.

点评

老大试试吧。。或者给个方法。。。。。。还是就是行不通不能挂载vhd  详情 回复 发表于 2015-5-15 08:41
回复

使用道具 举报

283#
 楼主| 发表于 2015-5-14 19:12:43 | 显示全部楼层
2011niumao 发表于 2015-5-14 14:52
我尝试一下也是进入了initramfs环境,但是ls /root 发现根目录挂载好了.
问题出在这个lyvhd不是一个完整 ...

格式是对的。你可以在使用另一个vhd的ubuntu系统虚拟机启动,就可以看到了。在/boot/grub/下面。
回复

使用道具 举报

284#
 楼主| 发表于 2015-5-15 13:01:10 | 显示全部楼层
nyhfsl 发表于 2015-5-15 08:41
老大试试吧。。或者给个方法。。。。。。还是就是行不通不能挂载vhd

已经尝试过了.感觉不行.不过瞎猜一句,是不是可以把ly.vhd的所有文件都塞到initrd.gz里面去,这样就是纯粹内存系统了.只有两个文件,vmlinuz  initrd.gz 你可以随便放置了.

点评

纯内存系统的话,意义就不大了,不能设置信息了。。没法保存了。。。你说呢?  详情 回复 发表于 2015-5-15 14:57
回复

使用道具 举报

285#
 楼主| 发表于 2015-5-20 19:07:19 | 显示全部楼层
root=/dev/UBUNTU/LuYou.vhd vlooppart=p1修改为
root=UUID=%?%  vloop=/UBUNTU/LuYou.vhd vlooppart=p1

点评

不行还是知道命令行。  详情 回复 发表于 2015-5-21 10:55
回复

使用道具 举报

286#
 楼主| 发表于 2015-5-21 12:47:32 | 显示全部楼层
nyhfsl 发表于 2015-5-21 10:55
不行还是只到命令行。
现在新问题,我把这里的:

进入命令行就是成功了.当然不能是initramfs界面.因为有可能你下载的那个系统没有桌面吧.修改vlooppart需要知道你的vhd系统中根分区是第几个.直接关机就不清楚了.

点评

[attachimg]216922[/attachimg][attachimg]216923[/attachimg][attachimg]216924[/attachimg] 这个是分区信息,只有第二个分区有信息,第一个分区什么也没有。  详情 回复 发表于 2015-5-21 15:09
回复

使用道具 举报

287#
 楼主| 发表于 2015-5-21 17:11:40 | 显示全部楼层
nyhfsl 发表于 2015-5-21 15:09
这个是分区信息,只有第二个分区有信息,第一个分区什么也没有。
虚拟机能进入登录画面,还是那个 ...

不清楚原因.也许 你可以加上 在 vlooppart=p2 后面 空格 vloopfstype=ext3 尝试一下.

点评

还是不行直接进入命令行,是不是你给的内核不行只能引导ubuntu不能引导别的linux系统。。  详情 回复 发表于 2015-5-22 09:20
回复

使用道具 举报

288#
 楼主| 发表于 2015-5-22 13:17:31 | 显示全部楼层
nyhfsl 发表于 2015-5-22 09:20
还是不行直接进入命令行,是不是你给的内核不行只能引导ubuntu不能引导别的linux系统。。

测试过可以引导很多系统的,有 ARCH Fedora Opensuse Mageia.但是都是完整的发行版.
你这个系统应该还是与完整发行版有区别的.对于这种有些像嵌入式系统的小型linux可能就是引导不了.

点评

呢为何这样的系统在虚拟机引导就没问题。。  详情 回复 发表于 2015-5-22 15:00
回复

使用道具 举报

289#
 楼主| 发表于 2015-5-23 10:09:59 | 显示全部楼层
nyhfsl 发表于 2015-5-22 15:00
呢为何这样的系统在虚拟机引导就没问题。。

在虚拟机里也是内存系统.

点评

。。。。呢有能保存,数据的内存系统方法?  详情 回复 发表于 2015-5-25 08:53
回复

使用道具 举报

290#
 楼主| 发表于 2015-5-25 13:23:00 | 显示全部楼层
nyhfsl 发表于 2015-5-25 08:53
。。。。呢有能保存,数据的内存系统方法?

可以有的.道理有些像对squashfs只读系统保存修改的方法.详细的就不太懂了.不过可百度.资料很多的.
回复

使用道具 举报

291#
 楼主| 发表于 2015-5-25 13:23:06 | 显示全部楼层
nyhfsl 发表于 2015-5-25 08:53
。。。。呢有能保存,数据的内存系统方法?

可以有的.道理有些像对squashfs只读系统保存修改的方法.详细的就不太懂了.不过可百度.资料很多的.
回复

使用道具 举报

292#
 楼主| 发表于 2015-6-1 22:06:45 | 显示全部楼层
photor 发表于 2015-6-1 17:42
楼主,我用你的kloop成功启动了原来虚拟机安装的kubuntu 14.04.2,内核是你给的百度网盘链接里的ubuntu-3.1 ...

http://pan.baidu.com/s/1bnnjBXX#path=%252FKLOOP
可以在这个连接下载kloop教程自己制作可以引导vhd的initrd.img

刚刚上传了一个3.16.0-39版本的.可以引导vhd的initrd.img vmlinuz.可以直接下载使用.

grub2这个缺点我也遇到过.还是卸载了保险.

点评

谢谢。不过每次更新内核之后都需要重新制作相应的vhd引导内核吗?没有办法用旧的vhd内核引导实际系统的新版本内核?3.16.0-39版本的会自动引导实际系统的3.16.0-38内核吗?  详情 回复 发表于 2015-6-1 23:15
回复

使用道具 举报

293#
 楼主| 发表于 2015-6-2 08:13:46 | 显示全部楼层
photor 发表于 2015-6-1 23:15
谢谢。不过每次更新内核之后都需要重新制作相应的vhd引导内核吗?没有办法用旧的vhd内核引导实际系统的新 ...

需要重新制作内核的.不过如果按照kloop教程操作一次,并把引导vhd内核initrd.img文件改为系统内核initrd名字并替换掉/boot/的内核,以后就可以自动更新到新版本了.

点评

那就是说3.16.0-39版本的vhd引导内核没法引导实际系统的3.16.0-38内核了?另外我有点奇怪你这个39版本是从哪里来的,最新的稳定版也才38啊? 看来那个kloop制作教程我也得学了,等有时间了折腾折腾  详情 回复 发表于 2015-6-4 22:16
回复

使用道具 举报

294#
 楼主| 发表于 2015-6-5 18:24:32 | 显示全部楼层
photor 发表于 2015-6-4 22:16
那就是说3.16.0-39版本的vhd引导内核没法引导实际系统的3.16.0-38内核了?另外我有点奇怪你这个39版本 ...

应该是 可以引导vhd的内核一定能引导实际系统和固定vhd系统的.3.16.0-39是自然升级升的.可能是软件源不一样造成的时间差别.
回复

使用道具 举报

295#
 楼主| 发表于 2015-8-13 10:28:24 | 显示全部楼层
sherylynn 发表于 2015-8-9 22:32
感谢楼主,请问一下,在grubpc.cfg的启动项中,在linux的行尾添加 text,为什么这样linux开机不能直接进入 ...

看了看 好像如此.这个与init文件代码有关.不好改.
回复

使用道具 举报

296#
 楼主| 发表于 2015-8-13 14:45:21 | 显示全部楼层
yweiqiang 发表于 2015-8-13 11:20
谢谢分享,之前已经下载第七版的VHD,正常使用,现在想更新,看帖子好像最新的是UBUNTU-14101-VHD-new吧? ...

应该是吧,

点评

谢谢大神,下载最新的grub通用启动器-2014-11-11,发现Grub4dos引导的NTBOOT不能启动 newwin7.vhd,通过对比旧版的menu.lst发现: 新:command /NTBOOT/NTBOOT NT6=/newwin7.vhd 旧:command (bd)/NTBOOT/NTBOOT N  详情 回复 发表于 2015-8-22 08:24
回复

使用道具 举报

297#
 楼主| 发表于 2015-9-11 18:17:24 | 显示全部楼层
本帖最后由 2011niumao 于 2015-9-11 18:24 编辑
nyhfsl 发表于 2015-9-11 16:24
老大新问题。有能引导雪豹系统(传说苹果系统Apple.Mac.OSX.v10.7.Lion-iND.iso)的,引导文件吗?用你的引 ...


到了这一步,引导已经完成了. 感觉不是引导工具的事情.应该是系统的事情吧.就是initramfs里面那个init脚本需要修改,以便挂载根分区.

当然也可能是引导参数有问题.请检查核对.
回复

使用道具 举报

298#
 楼主| 发表于 2015-11-17 09:58:46 | 显示全部楼层
ee1 发表于 2015-11-17 09:16
这个办法好!
原来 vhd 也能map ,呵呵,很好!


请到 http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1 一楼的链接下载vloop教程 kloop教程,任选其一按照教程制作。

点评

ee1
在initramfs 手动怎样挂载 root? 不用改动vhd 里面的initrd.img  详情 回复 发表于 2015-11-17 10:00
回复

使用道具 举报

299#
 楼主| 发表于 2015-11-17 10:15:17 | 显示全部楼层
ee1 发表于 2015-11-17 10:00
在initramfs 手动怎样挂载 root? 不用改动vhd 里面的initrd.img


还是使用mount命令挂载ntfs分区。使用kpartx -av挂载vhd到loop设备上,再把/dev/mapper/loop0p1挂载到/root。
手工chroot到/root。具体命令百度看看。

点评

ee1
需要kpartx ,initramfs 里面没有kpartx,看来 重做initrd.img是必须的  详情 回复 发表于 2015-11-17 10:45
ee1
好的,试一下,多谢!  详情 回复 发表于 2015-11-17 10:20
回复

使用道具 举报

300#
 楼主| 发表于 2015-11-17 10:55:21 | 显示全部楼层
ee1 发表于 2015-11-17 10:45
需要kpartx ,initramfs 里面没有kpartx,看来 重做initrd.img是必须的

嗯。需要给initrd.img加入一些原来没有的功能就必须重新制作initrd.img。
以下是在initramfs环境下手工启动的几个命令。测验还是成功的。供参考。
加括号的是上一行命令的变化,似乎都可以。
  1. mount -t ntfs-3g -o rw /dev/sda5 /host
  2. (mount -t ntfs -o rw /dev/sda5 /host)
  3. kpartx -av /host/ubuntu/UBUNTU-1510.vhd
  4. mount -t ext4 -o rw /dev/mapper/loop0p1 /root
  5. exec switch-root /root /sbin/init
  6. (exec chroot /root /sbin/init)
复制代码

点评

ee1
呵呵,做好了 进入initramfs以后 mkdir -p /media mount -t ntfs-3g -o rw /dev/sda2 /media kpartx -av /media/kan/u.vhd mount -t ext4 -o rw /dev/mapper/loop0p1 /root exec chroot /root /sbin/init 就这  详情 回复 发表于 2015-11-17 16:31
ee1
多谢LZ! 现在把在真机里启动VHD的LINUX原理算是弄明白了,关键是挂在u.vhd 这样普适大多数LINUX发行版!  详情 回复 发表于 2015-11-17 11:06
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-11 12:59

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表