是否有从 Linux 系统安装 Ubuntu 的程序?

Gyr*_*ose 4 system-installation

我需要升级我非常旧的 SUSE Linux,我想从 SUSE 切换到 Ubuntu。

我正在寻找如何创建可启动 USB 记忆棒的过程中,当我意识到我的备用记忆棒中最旧和最小的有一个 .exe (wubi),如果它的自述文件是正确的,它将允许我安装 Ubuntu 启动从 Windows 机器。

现在我想知道是否也存在在 Linux 上运行的此类安装程序。这比刻录 ISO 映像要容易得多,冒着目标框无法从 USB 启动等风险。

编辑1:

与此同时,我找到了一个适合我的 1GB 记忆棒的 Ubuntu 7 的小 ISO 映像(是的,7,不是 17,没有错字)。我设法使用我的另一台计算机(系统->管理-> USB 启动盘创建)将它刻录到棒上,并使用此映像成功启动了盒子。

它引导我进入某种BusyBox v1.1.3具有(initramfs)as 提示的 shell 。我可以做pwd甚至apt-get,但apt-get告诉我 libapt-pkg-libc6.6-... 丢失了。我认为这不应该发生。

冒险的下一部分是我正在下载 ubuntu16.04.3 (1.5GB) 的 iso 映像,找到下一个更大的棒并再试一次。

编辑2:

现在我已经下载了我希望是最新的 iso-image,cksum 给了我

1089871577 1587609600 ubuntu-16.04.3-desktop-amd64.iso
Run Code Online (Sandbox Code Playgroud)

在与旧的 Acer BIOS 发生一些冲突后,盒子尝试从 USB 启动,但给出警告:

Missing parameter in configuration file.
Unknown keyword in configuration file.
Run Code Online (Sandbox Code Playgroud)

在那之后,我看到了一个看起来像是boot:通过电源开关对硬重置做出反应的提示,除了在大约半小时后,盒子失去耐心并重新启动,结果相同。

编辑3:

现在可以启动 Ubuntu 16 的 ISO 映像。诀窍是简单地在提示中键入“帮助”并等待事情发生。

最后一个问题仍然存在:它只启动 Ubuntu,但不安装它。有什么不见了?

kar*_*rel 5

解压

引导一个基本的 Debian 系统

debootstrap 用于从头开始创建 Debian 基础系统,不需要 dpkg 或 apt 的可用性。它通过从镜像站点下载 .deb 文件并小心地将它们解压到一个最终可以 chroot 的目录中来做到这一点。

debootstrap 并不比创建可启动的 Ubuntu live USB 或刻录 Ubuntu ISO 映像容易得多。它甚至不比从Ubuntu Minimal CD引导更容易,这是一个轻量级的纯文本 Ubuntu 安装程序,可以在许多无法引导全尺寸 Ubuntu 安装程序介质的计算机上引导。Ubuntu Minimal CD 允许您安装软件包组,非常方便,您也可以通过安装tasksel软件包,在不使用 Ubuntu Minimal CD 的情况下安装相同的软件包组。


如何使用 debootstrap 安装 Linux

安装 debootstrap

如果您从非基于 Debian 的发行版安装,您的发行版可能有也可能没有可用的 debootstrap。要获得 debootstrap,您可以直接从 Debian 镜像下载。

要查看可用的包,请使用 Web 浏览器,或使用以下命令:

wget --no-remove-listing -O /tmp/deboot.html -q http://ftp.us.debian.org/debian/pool/main/d/debootstrap && grep 'all.deb' /tmp/deboot.html | awk -F 'href' '{print $2}' | cut -d '"' -f2
Run Code Online (Sandbox Code Playgroud)

debootstrap 的最新版本是 debootstrap_1.0.123_all.deb

wget -P /tmp/debootstrap http://ftp.us.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.123_all.deb
Run Code Online (Sandbox Code Playgroud)

解压 .deb 文件

cd /tmp/debootstrap  
ar vx debootstrap_1.0.123_all.deb  
tar -xf data.tar.gz 
Run Code Online (Sandbox Code Playgroud)

临时设置

sudo ln -s /tmp/debootstrap/usr/sbin/debootstrap /usr/sbin/debootstrap  
sudo ln -s /tmp/debootstrap/usr/share/debootstrap /usr/share/debootstrap
Run Code Online (Sandbox Code Playgroud)

设置目标分区进行安装

创建文件系统、挂载点并挂载分区:

sudo mkfs.ext4 -L Debian /dev/sda1  
sudo mkdir /mnt/deboot  
sudo mount -t ext4 /dev/sda1 /mnt/deboot  
Run Code Online (Sandbox Code Playgroud)

安装具有网络访问权限的基本系统

sudo debootstrap --arch amd64 focal /mnt/deboot http://archive.ubuntu.com/ubuntu
Run Code Online (Sandbox Code Playgroud)

准备chroot环境

复制挂载的文件系统表。它使 df 命令保持愉快。(它将在启动时被覆盖。)

sudo cp /etc/mtab /mnt/deboot/etc/mtab
Run Code Online (Sandbox Code Playgroud)

绑定虚拟文件系统。在您的新安装自行启动之前,我们将从主机借用这些。

sudo mount -o bind /dev /mnt/deboot/dev  
sudo mount -o bind /proc /mnt/deboot/proc  
sudo mount -o bind /sys /mnt/deboot/sys  
Run Code Online (Sandbox Code Playgroud)

在 chroot 中继续安装

进入chroot环境:

sudo chroot /mnt/deboot /bin/bash
Run Code Online (Sandbox Code Playgroud)

由于我们使用了--include获取 grub的选项,因此它已安装,但未配置。

sudo grub-install /dev/sda    
sudo update-grub  
Run Code Online (Sandbox Code Playgroud)

设置/etc/fstab根文件系统。使用blkid 命令获取/dev/sda1的UUID。

sudo blkid /dev/sda1
Run Code Online (Sandbox Code Playgroud)

然后将此条目添加到/etc/fstab使用上述命令的 UUID 输出中:

sudo UUID=79168060-9d9c-4cf6-8ee9-bb846aee589b / ext4 defaults,errors=remount-ro 0 1
Run Code Online (Sandbox Code Playgroud)

为您的新安装命名。如果没有,您的新安装将没有名称,或继承您正在安装的主机的名称。

sudo echo "<name-your-host>" > /etc/hostname
Run Code Online (Sandbox Code Playgroud)

配置您的语言环境。

sudo dpkg-reconfigure locales
Run Code Online (Sandbox Code Playgroud)

为 root 创建密码。

sudo chroot# passwd
Run Code Online (Sandbox Code Playgroud)

创建一个普通用户。

sudo adduser <your-user-name>
Run Code Online (Sandbox Code Playgroud)

设置网络(eth0)

已经包含了一些基本工具来管理您的网络,但还没有为您配置任何东西。如果您计划安装桌面环境,则可能会引入诸如网络管理器或 wicd 之类的工具来自动配置您的网络。

您可以在每次启动时使用工具 dhclient 或 ifconfig 手动启动您的网络。

对于动态 IP (DHCP):

sudo dhclient -v eth0
Run Code Online (Sandbox Code Playgroud)

对于静态 IP:

sudo ifconfig -v eth0 192.0.2.7 netmask 255.255.255.0 up
Run Code Online (Sandbox Code Playgroud)

您可以通过编辑以下文件在系统启动时自动完成此操作。

对于 DHCP,该/etc/network/interfaces文件应如下所示:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
Run Code Online (Sandbox Code Playgroud)

对于静态 IP,/etc/network/interfaces文件应如下所示:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
   address 192.0.2.7
   netmask 255.255.255.0
   gateway 192.0.2.254
Run Code Online (Sandbox Code Playgroud)

安装显示管理器和窗口管理器

除非您将它用于无头服务器,否则使用某种桌面可能会很好。如果您想安装新软件包,请不要忘记更新软件包管理器:

sudo apt-get update
Run Code Online (Sandbox Code Playgroud)

以下是安装桌面的一些示例:

sudo apt install xserver-xorg wdm fluxbox xterm # -or -  
sudo apt install xserver-xorg lightdm xfce4 # -or -  
sudo apt install gdm3 gnome # -or -  
sudo apt install kdm kde-standard  
Run Code Online (Sandbox Code Playgroud)

您也可以使用 tasksel 为您安装桌面。要查看可用选项:

sudo tasksel --new-install
Run Code Online (Sandbox Code Playgroud)

完成安装

清理包缓存:

sudo apt-get clean
Run Code Online (Sandbox Code Playgroud)

更新虚拟磁盘:

sudo update-initramfs -u -k all
Run Code Online (Sandbox Code Playgroud)

退出 chroot 环境:

sudo exit
Run Code Online (Sandbox Code Playgroud)

来源:如何安装以使用 debootstrap 安装 Linux


归档时间:

查看次数:

839 次

最近记录:

4 年,10 月 前