在Linux发行版上创建“ RAMDisk”

RAMDisk图标

如您所知,内存的访问速度非常重要。 磁存储器和处理器之间过去产生的瓶颈意味着必须包括更快的缓冲存储器, 公羊。 后来,随着微处理器的发展,出现了高速缓存,甚至更快地在RAM和CPU寄存器之间提供了缓冲区。 最近出现了SSD硬盘,由于其基于闪存,因此它们比磁机械HDD更快。

技嘉几年前考虑用RAM创建硬盘 (称为i-RAM的RAMDisk),与硬盘驱动器相比,内存非常快,但是与Ageia的PhysX卡发生了类似的情况。 它们并没有真正凝结,最终从市场上消失了,现在有了SSD(和基于RAM的SSD),它的意义就更小了。 什么事啊好吧,它基本上是使用RAM内存来存储数据,就好像它是硬盘一样,因此访问速度要快得多。

好吧,您不需要i-RAM或SSD,也不需要类似的东西来加快传输和访问所需目录,文件或程序的速度。 为此,你可以 在Linux发行版上创建RAMDisk。 唯一的要求是要有足够的RAM,建议大于4GB,以保留其中一部分以用作超高速“硬盘”。 就像某些笔记本电脑的GPU使用共享内存所做的事情一样,但是在这种情况下是用于数据的。

要创建此内存,您必须计算出您拥有的内存,因为如果您耗尽全部或大部分内存,则出于创建内存的目的,RAM将会用光,并且它将变得愚蠢。 例如,如果您有8GB的RAM,则您可能需要2GB的RAMDisk。 我再说一遍,他的意思是,您有更多的RAM,如果您有2GB或4GB,则可能不值得...(记住“ size =“,请指定大小,在我的示例中,我选择了1024MB,即, 1GB,或者您也可以使用“ G”代替“ M”以GB表示)。一旦您知道这一点,我们就可以开始使用 以下步骤 从您的终端:

mkdir /tmp/ramdisk

mount -t tmpfs none /tmp/randisk -o size=1024M

现在,您的RAM中已保留1GB,因此您可以将所需的任何内容添加到我们创建的ramdisk目录中。 做性能测试,您将看到如何 它更快 您拥有的所有内容...如果需要,您可以使用tmpfs以外的其他文件系统(例如ext4或ramfs)在RAM中创建分区。

如果您希望蒙太奇输入保持不变,请当心! 如果关闭计算机或重新启动,您在此处保存的数据将丢失,但输入将保留为p。这样您就不必在每次启动时都创建分区 使用以下技巧将其添加到分区表(fstab)中,以便自动创建(使用您喜欢的文本编辑器来编辑输入:vi,nano,gedit ...):

gedit /etc/fstab

Y en el fichero de texto que se abre crea la siguiente entrada sin comillas "tmpfs /mnt/ramdisk tmpfs nodev, nosuid, noexec, nodiratime, size=1024M 0 0"

重要提示: 请记住,重新启动或关闭时您的数据将消失 计算机,因为RAM是易失性内存。 因此,无论您想保留什么,都可以在硬盘分区上进行复制。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   毛里求斯

    我有一个问题,一旦关闭设备,数据将继续保存在内存中吗? 我之所以这样说是因为RAM易失。 如果您能向我解释一下,我将不胜感激。

    1.    艾萨克·PE

      你好,

      没错,我忘了在文章中评论说,由于易失性,每次启动计算机时都会将其删除。 感谢您提醒我,我已经添加了它。 这是非常重要的事情,不应忽略,以确保没有人会丢失其数据。

      欢呼,希望我能帮上忙。 谢谢!!!

      1.    毛里求斯

        我所看到的是,有一些程序可以执行此分区。 这些程序的作用是在硬盘上的RAM中的数据上创建映像,以便在我们重新启动它们时不会丢失它们。 然后,按照我的理解,当系统启动时,保存在硬盘上的数据将转储到RAM中,以便我们可以再次使用它。 感谢您的来信,并迅速做出回应! 问候!

  2.   里奥波多·坎蒂略(Leopoldo Cantillo)

    有趣的是,要考虑一些实际的应用程序,一个脚本会在开始时创建此RAM分区并加载感兴趣的文件,这对...放置数据库...没有用。 您必须调查该主题...感谢您的来信。

  3.   苏尔坦诺维奇

    它可能只能详细说明fs。 在我的测试中,它仅按如下方式工作:

    挂载-t tmpfs tmpfs / tmp / ramdisk -o size = 300m

  4.   伊斯梅尔

    令人难以置信的是,GNU / LINUX可以完成的宏伟任务。 :)

  5.   吉米·奥拉诺(Jimmy Olano)

    我们如何将该RAMDisk用于“ tmp”分区?

    在可能的情况下,有可能需要放置代码,我不要求我就主体的实用性询问代码,以便使用它。 我注意到,对于数据库,尽管我没记错,但已经有一个选项可以支持RAM内存中的数据库表,例如:https://dev.mysql.com/doc/refman/5.5/en/storage-engine -setting。的HTML

  6.   匿名

    如果您在最近的20年中很幸运并感到困惑,那么您将能够拥有64GiB的RAM,从而能够将VirtualBOX(或任何其他虚拟机)的虚拟硬盘文件复制到RAM中; 我假设该文件占用的空间不超过48GiB(为Linux和虚拟机留出足够的可用RAM)。 通过这种方式,虚拟机可以飞行,并且如果您还希望丢失虚拟机中的更改(不变性),则不再需要失去使虚拟机的虚拟硬盘不可变的性能,因为在启动虚拟机之前,您必须进行复制它从NVMe / SSD / HDD到RAM,然后关闭RAM中的所有内容(在这种情况下正是所需要的,这就是不变性)会丢失。

    因此,有了这么多的RAM,您可以使硬盘的映像不可变且具有固定的大小,从而在访问中获得最大可能的性能,再加上所述硬盘将位于RAM中,这使得某些图像变得真实。处理虚拟机时非常高兴(一次仅抢夺一个)。

    当您使用完虚拟机后,由于虚拟磁盘已从RAM复制到NVMe / SSD / HDD,因此您希望保留虚拟硬盘的状态。

    我已经看到已经有一些NVMe能够以超过5GiB / s的速度读取(是的,每秒读取0 GB),并且仅使用一个(在RAID48或类似版本中甚至更快)进行复制从它到RAM的XNUMXGiB虚拟硬盘映像仅需大约十秒钟,好吧!
    不利的是,在执行相反的过程(从RAM到NVMe)时,我目前看到的最快写入速度超过3GiB / s(是的,每秒写入48 GB),因此很难保存XNUMXGiB的图像从RAM到NVMe的驱动仅需约XNUMX秒,这又是一个巨大的机会!

    我们将拥有Linux上最快的NVMe和64GiB RAM之一,以及带有Windows 10的虚拟机,如果RAM用于托管虚拟机的硬盘,那是相当困难的。

    现在给Linux的礼物……已经有一个名为“ ramroot”的软件包(至少对于基于Arch的发行版来说),它在启动过程中负责将Linux系统的整个根目录复制到RAM并继续引导。从RAM,我们还可以在我们正在使用的Linux上获得不变性,更不用说它将在RAM上运行,其代价是增加了启动时间。

    如果读过此书的人知道可在启动过程中从CD / USB启动的Linux发行版(例如SystemRescueCD等)复制到RAM,那么他们将知道它提供的好处:始终启动相同,始终运行得尽可能快由于所有内容都在RAM中,因此在启动时或使用Linux时,不会将任何内容写入物理磁盘(这对于延长SSD的使用寿命非常有用,个人不到一个月的时间,写入的字节数不到TB,那么一些SSD已经不存在了。我可以工作,特别是120GB的KingDian品牌),除非很明显,如果我们在读写中安装某些东西并将其保存在其中,再将其与虚拟机结合起来,系统就会“访问”磁盘访问权限,因为每个人都去了RAM。

    将所有Linux都包含在RAM中可以极大地延长SSD和NVMe的使用寿命,因为在引导过程中不会向它们写入任何内容或几乎没有任何内容,一旦启动就绝对不会进行任何操作,除非我们是这样做的人。

    我的测试是在具有7GiB DDR2700 4.35MHz和8GiB NVidia 16 Ti图形的Ryzen 64 4X(3200GHz,具有1050核和4线程)上进行的。

    注意:有些主板甚至支持1TiB的RAM和具有64线程的麦克风,例如ThreadRipper 2等。

  7.   马科斯

    您的评论非常有趣,但是我们不应该夸大必要的RAM:我有一个Windows 10 VDI映像,它只有13 GB的重量,而14 GB的RAM可以轻松地工作。

    对于将整个操作系统安装到RAM中,我不太清楚,这一点也不为过。 如果您已将BSD格式的SSD格式化为启用了即时压缩(将更少的数据写入驱动器),因为在安装软件包时几乎只有数据被写入系统分区(显然,我们希望它保留在系统分区)(SSD /磁盘),配置文件(大小可忽略的文本文件,以及BTRFS的LZO压缩使它们的大小甚至可以忽略不计)和其他几乎没有的东西,因为在我看来,用大炮杀死苍蝇镜头请记住,如果用户拥有4 GB以上的内存,那么所有现代发行版的motan / tmp都将放在RAM中,我认为是RAM,因此SSD /磁盘不会因为写入的许多临时操作而遭受最少的磨损,这是更多我几年前在/分区中插入了藤条。

    另一件事是家庭,那里不断写入数据:缓存,设置(如果我们移动了窗口时会不时更改),下载等。 在那里有趣的是,仅在RAM中工作,并且仅在我们确实愿意时才与磁盘同步,尽管应该有一些工具(我不知道是否会有,我不会感到惊讶,但是在阅读您的评论之前我没有考虑过这个问题)提醒用户要关闭会话时,他们的/ home中有更改而不保存,甚至询问我们是否要将它们同步到磁盘,因为肯定有一半的时间会忘记并关闭计算机以帮助自己领先半秒。

    “有些主板甚至支持1TiB的RAM和具有64线程的麦克风,例如ThreadRipper 2等。”

    而且,机架仍然支持更多功能,但不要让我们选择xD。 让我们回到地球上,人们几乎买不起800欧元的团队...

    问候。

  8.   马科斯

    “我有一个Windows 10的VDI映像,它只有13 GB的重量,带有14 GB的RAM,可以完全轻松地工作。”
    抱歉,我的意思是24GB。 我的手指转到下一个键了吗?