我有 Ubuntu 和 Kubuntu live CD ISO。我在我的计算机上安装了 Ubuntu。但我想安装kubuntu-desktop
软件包来尝试 KDE。但这是一个巨大的互联网下载,我负担不起。我可以使用现有的 Kubuntu-Live-CD 在现有的 Ubuntu 安装上安装kubuntu-desktop
软件包吗?
答案1
首先创建两个目录来挂载 iso 和 squashfs 文件系统。
第 1 部分:获取所有必需的 deb 文件
打开终端并执行以下命令:
mkdir /tmp/iso
mkdir /tmp/filesystem
然后将 iso 和 iso 中的实时文件系统挂载到 iso 中:
sudo mount -o loop <path-to-iso-file/kubuntu-12.04-desktop-i386.iso> /tmp/1
sudo mount -o loop /tmp/iso/casper/filesystem.squashfs /tmp/filesystem
然后创建一个目录来创建 kubuntu-desktop 包的所有依赖项
mkdir ~/kubuntu-desktop-repacked
,我假设您已经在主目录中创建了它。
然后在终端中发出此命令
sudo apt-get install kubuntu-desktop
并复制行后的包名称The following NEW packages will be installed:
您可以将包名称保存在新文件中。
然后通过此命令生成所有必需的包,(确保您位于重新打包文件的文件夹中,在本例中为“kubuntu-desktop-repacked”)
sudo dpkg-repack --root=/tmp/filesystem <all-the-names-of-packages-you-copied>
然后按Enter,等待其完成。
第 2 部分:创建本地存储库
现在您拥有了包所需的所有 deb 文件kubuntu-desktop
。您现在需要从本地计算机安装这些包,为此,您需要设置本地存储库。
打开终端并cd
进入所有 deb 文件所在的文件夹。(此处,kubuntu-desktop-repacked)
现在在终端中发出此命令
apt-ftparchive packages . > Packages
Packages
这将创建一个文件,其名称apt
将用于获取有关本地存储库的信息。
现在/etc/apt/sources.list
以管理权限打开该文件,以告知apt
您有一个包含必要包的本地存储库。
sudo gedit /etc/apt/sources.list
将使用文件打开 gedit,它应该已经有许多存储库行。
在文件顶部,添加以下行并保存并关闭文件。
deb file:/home/<path-to-debs-folder> /
用您新打包的 debs 文件夹中的实际路径替换。
在此示例中,这是/home/anwar/kubuntu-desktop-repacked
(我的用户名是anwar
,当然你的可能不同)。
现在在终端中发出此命令来安装所需的软件包(kubuntu-desktop)
sudo apt-get install --allow-unauthenticated kubuntu-desktop
这将安装所有软件包。
注意事项 1:受信任的存储库
此示例使用不受信任的本地存储库,因此我们发出--allow-unauthenticated
切换到apt-get
。您也可以出于相同目的创建受信任的存储库。请参阅下面的参考行。
参考:受信任的存储库。
注意 2:仍需要下载软件包
如果您还需要下载其他软件包,这可能是在线存储库更新的结果。如果某个软件包在在线存储库中有更新的版本,系统apt
将首先尝试安装该软件包。 解决方案正在禁用主存储库执行software-properties-gtk
命令。
打开终端,输入sudo software-properties-gtk
并按Enter。然后删除主要的一个宇宙存储库。还禁用更新存储库更新选项卡
然后通过执行此操作更新存储库缓存
sudo apt-get update
,您现在应该从本地存储库安装包。
注释 3:显示依赖关系损坏错误
如果你已经安装了一些 KDE 软件(通常以“K”字母开头,例如kate
或kile
)并且安装的软件是 Live CD 中包含的软件包的更新版本,并且您禁用了主要的和宇宙来自注释 2 的解决方案的存储库,您将面临一个依赖关系中断错误,提示“某些软件包依赖于其他软件包,但无法安装这些软件包”。
为了解决这个问题,您可以尝试将-t <release>
开关添加到apt-get
命令。例如
sudo apt-get install --allow-unauthenticated kubuntu-desktop -t precise
,用您的版本(oneiric、natty 或 lucid)
替换。precise
如果这不能解决你的问题,然后启用主要的和宇宙存储库。它肯定会下载一些软件包(更新),但下载量不会很大。
注意事项 4:安装 dpkg-repack
如果你没有dpkg-repack
该程序,可以通过终端安装,只需输入以下命令即可
sudo apt-get install dpkg-repack