اتصال و پارتیشنبندی دیسک جدید روی سرور HP در لینوکس
راهنمای کامل اضافه کردن یک دیسک SSD جدید به سرور HP (کنترلر Smart Array) و شناسایی، پارتیشنبندی و mount کردن آن در لینوکس.
۱. پیدا کردن دیسکهای فعلی لینوکس
برای دیدن دیسکها، پارتیشنها و mount pointها:
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
برای دیدن فضای مصرفشده:
df -hT
قبل از اضافه کردن دیسک جدید، وضعیت فعلی را یادداشت کن، مثلاً:
/dev/sda2 → /
/dev/sdb1 → /ssdb
/dev/sdc1 → /ssdc
/dev/sdd1 → /ssdf
این یادداشت مهم است تا بدانی کدام mount pointها از قبل استفاده شدهاند و نباید دوباره استفاده شوند.
۲. پیدا کردن Bay / Physical Drive روی HP Smart Array
برای دیدن کانفیگ کامل کنترلر:
sudo hpacucli ctrl all show config
یا اگر ssacli روی سرور نصب باشد:
sudo ssacli ctrl all show config
نمونه خروجی:
Array A
physicaldrive 1I:1:1
Array B
physicaldrive 1I:1:2
Array C
physicaldrive 1I:1:3
Array D
physicaldrive 2I:1:6
Unassigned
physicaldrive 1I:1:4
physicaldrive 2I:1:5
یعنی: دیسکهای داخل Arrayهای A تا D از قبل استفاده شدهاند، و دیسکهای داخل بخش Unassigned تازه و آماده برای استفاده هستند.
نکتهٔ خیلی مهم: قبل از ساخت Logical Drive، حتماً دنبال Unassigned بگرد و مطمئن شو دیسکی که میخواهی استفاده کنی عضو Array موجود نیست.
۳. ساخت Logical Drive برای دیسک جدید
برای هر physical drive که در بخش Unassigned پیدا کردی (مثلاً 1I:1:4)، یک Logical Drive بهصورت RAID 0 بساز:
sudo hpacucli ctrl slot=0 create type=ld drives=1I:1:4 raid=0
برای دیسک دوم (مثلاً 2I:1:5) به همین شکل:
sudo hpacucli ctrl slot=0 create type=ld drives=2I:1:5 raid=0
چرا RAID 0؟ چون هر Logical Drive فقط از یک SSD تشکیل شده؛ در نتیجه RAID 0 اینجا عملاً یک Logical Drive روی یک دیسک است، نه Striping واقعی بین چند دیسک.
۴. بررسی اینکه لینوکس دیسکهای جدید را دیده
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
بعد از ساخت Logical Driveها، دیسکهای جدید باید ظاهر شوند، مثلاً:
sde 931.5G
sdf 232.9G
۵. بررسی دقیق دیسک جدید
sudo fdisk -l /dev/sde
sudo fdisk -l /dev/sdf
۶. پارتیشنبندی دیسک با fdisk
sudo fdisk /dev/sde
داخل fdisk این دستورات را به ترتیب وارد کن:
g # ساخت جدول پارتیشن GPT
n # ساخت پارتیشن جدید
1 # شماره پارتیشن
Enter # First sector پیشفرض
Enter # Last sector پیشفرض
w # ذخیره تغییرات
بعد بررسی کن:
sudo fdisk -l /dev/sde
باید چیزی شبیه این ببینی:
/dev/sde1 2048 ... ... 931.5G Linux filesystem
۷. ساخت فایلسیستم ext4
توجه: این دستور اطلاعات پارتیشن را پاک میکند، پس مطمئن شو دیسک درست را انتخاب کردهای.
sudo mkfs.ext4 /dev/sde1
بعد UUID دیسک را بگیر (برای اضافه کردن به fstab لازم است):
sudo blkid /dev/sde1
۸. پیدا کردن Mount Point مناسب
ابتدا mountهای فعلی را چک کن:
df -hT
lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINTS
مطمئن شو مسیری که انتخاب میکنی قبلاً استفاده یا اشغال نشده (مثلاً با ls -ld /mountpoint؛ اگر پیام No such file or directory گرفتی، یعنی مسیر آزاد است).
۹. ساخت Mount Point
sudo mkdir /ssdg
بررسی:
ls -ld /ssdg
۱۰. بکاپ از fstab
قبل از هر تغییری در fstab، حتماً بکاپ بگیر:
sudo cp /etc/fstab /etc/fstab.bak
۱۱. اضافه کردن دیسک به fstab
sudo nano /etc/fstab
خط زیر را با UUID واقعی خودت اضافه کن:
UUID=<DISK-UUID> /ssdg ext4 defaults 0 2
ذخیره در nano: Ctrl+O سپس Enter و بعد Ctrl+X
اگر دیسک دومی هم داری، همین مراحل (پارتیشنبندی، mkfs، گرفتن UUID، ساخت mount point) را برایش تکرار کن و خط مربوطه را هم به fstab اضافه کن:
UUID=<DISK-UUID-1> /ssdg ext4 defaults 0 2
UUID=<DISK-UUID-2> /ssdh ext4 defaults 0 2
۱۲. Reload کردن systemd
بعد از تغییر fstab:
sudo systemctl daemon-reload
۱۳. تست fstab بدون reboot
قبل از reboot حتماً این دستور را اجرا کن:
sudo mount -a
اگر هیچ خروجی نداد، معمولاً یعنی موفق بوده است.
۱۴. بررسی نهایی Mount
df -hT /ssdg
df -hT /ssdh
lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINTS
خلاصهٔ خیلی کوتاه برای دفعات بعد
اگر دوباره یک SSD جدید روی همین کنترلر HP داشتی:
# 1. پیدا کردن Bay
sudo hpacucli ctrl all show config
# 2. ساخت Logical Drive
sudo hpacucli ctrl slot=0 create type=ld drives=X raid=0
# 3. پیدا کردن دیسک جدید در لینوکس
lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
# 4. پارتیشنبندی
sudo fdisk /dev/sdX
# داخل fdisk:
g
n
1
Enter
Enter
w
# 5. بررسی
sudo fdisk -l /dev/sdX
# 6. فایلسیستم
sudo mkfs.ext4 /dev/sdX1
# 7. گرفتن UUID
sudo blkid /dev/sdX1
# 8. ساخت mount point
sudo mkdir /mountpoint
# 9. بکاپ
sudo cp /etc/fstab /etc/fstab.bak
# 10. ویرایش fstab
sudo nano /etc/fstab
# 11. ریلود
sudo systemctl daemon-reload
# 12. تست
sudo mount -a
# 13. بررسی نهایی
df -hT
lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINTS
