Mou*_*inX 59 system-installation
我不想刻录 CD、DVD 或 USB 记忆棒。而且我不在乎保存现有的操作系统(Linux Mint)。我想直接从 ISO 映像将 Ubuntu(实际上是 Kubuntu 12.04 LTS)安装到计算机上。该映像适用于 Kubuntu Live DVD (3.5 GB)。
计算机现在启动到 Linux Mint。一组命令行步骤将是令人满意的。在我看来,我只需要欺骗现有系统以为我插入了 CD/DVD,对吗?
我知道已经有一个类似的问题,但没有很好的答案。答案基本上是说,“请参阅此链接。” 我查看了链接,我决定 StackExchange 需要一个很好的答案来回答这个问题。此外,互联网上其他地方的大多数答案都假设用户是从 Windows 来到 Ubuntu 的。所以我认为这个问题在这里需要一个很好的答案。谢谢
Mit*_*tch 53
我在网上找了找这个。
如果条目已在 Grub2 配置文件中正确定义,Grub2 能够直接引导许多 Linux 发行版的 ISO 映像。
ISO 映像必须放置在未安装操作系统的单独分区上。为简单起见,我们将它放在 /boot 下的一个新目录中(假设它在一个单独的分区上)。
创建新目录并复制您的 ISO 映像:
sudo mkdir /boot/iso
sudo cp ~/Desktop/name.iso /boot/iso
Run Code Online (Sandbox Code Playgroud)
~/Desktop/name.iso假设映像位于您的桌面上,则 ISO 映像的位置和名称在哪里。
添加 Grub2 条目:
需要将 ISO 映像的条目添加到/etc/grub.d/40_custom文件中。通过以下方式编辑文件:
gksudo gedit /etc/grub.d/40_custom
Run Code Online (Sandbox Code Playgroud)
并用这个替换该文件中的文本:
#!/bin/sh
echo "Adding 40_custom." >&2
exec tail -n +4 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry "Kubuntu ISO" {
set isofile="/boot/iso/kubuntu-12.04.iso"
loopback loop (hd0,8)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd.lz
}
Run Code Online (Sandbox Code Playgroud)
哪里:
Kubuntu ISO = 要在 Grub 菜单中显示的名称。boot/iso/kubuntu-12.04.iso = ISO 映像的位置和名称。(hd0,8) = 包含 ISO 映像的分区。tail -n +4意思是“grub 开始按原样读取配置的那一行”。本例中的第 4 行是第一个注释行,这很好。Grub 以不同于 Ubuntu 的方式读取分区。'hd0' 表示sdaUbuntu读取的第一个 HDD ,并且8相同的分区。所以换句话说,(hd0,8) 的意思是“sda8”。
要找出您的分区,请在终端中运行此命令:
sudo fdisk -l
Run Code Online (Sandbox Code Playgroud)
假设您的图像包含在sda1分区中,您将(hd0,8)在上面的行中更改为(hd0,1),如果图像在sdb1分区中,您将更(hd0,8)改为(hd1,1).
保存并关闭此文件,现在运行以下命令:
sudo update-grub
Run Code Online (Sandbox Code Playgroud)这次重新启动并从 Grub 菜单中选择新的 ISO 条目。希望它能够成功启动到桌面。
现在,如果您想从同一个 ISO 执行安装,您需要先卸载 ISO 映像,因为它是从 HDD 上的一个分区挂载的(可能您有一个 HDD 并且想要将 Ubuntu 安装到相同的 HDD),安装程序需要先卸载所有已安装的分区,然后才能进行任何更改。
因此,从 Live CD 环境中,转到终端并运行:
sudo umount -l /isodevice
Run Code Online (Sandbox Code Playgroud)就这样。现在您可以双击桌面上的“安装”图标并继续安装。
更多信息请参阅Ubuntu 论坛 1和Ubuntu 论坛 2
资料来源:TuxGarage
我无法使用 Mitch 的答案,因为我想安装 Ubuntu minimum 而 ISO 映像不起作用(没有 vmlinuz)。所以我改用它来使用NetbootInstall
我将下载的文件放入 /boot/netboot 并将以下条目添加到 grub 配置中:
menuentry "NetInstall" {
linux (hd0,0)/boot/netboot/ubuntu-installer/amd64/linux
initrd (hd0,0)/boot/netboot/ubuntu-installer/amd64/initrd.gz
}
Run Code Online (Sandbox Code Playgroud)
然后我忘了跑
sudo update-grub
Run Code Online (Sandbox Code Playgroud)
所以我不得不再次启动到现有的 linux,但最终更新了 grub,实际安装非常顺利。
| 归档时间: |
|
| 查看次数: |
224451 次 |
| 最近记录: |