Linux Live USB Drive ที่สร้างขึ้นด้วย dd Corrupt Partition Table และปัญหาความน่าเชื่อถือ


0

ฉันพยายามสร้างไดรฟ์ Linux Live USB จากอิมเมจ isohybrid ( .iso)

เพื่อให้งานนี้สำเร็จฉันได้ทำตามขั้นตอนเหล่านี้ในอดีต:

  1. เช็ดแฟลชไดรฟ์อย่างปลอดภัยโดยใช้คำสั่ง:

    sudo dd bs=4M if=/dev/zero of=/dev/sdx

  2. สร้างmsdosตารางพาร์ติชันบนแฟลชไดรฟ์ด้วยgparted

  3. สร้างพาร์ติชันใหม่ ( /dev/sdx1) ที่มีขนาดทั้งหมดของแฟลชไดรฟ์ด้วยfat32ระบบไฟล์ (สำหรับความเข้ากันได้ข้ามแพลตฟอร์ม) จัดแนวกับทรงกระบอกด้วยgparted

  4. ตั้งค่าbootableสถานะบนพาร์ติชันที่สร้างขึ้นใหม่ ( /dev/sdx1) โดยใช้gparted

  5. ตรวจสอบระบบไฟล์ในพาร์ติชั่นที่สร้างขึ้นใหม่ ( /dev/sdx1) เพื่อให้แน่ใจว่าการดำเนินการฟอร์แมตดิสก์ทั้งหมดได้ดำเนินการอย่างถูกต้องโดยใช้gparted

  6. เขียน.isoภาพไปยังแฟลชไดรฟ์โดยใช้คำสั่ง:

    sudo dd bs=4M if=<distro>.iso of=/dev/sdx

อย่างไรก็ตามหลังจากเสร็จสิ้นขั้นตอนสุดท้ายเมื่อผมตรวจสอบดิสก์อีกครั้งกับ gparted จะรายงานว่าทุกพื้นที่ในแฟลชไดรฟ์ที่เป็นไม่ได้ถูกจัดสรรและว่าไม่มีตารางพาร์ทิชันบนดิสก์ ฉันสงสัยว่านี่อาจเป็นสิ่งที่เกี่ยวข้องกับ Master Boot Record (MBR) ที่ถูกเขียนทับหรือเสียหายเมื่อฉันเขียน.isoไปยังแฟลชไดรฟ์โดยใช้ddคำสั่ง

เมื่อฉันติดตั้งแฟลชไดรฟ์ไฟล์ทั้งหมดที่อยู่ในไฟล์นั้น.isoจะถูกแตกออกมาอย่างเหมาะสม.isoและบางครั้งฉันสามารถบู๊ต USB สดได้ อย่างไรก็ตามฉันมีปัญหาความน่าเชื่อถือต่าง ๆ โดยใช้วิธีนี้ในระหว่างการบูทขึ้นและเมื่อพยายามติดตั้ง distro บนฮาร์ดไดรฟ์โดยใช้ USB จริง อย่างที่ฉันพูดถึงก่อนหน้านี้ฉันสงสัยว่าอาจมีบางอย่างเกี่ยวกับตารางพาร์ติชันที่เสียหายและระบบไฟล์ fat32 ไม่ได้รับการตรวจพบอย่างถูกต้องหลังจาก.isoเขียนไปยังแฟลชไดรฟ์ซึ่งอาจนำไปสู่ปัญหาการอ่านและเขียนดิสก์ เมื่อทำการบูทและติดตั้ง

จะมีวิธีการป้องกันไม่ให้เกิดปัญหาความน่าเชื่อถือเหล่านี้เกิดขึ้นและตารางพาร์ทิชันเสียหายจากการถูกในขณะที่ยังคงใช้เท่านั้นgpartedและdd?

คำตอบ:


1

เมื่อคุณทำงานdd bs=4M if=something.iso of=/dev/sdxทุกอย่างที่คุณสร้างขึ้นด้วย gparted (เช่นตารางพาร์ทิชัน) ddจะถูกเขียนทับโดย

ความจริงที่ว่า gparted แสดงให้เห็นว่าดิสก์ไม่ได้ถูกจัดสรรและไม่มีตารางพาร์ติชันเป็นเรื่องปกติ อย่างน้อยนั่นคือสิ่งที่ gparted แสดงสำหรับแท่ง USB Debian ทั้งหมดที่ฉันได้สร้างขึ้น

วิธีที่ดีกว่าในการทดสอบว่า dd ที่ประสบความสำเร็จคือพยายามติดตั้งพาร์ติชันแรกบนดิสก์และดูว่าเนื้อหาดูมีเหตุผลหรือไม่ (= ดูคล้ายกับสิ่งที่อยู่ใน iso)

mkdir a b
mount /dev/sdx1 a
mount file.iso b
# see if the a and b directories seem to contain the same files

นอกจากนี้คุณอาจต้องการที่จะใช้แทนcp something.iso /dev/sdx ddพิมพ์ได้ง่ายขึ้นและมีประสิทธิภาพ (ถ้าไม่มากยิ่งขึ้น)

แก้ไข : ฉันเห็นว่าคุณติดดิสก์และเห็นว่ามีไฟล์อยู่ที่นั่น ปัญหาความน่าเชื่อถือที่คุณมีอาจเป็นผลมาจากการติด USB ที่ไม่ดี ลองอีกครั้งและดูว่าปัญหายังคงอยู่หรือไม่

ข้อมูลเพิ่มเติมเกี่ยวกับ ISO และระบบไฟล์

. iso เป็นภาพดิสก์ มันเป็นสตริงและค่าศูนย์ที่คุณได้รับถ้าคุณอ่านซีดี / ดีวีดี / ฯลฯ ตั้งแต่ต้นจนจบ

cat /dev/cdrom > myfile.iso

หากคุณเขียน. iso โดยตรงไปยังแท่ง USB จะถือว่าแท่งควบคุมนั้นเหมือนกับระบบปฏิบัติการ CD / DVD

ตอนนี้เรามาดูกันว่าจะเกิดอะไรขึ้นถ้าคุณแบ่งพาร์ติชั่นก้าน USB, สร้างระบบไฟล์บนพาร์ติชั่นและคัดลอก. iso เป็นไฟล์ปกติ

mount /dev/sdx1 folder
cp file.iso folder/

เราจะอ่านเนื้อหาของก้าน USB

cat /dev/sdx > mysecondfile

ขณะนี้:

  • myfile.iso เป็นอิมเมจของแผ่นดิสก์ที่มีไฟล์โปรแกรมติดตั้ง bootloader เป็นต้น
  • mysecondfilemyfile.isoเป็นภาพของแผ่นดิสก์ที่มีไฟล์เดียว

และนี่คือเหตุผลที่คุณควรเขียนไอโซลงในแท่งโดยตรงแทนที่จะเก็บไว้เป็นไฟล์


โอเคฉันคิดว่าจริง ๆ แล้วนั่นอาจเป็นเรื่องปกติ ฉันลองแฟลชไดรฟ์หลายตัวแล้วและปัญหาความน่าเชื่อถือนั้นดูเหมือนจะเกิดขึ้นทั้งสองครั้ง อย่างไรก็ตามพวกเขาเป็นทั้งแฟลชไดรฟ์ที่ค่อนข้างเก่าดังนั้นฉันคิดว่ามันเป็นไปได้ว่าพวกมันจะเสียหาย ขอบคุณสำหรับความช่วยเหลือ! คำถามเดียวที่ฉันมีคือการใช้ cp แยกไฟล์จาก. iso เหมือนใช้ dd หรือไม่
Kevin Gurney

cp หรือ dd ไม่ได้ "แตก" ไฟล์จาก. iso iso ไม่ใช่ไฟล์เก็บถาวร มันเป็นภาพดิสก์ มันคือสตริงยาว ๆ และเลขศูนย์ที่คุณจะได้ถ้าคุณอ่านดีวีดีตั้งแต่ต้นจนจบ cp และ dd เขียนมันลงบนดิสก์และระบบปฏิบัติการหรือไบออสอ่านมันเหมือนที่พวกเขาอ่านดีวีดี
user49740

โอเคนั่นสมเหตุสมผลแล้ว อย่างไรก็ตามคุณสามารถอธิบายได้ไหมว่าทำไมเมื่อคุณใช้ dd หรือ cp ไฟล์จะแสดงแยกต่างหากในแฟลชไดรฟ์ซึ่งต่างกับหากคุณย้าย. iso ไปยังแฟลชไดรฟ์โดยใช้ตัวจัดการไฟล์ GUI
Kevin Gurney

ฉันจะอธิบายว่าในการแก้ไขคำตอบในไม่กี่นาที
user49740

การแก้ไขของคุณช่วยอธิบายความสับสนของฉันเกี่ยวกับการเขียน. iso โดยตรงไปยังแฟลชไดรฟ์เมื่อเทียบกับการจัดรูปแบบแฟลชไดรฟ์ด้วยระบบไฟล์จากนั้นจัดเก็บไฟล์. iso ไว้เป็นไฟล์ แต่สิ่งเดียวที่ฉันไม่เข้าใจ เอกสารที่ผมได้อ่านแนะนำให้ใช้ DD แทนซีพีเช่น ArchWiki: wiki.archlinux.org/index.php/USB_Installation_Media มีความแตกต่างอย่างมีนัยสำคัญระหว่างทั้งสองเพื่อวัตถุประสงค์ในการสร้างไดรฟ์ USB สดหรือไม่?
Kevin Gurney
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.