我正在运行 Ubuntu 14.04 32 位(默认 Unity DE)。我有 Xubuntu14.04 桌面(32 位)ISO 文件(图像)。ISO 文件中必须存在 Xubuntu 桌面环境。
我不想从 ISO 安装整个 Xubuntu 操作系统(通过刻录到磁盘并全新安装)但只想在我的 Ubuntu 14.04 操作系统中安装 Xubuntu 桌面环境。
我知道我可以在sudo apt-get install xubuntu-desktop
我当前的 Ubuntu 14.04 操作系统上安装 Xubuntu DE。
但是我可以从 xubuntu 的 iso 文件安装 xubuntu 桌面环境吗(而不是通过 在线apt-get
)?
怎么做?
答案1
在已安装Ubuntu 安装,已安装软件包的缓存存储在,/var/cache/apt/archives
因此如果需要重新安装,则无需再次下载。
在安装磁盘上(Ubuntu 14.04,应该与 Xubuntu 相同),压缩文件系统似乎位于casper/filesystem.squashfs
。因此您应该能够解压缩 squashfs 文件 (我不会以 root 身份执行此操作,否则可能会发生奇怪的事情),并提取缓存的 deb 档案。然后您可以从 deb 中安装列出的依赖项这里。
问题是软件包可能安装在压缩文件系统上,但未缓存,因此无法从磁盘安装。我尝试使用普通的 Ubuntu 安装磁盘(下载自 14.04 的 1GB 版本这里unsquashfs '/run/media/wilf/Ubuntu 14.04 LTS i386/casper/filesystem.squashfs
-在空目录中使用该命令),并且没有缓存的包。
由于缓存的软件包占用了大量空间,当尝试将系统安装程序放入必须适合 CD 或 DVD 的 ISO 时,这些软件包被遗漏也就不足为奇了 - 尤其是在 Xubuntu 磁盘上,因为它更适合低规格系统。除非您复制已安装的数据(这不是一个好主意),否则您无法真正从 iso 安装。缓存的软件包可能包含在某些系统可用的更大的 4GB 安装 ISO 中。
因此,您可能无法进行安装xubuntu-desktop
- 但这是好主意。
答案2
该命令dpkg-repack
可以通过以下方式帮助您:
首先列出安装桌面环境所需的软件包(这里举例来说
xubuntu-desktop
:sudo apt-get install xubuntu-desktop -s | grep Inst | cut -d " " -f 2 > file1
上述命令将所需的包列表
xubuntu-desktop
写入file1
。使用 ISO 中的实时环境尝试不安装选项(通过以下两种方式之一):-
- 在 GRUB 中添加 ISO 条目并直接使用 Live Environment(无需安装即可试用操作系统)
- 将 ISO 刻录到 DVD 并尝试无需安装
在实时环境中运行以下命令:
sudo xargs dpkg-repack < file1
以上命令
dpkg-repack
创建列出的所有软件包的 deb 文件(在运行命令的目录中),file1
因为 Xubuntu 的 Live 会话包含已安装的所有软件包!(将它们移动/复制到您的存储中)现在您已将所有需要的 deb 放在一个目录中。重新启动并返回到您的 Ubuntu(默认)操作系统,然后通过以下任一方式安装软件包:
cd
到包含所有 deb 的目录并运行dpkg -i *.deb
- 或(建议作为标准方法易于)安装帮助本地存储库
简而言之:通过这种方法,你可以通过以下方式获取所需的 debs:dpkg-repack
从发行版 ISO 的实时会话中安装它们到当前操作系统
注意/警告:这里使用的是 Ubuntu 和 Xubuntu 的同一版本,如果有旧/更新,则依赖性问题可能会破坏/降级当前的软件包
答案3
ISO 文件包含 xubuntu 的实时映像,而安装时则需要 debs,这些 debs 通常可以在网上找到,但如果您想进行离线安装,则可能需要下载 debs,然后运行它们或使用 aptocd 之类的程序