web-dev-qa-db-ja.com

Linuxでスワップパーティションを変更するにはどうすればよいですか?

Linuxでスワップパーティションを変更するにはどうすればよいですか?現在スワップに/ dev/hda3を使用していて、/ dev/hda4を使用したい場合、どの手順を実行すればよいですか?

12

ルートとしてそれを行います:

swapoff /dev/hda3
mkswap /dev/hda4
swapon /dev/hda4

/ etc/fstabのswapエントリを編集します

25
mateusza

適切な量​​の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を使用できます。

ディスクとファイルのバージョン間のパフォーマンスについては、それほど大きな違いはありません。ラップトップでは、スワップファイルをハイバネーションディスクとして使用することもできます(とにかく私は常に別のパーティションを使用しています)。

13
drybjed

急いで:

Sudo swapoff /dev/hda3
Sudo mkswap /dev/hda4
Sudo swapon /dev/hda4

Bootimeの場合、mkswapを実行した後、/ etc/fstabファイルを編集し、それに応じて/ dev/hda3行を変更します。

9
Kyle Brandt

/ dev/hda4をswapとしてフォーマットする必要があります。これはファイルシステムテーブルを削除すると思います。次に、/ etc/fstabを編集してswapを/ dev/hda4にポイントします。その後、再起動してください。言うまでもなく、/ dev/hda4のデータはすべて失われます。あなたはフォーマットのためのGUIとしてgpartedを使用することができます。

4
skitzot33

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

askubunt から取得

2
fkk