Raspberry Piには256 MBのRAMしかないので、スワップスペース(SDカードまたは接続されたUSBストレージ)を使用したいと思います。どのように設定しますか?
Raspberry Piには256 MBのRAMしかないので、スワップスペース(SDカードまたは接続されたUSBストレージ)を使用したいと思います。どのように設定しますか?
回答:
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ストレージは自動マウントされているので、ここで潜在的な競合(自動マウント対スワップオン)
/var/swap
が悪い考えである理由を明確にできますか?
スワップスペースは非常に簡単に設定できます。たとえば、USBドライブがの場合/dev/sdx
、次を使用します(このためにはルートである必要があります)。
$ 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
良いコンベンションだと思います。
まったくこれをしないでください。
Raspberry Piでスワップを有効にしないでください。
可能ですが、役に立ちません。クラス10のSDHCカードでも、遅すぎます。また、SDカードの寿命が短くなります。
フラッシュベースのストレージデバイス(SDカード、SDD、USBサムドライブ)でも、フラッシュブロックの大きなグループが消去されている間、システム全体の一時停止が発生する可能性があります。
考えられる例外:
Raspberry PiにはGigaBit Ethernetがないのは残念ですが、少なくとも理論的にはネットワークデバイス上にスワップスペースを持つことが可能です-Linux ターミナルサーバープロジェクトは、Wikiのこの項目に従ってサーバーからクライアントにそれを提供できます。
Foundationフォーラムのトピック「Tip:Swap over nfs」を見つけました。これは、NFSマウントを既に持っている人が、そのうちの1つでスワップファイルを使用し、ループマウント経由でマウントする方法を示しています(Linuxでは直接使用するNFSマウント)。リモートスワップファイルに OS が失われてはならないデータが保持されることを考えると、有線イーサネットネットワークの場合にのみこれを検討します。無線リンクは非常に脆弱です。また、もちろん、スワップをオフにして最初に完全に空にすることなく、リモートサーバーのシャットダウンを許可しないでください!