是否可以将程序安装到外部驱动器上?


9

我使用烤面包片在东芝chromebook上运行Ubuntu 14.04。我的操作系统所安装的驱动器很小,只有3.6 GB的可用空间。我想sage在系统上安装,但系统上sage需要6 GB的可用空间。

但是,我始终将SD卡插入本机。该卡具有175 GB的可用空间。是否可以sage在SD卡上安装?

我尝试sage使用命令下载的方式

apt-add-repository -y ppa:aims/sagemath
apt-get update
apt-get install sagemath-upstream-binary

如在这里找到的。


您如何安装Sage?来自Deb包?通过解压缩档案?通过源代码编译?
吉尔斯(Gilles)'所以

@Gilles我刚刚更新了问题,包括我的安装方式sage
布赖恩·菲茨帕特里克

Answers:


4

很难按软件包将Debian软件包按软件包拆分到不同的磁盘上。没有对此的支持;您必须dpkg分别在要安装在非默认位置的软件包上调用。

将目录树放置到单独的磁盘上很容易。就您而言,幸运的是,据我所知,PPA中的Sage软件包会将大部分文件安装在中/usr/lib/sagemath。您可以轻松地将其放在SD卡上。假设SD卡已安装(如果有)/media/sdcard。在此处创建目录并建立符号链接。

mkdir /media/sdcard/sagemath
ln -s /media/sdcard/sagemath /usr/lib/sagemath

然后dpkg安装的所有文件/usr/lib/sagemath都将最终存储在SD卡上(无论它们来自哪个软件包)。

如果在SD卡不存在的情况下尝试使用Sage或管理Sage软件包,则会收到错误消息,并且如果您插入SD卡并重复操作,也不会造成伤害。


感谢您的提示。我已经按照您的建议安装了sage。但是,发出$ sage退货bash: /usr/bin/sage: Permission denied
布赖恩·菲茨帕特里克

如果需要诸如“可执行文件”和所有者/组信息之类的属性,则需要外部驱动器具有UNIX类型的文件系统(例如ext4,btrfs等)。
Ned64 2015年

@ Ned64我的SD卡具有ext4。
布赖恩·菲茨帕特里克

@BrianFitzpatrick我要说的是,在vfat上您需要posixovlfs,但是由于这是ext4,因此您不需要任何特殊的东西。虽然…您如何安装SD卡?如果您有中的user选项/etc/fstab,请添加exec选项。
吉尔斯(Gilles)'所以

@Gilles我etc/fstab# UNCONFIGURED FSTAB FOR BASE SYSTEM
布赖恩·菲茨帕特里克

4

这是个有趣的问题。让我们讨论一下可以尝试的几种方法。

方法1:在apt-get安装过程中操纵位置

使用apt-get,是不可能的。如果要使用.deb文件进行安装,则将无法再次进行。原因很简单,安装位置已硬编码到这些软件包中。

要操纵安装位置,必须在安装之前sage从源代码进行编译并对其makefile进行修改。这将带来管理依赖项的负担。

然而,已经对此进行了讨论。也许,人们已经做到了。也许他们以某种方式操纵了安装位置。看到这里这里。如果您找到执行此操作的方法,请添加评论。

方法2:更改/ usr文件夹的位置

您可以更改/usr文件夹本身的位置,然后将其传输到外部卡。通常不建议这样做,但是由于您一直说要始终插入它,因此应该没问题。

为此,有两种方法:

  1. (最好)在外部卡中创建一个分区,并将当前/usr文件夹中的所有内容传输到该分区。然后,修改您的/etc/fstab分区以将该分区作为/usr文件夹挂载,并/usr完全删除旧文件夹。为此,您需要从应急光盘或实时CD / USB引导。

  2. 同样,在这种方法中,请先从应急光盘或实时CD / USB引导,然后将/usr文件夹移动到外部卡,然后创建到新文件夹的符号链接/usr

聚苯乙烯

这是一个有趣的问题,最近随着硬盘装满,我一直在思考这个问题。我将尝试其中的一些方法并更新答案。欢迎批评这些方法。

更新

另请参阅@gilles答案。他的建议更好。无需将所有/usr文件夹移动到外部卡上,而是将文件夹移动/usr/lib/sagemath到外部卡上,因为它占用了大约3.1GB的安装空间。因此,在方法2中,您可以移动此文件夹而不是/usr


/usr当不存在SD卡时,移动到SD卡将使系统无法使用。这不是一个好主意。
吉尔斯(Gilles)'所以

是。但是,OP提到该卡将始终保持插入状态。我在回答中提到了这一点。
shivams 2015年

@吉尔斯我只是你的答案。您的建议肯定更好。
shivams 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.