สร้างไฟล์รูปภาพของระบบ Linux ที่ทำงานอยู่


10

ตามที่ฉันเข้าใจแล้วการสร้างอิมเมจของระบบ Linux จะทำสำเนาของระบบปฏิบัติการและไฟล์ผู้ใช้ / การกำหนดค่า / โปรแกรมอื่น ๆ

สิ่งที่ฉันอยากทำคือสร้างภาพของพีซีที่ทำงานและติดตั้งที่บ้านบนเดสก์ท็อปของฉัน บางคนสามารถอธิบายกระบวนการสร้างและติดตั้งอิมเมจของระบบ Linux ได้หรือไม่?

หน้าแรกระบบปฏิบัติการ: Windows ต้องการ: ไฟล์รูปภาพที่สามารถเรียกใช้งานในเครื่องเสมือน (VMPlayer หรือ VirtualBox) หรือบูตโดยตรงบนพีซีที่บ้านของฉัน ฉันได้ลอง clonesys แต่จะขอบคุณวิธีการอื่น


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

คุณต้องให้รายละเอียดเพิ่มเติมที่นี่เพื่อรับคำตอบที่เป็นประโยชน์ "โปรแกรม" ที่คุณลองคืออะไร ไฟล์รูปภาพอะไรที่ผลิต (อย่างน้อยชื่อและขนาดของมัน) คุณต้องการเปลี่ยนระบบปฏิบัติการปัจจุบันที่บ้านดูอัลบูตหรือรันอิมเมจ Linux ใน VM หรือไม่? ไม่ว่าในกรณีใดระบบปฏิบัติการปัจจุบันของคุณที่บ้านคืออะไร? คุณจำเป็นต้องสร้างภาพในขณะที่ระบบปฏิบัติการกำลังทำงานอยู่จริงหรือจะหยุดทำงานชั่วคราวเป็นที่ยอมรับได้หรือไม่? (หมายเหตุ: แก้ไขรายละเอียดเพิ่มเติมในคำถามของคุณแทนที่จะเป็นความคิดเห็นหรือข้อมูลอาจถูกซ่อนไว้หลังจากที่มีคนอื่นเพิ่มความคิดเห็นเพิ่มเติม)
David Spillett

คำตอบ:


3

สิ่งที่คุณสามารถลอง

เตรียมซีดีสด (ไม่สำคัญว่าจะใช้อันไหน) มีอุปกรณ์จัดเก็บข้อมูลภายนอกขนาดใหญ่พอ (ขนาดเดียวกับ HD งาน) เพื่อเก็บภาพ

วางแผ่นถ่ายทอดสดลงในคอมพิวเตอร์ที่ทำงานของคุณ ต่อเชื่อมที่เก็บข้อมูลภายนอกของคุณ (หรือแม้กระทั่งเครือข่ายหากคุณมีแนวโน้มมาก)

ใช้ddเพื่อโคลนฮาร์ดไดรฟ์บนคอมพิวเตอร์ที่ทำงานของคุณและเก็บเป็นรูปภาพในที่เก็บข้อมูลของคุณ

ปิดคอมพิวเตอร์ที่ทำงานของคุณ

ทำวิธีการเดียวกันกับแล็ปท็อปที่บ้านของคุณ แต่แทนที่จะโคลนฮาร์ดไดรฟ์คุณจะวางภาพของคุณลงบนฮาร์ดไดรฟ์โดยพื้นฐานแล้วคุณต้องย้อนกลับif=และof=คำสั่ง

คุณอาจมีปัญหาความเข้ากันได้ของฮาร์ดแวร์บางอย่างในทันทีนอกเสียจากว่าฮาร์ดแวร์ของบ้านและที่ทำงานจะเหมือนกัน แต่มันแก้ไขได้ทั้งหมด :)

สนุก.


OP กล่าวว่าเขาต้องการสร้างภาพของระบบที่กำลังทำงานอยู่ ซีดีสดหมายความว่าระบบที่ถูกโคลนจะไม่ทำงาน
Andrew Ensley

@andrew วิธีการอ่านคำถามที่เกิดขึ้นจริงก่อนที่จะเพียงแค่อ่านชื่อ คำตอบของฉันเกี่ยวข้อง
g19fanatic

ไม่มีเจตนากระทำความผิด ฉันอ่านคำถามทั้งหมดแล้ว ชื่อเรื่องพร้อมกับคำถามร่วมกันระบุว่า OP ต้องการสร้างภาพในขณะที่ระบบกำลังทำงาน ดังนั้นเขายังอ้างอิงถึง clonesys
Andrew Ensley

1
OP กล่าวถึงสิ่งที่ไม่จำเป็นต้องใช้ในการอิมเมจระบบปฏิบัติการ อ่านคำถามของเขาอีกครั้งฉันคิดว่าเขามีระบบ linux 'ที่ใช้งานได้' และต้องการโคลน (ทำงานในชื่ออาจหมายถึง 'ทำงาน') เขาพูดถึง clonesys โดยพลการและชอล์กถึงความไม่คุ้นเคย คุณอ่านมันในขณะที่เขาต้องการโคลนที่กำลังทำงานอยู่ (ซึ่งเป็นไปไม่ได้หากไม่ได้ใช้มันใน VM เพื่อเริ่มต้นด้วย ... ) ฉันไม่ได้อ่านแบบนั้นเลย สิ่งที่เขาถามคือทำได้ด้วยวิธีการของฉัน (และคนอื่น ๆ ที่กล่าวถึง)
g19fanatic

2

http://www.linux-live.org/ช่วยให้คุณมีวิธีการที่ง่ายมาก:

Linux Live Kit เป็นชุดเชลล์สคริปต์ที่ให้คุณสร้าง Live Linux ของคุณเองจากการกระจาย Linux ที่ติดตั้งไว้แล้ว ระบบ Live ที่คุณสร้างจะสามารถบูตได้จาก CD-ROM หรืออุปกรณ์ดิสก์เช่น USB Flash Drive, USB Pen Drive, กล้องที่เชื่อมต่อกับพอร์ต USB และอื่น ๆ ผู้คนใช้ Linux Live Kit เพื่อบูต Linux จาก iPod เช่นกัน


+1: ฉันคิดว่านี่เป็นวิธีแก้ปัญหาที่ดี แต่อาจได้รับประโยชน์จากข้อมูลรสชาติเล็กน้อยเพราะทำไมมันจึงเป็นทางออกที่ดี
killermist

1

คุณสามารถใช้ partimage เพื่อสร้างภาพสด แต่ฉันคิดว่ามันยากที่จะรับภาพสดที่ใช้งานได้ซึ่งคุณสามารถถ่ายโอนไปยังพีซีหนึ่งเครื่องไปยังอีกเครื่องหนึ่งได้อย่างง่ายดาย

เมื่อคุณสามารถปิดการทำงานพีซีของคุณฉันจะแนะนำซีดีสดพร้อม partimage และสร้างภาพไปยังแท่ง usb และเขียนบนพีซีที่บ้าน

หรือถ้าคุณไม่สามารถปิดคอมพิวเตอร์ของคุณคุณสามารถใช้การถ่ายโอนข้อมูล ( http://linux.about.com/od/commands/l/blcmdl8_dump.htm ) ไปยังไฟล์หรือผ่านเครือข่าย (ssh)


0

คุณสามารถโคลนระบบปฏิบัติการได้อย่างง่ายดายโดยใช้Clonezilla (Live CD) แต่เพิ่งรู้ว่าไดรฟ์ปลายทางจะต้องใหญ่หรือใหญ่กว่าต้นฉบับ ขั้นตอนเหล่านี้จะแสดงให้คุณเห็นวิธีการโคลนดิสก์ไปยังอีก

หมายเหตุ - สำรองข้อมูลของคุณ


1
OP กล่าวว่าเขาต้องการสร้างภาพของระบบที่กำลังทำงานอยู่ ซีดีสดหมายความว่าระบบที่ถูกโคลนจะไม่ทำงาน
Andrew Ensley

0

นี่เป็นวิธีที่ฉันเพิ่งทำ:

การจัดเตรียม

เดสก์ท็อป Windows 10

  • ติดตั้ง VirtualBox

ขั้นตอนต่อไปนี้เป็นวิธีการคัดลอกอิมเมจของดิสก์ ฉันไม่มีอุปกรณ์เก็บข้อมูลภายนอกที่มีพื้นที่เพียงพอสำหรับเก็บอิมเมจดิสก์แล็ปท็อปของฉันดังนั้นฉันจึงติดตั้งเครื่อง Windows ของฉันกับ SSH มีวิธีอื่นในการทำเช่นนี้ แต่วิธีนี้ง่ายที่สุดสำหรับฉันในสถานการณ์

  • เปิดใช้งาน WSL และรีบูตเมื่อได้รับแจ้ง
  • ติดตั้ง Ubuntu จาก Windows Store
  • เริ่ม Ubuntu จากเมนูเริ่ม
  • รันsudo apt install openssh-serverเพื่อติดตั้ง sshd
  • รันsudo nano /etc/ssh/sshd_configเพื่อแก้ไขการกำหนดค่า sshd
  • เปลี่ยนPasswordAuthentication noไปPasswordAuthentication yesจากนั้นกดCtrl+ x, y, enterที่จะบันทึก
  • วิ่ง sudo /etc/init.d/ssh restart

กล่องโต้ตอบ Windows Firewall ควรปรากฏขึ้นทันทีคลิกยอมรับเพื่ออนุญาตการเชื่อมต่อขาเข้า

แล็ปท็อป Linux

เรียกใช้sudo apt install sshfs virtualboxเพื่อให้คำสั่งsshfsและvboxmanage

ตอนนี้เป็นเวลาที่ดีในการทดสอบคุณสามารถเชื่อมต่อ SSH กับเครื่อง Windows ของคุณได้

การสร้างอิมเมจสำหรับบูต

หากในส่วนถัดไปคุณสร้างอิมเมจของดิสก์ทั้งหมดแทนพาร์ติชัน Linux คุณอาจไม่จำเป็นต้องทำสิ่งนี้

ฉันต้องการประหยัดพื้นที่ดังนั้นใช้พาร์ติชันรูท Linux ของฉันเท่านั้น แต่นี่ไม่สามารถบูตได้ด้วยตัวเองดังนั้นฉันจึงสร้างอิมเมจ ISO ที่สามารถบูตได้:

แล็ปท็อป Linux

  • ติดตั้งแพ็คเกจที่ต้องการโดย grub-mkrescue: sudo apt install grub-pc-bin xorriso
  • สร้างไดเรกทอรีเพื่อเก็บไฟล์ที่สามารถบู๊ตได้: mkdir -p efibootiso/boot/grub
  • คัดลอก bootloader Grub EFI: cp /usr/lib/grub/x86_64-efi/* efibootiso/boot/grub/
  • คัดลอกคอนฟิกูเรชัน Grub ของแล็ปท็อปของคุณ: cp /boot/grub/grub.cfg efibootiso/boot/grub
  • ทำให้ภาพ: grub-mkrescue -o boot.iso efibootiso
  • คัดลอกไปยังเครื่อง Windows ของคุณ: scp boot.iso username@windowsten:/mnt/d/VMs/WorkLaptop/

การสร้างภาพดิสก์

แล็ปท็อป Linux

  • รีบูตและเลือกตัวเลือกขั้นสูงจากนั้นโหมดการกู้คืนจาก bootloader
  • เลือกเครือข่ายจากเมนูการกู้คืนเพื่อเปิดใช้งานเครือข่าย
  • จากนั้นเลือกตัวเลือกรูทคอนโซลแล้วกด Enter
  • ทำงานเพื่อตรวจสอบการติดตั้งพาร์ทิชันรากของคุณ (เหมือง/dev/sda8)
  • สร้างไดเรกทอรีชั่วคราวเพื่อติดตั้งเครื่อง Windows ของคุณเช่น: mkdir /run/windowsten
  • ติดตั้งเครื่อง Windows ของคุณเช่น: sshfs username@windowsten:/ /run/windowsten
  • เปลี่ยนไดเรกทอรีเป็นตำแหน่งที่คุณต้องการบันทึกอิมเมจของดิสก์เช่น: cd /run/windowsten/mnt/d/VMs/WorkLaptop

นี่คือเคล็ดลับหากคุณเรียกใช้mount -o remount,ro /ตอนนี้คุณจะได้รับแจ้งว่ามีการใช้งานอยู่ดังนั้นให้ใช้คีย์ sysrq เวทมนตร์แทน: SysRq+ sเพื่อบังคับการซิงค์จากนั้นกดSysRq+ uเพื่อบังคับให้เมาท์ใหม่แบบอ่านอย่างเดียว ( SysRqบนแล็ปท็อปของฉันคือAlt Gr+ Print Screen)

  • ตอนนี้ทำไฟล์ VDI ด้วย vboxmanage convertfromraw /dev/sda8 worklaptop.vdi

การดำเนินการนี้จะใช้เวลานาน ฉันได้รับประมาณ 10GB / ชั่วโมงด้วยเครื่องทั้งสองเครื่องที่ใช้ 802.11n wifi ครั้งต่อไปฉันจะใช้การเชื่อมต่อผ่านสาย

ในที่สุดเมื่อเสร็จแล้วคุณจะมีภาพดิสก์ของพาร์ติชัน Linux ในแล็ปท็อปของคุณ

เดสก์ท็อป Windows 10

  • เริ่ม VirtualBox
  • คลิกใหม่
    • คลิกโหมดผู้เชี่ยวชาญ
    • ตั้งชื่อ VM ของคุณ
    • เลือกประเภทและเวอร์ชั่นของระบบปฏิบัติการ (เช่น Linux, Ubuntu (64 บิต)
    • ให้แรมเพียงพอ
    • เลือกปุ่มตัวเลือก "ใช้ไฟล์ฮาร์ดดิสก์เสมือนที่มีอยู่"
    • คลิกที่ไอคอนโฟลเดอร์สีเหลือง
    • เรียกดูและเลือกไฟล์ VDI จากขั้นตอนก่อนหน้า
    • คลิกสร้าง
  • เลือก VM ใหม่ของคุณ
  • คลิกการตั้งค่า
    • คลิกที่จัดเก็บข้อมูล
    • เลือกออปติคัลไดรฟ์
    • คลิกที่ไอคอนแผ่นดิสก์และเลือก "เลือกไฟล์ดิสก์ออฟติคัลเสมือน"
    • เรียกดูและเลือกอิมเมจ boot.iso
  • คลิกระบบ
    • ตรวจสอบว่าออปติคัลไดรฟ์อยู่เหนือฮาร์ดดิสก์ในลำดับการบู๊ต
    • เลือก Enable EFI
    • คลิกตกลง

ตอนนี้คุณควรจะสามารถบูต VM ของคุณได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.