私はすでに、centos5.8のlvm環境でデータを含むparititonを持っています
fdisk-lの出力
root @ server [〜] #fdisk -l
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 25 200781 83 Linux
/dev/sda2 26 121601 976559220 8e Linux LVM
lvdisplayの出力
# lvdisplay
--- Logical volume ---
LV Name /dev/sysvg/ROOT
VG Name sysvg
LV UUID 6oy3Rj-ka3K-mL9s-vjjG-1Iqw-dniq-UbWzvJ
LV Write Access read/write
LV Status available
# open 1
LV Size 919.44 GB
Current LE 29422
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Name /dev/sysvg/TMP
VG Name sysvg
LV UUID jTKLBt-eNz0-KxmV-E5Nk-jjC0-FlRb-qny62p
LV Write Access read/write
LV Status available
# open 1
LV Size 9.88 GB
Current LE 316
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
--- Logical volume ---
LV Name /dev/sysvg/SHM
VG Name sysvg
LV UUID NpKjhl-tzzn-Dk3G-A6dl-4QJB-QCc2-IkbDH5
LV Write Access read/write
LV Status available
# open 1
LV Size 2.00 GB
Current LE 64
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
df-hの出力
root@server [~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/sysvg-ROOT
891G 125G 721G 15% /
/dev/mapper/sysvg-TMP
9.6G 153M 9.0G 2% /tmp
/dev/mapper/sysvg-SHM
8.0G 8.0K 8.0G 1% /dev/shm
/dev/sda1 190M 19M 162M 11% /boot
tmpfs 8.0G 8.0K 8.0G 1% /dev/shm
/ etc/fstabの出力
root@server [~]# cat /etc/fstab
/dev/sysvg/ROOT / ext3 usrjquota=quota.user,jqfmt=vfsv0 1 1
/dev/sysvg/TMP /tmp ext3 defaults 1 2
/dev/sysvg/SHM /dev/shm ext3 defaults,usrquota 1 2
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/tmp /var/tmp ext3 defaults,bind,noauto 0 0
スワップパーティションの作成方法がわからないので、データ損失の原因となるのではないかと心配しています。
スワップを作成するには、いくつかのことを行う必要があります。
スワップが存在する場所に使用可能なスペース(スペアブロックデバイス(通常はパーティション)または通常のファイル)を用意します。 1GBのファイルを作成するには、例を使用します。
dd if=/dev/zero of=/path/to/swap/file bs=1M count=1k
mkswap
コマンドを使用してスワップを準備します。これにより、デバイス/ファイル上のデータが消去されます(そこにいくつかのデータ構造が作成されます)。
swapon /path/to/swap/device_or_file
でスワップをアクティブにします。スワップファイルの場合、基礎となるファイルシステムを最初にマウントする必要があります。
簡単にマウントできるように、fstabに入れます。
/path/to/swap/device_or_file swap swap defaults 0 0
swapoff
は、デバイスへのスワッピングを無効にします。 swapon
とswapoff
の両方に-a
オプションがあり、すべてのスワップへのスワップを有効/無効にします。swapon -a
は、/etc/fstab
に記載されているすべてのスワップを有効にします。 noauto
オプションを設定すると、swapoff -a
はallスワップを無効にします。
ファイルへのスワッピングには、スワッピング専用に予約された個別のパーティション/デバイスを必要としないという利点がありますが、さまざまなオーバーヘッドが発生します。読み取り/書き込みはファイルシステムレイヤーを通過し、ファイルの内容はハードドライブ上のデバイス(フラグメント化)全体に分散する可能性があります回転プレートを使用すると、応答が遅くなる可能性があります。
私の理解では、only file-swapで休止状態(ディスクにサスペンド)することはできません。ウェイクアップ時に、カーネルは保存されたイメージをスワップから読み取る必要があり、最初にファイルシステムをマウントする必要があるためです。これは、休止状態のシステムでは重大な結果をもたらす可能性があります。
次の手順を使用してスワップスペースを作成できます(ここでは/home/
でスワップを作成しています)
1)dd if=/dev/zero of=/home/swapfile1 bs=1024 count=8388608
(カウントはスワップスペースのキロバイトカウントです)
2)mkswap /home/swapfile1
3)vi /etc/fstab
エントリを作成:/home/swapfile1 swap swap defaults 0 0
4)swapon -a
Lvmにスワップパーティションを作成するには(ボリュームグループがvgroup000と呼ばれ、lv_swapと呼ばれる4GBのスワップパーティションを作成するとします):
lvm lvcreate vgroup000 -n lv_swap -L 4GB
mkswap /dev/vgroup000/lv_swap
起動するたびにマウントするには、次の行を/ etc/fstabに追加します。
/dev/vgroup000/lv_swap swap swap defaults 0 0
すぐにマウントするには:
swapon -a