我正在尝试在远程服务器上安装 Ubuntu Server 20.04。问题是,我无法连接 USB 驱动器,并且托管提供商不允许我挂载 ISO 映像,我所拥有的只是预装的 Ubuntu 系统。
为了启动 Ubuntu 服务器设置,我按照本文中的说明添加了 grub 菜单项,以便可以从 Ubuntu 服务器 ISO 引导。这是菜单项:
menuentry "Ubuntu 20.04 ISO" {
set isofile="/root/ubuntu-20.04.1-live-server-amd64.iso"
rmmod tpm
loopback loop (hd0,2)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject toram
initrd (loop)/casper/initrd
}
Run Code Online (Sandbox Code Playgroud)
现在,当我选择此菜单项时,安装程序将启动,创建一个 ramdisk,将 ISO 的内容复制到内存中,然后我完成安装的前几个步骤,直到:
太好了,安装程序如何无法发现我的硬盘驱动器?
当我切换到终端并运行时,lsblk
我看到它sda
明显存在并且sda2
仍然安装在/isodevice
- 这是意外的,因为 ISO 已经复制到 ramdisk。umount /dev/sda2
返回“目标正忙”,但它适用于该-l
选项。
即使如此,我在引导存储配置页面上仍然遇到相同的错误。我在这里缺少什么?即使可以看到我的硬盘,什么会阻止安装程序检测到lsblk
它?
更新:
我按照@elder-geek的建议,使用旧版安装程序尝试了它,使用了这个grub菜单项:
menuentry "Ubuntu 20.04 legacy server ISO" {
rmmod tpm …
Run Code Online (Sandbox Code Playgroud) 我正在尝试从 GRUB 启动 Ubuntu .iso 映像。在Full Circle
杂志,#157 page 61,他们描述了如何做到这一点。它不起作用。
我编辑了/etc/grub.d/40-custom
,并添加了以下内容...
# Full Circle #157, page 61
menuentry "Ubuntu 20.04 ISO" {
insmod part_gpt
insmod ext2
set root=(hd0,gpt7)
set isofile="/ubuntu-20.04-desktop-amd64.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd
}
Run Code Online (Sandbox Code Playgroud)
我的 Ubuntu 根目录在 /dev/sda7 上。
我的 .iso 文件位于 /。
我尝试启动 .iso 时遇到的错误是...
disk hd0,gpt7 not found
no server is specified
can't find command noprompt
you need to load the kernel first
Run Code Online (Sandbox Code Playgroud)
关于如何使这项工作的任何想法?