#contents
~
* LVM 作成 [#kd93ef65]
** 新規作成 [#qee5d721]
+ # fdisk /dev/sda
+ ''n'' → ''p'' → ''2''(空いている番号) → ''Enter'' → ''10000M''(10Gの場合) で領域を確保して
+ ''t'' → ''2''(空いていた番号) → ''8e'' で領域を Linux LVM に設定
+ ''w'' で保存して終了
+ # reboot
+ # pvcreate /dev/sda2~
(上記の空いている番号「''2''」の場合)~
# pvdisplay で作成されているか確認~
+ # vgcreate VolGroup00 /dev/sda2~
(VolGroup00 はなんでもいい)~
# vgdisplay で作成されているか確認~
+ # lvcreate -L 10G -n LogVol01 VolGroup00~
(LogVol01 は、わかりやすい名前にした方が吉)~
※ 空いている領域を全部割り当てるオプションは、「-L 10G」の変わりに「-l 100%FREE」にする~
# lvdisplay で確認~
~
*** 使えるように ext3 でフォーマット [#tbae4130]
+ # mkfs.ext3 /dev/VolGroup00/LogVol01

** 削除 [#ie5457f3]
+ # lvremove /dev/VolGroup00/LogVol01~
''削除したいボリュームのフルパス''
+ 削除してよいか聞いてくるので y

~
* 容量を増やす又は減らす [#s28d58e0]
** 1つのボリュームを普通に増やす [#je38e802]
10GByte の LVtest に 5GByte 追加する。~
+ # lvresize -L +5G /dev/VolGroup00/LVtest~
これで、15GByte になる。


** 仮想化など元もLVMで容量を増やした場合と、ディスク増設で容量を増やした場合 [#e10ea9b7]
どちらも、5GByte 増えたとして設定
*** 仮想化など元もLVMで容量を増やした場合 [#t89e8775]
+ # umount ディレクトリ
+ # fdisk /dev/sda
+ ''d'' → ''2'' (変更する領域を削除。システム領域だったとしても無理やりやっちゃう!)
+ ''n'' → ''p'' → ''2''(空いている番号) → ''Enter'' → ''Enter''で領域を確保して
+ ''n'' → ''p'' → ''2''(空いている番号) → ''Enter'' → ''Enter''で領域を確保して~
 Partition #2 contains a LVM2_member signature.
 
 Do you want to remove the signature? [Y]es/[N]o:
~↑ 上記が表示されたら「''n''」でシグネッチャを消さない
+ ''t'' → ''2''(空いていた番号) → ''8e'' で領域を Linux LVM に設定
+ ''w'' で保存して終了
+ # reboot~
&color(RED){''起動しなかったら泣くしかないね(涙''};
+ # pvresize /dev/sda2~
# pvdisplay で増えているのを確認
+ # lvextend -L +5G /dev/VolGroup00/LogVol01~
※ または、「lvextend -l +100%FREE /dev/VolGroup00/LogVol01」
~ パスは「lvdisplay」で調べられる
~# lvdisplay で確認~

*** ディスク増設で容量を増やした場合 [#k432f7d7]

** ext3 でフォーマットしていた場合は以下の方法 [#w84f9624]
# resize2fs /dev/VolGroup00/LogVol02 15G

** xfs でフォーマットした場合(Redhat7とか) [#qd52c3cf]
# xfs_growfs /dev/mapper/cl_skylark--t-root

** swap領域を減らして / 領域に割り当てる [#l7b705c6]
 swap … VolGroup00 に所属して、LogVol01 (4.84GByte)である。
 /    … VolGroup00 に所属して、LogVol00 (2GByte)である。
 swap を 1.5G にして、削除した分の 3.34G を / に割り当てる
+# swapoff /dev/VolGroup00/LogVol01
+# lvreduce -L 1.5G /dev/VolGroup00/LogVol01~
 WARNING: Reducing active logical volume to 1.50 GB~
 THIS MAY DESTROY YOUR DATA (filesystem etc.)~
Do you really want to reduce LogVol01? [y/n]: ''y''~
 Reducing logical volume LogVol01 to 1.50 GB~
 Logical volume LogVol01 successfully resized~
+# mkswap /dev/VolGroup00/LogVol01
+# swapon /dev/VolGroup00/LogVol01
~/ 領域を拡張
+# vgs~
 VG         #PV #LV #SN Attr   VSize VFree~
 VolGroup00   1   2   0 wz--n- 9.88G 3.34G~
+# lvextend -L +3.34G /dev/VolGroup00/LogVol00
+# resize2fs /dev/VolGroup00/LogVol00~
※ オンラインでも拡張できる。

* スナップショット [#tc629f6a]
-リアルタイムにデータが更新されるものでは、ある時点のデータをバックアップしたいときがあり、そういうときに使う。
-ある時点LVMの領域をコピーしておく。(ちょっと違うが。)
** 使い方 [#t58beaa0]
-lvcreate -s -L サイズ -n 名前 相手LVパス~
「サイズ」は相手LVのサイズの10%〜20%~
「名前」は、スナップショットの名前。分かりやすいもの~
「相手LVパス」は、スナップショットする元のLVでデバイスをフルパス指定~
~
 VolGroup00 の LVtest のスナップショットを作る場合
 # lvcreate -s -L 2G -n SStest /dev/VolGroup00/LVtest
** バックアップ方法 [#pb29dc27]
+# lvcreate -s -L 2G -n SStest /dev/VolGroup00/LVtest
+# dd bs=128M if=/dev/VolGroup00/SStest of=/tmp/LVtest.back~
※ フルバックアップなので、スナップ元のサイズのファイル(LVtest.back)が作られる~

* 容量を減らす ※ 大体は失敗する(笑 [#l229e745]
/ 領域が 5GByteで、4GByteに減らす~
+# resize2fs /dev/VolGroup00/LogVol00 4G~
fsck するように言われるので、fsck する
+# lvresize -L 4G /dev/VolGroup00/LogVol00

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS