序文
最近、Hyper-Vで実行してデータをキャプチャするサーバー(Ubuntu 16.04)のディスク容量が不足しており、データが別のパーティションに配置されたことがないため、ルートディレクトリを拡大する方法しか見つかりません。私はこれまでこのような問題に対処したことがなく、インターネットで多くの情報を検索し、現在は拡張方法を記録して共有しています。
操作前にバックアップ作業を行うことをお勧めします
ステップの概要
物理ディスクサイズを増やす
仮想マシンをオフにしてから、仮想マシン管理で直接操作します。
次に、ディスクを100Gから300Gに調整します
操作するディスクを決定します
最初にディスク使用量を確認し、コマンドを実行します
root@vm003:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 03.9G 0%/dev
tmpfs 798M 8.6M 789M 2%/run
/dev/mapper/Ubuntu-root 94G 88G 1.9G 98% /
tmpfs 3.9G 03.9G 0%/dev/shm
tmpfs 5.0M 05.0M 0%/run/lock
tmpfs 3.9G 03.9G 0%/sys/fs/cgroup
/dev/sda1 472M 382M 66M 86%/boot
tmpfs 100K 0 100K 0%/run/lxcfs/controllers
tmpfs 798M 0 798M 0%/run/user/0
物理ディスクを300Gに調整しましたが、ルートディレクトリは100Gのままで、98%が使用されています
コマンドを実行する
root@vm003:~# fdisk -l
Disk /dev/sda:300 GiB,322122547200 bytes,629145600 sectors
Units: sectors of1*512=512 bytes
Sector size(logical/physical):512 bytes /4096 bytes
I/O size(minimum/optimal):4096 bytes /4096 bytes
Disklabel type: dos
Disk identifier:0xa88f1366
Device Boot Start End Sectors Size Id Type
/dev/sda1 *2048999423997376 487M 83 Linux
/dev/sda2 100147020971315120871168299.5G 5 Extended
/dev/sda5 100147220971315120871168099.5G 8e Linux LVM
Partition 2 does not start on physical sector boundary.
Disk /dev/mapper/Ubuntu-root:95.5 GiB,102563315712 bytes,200318976 sectors
Units: sectors of1*512=512 bytes
Sector size(logical/physical):512 bytes /4096 bytes
I/O size(minimum/optimal):4096 bytes /4096 bytes
Disk /dev/mapper/Ubuntu-swap_1:4 GiB,4294967296 bytes,8388608 sectors
Units: sectors of1*512=512 bytes
Sector size(logical/physical):512 bytes /4096 bytes
I/O size(minimum/optimal):4096 bytes /4096 bytes
/ dev / sdaが実際に300GiBに調整されていることがわかりますが、システムはまだそれを使用していません。
/ dev / sdaを操作したいことも知っておいてください
LVM論理パーティションが配置されている物理パーティションを拡大します
コマンドを実行する
root@vm003:~# parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.(parted) print #パーティションを表示
Model: Msft Virtual Disk(scsi)
Disk /dev/sda: 322GB
Sector size(logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049 kB 512MB 511MB primary ext2 boot
2 513 MB 107GB 107GB extended
5 513 MB 107GB 107GB logical lvm(parted) resizepart 2 #sda2パーティションのサイズを変更する
End?[107GB]?-0 #直接記入(parted) print #再び確かめる
Model: Msft Virtual Disk(scsi)
Disk /dev/sda: 322GB
Sector size(logical/physical): 512B/4096B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049 kB 512MB 511MB primary ext2 boot
2 513 MB 322GB 322GB extended
5 513 MB 107GB 107GB logical lvm(parted) q #終了終了
Information: You may need to update /etc/fstab.
/ dev / sda2を展開しました
LVM論理パーティションを追加
コマンドを実行する
root@vm003:~# fdisk /dev/sda
Welcome to fdisk(util-linux 2.27.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.Command(m for help): p #現在のパーティションの状況を確認してください
Disk /dev/sda:300 GiB,322122547200 bytes,629145600 sectors
Units: sectors of1*512=512 bytes
Sector size(logical/physical):512 bytes /4096 bytes
I/O size(minimum/optimal):4096 bytes /4096 bytes
Disklabel type: dos
Disk identifier:0xa88f1366
Device Boot Start End Sectors Size Id Type
/dev/sda1 *2048999423997376 487M 83 Linux
/dev/sda2 1001470629145599628144130299.5G 5 Extended
/dev/sda5 100147220971315120871168099.5G 8e Linux LVM
Partition 2 does not start on physical sector boundary.Command(m for help): n #新しいパーティションを追加し、論理パーティションを選択し、状況に応じて開始点と終了点を入力します。デフォルト値は、ディスク全体を埋めることです。
All space for primary partitions is in use.
Adding logical partition 6
First sector(209715200-629145599,default209715200):
Last sector,+sectors or +size{K,M,G,T,P}(209715200-629145599,default629145599):
Created a newpartition6of type 'Linux' and of size 200 GiB.Command(m for help): p #新しく追加されたパーティションを表示する
Disk /dev/sda:300 GiB,322122547200 bytes,629145600 sectors
Units: sectors of1*512=512 bytes
Sector size(logical/physical):512 bytes /4096 bytes
I/O size(minimum/optimal):4096 bytes /4096 bytes
Disklabel type: dos
Disk identifier:0xa88f1366
Device Boot Start End Sectors Size Id Type
/dev/sda1 *2048999423997376 487M 83 Linux
/dev/sda2 1001470629145599628144130299.5G 5 Extended
/dev/sda5 100147220971315120871168099.5G 8e Linux LVM
/dev/sda6 209715200629145599419430400 200G 83 Linux
Partition 2 does not start on physical sector boundary.Command(m for help): t #パーティションタイプをLinuxLVMに変更します
Partition number(1,2,5,6,default6):6 # sda6
Partition type(type L to list all types): 8e #LVMタイプのIDコード
Changed type of partition 'Linux' to 'Linux LVM'.Command(m for help): p #パーティションをもう一度確認してください
Disk /dev/sda:300 GiB,322122547200 bytes,629145600 sectors
Units: sectors of1*512=512 bytes
Sector size(logical/physical):512 bytes /4096 bytes
I/O size(minimum/optimal):4096 bytes /4096 bytes
Disklabel type: dos
Disk identifier:0xa88f1366
Device Boot Start End Sectors Size Id Type
/dev/sda1 *2048999423997376 487M 83 Linux
/dev/sda2 1001470629145599628144130299.5G 5 Extended
/dev/sda5 100147220971315120871168099.5G 8e Linux LVM
/dev/sda6 209715200629145599419430400 200G 8e Linux LVM
Partition 2 does not start on physical sector boundary.Command(m for help): wq #問題がないことを確認し、保存して終了します
The partition table has been altered.
Calling ioctl() to re-read partition table.
Re-reading the partition table failed.: Device or resource busy
The kernel still uses the old table. The newtable will be used at the next reboot or after you run partprobe(8) or kpartx(8).
新しいパーティションは、対応するVolumnGroupにマージされます
コマンドを実行する
root@vm003:~# vgdisplay
- - - Volume group ---
VG Name Ubuntu
System ID
Format lvm2
操作したいVG名はUbuntuであり、記録していることがわかります。
次に、コマンドを実行します
root@vm003:~# vgextend Ubuntu /dev/sda6 # /dev/sda6は新しく追加されたLVMパーティションです
Device /dev/sda6 not found(or ignored by filtering).
Unable to add physical volume '/dev/sda6' to volume group 'Ubuntu'.
ええと、デバイス/ dev / sda6が見つからないというプロンプトが表示されるので、再起動することをお勧めします。
root@vm003:~# reboot
再起動後に再実行
root@vm003:~# vgextend Ubuntu /dev/sda6 # /dev/sda6は新しく追加されたLVMパーティションです
Physical volume "/dev/sda6" successfully created
Volume group "Ubuntu" successfully extended
Volumn Groupのステータスを再度確認し、コマンドを実行します
root@vm003:~# vgs
VG #PV #LV #SN Attr VSize VFree
Ubuntu 220 wz--n-299.52g 200.00g
確かに追加されました。
次に実行します
root@vm003:~# lvdisplay
- - - Logical volume ---
LV Path /dev/Ubuntu/root
LV Name root
VG Name Ubuntu
UbuntuVGのLVパスは/ dev / Ubuntu / rootであることがわかっているので、それを記録します。
次に実行します
root@vm003:~# lvresize -l +100%FREE /dev/Ubuntu/root # /dev/Ubuntu/ルートはLVパスです
Size of logical volume Ubuntu/root changed from95.52GiB(24453 extents) to 295.52GiB(75652 extents).
Logical volume root successfully resized.
これは成功です。
警告:操作中に次の警告が表示された場合は、ロジックボリュームの合計サイズが正しくないことを意味します。サイズを変更してもスペースは増えませんが、スペースは減ります。操作を続けると、データが失われます。すぐに停止する必要があります! nを押してキャンセルします。
WARNING: Reducing active and open logical volume to 32.00 MiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce root? [y/n]*
ファイルシステムの更新
最後のステップで、コマンドを実行します
root@vm003:~# resize2fs -p /dev/mapper/Ubuntu-root # /dev/mapper/Ubuntu-rootは、dfコマンドから見たファイルシステム情報です。
resize2fs 1.42.13(17-May-2015)
Filesystem at /dev/mapper/Ubuntu-root is mounted on /; on-line resizing required
old_desc_blocks =6, new_desc_blocks =19
The filesystem on /dev/mapper/Ubuntu-root is now 77467648(4k) blocks long.
このプロセスには数分かかる場合があります。辛抱強く待ってください。
次に、dfコマンドを実行して、ディスク使用量を表示します
root@vm003:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 03.9G 0%/dev
tmpfs 798M 8.6M 789M 2%/run
/dev/mapper/Ubuntu-root 291G 88G 191G 32% /
tmpfs 3.9G 03.9G 0%/dev/shm
tmpfs 5.0M 05.0M 0%/run/lock
tmpfs 3.9G 03.9G 0%/sys/fs/cgroup
/dev/sda1 472M 382M 66M 86%/boot
tmpfs 100K 0 100K 0%/run/lxcfs/controllers
tmpfs 798M 0 798M 0%/run/user/0
それでおしまい!
参照:
https://www.zalou.cn/article/139565.htm
総括する
以上がこの記事の全内容です。この記事の内容があなたの研究や仕事に一定の参考になることを願っています。ご不明な点がございましたら、メッセージを残して交換してください。ZaLouへのご支援ありがとうございます。
Recommended Posts