在 Mac (Python) 将文件复制到 RAM

Copying files to RAM on Mac (Python)

我是 运行 来自另一个用户的一些代码,它构建了一个卷积网络。一个早期的函数试图通过 运行:

将训练和测试图像复制到 /dev/shm
import os
import time

paths = ["data/raw/images_train_rev1", "data/raw/images_test_rev1"]

for path in paths:
    if os.path.exists(os.path.join("/dev/shm",os.path.basename(path))):
        print "%s exists in /dev/shm, skipping." % path
        continue

    print "Copying %s to /dev/shm..." % path
    start_time = time.time()
    os.system("cp -R %s /dev/shm/" % path)
    print "  took %.2f seconds." % (time.time() - start_time)

我收到错误:

cp: /dev/shm: Permission denied
cp: data/raw/images_test_rev1: unable to copy extended attributes to 
/dev/shm: No such file or directory

我可以在 Mac 上使用 /dev/shm 的替代品吗?


我使用以下信息在 OSX 中创建了一个虚拟磁盘:

http://osxdaily.com/2007/03/23/create-a-ram-disk-in-mac-os-x/

然后: ls -lah /dev/rdisk1 crw-------- 1 xxxx 员工 1, 4 5 月 27 日 16:26 /dev/rdisk1

但是,当我尝试写入时出现错误:

/rdisk1 is not a directory
took 0.78 seconds.
Copying data/raw/images_test_rev1 to /dev/rdisk1...
cp: /dev/rdisk1 is not a directory
took 0.02 seconds.

希望能帮到你。谢谢。

你可以使用这个工具https://gist.github.com/koshigoe/822455

cd /tmp
git clone https://gist.github.com/822455.git
cd 822455
chmod +x *
sudo ./mount-ram.sh /dev/shm 1024 
sudo chmod 777 /dev/shm

它将在 RAM 中创建一个可写的 /dev/shm 1G 文件夹