どうすればスワップファイルを作成できますか?


11

スワップパーティションを作成して使用する方法を知っていますが、代わりにファイルを使用することもできますか?

Linuxシステムでスワップファイルを作成するにはどうすればよいですか?

回答:


18

パーティションではなくファイルを扱う場合、少しオーバーヘッドがあることを明確にしましょう。

さらに、私自身もいくつかのマシンでmdadmRAID 上のスワップファイルを使用しているため、さらにオーバーヘッドが発生します。しかしvm.swappiness、デフォルトである60よりも許容できる値に賢く調整すれば、問題はないはずです。

たとえば、私は32GB RAMサーバーと32GBのスワップファイルをRAID6にvm.swappiness= 1で持っています。

vm.swappiness = 1:カーネルバージョン3.5以降、およびRed Hatカーネルバージョン2.6.32-303以降:完全に無効にすることなくスワップする最小量。

この例では、スワップファイルを作成します。

  • サイズ8GB

  • にあります /raid1/

必要に応じて、これら2つを変更してください。

  1. ターミナルを開いてrootsu); あなたがしている場合はsudo有効になって、あなたはまた、例えば行うことができますsudo -iman sudoすべてのオプションを参照してください):

    sudo -i
    
  2. スワップファイルにスペースを割り当てます。

    dd if=/dev/zero of=/raid1/swapfile bs=1G count=8
    

    オプションで、システムがサポートしている場合はstatus=progress、そのコマンドラインに追加できます。

    ここで指定するサイズGはGiB(1024の倍数)であることに注意してください。

  3. スワップファイルのアクセス許可を変更して、rootアクセスのみできるようにします。

    chmod 600 /raid1/swapfile
    
  4. このファイルをスワップファイルにします。

    mkswap /raid1/swapfile
    
  5. スワップファイルを有効にします。

    swapon /raid1/swapfile
    
  6. スワップファイルが使用されているかどうかを確認します。

    cat /proc/swaps
    
  7. このファイルで熟練したテキストエディターを開きますnano

    nano /etc/fstab
    
  8. 再起動後にこのスワップファイルを使用できるようにするには、次の行を追加します。

    /raid1/swapfile        none        swap        sw        0        0
    
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.