Raspberry Pi仅具有256 MB的RAM,因此我想使用交换空间(在SD卡或连接的USB存储设备上)。如何设置?
Raspberry Pi仅具有256 MB的RAM,因此我想使用交换空间(在SD卡或连接的USB存储设备上)。如何设置?
Answers:
Raspbian使用dphys-swapfile,它是基于交换文件的解决方案,而不是基于“标准”交换分区的解决方案。更改交换的大小要容易得多。
配置文件为:
/etc/dphys-swapfile
内容很简单。默认情况下,我的Raspbian具有100MB的交换空间:
CONF_SWAPSIZE=100
如果要更改大小,则需要修改数字并重新启动dphys-swapfile:
/etc/init.d/dphys-swapfile restart
编辑:在Raspbian上,默认位置是/ var / swap,(当然)位于SD卡上。我认为这是一个坏主意,因此我想指出,/ etc / dphys-swapfile也可以具有以下选项:CONF_SWAPFILE = / media / btsync / swapfile
我唯一的问题是,USB存储设备是自动安装的,因此这里有潜在的竞争(自动安装与swapon)
/var/swap
一个不好的主意吗?
您可以非常简单地设置交换空间。例如,如果您的USB驱动器是/dev/sdx
,则可以使用(必须是root用户):
$ mkswap /dev/sdx
$ swapon /dev/sdx
请注意,这将使用整个设备,并且您可能会丢失所有现有数据。
您还可以通过以下方式创建交换文件(通过使用loop
设备):
$ dd if=/dev/zero of=/path/to/swapfile bs=1M count=1024 # For 1GB swap file
$ mkswap /path/to/swapfile
$ swapon /path/to/swapfile
如果您不再需要交换文件(例如,如果要弹出USB驱动器),则必须使用swapoff <device>
。不这样做可能会导致系统崩溃。
但是您应该小心。SD卡的读/写限制有限,因此会缩短其使用寿命。如果您使用外部硬盘驱动器,则应该可以,但是会很慢。
mkswap
在其根分区上运行。我认为这sdx
是个好习惯。
完全不要这样做。
您应该不启用的树莓派掉。
尽管有可能,但没有用。即使在10级SDHC卡上,它也太慢了。另外,您还会缩短SD卡的使用寿命。
在任何基于闪存的存储设备(SD卡,SDD,USB拇指驱动器)上,擦除大量闪存块时,您还可能会看到系统范围内的暂停。
可能的例外:
遗憾的是,Raspberry Pis没有千兆以太网,但是至少在理论上可以在网络设备上拥有交换空间-Linux Terminal Server Project可以根据其Wiki上的此项,从服务器向客户端提供此空间。 。
我发现了一个基金会论坛主题“技巧:交换nfs”,该主题显示已经安装了一些NFS的人如何在其中一个上使用交换文件并通过循环安装将其挂载(可能是必要的,因为Linux不允许NFS挂载以直接使用)。鉴于远程交换文件将保存操作系统不会丢失的数据,我只考虑在有线以太网网络中使用-无线链接太脆弱了,恕我直言。同样,当然,您必须不允许关闭远程服务器而不关闭交换,并先使其完全清空!