LVMとディスクのクォータ
記事のディレクトリ
1つ、LVMの概要
-
LVM(Logical Volume Manager)論理ボリューム管理
論理ボリューム管理は、ハードディスクパーティションとファイルシステムの間に追加される論理層であり、ファイルシステムの下位層のハードディスクパーティションレイアウトを保護し、ディスクボリューム上にファイルシステムを確立するための抽象ディスクボリュームを提供します。新しいハードディスクがサーバーに追加された場合、管理者は元のファイルを新しいハードディスクに移動する必要はありませんが、LVMを介してファイルシステムを直接拡張し、物理ハードディスクにまたがります。LVMは、既存のデータを変更せずにディスク容量を動的に調整できるため、ディスク管理の柔軟性が向上します。
注:/ bootパーティションはブートファイルを保存するために使用され、LVMに基づいて作成することはできません。
第二に、LVMメカニズムの基本概念
1.LVMの構成
物理ボリュームPV(物理ボリューム):物理ボリュームは、LVMメカニズムの基本的なストレージデバイスであり、通常、共通のパーティションまたはハードディスク全体に対応します。物理ボリュームを作成する場合、パーティションまたはハードディスクの先頭に予約ブロックを作成してLVMの属性を記録し、ストレージスペースをデフォルトサイズ4MBの基本ユニット(PE)に分割して物理ボリュームを形成します。 。
物理ブロックPE(物理エクステント):物理ボリュームPVに割り当てることができる最小のストレージユニット。PEのサイズを指定でき、デフォルトは4Mです。
論理ボリュームLV(論理ボリューム):論理ボリュームを形成するためにボリュームグループから分割されたスペースの一部。mkfsなどのツールを使用して、論理ボリュームLV上にファイルシステムを作成します。
ボリュームグループVG(ボリュームグループ):LVMボリュームグループは、非LVMシステムの物理ハードディスクに似ています。ボリュームグループVGは、1つ以上の物理ボリュームPVで構成されます。論理ボリュームLVは、ボリュームグループVG上に作成できます。
2.LVMグラフィックの詳細な説明
LVMは、基盤となる物理ハードディスクをカプセル化し、論理ボリュームの形式で上位層のアプリケーションに提示します。基盤となる物理ハードディスクを操作する場合、パーティションを操作するのではなく、論理ボリュームを介して基盤となるハードディスクを管理します。下の図に示すように、物理ボリュームのハードディスクスペースの一部を残して、スペースが不足しているときに論理ボリュームが追加されないようにすることができます。また、サーバーに新しいハードディスクを追加すると、管理操作が実行されます。 LVMを介して直接実行できます。
3つのLVM管理コマンド
1.主なコマンドとその機能
特徴 | 物理ボリューム管理 | ボリュームグループ管理 | 論理ボリューム |
---|---|---|---|
スキャン | pvscan | vgscan | lvscan |
作成する | pvcreate | vgcreate | lvcreate |
表示 | pvdisplay | vgdisplay | lvdisplay |
削除する | pvremove | vgremove | lvremove |
拡張する | vgextend | lvextend | |
減らす | vgreduce | lvreduce |
2.コマンド形式
pvcreate 设备名1 [设备名2……]
vgcreate 卷组名 物理卷名1 物理卷名2
lvcreate -L 容量大小 -n 逻辑卷名 卷组名
lvextend - L +大小 /dev/卷组名/逻辑卷名
第四に、LVMを作成します
1)仮想マシンを閉じた後、[仮想マシン設定の編集]→[ハードディスクの追加]をクリックします
2)デフォルトでSCSIディスクタイプが選択され、デフォルトで新しい仮想ディスクが作成されます(V)
3)ディスクサイズとして10Gを選択すると、指定したディスクファイルはデフォルトで変更されません
4)それぞれが10Gのサイズの3つの新しいハードディスクを作成します。ハードウェアに3つの新しいハードディスクが表示されます。
5)仮想マシンの電源を入れ、Xshellを開いて仮想マシンに接続すると、次の図が表示され、3つの新しいディスク、sdb、sdc、およびsddが追加されます。
6)3つのパーティションを作成し、それぞれがハードディスクのフルサイズを直接使用します。ここでは、sdb、sdc、およびsddと同じ手順を示します。
7)次に、fdisk -lを使用してパーティションテーブル情報を表示すると、sdb1、sdc1、およびsdd1の3つのパーティションタイプがLVMに設定されていることがわかります。
8)物理ボリュームとビューを作成します
9)vgcreate abc / dev / sd [bd] 1を使用して、3つの物理ボリュームsdb1、sdc1、およびsdd1を含むボリュームグループabcを作成することもできます。そして見る
10)論理ボリュームとビューを作成します
11)論理ボリュームを使用する場合は、フォーマットしてからマウントしてから使用する必要があります。具体的な手順は次のとおりです。
5、論理ボリュームを拡張します
拡張する2つの方法
1)オンライン拡張
マウントを解除してフォーマットする必要はありません。拡張が完了したら、xfsタイプのファイルシステムを直接更新すると、直接使用できます。
2)マウント解除、展開、フォーマット(重要なファイルを事前にバックアップする必要がある場合)、マウント
新しいハードディスクsdeを追加すると、以前のハードディスク管理の後で、パーティションタイプがLVMに変更され、物理ボリューム/ dev / sde1が作成され、vgextendコマンドを使用してボリュームグループabcが展開されます。
最初に方法1で容量を2G拡張しましたが、現在は31Gです。次に、方法2を使用して、論理ボリュームをアンマウントおよび拡張します。
再度マウントすると、論理ボリュームはまだフォーマットされていないため、容量が増加していないことがわかりました。
最初にマウントを解除してから、フォーマットします。(通常、アンマウント後に容量を拡張し、フォーマットして、最後にマウントし、ファイルシステムの使用状況を確認します。)
拡張は以前に行われていましたが、ファイルシステムの使用状況をマウントして表示するだけで、拡張が成功したことがわかります。
6、ディスククォータ
1.ディスククォータを実現するための条件
1)Linuxカーネルのサポートが必要
2)xfsprogsおよびquotaソフトウェアパッケージがインストールされているかどうかを確認し、インストールされていない場合はインストールします
- rpm-qまたはrpm-qa | grepを使用して、xfsprogsとquotaがインストールされているかどうかを確認します
上の図に示すように、クエリにより、これら2つのソフトウェアパッケージがインストールされていることがわかりました。
2.Linuxディスククォータの機能
1)スコープ:指定されたファイルシステム(パーティション)用
2)制限されたオブジェクト:ユーザーアカウント、グループアカウント
3)制限の種類:ディスク容量、ファイル数
4)制限方法:ソフト制限、ハード制限
3.ディスククォータを設定する手順
1)実装条件で説明されているxfsprogsおよびxfs_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
mount -a #-a选项,将/etc/fstab的所有内容重新加载
①/ etc / fstabディスクリストviエディターに入り、マウントパラメーター「usrquota、grpquota」を追加して、ユーザーおよびグループのクォータ機能のサポートを強化します。次に、wqを保存して終了します。mount -aは、/ etc / fstabディスクリストを1回リロードします。仮想マシンを再起動します
②ディスクリストエディタでマウントパラメータを追加します。最後の2つの0はそれぞれ、ダムバックアップを実行せず、セクターが完了しているかどうかをチェックしないことを表します。
③再起動後、ファイルシステムの使用状況を確認し、使用状況と種類を人間味のある方法で表示します。
3)ユーザーアカウントとグループアカウントのクォータ設定を編集します
useradd lisi
passwd lisi
xfs_quota -x -c 'limit -u bsoft=80M bhard=100M isoft=40 ihard=50 lisi' /abc01/
指定されたユーザーのディスク容量制限を表示します(/ abc01はマウントディレクトリです)
xfs_quota -c 'quota -uv lisi' /abc01
指定したユーザーのファイル数の制限を表示します(/ abc01はマウントディレクトリです)
xfs_quota -c 'quota -i -uv lisi' /abc01
対応するオプションと機能
オプション | 関数 |
---|---|
-バツ | エキスパートモードがアクティブ化されており、クォータシステムの変更を許可するすべての管理コマンドが現在のモードで使用可能であることを示します。 |
-c | 管理コマンドが直接呼び出されることを示します。 |
-u | ユーザーアカウントオブジェクトを指定します |
-g | グループアカウントオブジェクトを指定する |
bsoft | ディスク容量のソフト制限値を設定します(デフォルトの単位はKBです)。 |
bhard | ディスク容量のハード制限値を設定します(デフォルトの単位はKBです)。 |
isoft | ディスクファイル数のソフト制限値を設定します。 |
ihard | ディスクファイル数のハード制限値を設定します。 |
①ユーザーを追加し、パスワードを設定します。
②容量とファイル数の制限を設定し、対応する設定を確認してください
4)ディスククォータ機能を確認します
chmod 777 /abc01 #给挂载目录/abc01最大权限
su lisi #切换到用户lisi
cd /abc01 #切换到挂载目录
ディスク容量が制限を超えていることを確認します
dd if=/dev/zero of=/abc01/test.txt bs=10M count=12 #一次发个10M的test.txt文件,发12次
ディスクファイルの数が制限を超えていることを確認します
touch {1..52}.txt #创建连续的多个文件,".."表示连续的。
補足:
- ddコマンドは、デバイス変換および連続コピーコマンドです。
「if =」は入力デバイス(またはファイル)を
指定します「of =」は出力デバイス(またはファイル)を
指定します「bs =」は読み取りデータブロックのサイズを指定します
「count =」は読み取りデータブロック
/ devの数を指定します/ zero“ zero”デバイスファイルは無制限のヌル文字を提供できます。これは、特定のサイズのファイルを生成するためによく使用されます。
5)クォータの使用状況を表示する
- 使用可能なすべてのパーティションのディスク容量クォータ使用量を表示する
xfs_quota -x -c 'report -a'
- ディスク容量とファイル数のレポートを表示する
xfs_quota -x -c 'report -abih'