المقدمة
الـ Linux Administration بيختص بإدارة وتشغيل نظام التشغيل Linux. النظام ده يعتبر من أكتر الأنظمة قوة ومرونة وكمان مفتوح المصدر، يعني أي حد يقدر يطوره ويعدل فيه.
في شغل الـ Linux Admin، بتكون مسئول عن تشغيل السيرفرات وحمايتها، إدارة المستخدمين والصلاحيات بتاعتهم، وكمان متابعة الأداء بتاع النظام وتحديثه بانتظام. بتتعامل مع حاجات زي إعداد الشبكات، إدارة قواعد البيانات، تشغيل التطبيقات، وأتمتة العمليات باستخدام السكربتات.
وفي السلسلة دي هشارك معاكوا بعض الملحوظات والـ Notes المرتبطة بالـ Linux Administration.
Logical Volume Management (LVM)
بيبقي عندك 2disk او 2partitions بتعملهم volume group عشان اقدر استخدم ال LVM
PV=Physical Volume |
---|
VG=Volume Group |
LV=Logical Volume |
PE=Physical Extent=4MB |
عشان اتعامل مع ال LVM لازم ال Disks يتحول الي pv
وعشان اتعامل مع ال 2pv كانهم حاجه واحده بحولهم ل VG
فلو PV1=50G وال PV2=50G فال VG=PV1+PV2=100G
بعد كدا التعامل هيكون مع ال LV
[root@mostafa ~] pvcreate /dev/sda /dev/sdb /dev/sdc
كدا بعمل ال PV لعدد 3 disks
[root@mostafa ~] pvs
كدا بعرض ال pv ال عندي
[root@mostafa ~] pvdisplay /dev/sda
بشوف معلومات ال PV الخاص ب disk معين
[root@mostafa ~] vgcreate data /dev/sdb /dev/sdc
بcreate ال VG ب 2disk
[root@mostafa ~] vgs
بعرض معلومات ال VG ال عندي
[root@mostafa ~] pvdisplay data
بعرض معلومات عن ال VG ال اسمها data
[root@mostafa ~] lvcreate -l 1000 -n lv0 data
كدا بعمل create لل LV
هنا بعمل lv ال size بتاعه هيكون 1000m
الـ -n هيكون اسمها أي ؟ وانا هنا سميته lv0
وهعمله من ال VG ال اسمها data
[root@mostafa ~] lvs
بعرض ال lv ال عندي
[root@mostafa ~] lvdisplay
هنا بيجبلي list فيها معلومات اكتر عن ال lv
[root@mostafa ~] mkfs.xfs /dev/data/lv0
هنا بعمل format لل lv ال اسمه lv0 من ال vg ال اسمها data
[root@mostafa ~] lvextend -L +5G /dev/data/lv0
هنا بزود مساحه ال lv ال اسمه lv0 ال في vg ال اسمها data بمقدار 5G ولازم بعدها تعمل update لل file system
[root@mostafa ~] xfs_growfs /lv0-data/
هنا بعمل update لل file system الي داخل المسار دا /lv0-data
لو عندك LV مثلا مساحته 50G وحصله مشكله ومحتاج الداتا ال عليه ؟ كل ال هتعمله هتوفر زيهم 50G يكونوا free وبعدها اعمل الامر دا pvmove /dev/sdc كدا هطلع ال sdc ال هو حصل مثلا فيه المشكله هخرجه من ال VG وبعدين ابدا ادخل ال disk الجديد مكانه
[root@mostafa ~] lvextend -L -3G /dev/data/lv0
كدا بحذف 3G من ال lv ال اسمه lv0 ال ف vg ال اسمها data وبرضو لازم تعمل update file system
[root@mostafa ~] vgextend data dev/sda
كدا بنقل ال VG ال اسمها data الي /dev/sda ودا مثلا ال disk الجديد ال هستخدمه مكان ال disk ال حصله مشكله
[root@mostafa ~] pvmove /dev/sdc
كدا بعمل move لل disk ال اسمه sdc
[root@mostafa ~] vgreduce data /dev/sdc
بحذف ال disk ال اسمه sdc من ال VG ال اسمها data
[root@mostafa ~] pvremove /dev/sdc
كدا بحذف ال disk ال اسمه sdc من ال PV
Stratis Storage
هي عبارة عن pool بيتم انشاءها بتتكون disk او اكتر ومن خلالها بعمل create لل file system وياخد الحجم بتاعه بشكل تلقائي من ال pool
يعني اكتر من ال pool الواحده اكتر من file system
[root@mostafa ~] dnf install stratis-cli stratisd
بعمل install لل stratis وبعملها enable
[root@mostafa ~] stratis pool create pool1 /dev/sdd /dev/sde
بعمل pool جديده اسمها pool1 مكونه من 2disks
[root@mostafa ~] stratis pool add-data pool1 /dev/sdc
بقوله ضيف ال disk ال اسمه sdc الي ال pool ال اسمها pool1
[root@mostafa ~] stratis blockdev list
بعمل list بال block device ال بيتكون منها ال pool بمعني اني ال disds دي ال موجودة في ال pool
[root@mostafa ~] stratis filesystem create pool1 fs1
كدا بنشأ file system اسمه fs1 من ال pool ال اسمها pool1
[root@mostafa ~] stratis filesystem list
بعرض list بال fs ال عندي
[root@mostafa ~] mkdir /mountpooltest
[root@mostafa ~] mount /dev/ stratis/pool1/fs1/mountpooltest
بعمل mount لل fs دا ف ال dir اسمه mountpooltest
[root@test mountpooltest] du -hs *
الامر دا بيعرضلي ال file بالحجم بتاعها
x-system.requires=stratisd.service
لازم اعملها ف ال fstab عشان ال pool تشتغل معايا لو عملت reboot للجهاز
[root@mostafa ~] stratis filesystem snapshot pool1 fs1 snapshot1
باخذ snapshot
الإفادة من ال stratis هو موضوع ال Thin Provisioning
Discussion