จะตั้งค่าฮาร์ดไดรฟ์หลาย ๆ ตัวเป็นโวลุ่มเดียวได้อย่างไร?


39

ฉันกำลังจะตั้งค่ากล่องให้เป็นเซิร์ฟเวอร์ไฟล์โดยทั่วไป ฉันวางแผนที่จะมีไดรฟ์หลายตัวในกล่องและต้องการตั้งค่าทั้งหมดเพื่อให้ดูเหมือนเป็นไดรฟ์เดียว ดังนั้นฉันจึงสามารถติดตั้งได้ที่คำพูด / สื่อและไม่สนใจว่าจะใช้ไดรฟ์ใด ฉันไม่แน่ใจว่าคำศัพท์ที่ถูกต้องสำหรับการทำเช่นนี้คืออะไรดังนั้น Google ของฉันจึงไร้ประโยชน์ในสถานการณ์นี้

ดังนั้นฉันจะตั้งค่าฮาร์ดไดรฟ์หลายตัวให้ปรากฏเป็นไดรฟ์เดียวได้อย่างไร

คำตอบ:


17

คุณอาจจะต้องการใช้LVM คุณสามารถหาคำแนะนำบางอย่างที่นี่


1
ขอบคุณ ดูเหมือนว่าสิ่งที่ฉันต้องการคือ SettingUpLVM-WithoutACleanInstall เนื่องจากฉันไม่ได้ใช้ Raid หรือเข้ารหัสอะไรเลย
Jacob Schoen

47

ฉันตัดสินใจเขียนคำแนะนำทีละขั้นตอนเพื่อตั้งค่านี้ สิ่งสำคัญคือฉันทำสิ่งนี้บนระบบที่ฉันบูตจากพาร์ติชันแยกต่างหากที่ไม่ได้เป็นส่วนหนึ่งของ LVM ดังนั้น LVM จึงใช้สำหรับจัดเก็บข้อมูลและไม่มีไฟล์ใด ๆ ที่ระบบปฏิบัติการต้องการบูต นอกจากนี้นี่คือการสร้างลักษณะที่ปรากฏของไดรฟ์ขนาดใหญ่หนึ่งถึงแม้ว่าเทคนิคที่คล้ายกันสามารถใช้ในการสร้างลักษณะที่ปรากฏของไดรฟ์หลาย ๆ มันเป็นกองถ่ายสมองที่เห็นแก่ตัวมากเพราะไกด์คนอื่น ๆ ไม่ได้ทำสิ่งที่สมบูรณ์ให้ฉัน ดังนั้นฉันหวังว่าจะสามารถช่วยเหลือผู้อื่นได้

เส้นทางเหล่านี้เป็นหลักจากการเชื่อมโยงการให้บริการโดย Murat Gunes มีข้อมูลเพิ่มเติมบางอย่างที่ฉันรวบรวมมาจากที่นี่


ฉันเริ่มต้นด้วยดิสก์ที่ฉันไม่มีอะไรในนั้นที่ฉันต้องการ

  • ก่อนอื่นคุณต้องสร้างพาร์ติชันเป็น Linux LVM คุณสามารถใช้ fdisk เพื่อทำสิ่งนี้ คุณสามารถดูไดรฟ์ทั้งหมดที่อูบุนตูเห็นและวิธีจดทะเบียนในไดรฟ์:sudo fdisk -l

บรรทัดแรกในแต่ละส่วนควรให้ข้อมูลเพียงพอที่จะระบุไดรฟ์ของคุณ มันจะมีลักษณะ:

ดิสก์ / dev / sda: 500.1 GB, 500107862016 ไบต์

/dev/sdaส่วนเรื่องที่เป็น ตอนนี้ทำงาน: sudo fdisk /dev/sda. แล้วคุณจะได้เห็น:

คำสั่ง (m เพื่อขอความช่วยเหลือ):

พิมพ์pเพื่อแสดงรายการพาร์ติชันบนไดรฟ์ของคุณ คุณต้องลบพาร์ติชันที่คุณต้องการให้เป็นส่วนหนึ่งของ LVM ดังนั้นพิมพ์dเพื่อลบ ถ้าไดรฟ์มีพาร์ติชั่นเพียงตัวเดียวก็จะลบมันออกไป (ตั้งค่าสถานะให้ดีสำหรับการลบมันจะไม่เกิดขึ้นจนกว่าเราจะบอกให้ทำ) ไม่อย่างนั้นฉันคิดว่า (ของฉันมีแค่อันเดียว) มันขอให้คุณป้อนหมายเลขที่คุณต้องการลบ

ตอนนี้คุณต้องสร้างการแบ่งใหม่ พิมพ์nใหม่ มันถามว่าขยายหรือหลัก พิมพ์pสำหรับหลัก โดยจะขอหมายเลขพาร์ติชันพิมพ์ 1 สำหรับกระบอกสูบแรกและไส้กุญแจสุดท้ายให้ปล่อยว่างไว้เพื่อใช้ค่าเริ่มต้น

ตอนนี้คุณต้องตั้งค่าเป็น Linux LVM ประเภทt. มันขอรหัสฐานสิบหกใช้8eสำหรับ Linux LVM คุณ shoule เห็นบางสิ่งเช่น:

ประเภทระบบที่ถูกเปลี่ยนของพาร์ติชัน 1 ถึง 8e (Linux LVM)

ในที่สุดพิมพ์wเพื่อเขียนการเปลี่ยนแปลงลงในดิสก์

  • ตอนนี้เราต้องติดตั้ง LVM ดังนั้นให้เรียกใช้sudo apt-get install lvm2เพื่อติดตั้ง
  • ฉันจะซื่อสัตย์และพูดว่าฉันไม่แน่ใจว่าสิ่งที่ขั้นตอนนี้จะทำ แต่ทิศทางอื่น ๆ บอกว่าจะทำอย่างไรmodprobe dm-modเพื่อโหลดโมดูล LVM ฉันไม่ได้รับข้อผิดพลาดดังนั้นฉันจึงคิดว่ามันใช้งานได้
  • เราจำเป็นต้องแก้ไขไฟล์ / etc / modules ไปยังโมดูลนี้โหลดเมื่อบูต ทำsudo nano /etc/modulesเพื่อเปิดขึ้นเพื่อแก้ไข เพิ่มdm-modไปยังรายการ
  • นอกจากนี้เรายังต้องการแก้ไขการกำหนดค่า lvm เพื่ออัปเดตตัวกรองดังนั้นจึงไม่ใช้เวลาในการสแกนนาน (ฉันคิดว่านั่นเป็นเหตุผลอยู่แล้ว) ดังนั้นทำsudo nano -w /etc/lvm/lvm.confและเปลี่ยนบรรทัดด้วย:

ตัวกรอง = ["a /.*/"]

เป็น:

ตัวกรอง = ["a | / dev / hd [ab] |", "r /.*/"]

  • ตอนนี้เราต้องตั้งค่า LVM แรก sudo vgscanDo คุณควรเห็นบางสิ่งเช่น:

อ่านปริมาณทางกายภาพทั้งหมด อาจใช้เวลาสักครู่ ...
ไม่พบกลุ่มวอลุ่ม

ในกรณีที่มีกลุ่มวอลุ่มใด ๆ ตั้งค่าการทำงานsudo vgchange -a yเพื่อให้พร้อมใช้งาน

  • ตอนนี้รันsudo pvcreate /dev/sda1เพื่อตั้งค่าพาร์ติชัน
  • ตอนนี้รันการsudo vgcreate media /dev/sda1แทนที่สื่อบันทึกด้วยชื่อที่คุณต้องการให้พาร์ติชันติดป้ายกำกับ
  • ตอนนี้รันการsudo lvcreate -l100%FREE -nvolume mediaแทนที่โวลุ่มด้วยชื่อที่คุณต้องการให้เรียก สิ่งนี้จะใช้พื้นที่ว่างทั้งหมดที่มีอยู่ในพาร์ติชัน
  • ตอนนี้เราต้องจัดรูปแบบไดรฟ์เพื่อให้ ext4 sudo mke2fs -t ext4 /dev/media/volumeคุณจะทำอย่างไร
  • ทำไดเรกทอรีที่คุณต้องการเมานต์วอลลุ่ม sudo mkdir /mnt/mediaฉันไม่
  • sudo mount /dev/media/volume /mnt/mediaติดตั้งไดรฟ์โดยการทำ ตอนนี้ใช้สำหรับเซสชันนี้เท่านั้น เมื่อคุณรีบูตเครื่องจะไม่ถูกประกอบใหม่โดยอัตโนมัติ ในการทำเช่นนั้นเราจำเป็นต้องแก้ไข/etc/fstabไฟล์ ในการเพิ่มsudo nano /etc/fstabและเพิ่มบรรทัดให้ทำดังนี้

/ dev / media / volume / mnt / ค่าเริ่มต้นของ ext4 0 1

ณ จุดนี้คุณสามารถเริ่มเพิ่มไฟล์ลงในดิสก์ได้ดังนั้นหากคุณต้องการล้างดิสก์อื่นที่คุณต้องการเพิ่มคุณสามารถคัดลอกไฟล์เหล่านี้ได้ที่นี่


การเพิ่มไดรฟ์อื่นให้กับโวลุ่มของคุณ

  • ดังนั้นทำตามขั้นตอนในหัวข้อย่อยแรกอีกครั้ง แต่สำหรับไดรฟ์ใหม่
  • ตอนนี้ถ้าชื่อไดรฟ์/dev/sdb1นั้นจะต้องทำsudo vgextend media /dev/sdb1เพื่อเพิ่มไปยังไดรฟ์
  • ตอนนี้เราต้องยกเลิกการต่อเชื่อมวอลุ่ม sudo umount /dev/media/volumeจะทำอย่างไรนี้
  • sudo vgdisplayตอนนี้คุณสามารถดูสถิติบนไดรฟ์ของคุณตอนนี้ด้วยการวิ่ง Free PE / Sizeส่วนที่สำคัญคือ คุณจำเป็นต้องรู้ว่าคุณสามารถเพิ่มพื้นที่ว่างลงในไดรฟ์ข้อมูลสำหรับขั้นตอนถัดไปได้เท่าใด
  • ดังนั้นถ้าคุณมี 150 GB sudo lvextend -L+150G /dev/media/volumeพื้นที่คุณจะทำอย่างไร
  • ตอนนี้รันsudo e2fsck -f /dev/media/volumeเพื่อตรวจสอบระบบไฟล์
  • ตอนนี้ทำงานsudo resize2fs /dev/media/volumeเพื่อปรับขนาดทุกอย่าง
  • คุณสามารถเรียกใช้สถิติได้อีกครั้งและตรวจสอบว่าFree PE / Sizeสิ่งที่คุณคาดหวังนั้นลดลง
  • เมานต์ปริมาตรอีกครั้งโดยทำ sudo mount /dev/media/volume /mnt/media
  • ล้างและทำซ้ำสำหรับไดรฟ์อื่น ๆ
    สิ่งที่ฉันคิดว่ามีประโยชน์ก็คือฉันมีไฟล์ที่ฉันต้องการเพื่อคัดลอกดิสก์ไปยัง LVM ที่ฉันสร้างขึ้นก่อนที่ฉันจะเพิ่มดิสก์นั้น ดังนั้นฉันจึงใช้cp -r -vมันเพื่อคัดลอกไฟล์ซ้ำและใช้ผลลัพธ์ verbose ดังนั้นฉันรู้ว่ามันทำอะไรอยู่ ตัวอย่างของคำสั่งแบบเต็มจะเป็น:

cp -r -v / mnt / temp / Movies / mnt / shared / media

/mnt/temp/Moviesโฟลเดอร์ที่คุณต้องการคัดลอกอยู่ที่ไหน


คำถามอย่างรวดเร็ว ... เมื่อมีการสร้าง LVM ให้พูดด้วยสองไดรฟ์คุณเพิ่งทำตามขั้นตอนเดียวกันเพื่อเพิ่มไดรฟ์อื่น ๆ ในภายหลังหรือไม่

@ Craig นั่นถูกต้องแล้ว
Jacob Schoen

2
เมื่อออกpvcreate / dev / sda1ฉันได้รับสิ่งต่อไปนี้: ไม่พบอุปกรณ์ / dev / sda1 (หรือละเว้นโดยการกรอง) ... ตามข้อผิดพลาดของ launchpad # 136830 ... ตัวกรองใน lvm.con ["a | / dev / hd [ab] |", "r /.*/"] ... จำเป็นต้องอ่านจริง: [" a | / dev / [hs [d [ab] | "," r /.*/ "]มิฉะนั้นขอบคุณมาก - วิธีการที่ดี C.

ฉันมีคำถามเดียวกันขอบคุณที่ถามยาโคบ! ฉันสงสัยว่า: วิธีนี้ทำงานอย่างไรเมื่อคุณติดตั้ง Ubuntu อีกครั้ง ขณะนี้หลังจากการติดตั้งใหม่ฉันเพิ่งใส่ดิสก์กลับเข้าไปและข้อมูลทั้งหมดของฉันยังคงอยู่ที่นั่นการทำงานนี้สำหรับสถานการณ์นี้อย่างไร (ดิสก์ ubuntu ของฉันเป็นดิสก์แยกต่างหาก แต่เนื่องจากการตั้งค่า lvm ทั้งหมดดูเหมือนว่าจะถูกจัดเก็บไว้ในดิสก์ ubuntu .. )
Maarten Kieft

2
สำหรับการเพิ่มไดรฟ์คุณสามารถทำได้sudo lvextend -l +100%FREE /dev/media/volumeเพื่อเติมพื้นที่ว่างทั้งหมด
jcady

6

โดยส่วนตัวแล้วฉันจะตรวจสอบให้แน่ใจว่าไดรฟ์ทั้งหมดมีขนาดเท่ากันและสร้าง RAID 5 "array" จากพวกเขาแทน ข้อเสียของ RAID 5 คือคุณสูญเสียขนาดของดิสก์หนึ่งแผ่นในพื้นที่ใช้งานทั้งหมด ข้อดีของ RAID 5 คือถ้าดิสก์ตัวใดตัวหนึ่งของคุณเสียชีวิตคุณจะไม่สูญเสียอะไรเลยและคุณสามารถเปลี่ยน HDD ที่เสียได้ง่ายๆ

หากคุณไม่สนใจเพียงพอที่จะสูญเสียข้อมูลในการใช้ดิสก์เสริมในดิสก์หรือหากคุณวางแผนที่จะใช้ดิสก์ที่มีขนาดแตกต่างกันขนาดที่คุณมีอยู่แล้วก็น่าจะดีที่สุดที่จะใช้ LVM ตามที่ Murat กล่าว


ขอบคุณสำหรับทิป. จริง ๆ แล้วฉันมีไดรฟ์ไม่กี่วางรอบที่มีขนาดแตกต่างกันทั้งหมด ดังนั้นนี่เป็นเพียงการหาประโยชน์สำหรับพวกเขา ในขณะที่มันจะดูดถ้าฉันทำบางสิ่งบางอย่างกับพวกเขามันไม่มีอะไรสำคัญที่ฉันไม่สามารถแทนที่ด้วยความพยายามเพียงเล็กน้อยและสิ่งที่สำคัญสำหรับฉันได้รับการสำรองไว้แล้ว แต่ +1 สำหรับเคล็ดลับที่อาจเป็นประโยชน์กับผู้อื่น
Jacob Schoen

mdadmFTW มันเป็นซอฟต์แวร์ควบคุม RAID ที่รองรับสิ่งที่ดีเช่นระดับ 5 และ 6 "RAID ไม่ใช่การสำรองข้อมูล" แต่แน่นอนว่ามันง่ายกว่ามากในการกู้คืนจากเมื่อไดรฟ์ตายคุณเพียงแค่ขว้างอีกครั้งรอเป็นเวลานาน ในขณะที่มันกำลังซิงก์และคุณขึ้นและออกไป คุณสามารถซิงค์กับดิสก์สดได้ แต่จะช้าลงอย่างมาก
Oli
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.