記事のディレクトリ
- 1.LVMの概要
- 2.LVM管理コマンド
- 3.LVMアプリケーションの例
-
- 1.準備
- 2. fdiskツールを使用して、ディスクデバイス/ dev / sdbと/ dev / sdcをプライマリパーティションsdb1とsdc1に分割し、パーティションタイプのIDマーク番号を「8e」に変更します。
- 3.物理ボリュームの作成、ボリュームグループの作成、論理ボリュームの作成
- 4.ボリュームグループを作成します。ボリュームグループの名前はvgname1です。
- 5.論理ボリュームを作成します。論理ボリュームの名前はlvname1、容量は30GB、生成されるファイルパスは/ dev / vgname1 / lvnameです。
- 6.論理ボリュームをフォーマットし、XFSファイルシステムを作成して、/ dataディレクトリーにマウントします。
- 7.さらなる拡張
- 4.ディスククォータの概要
- 5.CentOS7でxfsディスククォータを設定する手順
1.LVMの概要
1.1論理ボリューム管理
- 既存のデータを変更せずにディスク容量を動的に調整する機能。これにより、ディスク管理の柔軟性が向上します。
- / bootパーティションはブートファイルを保存するために使用され、LVMに基づいて作成することはできません
1.2LVMメカニズムの基本概念
-
PV(物理ボリューム、物理ボリューム)
物理ボリュームは、LVMメカニズムの基本的なストレージデバイスであり、通常、共通のパーティションまたはハードディスク全体に対応します。物理ボリュームを作成する場合、パーティションまたはハードディスクの先頭に予約ブロックを作成してLVMの属性を記録し、ストレージスペースをデフォルトサイズ4MBの基本ユニット(PE)に分割して物理ボリュームを形成します。 。 -
VG(ボリュームグループ)
は、1つ以上の物理ボリュームで構成される全体です。 -
LV(論理ボリューム)
は、ボリュームグループから分割されて論理ボリュームを形成するスペースの一部です。mkfsなどのツールを使用して、論理ボリューム上にファイルシステムを作成します。
2.LVM管理コマンド
特徴 | 物理ボリューム管理 | ボリュームグループ管理 | 論理ボリューム |
---|---|---|---|
スキャン | pvscan | vgscan | lvscan |
作成する | pvcreate | vgcreate | lvcreate |
表示 | pvdisplay | vgdisplay | lvdisplay |
削除する | pvremove | vgremove | lvremove |
拡張する | - | vgextend | lvextend |
減らす | - | vgreduce | lvreduce |
命令格式:
pvcreate 设备名1 [设备名2 ... ...]
vgcreate 卷组名 物理卷名1 物理卷名2
vgextend 卷组名 /dev/sdc2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend -L +大小 /dev/卷组名/逻辑卷名
3.LVMアプリケーションの例
1.準備
- ホストをシャットダウンし、2台の新しいハードディスクを追加して、ホストを再起動します
2. fdiskツールを使用して、ディスクデバイス/ dev / sdbと/ dev / sdcをプライマリパーティションsdb1とsdc1に分割し、パーティションタイプのIDマーク番号を「8e」に変更します。
fdisk /dev/sdb
fdisk /dev/sdc
sdcは同じです
3.物理ボリュームの作成、ボリュームグループの作成、論理ボリュームの作成
- 物理ボリュームを作成する
pvcreate /dev/sdb1 /dev/sdc1
4.ボリュームグループを作成します。ボリュームグループの名前はvgname1です。
vgcreate vgname1 /dev/sdb1 /dev/sdc1
5.論理ボリュームを作成します。論理ボリュームの名前はlvname1、容量は30GB、生成されるファイルパスは/ dev / vgname1 / lvnameです。
lvcreate -L 30G -n lvname1 vgname1
6.論理ボリュームをフォーマットし、XFSファイルシステムを作成して、/ dataディレクトリーにマウントします。
mkfs -t xfs / dev / vgname1 / lvname1 -----------論理ボリュームをフォーマットし、XFSファイルシステム
マウントを作成します/ dev / vgname1 / lvname1 / data ----------- / dataディレクトリにマウントします
df -hT
7.さらなる拡張
lvextend -L +5G /vgname1/lvname1 在xfs格式中,可在线扩容,无需解挂
xfs_growfs /dev/vgname1/lvname1 刷新文件系统容量,需要在挂载的时候使用,不使用可以显示
4.ディスククォータの概要
1.ディスククォータを使用する必要がある理由
Linuxルートパーティションのディスク容量がなくなると、新しいファイルを作成できなくなり、サービスプログラムがクラッシュしてシステム障害が発生する可能性があります。
サーバーのディスク容量不足などの問題を回避するために、ディスククォータ機能を有効にして、指定したファイルシステム(パーティション)でユーザーが使用するディスク容量とファイル数を制限し、個々のユーザーがシステムストレージスペースの安定性と継続的な可用性を維持するために、悪意を持ってまたは意図せずに大量のディスクスペースを占有します。
CentOSシステムでは、ファイルシステムごとに異なるディスククォータ構成管理ツールが使用されます。たとえば、XFSファイルシステムはxfs_quotaツールによって管理され、EXT3 / 4ファイルシステムはクォータツールによって管理されます。
2.ディスククォータを実現するための条件
- Linuxカーネルのサポートが必要
- xfsprogsとquotaソフトウェアパッケージ
3をインストールします。Linuxディスククォータの機能
範囲:指定されたファイルシステム(パーティション)の
制限付きオブジェクト:ユーザーアカウント、グループアカウント
制限タイプ:ディスク容量、ファイル数
制限方法:ソフト制限、ハード制限
5.CentOS7でxfsディスククォータを設定する手順
1.xfsprogsおよびxfs_quotaパッケージがインストールされているかどうかを確認します
rpm -q xfsprogs quota
yum install -y xfsprogs quota 安装缺少的软件
2.クォータ機能をサポートする方法でファイルシステムをマウントします
umount /dev/vgname1/lvname1
mount -o usrquota,grpquota /dev/vgname1/lvname1 添加挂载参数“usrquota,grpquota”
用于增加对用户、组配额功能的支持
或者
vim /etc/fstab
/dev/vgname1/lvname1 /opt xfs defaults,usrquota,grpquota 0 0
umount /dev/vgname1/lvname1
mount -a -a选项,将/etc/fstab的所有内容重新加载
3.ユーザーアカウントとグループアカウントのクォータ設定を編集します
useradd zhangsan #建立账号
passwd zhangsan #设置密码,激活账号
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=4 ihard=5 zhangsan' /opt/ #限制磁盘容量和文件数
-x:表示启动专家模式,在当前模式下允许对配额系统进行修改的所有管理命令可用。
-c:表示直接调用管理命令。
-u:指定用户账号对象
-g:指定组账号对象
bsoft:设置磁盘容量的软限制数值(默认单位为 KB)。
bhard:设置磁盘容量的硬限制数值(默认单位为 KB)。
isoft:设置磁盘文件数的硬限制数值。
ihard:设置磁盘文件数的软限制数值。
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M zhangsan' /opt/ #仅限制磁盘容量
xfs_quota -x -c 'limit -u isoft=4 ihard=5 zhangsan' /opt/ #仅限制文件数
xfs_quota -c 'quota -uv zhangsan' /opt/ #查看 zhangsan 磁盘容量限制
xfs_quota -c 'quota -i -uv zhangsan' /opt/ #查看 zhangsan 文件数限制
4.ディスククォータ機能を確認します
chmod 777 /opt
su zhangsan
cd /opt
dd if=/dev/zero of=/opt/ddtest.txt bs=10M count=12 #验证磁盘容量超限
touch {1,2,3,4,5}.txt #验证磁盘文件数超限(这里还没涉及if语句,先用touch建立)
dd 命令是一个设备转换和连续复制命令
“if=” 指定输入设备(或文件)
“of=” 指定输出设备(或文件)
“bs=” 指定读取数据块的大小
“count=” 指定读取数据块的数量
/dev/zero “零”设备文件,可以无限的提供空字符。常用来生成一个特定大小的文件。
ここでテストするには、最初に作成したファイルを削除します
5.クォータの使用状況を確認します
xfs_quota -x -c 'report -a' #查看所有可用分区的磁盘容量配额使用情况
xfs_quota -x -c 'report -abih' #查看磁盘容量和文件数的报告