في الآونة الأخيرة، تم توفير خادم SSD جديد عبر الإنترنت، وتكلفة SSD مرتفعة للغاية، لذلك لا يمكن أن يحتوي محرك الأقراص الثابتة SSD عبر الإنترنت على سعة قليلة مثل محرك الأقراص الثابتة، ويمكنه فقط توسيع القرص الصلب تدريجيًا وفقًا لاحتياجات العمل وُلدت هذه المقالة: يقوم نظام Linux بتوسيع سعة القرص الصلب ديناميكيًا مع الحفاظ على البيانات الأصلية دون تغيير.

بالمعنى التقليدي، يستخدم توسيع القرص الثابت VPS التثبيت، أي إعادة تقسيم القرص الصلب الجديد إلى قسم آخر، ثم تركيب القسم على دليل معين من القرص الصلب الأصلي. هذا الأسلوب بسيط ومريح، وهو ممكن إذا تم استخدامه لتوسيع التخزين فقط، ولكنه غير كافٍ لخدمات التخزين ذات الاحتياجات المتعددة.

التوسع الديناميكي للقرص الصلب هو زيادة أو تقليل سعة مساحة القرص الصلب مع الحفاظ على البيانات الأصلية دون تغيير، وذلك لتلبية احتياجات بناء مواقع الويب اليومية لدينا. ستوضح هذه المقالة كيفية إدارة Linux LVM لمساحة القرص، وهي آلية لإدارة أقسام القرص في بيئة Linux.

التوسع الديناميكي للقرص الصلب لخوادم Linux المستقلة ومضيفي VPS - طرق توسيع وتقليل الحجم المنطقي LVM

Linux LVM عبارة عن طبقة منطقية مبنية على القرص الصلب والقسم وتحت نظام الملفات، والتي يمكنها تحسين مرونة إدارة قسم القرص. فيما يتعلق بقضايا إدارة مساحة قرص Linux، يمكننا أيضًا حل مشكلة عدم كفاية المساحة عن طريق التنظيف وتركيب الأقراص السحابية والمشاركة وما إلى ذلك. فيما يلي:

  1. حل مشكلة امتلاء مساحة قرص نظام Linux - خطأ عدم وجود مساحة متبقية على الجهاز
  2. يقوم VPS بتثبيت أقراص الشبكة المحلية والأجنبية لتحقيق أدوات التوسع المجانية: Rclone وCOS-Fuse وOSSFS
  3. ثلاث طرق لمشاركة أدلة المجلدات في Linux - التثبيت عن بعد لـ NFS والتخزين المشترك لـ GlusterFS وأدلة samba المشتركة

1. يقوم الأمر resize2fs بتوسيع السعة مباشرة.

مثال لاستخدام الأمر:

resize2fs -f /dev/vda1  #针对的是ext2、ext3、ext4文件系统
#参数说明
-d:打开调试特性;
-p:打印已完成的百分比进度条;
-f:强制执行调整大小操作,覆盖掉安全检查操作;
-F:开始执行调整大小前,刷新文件系统设备的缓冲区。

إذا كان قسم Linux الخاص بك يستخدم LVM (LVM الذي يستخدمه SolusVM VPS)، فيمكنك استخدام الأمر resize2fs مباشرةً لتوسيع القرص الأصلي. يحدث هذا الموقف عمومًا عندما تكون سعة القرص الثابت الذي تم فحصه باستخدام الأمر df -h أصغر من سعة قسم القرص الثابت الذي تم فحصه باستخدام الأمر fdisk -l، كما هو موضح أقل:

بعد تنفيذ الأمر resize2fs لتوسيع السعة، تحقق مرة أخرى وتأكد من زيادة سعة قسم القرص الثابت.

2. قم بإنشاء قسم جديد وقم بتثبيته لزيادة سعة القرص الصلب.

إذا لم يقم موفر الاستضافة الخاص بك بتقسيم جميع الأقراص الثابتة عند تخصيصها في الأصل، أو إعادة تقسيم حجم القرص الثابت (هذا هو الحال مع ترقية SolusVM VPS للقرص الصلب)، فستجد أنه يمكنك استخدام الأمر df -h لعرض القرص الصلب، وتساوي السعة سعة قسم القرص الثابت الذي تم عرضه باستخدام الأمر fdisk –l، ولكنها أقل من المساحة الإجمالية لـ fdisk، كما هو موضح في الصورة. ظاهر أدناه:

في هذا الوقت، يمكننا إنشاء قسم جديد وتثبيته على القرص الصلب لتحقيق توسيع السعة. نفذ الأمر: fdisk /dev/vda (اضبط مسار القرص الصلب وفقًا للحالة الفعلية)، وأدخل القسم fdisk، وأدخل n (قسم جديد) → p (أساسي) القسم) → 1.2.3 (رقم القسم) → أدخل → p (عرض القسم) → w (حفظ).

القسم الذي تم إنشاؤه حديثًا ليس بتنسيق LVM، نحتاج إلى إدخال الأمر fdisk مرة أخرى، ثم أدخل: t (تنسيق التحويل) → رقم القسم 1.2.3 → 8e (LVM) → p (عرض القسم). ) → ث ( حفظ). كما هو مبين أدناه:

باستخدام الطريقة المذكورة أعلاه، قمنا بإنشاء قسم sda3 جديد على القرص الصلب الإضافي سعة 3 جيجابايت وقمنا بتعيينه على تنسيق LVM. أعد تشغيل مضيف VPS ليصبح ساري المفعول، أو قم بتنفيذ الأمر (قد لا يكون هذا الأمر مدعومًا في CentOS 6): partprobe. (في حالة عدم وجود المطالبة، قم بإجراء التثبيت أولاً: yum -y install Parted)

استخدم الأمر التالي لإنشاء القسم بأكمله كمجلد منطقي LV: (للحصول على مقدمة تفصيلية عن PV وVG وLV، يرجى الرجوع إلى الجزء الثالث)

pvcreate /dev/vda3  //创建物理卷
vgcreate qyfoutt /dev/vda3   //创建逻辑卷组
vgchange -ay qyfoutt //激活逻辑卷组
vgdisplay qyfoutt | grep "Total PE"  //查看该卷组所有的PE
lvcreate -l 17919 -n qimm qyfoutt  //创建逻辑卷
mkfs.ext4 /dev/qyfoutt/qimm //格式化逻辑卷

أقوم هنا بإنشاء مجموعة تخزين منطقية باسم qyfoutt، بإجمالي 70 جيجابايت متاحة للتخصيص. ثم تم إنشاء مجلد منطقي اسمه قيم وتخصيص 70 جيجابايت له. يتم تثبيته تلقائيًا عند التمهيد، ويتم تثبيت القسم /dev/qyfoutt/qimm المضاف حديثًا إلى دليل معين. التنسيق هو كما يلي:

vim /etc/fstab 
/dev/sdb1(磁盘分区)  /data1(挂载目录-需要提前创建好) ext4(文件格式,也可写ext3)defaults  0  0 

/dev/qyfoutt/qimm     /ttfou            ext4    defaults        0 0

قم بتحميل كافة الدلائل: mount -a (لاحظ أنه باللغة الإنجليزية -) وتم التثبيت بنجاح.

3. يتم توسيع القرص الصلب الجديد مباشرة إلى القرص الصلب الأصلي.

إذا قمت بشراء محرك أقراص ثابتة ثانٍ، فليست هناك حاجة لتركيبه في الوقت الحالي. يمكنك إضافة السعة الفضائية لمحرك الأقراص الثابتة الجديد مباشرةً إلى محرك الأقراص الثابتة الأصلي. كما هو موضح في الصورة أدناه، يوجد بالفعل قرص صلب بسعة 256 جيجابايت (مقسم إلى 3 أقسام، منها sda3 بتنسيق lvm). وفقًا لطريقة إنشاء قسم جديد أعلاه، قم بتقسيم القرص الصلب بأكمله إلى قسم واحد: sdb1.

3.1  قم بإنشاء وحدة تخزين مادية كهروضوئية جديدة

الأوامر الأساسية:

pvcreate /dev/sda3 #新建PV
#有两个以上的分区还可以一起新建PV
pvcreate /dev/sda3 /dev/sdb1

-f:强制创建物理卷,不需要用户确认;
-u:指定设备的UUID;
-y:所有的问题都回答“yes”;
-Z:是否利用前4个扇区。

pvs  #查看pv基本信息
pvdisplay  #查看pv详细信息

كما هو موضح أدناه، يتم إنشاء وحدة التخزين المادية الكهروضوئية لـ sdb1.

3.2  توسيع مجموعة وحدات التخزين VG

وفقًا للطريقة المذكورة أعلاه، قمنا بإنشاء PV وVG وLV، وقمنا بتثبيت LV على دليل معين. أضف الآن PV المراد بناؤه إلى VG الأصلي. مثال الأمر الأساسي:

vgcreate wzfou /dev/sda3 /dev/sdb1 #将两个PV卷加入到卷组wzfou
-l:卷组上允许创建的最大逻辑卷数;
-p:卷组中允许添加的最大物理卷数;
-s:卷组上的物理卷的PE大小。

vgs或者vgdisplay来查看创建的卷组

vgextend qyfoutt /dev/sdb1 #扩容VG组

كما هو موضح في الصورة أدناه، أضفت sdb1 وsda3 إلى نفس مجموعة VG.

يمكن لـ s تحديد حجم PE. على سبيل المثال، أثناء عملية التثبيت الرئيسية والمتحكم بها لـ SolusVM، نطلب أن يكون PE 128 ميجابايت. هنا يمكننا تحديد حجم PE من خلال هذا الأمر. إذا كانت هناك وحدات PV جديدة لاحقًا، فيمكنك الاستمرار في إضافتها إلى VG:

3.3  قم بتوسيع الحجم المنطقي LV

لقد قمنا بالفعل بتوسيع سعة حجم VG أعلاه، والآن نحتاج فقط إلى توسيع سعة حجم VG الأصلية إلى سعة حجم VG بالكامل.

vgdisplay qyfoutt | grep "Total PE"  #查看所有PE

lvresize -l 1279 /dev/qyfoutt/qimm  #将VG组所有空间都给LV,1279是最后一个PE

resize2fs /dev/qyfoutt/qimm  #重设LV大小

مثال: تتمتع مجموعة VG بسعة 5 جيجابايت، بينما تبلغ سعة LV ضمن VG 3 جيجابايت فقط.

الآن يتم منح كل المساحة المتبقية البالغة 2 جيجا بايت لمجموعة VG إلى LV لإكمال توسيع LV.

4. ملخص

إذا كنت ترغب في توسيع القرص الصلب، فمن المستحسن استخدام LVM لإدارة توسيع القرص الصلب. إذا كنت تريد إضافة المزيد من محركات الأقراص الثابتة لاحقًا، فهذا أمر بسيط جدًا بالنسبة إلى LVM. التسلسل الأساسي للتوسع هو: إضافة PV → توسيع مجموعة VG → توسيع LV .

هناك طريقتان لإضافة PV: الأولى هي إضافة قرص ثابت جديد ثم تقسيمه، والأخرى هي إنشاء قسم جديد على القرص الصلب الأصلي. بغض النظر عن الطريقة المستخدمة لتوسيع القرص الثابت، يجب عليك أولاً إنشاء وحدة التخزين الفعلية PV، ثم إنشاء مجموعة وحدات التخزين VG، وأخيرًا إنشاء وحدة التخزين المنطقية LV.

اترك رد