Linuxでスワップパーティションを変更するにはどうすればよいですか?現在、スワップに/ dev / hda3を使用しており、/ dev / hda4を使用したい場合、どのステップを実行する必要がありますか?
Linuxでスワップパーティションを変更するにはどうすればよいですか?現在、スワップに/ dev / hda3を使用しており、/ dev / hda4を使用したい場合、どのステップを実行する必要がありますか?
回答:
十分な量のRAMがあり、アプリケーションがメモリ集約型でない場合は、パーティション全体ではなく、個別のファイルをスワップとして使用することを検討できます。これにより、スワップファイルを追加するか、既存のスワップファイルのサイズを変更することで、使用するスワップスペースの量を簡単に選択できます。
スワップファイルがとしてルートディレクトリに存在し/swapfile
、サイズが512 MBであるとします。作成するには、rootとしてコマンドを発行します。
$ dd if=/dev/zero of=/swapfile bs=1M count=512
$ mkswap /swapfile
$ swapon /swapfile
再起動後に自動的に使用するには、次を挿入し/etc/fstab
ます。
/swapfile none swap defaults 0 0
より多くのスワップファイルを追加すると、(複数のファイルを作成するなど、簡単なようで/swapfile1
、/swapfileX
、)を使用して、それらをフォーマットmkswap
して使用可能swapon
。スワップファイルを無効にする場合は、コマンドを使用できますswapoff /swapfile
。
ディスクとファイルのバージョン間のパフォーマンスに関しては、それほど大きな違いはありません。ラップトップのハイバネーションディスクとしてswapfileを使用することもできます(とにかく、常に別のパーティションを使用します)。
/ dev / hda4をスワップとしてフォーマットする必要があります。これはファイルシステムテーブルを削除し、/ etc / fstabを編集してスワップを/ dev / hda4にポイントするだけだと思います。その後、再起動すると元気になります。言うまでもなく、/ dev / hda4のデータが失われます。gpartedをフォーマットのGUIとして使用できます。
mateuszaの解決策は問題ありませんが、休止状態から回復するときに状態を思い出せない場合があります。いくつかの追加の操作が必要です:
# prepare your partitions
swapoff /dev/sda2
mkswap /dev/sda3
swapon /dev/sda3
# find swap uuid
sudo blkid | grep swap
# OR
sudo echo ls -l /dev/disk/by-uuid | grep sda3 | cut -d' ' -f8 >> /etc/fstab
# edit swap entry in /etc/fstab
gksu gedit /etc/fstab
# edit the uuid line in /etc/initramfs-tools/conf.d/resume
gksu gedit /etc/initramfs-tools/conf.d/resume
# In terminal, execute this command
sudo update-initramfs -u
休止状態が機能しない場合は、ここで休止状態をテストできます。
# check your /etc/default/grub file
gksu gedit /etc/default/grub
# Depending on your version : if a line looks like
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=UUID=<old_swap_partition_uuid>"
# then modify it accordingly; otherwise that's all, you're done
# execute in terminal
sudo update-grub