「LVMの構築方法」の版間の差分

提供: UnixClassWiki
移動先: 案内検索
(ファイルシステム作成とマウント)
(脚注)
 
(同じ利用者による、間の9版が非表示)
1行目: 1行目:
 +
<p style="text-align:right">
 +
追加するだけの場合は [[LVMの追加方法]] へ
 +
</p>
 +
 +
 
== LVM 新しく設定する場合  ==
 
== LVM 新しく設定する場合  ==
  
17行目: 22行目:
 
すべてをプライマリパーティションとして使うことににして設定し、そこにLinux LVMである8e (16進数)のID番号を割り当てます。
 
すべてをプライマリパーティションとして使うことににして設定し、そこにLinux LVMである8e (16進数)のID番号を割り当てます。
  
<tt>
+
<pre class="bash">
 
  # fdisk /dev/sdc
 
  # fdisk /dev/sdc
 
  ...
 
  ...
37行目: 42行目:
 
   ...
 
   ...
 
   #  
 
   #  
</tt>
+
</pre>
 
+
  
 
=== 論理ボリュームグループ作成 ===
 
=== 論理ボリュームグループ作成 ===
46行目: 50行目:
 
ここでのPVは、用意しているパーティション /dev/sdc1 にあたります。
 
ここでのPVは、用意しているパーティション /dev/sdc1 にあたります。
  
<tt>
+
 
 +
<pre class="bash">
 
   # vgcreate vg_ext /dev/sdc1
 
   # vgcreate vg_ext /dev/sdc1
 
   No physical volume label read from /dev/sdc1
 
   No physical volume label read from /dev/sdc1
 
   Physical volume "/dev/sdc1" successfully created
 
   Physical volume "/dev/sdc1" successfully created
 
   Volume group "vg_ext" successfully created
 
   Volume group "vg_ext" successfully created
</tt>
+
</pre>
 +
 
  
 
VGの内容を確認するにはvgdisplayを使います。
 
VGの内容を確認するにはvgdisplayを使います。
  
<tt>
+
 
 +
<pre class="bash">
 
  # vgdisplay vg_ext
 
  # vgdisplay vg_ext
 
   --- Volume group ---
 
   --- Volume group ---
77行目: 84行目:
 
   Free  PE / Size      127 / 508.00 MiB
 
   Free  PE / Size      127 / 508.00 MiB
 
   VG UUID              KHZvkW-Adlo-hjNO-xZOO-cHeV-lJPi-8YNBEk
 
   VG UUID              KHZvkW-Adlo-hjNO-xZOO-cHeV-lJPi-8YNBEk
</tt>
+
</pre>
 +
 
  
 
PE (Physical Extent)のサイズが4.00 MiBとなっているのはデフォルトです。
 
PE (Physical Extent)のサイズが4.00 MiBとなっているのはデフォルトです。
84行目: 92行目:
  
  
LVに割り当てが出来るPEの数は65536 (2^16)までという上限があります。
+
lvm(旧フォーマット)ではLVに割り当てが出来るPEの数は65536 (2^16)までという上限がありました。
したがってPEのサイズが 4 MiBということはLVの最大の値は256GBということになります。
+
現在使われているlvm2ではPV/LV あたりの最大エクステント数に制限はありません。
256GBより大きなLVが欲しい場合は、VGを作成する際にPEの値を大きくしておく必要があります。
+
 
  
vgcreateを実行する際にオプション-s (もしくは --physicalextentsize ) を利用します。
+
vgcreateを実行する際にオプション ''-s''
 +
(もしくは  
 +
''--physicalextentsize''
 +
) を利用します。
 
32mを指定した場合、最大のLVは2TiBとなります。
 
32mを指定した場合、最大のLVは2TiBとなります。
 
  
 
=== 論理ボリューム作成 ===  
 
=== 論理ボリューム作成 ===  
  
LV を作成するにはコマンドlvcreateを利用します。
+
LV を作成するにはコマンド lvcreate を利用します。
-n LV名 -L ボリュームサイズ そしてVG名のオプションを与えます。
+
''-n LV名 -L ボリュームサイズ'' そして ''VG名'' のオプションを与えます。
  
  
<tt>
+
<pre class="bash">
 
   # lvcreate -n lv_ext_01 -L 256MB vg_ext
 
   # lvcreate -n lv_ext_01 -L 256MB vg_ext
 
   Logical volume "lv_ext_01" created
 
   Logical volume "lv_ext_01" created
</tt>
+
</pre>
  
ブロックデバイス /dev/vg_ext/lv_ext_01 が作成されます。
 
  
 +
ブロックデバイス  /dev/vg_ext/lv_ext_01 が作成されます。
  
 
=== ファイルシステム作成とマウント ===  
 
=== ファイルシステム作成とマウント ===  
110行目: 120行目:
 
ext4のファイルシステムを/dev/vg_ext/lv_ext_01上に作成します。
 
ext4のファイルシステムを/dev/vg_ext/lv_ext_01上に作成します。
  
<tt>
+
 
 +
<pre class="bash">
 
   # mkfs -t ext4 /dev/vg_ext/lv_ext_01
 
   # mkfs -t ext4 /dev/vg_ext/lv_ext_01
 
   mke2fs 1.41.12 (17-May-2010)
 
   mke2fs 1.41.12 (17-May-2010)
128行目: 139行目:
 
     8193, 24577, 40961, 57345, 73729, 204801, 221185
 
     8193, 24577, 40961, 57345, 73729, 204801, 221185
 
   Writing inode tables: ....
 
   Writing inode tables: ....
</tt>
+
</pre>
 +
 
  
 
ディレクトリ/mnt/lv_ext_01を作成し、ここにマウントしてみます。
 
ディレクトリ/mnt/lv_ext_01を作成し、ここにマウントしてみます。
  
<tt>
+
 
 +
<pre class="bash">
 
   # mkdir  /mnt/lv_ext_01
 
   # mkdir  /mnt/lv_ext_01
 
   # mount /dev/vg_ext/lv_ext_01 /mnt/lv_ext_01/
 
   # mount /dev/vg_ext/lv_ext_01 /mnt/lv_ext_01/
143行目: 156行目:
 
   /dev/mapper/vg_ext-lv_ext_01
 
   /dev/mapper/vg_ext-lv_ext_01
 
                         253871    10254    230510  5% /mnt/lv_ext_01
 
                         253871    10254    230510  5% /mnt/lv_ext_01
</tt>
+
</pre>
  
  
 +
== 脚注 ==
 +
<references/>
  
 
----
 
----
 
[[目次]]へ
 
[[目次]]へ
 +
あるいは
 +
[[Linux LVM]]へ
 +
 +
 +
このページへのショートURL:
 +
http://uc2.h2np.net/i/48.html

2015年7月27日 (月) 17:37時点における最新版

追加するだけの場合は LVMの追加方法


LVM 新しく設定する場合

ここでは以下の説明をします。

  1. Linux LVM のIDを持ったパーティションを作成する。
  2. 論理ボリュームグループを作成する。
  3. 論理ボリュームを作成する。
  4. ファイルシステムを構築する。
  5. マウントをする。

現在の多くのディストリビューションはインストール時にLVMをデフォルトで利用するので、一般的には最初から行うことは少ないかも知れません。


fdiskでLVMのパーティション作成

下の操作は/dev/sdc (サイズ512MB) のブロックデバイスに対してパーティションを設定し、そこにLVMのIDを割り当てる作業です。 すべてをプライマリパーティションとして使うことににして設定し、そこにLinux LVMである8e (16進数)のID番号を割り当てます。

 # fdisk /dev/sdc
 ...
 Command (m for help): n
 Command action
   e   extended
   p   primary partition (1-4)
   p<RET>
   Partition number (1-4): 1<RET>
   First cylinder (1-65, default 1): <RET>
   Using default value 1
   Last cylinder, +cylinders or +size{K,M,G} (1-65, default 65):<RET>
   Using default value 65
   Command (m for help): t<RET>
   Selected partition 1
   Hex code (type L to list codes): 8e<RET>
   Changed system type of partition 1 to 8e (Linux LVM)
   Command (m for help): w<RET>
   ...
   # 

論理ボリュームグループ作成

現在 /dev/sdc1 のパーティションが作成されおり、そのIDはLinux LVM (8e)になっています。 それを使ってコマンド vgcreate を用いてVGを作成します。VG名はここでは vg_ext とします。 ここでのPVは、用意しているパーティション /dev/sdc1 にあたります。


  # vgcreate vg_ext /dev/sdc1
  No physical volume label read from /dev/sdc1
  Physical volume "/dev/sdc1" successfully created
  Volume group "vg_ext" successfully created


VGの内容を確認するにはvgdisplayを使います。


 # vgdisplay vg_ext
  --- Volume group ---
  VG Name               vg_ext
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               508.00 MiB
  PE Size               4.00 MiB
  Total PE              127
  Alloc PE / Size       0 / 0   
  Free  PE / Size       127 / 508.00 MiB
  VG UUID               KHZvkW-Adlo-hjNO-xZOO-cHeV-lJPi-8YNBEk


PE (Physical Extent)のサイズが4.00 MiBとなっているのはデフォルトです。 1つの LV (Logical Volume 論理ボリューム)に割り当はPEの単位で割り当てられます。 つまり現在のFree PEの値が、VGからLVに割り当てることが出来る最大の値です。


lvm(旧フォーマット)ではLVに割り当てが出来るPEの数は65536 (2^16)までという上限がありました。 現在使われているlvm2ではPV/LV あたりの最大エクステント数に制限はありません。


vgcreateを実行する際にオプション -s (もしくは --physicalextentsize ) を利用します。 32mを指定した場合、最大のLVは2TiBとなります。

論理ボリューム作成

LV を作成するにはコマンド lvcreate を利用します。 -n LV名 -L ボリュームサイズ そして VG名 のオプションを与えます。


  # lvcreate -n lv_ext_01 -L 256MB vg_ext
  Logical volume "lv_ext_01" created


ブロックデバイス /dev/vg_ext/lv_ext_01 が作成されます。

ファイルシステム作成とマウント

ext4のファイルシステムを/dev/vg_ext/lv_ext_01上に作成します。


  # mkfs -t ext4 /dev/vg_ext/lv_ext_01
  mke2fs 1.41.12 (17-May-2010)
  Filesystem label=
  OS type: Linux
  Block size=1024 (log=0)
  Fragment size=1024 (log=0)
  Stride=0 blocks, Stripe width=0 blocks
  65536 inodes, 262144 blocks
  13107 blocks (5.00%) reserved for the super user
  First data block=1
  Maximum filesystem blocks=67371008
  32 block groups
  8192 blocks per group, 8192 fragments per group
  2048 inodes per group
  Superblock backups stored on blocks: 
    8193, 24577, 40961, 57345, 73729, 204801, 221185
  Writing inode tables: ....


ディレクトリ/mnt/lv_ext_01を作成し、ここにマウントしてみます。


  # mkdir  /mnt/lv_ext_01
  # mount /dev/vg_ext/lv_ext_01 /mnt/lv_ext_01/
  # df 
  Filesystem           1K-blocks      Used Available Use% Mounted on
  /dev/mapper/vg_c0-lv_root
                        6781916   2126116   4314236  34% /
  tmpfs                   961256        16    961240   1% /dev/shm
  /dev/sda1               495844     91135    379109  20% /boot
  /dev/mapper/vg_ext-lv_ext_01
                        253871     10254    230510   5% /mnt/lv_ext_01


脚注



目次へ あるいは Linux LVM


このページへのショートURL: http://uc2.h2np.net/i/48.html