在Ubuntu中使用USB驱动器作为RAM


15

在Windows中,可以将USB闪存驱动器用作虚拟RAM。我想知道在ubuntu中是否可以这样做?如果是这样,怎么办呢?

[编辑]:我的意思是 为Ubuntu 做好准备。我知道它不是ram的完美替代品,不建议长期使用。

在USB闪存驱动器中创建交换文件是否与此类似?它会证明比硬盘驱动器中的交换文件有更高的性能吗?


1
如果您打算像Vista和Windows 7的Readyboost功能一样使用它,则必须将其格式化为交换分区并为其分配交换文件。如果要将其用作额外的系统RAM,则不能。
Ringtail 2012年

是的,我的意思是readyboost
Tachyons

Answers:


12

肖恩(Sean)提出的答案是完成此任务的一种方法,另一种方法是在记忆棒上创建一个交换文件,这样您也可以将记忆棒用于其他文件。像这样:

  • 找出棍子的安装位置。在鹦鹉螺中查看或mount在终端中发布

  • 创建一个空文件dd if=/dev/zero of=/media/YOURSTICK/swap bs=4096 count=131072。这将创建一个512 MB的文件(512 * 1024 ^ 2/4096 = 131072)

  • 创建交换并启用它 sudo mkswap /media/YOURSTICK/swap && swapon -p 1000 /media/YOURSTICK/swap

USB记忆棒上的交换不会比硬盘驱动器上的交换快。从长远来看,它也会杀死U盘,将其写入U盘即可。

要增加ram的可用量,请查看zram


我已经有一个交换分区,我听说有多个交换分区可能会导致此问题,我不会定期使用它,但是我只想在系统负载较重时使用它。
Tachyons,2012年

3
如果您的工作负载需要定期进行交换操作,以至于快速交换产生重大影响,那么最好获得更多RAM。无论交换是在硬盘驱动器还是USB驱动器上,它都将比真实RAM慢几个数量级。
James Henstridge 2012年

是的,usb不能代替真正的ram,但是它可能比真正的ram更好(如果这是错误的,请纠正我:))
Tachyons 2012年

4
USB并不比真正的RAM好
劳伦特(Larent)2012年

5

我是从http://www.tuxgarage.com/2011/07/add-virtual-ram-to-ubuntu-using-spare.html上找到它的

插入USB驱动器,并确保驱动器上没有重要文件。删除驱动器上的所有文件或对其重新格式化,然后转到终端。

首先,如果在插入时Ubuntu自动挂载了驱动器,则需要卸载该驱动器:

sudo umount /media/drive-label

其中“ drive-label”是您在安装USB驱动器时看到的名称。

或者,您也可以按照以下方式进行操作:

sudo umount /dev/sdx1

其中“ sdx1”是您的驱动器/分区字母。您可以通过运行以下命令找到它:

sudo fdisk -l

现在,我们将在您的USB驱动器上创建交换文件:

sudo mkswap /dev/sdx1

从上面的“ fdisk -l”命令的输出中可以看出,“ sdx1”是您的驱动器号。

现在,打开新的交换:

sudo swapon -p 32767 /dev/sdx1

做完了!

为了确保您的新交换工作正常,您可以看一下此命令的输出:

cat /proc/swaps

我的输出是:

/dev/sda2 partition 2047992 60692 -1
/dev/sdb1 partition 7912708 17764 32767

要先取出木棍,请关闭“交换”功能:

sudo swapoff /dev/sdx1

1
这会添加一个交换文件,但它不能用作RAM
Ringtail 2012年

4

如果您确实需要在系统中添加RAM,则只需安装更多的记忆棒或增加机器的物理内存即可。

使用USB不能以仅增加交换文件的方式增加RAM,而且USB 480mb的传输限制会减少读/写时间。

如果您想提高性能,请使用“ zRam”。这会向您的现有系统添加一个特殊文件,并增加系统的虚拟内存。它使用存储在当前RAM中的压缩块技术来减少I / O写入时间

更多信息在这里


Ubuntu中的本机交换分区比Windows中的readyboost更快:o !!!!!!! ??????
Tachyons 2012年

我同意,ReadyBoost功能是由它的传输速度的限制
猫熊

2

我已经尝试过了 但是USB棒在写东西时太慢了。

当系统使用USB交换时,我连续不断经历短暂的挂起。可能是我的棍子这么便宜。

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.