私たちの企業標準はCentOS(LVMを好むようです)であり、私は主に非LVMのバックグラウンドから来ているので、この問題で新しい境地を開拓しています。
古いマシンをログサーバーとして継承し、CentOSを再インストールする必要がありました。マザーボード上のEHCIに問題があるため(通常のインストールDVDまたはLiveCD GUIインストールのいずれかを介して)、CentOS6.3をインストールすることがわかったのはLiveCDテキストインストールだけでした。 LiveCDテキストインストールでは、ディスク上に独自のパーティション設定を行うことはできません。 LVMをインストールするだけで、ログサーバーに不適切なスペース割り当てが発生しました...
[mpenning@someHost ~]$ cat /etc/issue
CentOS release 6.3 (Final)
Kernel \r on an \m
[mpenning@someHost ~]$ df -m
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/mapper/vg_livecd-lv_root
50397 2167 47719 5% /
tmpfs 1850 0 1850 0% /dev/shm
/dev/md127p1 485 65 395 15% /boot
/dev/mapper/vg_livecd-lv_home
227001 188 215283 1% /home
[mpenning@someHost ~]$ Sudo lvm vgdisplay
--- Volume group ---
VG Name vg_livecd
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 278.96 GiB
PE Size 4.00 MiB
Total PE 71415
Alloc PE / Size 71415 / 278.96 GiB
Free PE / Size 0 / 0
VG UUID 8qywNz-cmKv-RxAH-WcsV-2nEA-sGg3-fcZ6BU
[mpenning@someHost ~]$
2つの質問:
/
を2573981-Mブロックに増やし、/home
を200001-Mブロックに減らす必要がある場合、再起動せずにこれを実行できますか?その場合、これを実行するための特定のコマンドシーケンスは何ですか? ?/var
パーティションを追加したい場合、完全に再インストールせずにどのように追加すればよいですか?/を2573981-Mブロックに増やし、/ homeを200001-Mブロックに減らす必要がある場合、再起動せずにこれを実行できますか?その場合、これを実行するための特定のコマンドシーケンスは何ですか?
約280GBの空き容量があり、そのうち50GBが「/」に割り当てられ、230GBが/home
に割り当てられています。これは使用可能なすべてのスペースを表すため、最初に何かを解放する必要があります。ここにいくつかのオプションがあります:
/home
にデータを配置していない場合は、既存のファイルシステムを破棄して、適切なサイズで再作成するのが最も簡単です。
アンマウント/home
:
# umount /home
論理ボリューム(LV)のサイズを20GBに減らします。
# lvreduce -L 20G /dev/vg_livecd/lv_home
/home
ファイルシステムを再作成します。
# mke2fs -j -m0 /dev/vg_livecd/lv_home
そして、/home
を再マウントします:
# mount /home
破棄するのではなく、shrink/home
にすることは可能ですが、これは少し注意が必要です。
アンマウント/home
:
# umount /home
fsck
ファイルシステム。これはおそらく次のステップで必要になります。
# fsck /dev/vg_livecd/lv_home
ファイルシステムのサイズを変更します。
# resize2fs /dev/vg_livecd/lv_home 19G
LVを下げる:
# lvreduce -L 20G /dev/vg_livecd/lv_home
ファイルシステムをLVよりも少し減らしたことに気付くでしょう。これは、同じように数えているかどうか思い出せないので、少し小刻みに動く部屋を残そうとしているからです。
いずれの場合も、この時点で、ボリュームグループに約210GBの空き容量があります。これで、ルートファイルシステムのサイズを増やすことができます。
ルートLVのサイズを増やします。
# lvresize -L260G /dev/vg_livecd/lv_root
ファイルシステムのサイズを増やします。
# resize2fs /dev/vg_livecd/lv_root
この回答で使用している丸めのために、260Gよりわずかに小さい数値を使用する必要がある場合があることに注意してください。また、LVMユーティリティの最近のバージョンには、ファイルシステムのサイズを変更する機能が含まれていますが、これらのオプションが利用可能になる前からこれを行っています...したがって、それらがどのように動作するかを正確に知ることはできません。
専用の/ varパーティションを追加したい場合、完全に再インストールせずにどのように追加すればよいですか?
まず、これをシングルユーザーモードで実行することをお勧めします。そうしないと、実行中のプロセスでファイルが/var
で開かれ、置換が困難になります。そうは言っても...
もう一度、空き領域が必要になります。前の手順ですべての空き領域を使い切る代わりに、数GBを空きのままにしておく場合は、次のようにすることができます。
新しい論理ボリュームを作成します。
# lvcreate -n lv_var -L 10G /dev/vg0
新しいファイルシステムを作成します。
# mke2fs -j -m0 /dev/vg_livecd/lv_var
次の行を追加して、/etc/fstab
を編集して新しいLVを/var
にマウントします。
/dev/vg_livcde/lv_var /var ext4 defaults 1 2
ただし、まだマウントしないでください。
新しいファイルシステムを便利な場所にマウントします。
# mount /dev/vg_livecd/lv_var /mnt
/var
の内容をコピーします。
# rsync -a /var/ /mnt/
/var
の名前を/var.old
に変更し、新しいディレクトリを作成します。
# mv /var /var.old
# mkdir /var
新しいLVを/var
にマウントします。
#umount/mnt#mount/var
そして、起動を続けます。すべてが正常に機能していることを確認したら、/var.old
を削除できます。
検討中:
AFAIC、私はネットインストール/キックスタートを試みて、必要な構成を一度に再現可能な方法で取得しようと思います。
私の2カラット