เขียนไฟล์ลงดีวีดีบนลินุกซ์

หลังจากที่ประสบปัญหาเนื้อที่ในฮาร์ดดิสก์เหลือน้อยมาก จะลบไฟล์บางส่วนทิ้งไปเลยก็เสียดาย วันนี้เลยไปซื้อแผ่นดีวีดีมา เพื่อจัดการย้ายข้อมูลหรือไฟล์บางส่วนไรท์ลงแผ่นซะ (ถ้าจะให้ดูหรูหน่อยต้องบอกว่าเรากำลังทำ Information Lifecycle Management)

บทความนี้ขอแนะนำวิธีการเขียนไฟล์ลงแผ่นดีวีดีโดยใช้คำสั่งบนลินุกซ์

หมายเหตุ ถ้าต้องการเขียนซีดี สามารถวิธีการได้ที่ เขียนแผ่นซีดีบนลินุกซ์

ระบบที่ทดสอบ

  • Fedora 8

ขั้นตอนที่ 1 – ติดตั้งโปรแกรมเขียนไฟล์
ก่อนอื่นต้องตรวจสอบดูว่าลินุกซ์ของเรามีโปรแกรมที่ต้องใช้เขียนไฟล์ติดตั้งในเครื่องเราแล้วหรือยัง โดยในบทความนี้เราจะใช้โปรแกรม dvd+rw-tools ในการเขียนไฟล์

ตัวอย่างตรวจสอบโปรแกรมที่ติดตั้งแล้วโดยใช้คำสั่ง rpm

[root@server ~]# rpm -q dvd+rw-tools
[root@server ~]#

หากไม่มีผลลัพธ์จากการรันคำสั่ง rpm นั่นคือเครื่องยังไม่มีโปรแกรมนี้ติดตั้ง

เราต้องติดตั้งโปรแกรมเพิ่มเติมสองโปรแกรมคือ genisoimage และ dvd+rw-tools สำหรับ Fedora 8 (x86_64) สามารถดูด้านล่างสุดของบทความนี้ ในส่วนของข้อมูลอ้างอิงสำหรับที่ดาวน์โหลดไฟล์

ตัวอย่างการติดตั้งโปรแกรม dvd+rw-tools บน Fedora 8

[root@server ~]# rpm -ivh genisoimage-1.1.6-6.fc8.x86_64.rpm
[root@server ~]# rpm -ivh dvd+rw-tools-7.0-7.fc8.x86_64.rpm

ขั้นตอนที่ 2 – ตรวจสอบดีวีดีไดรฟว์
ใช้คำสั่ง dvd+rw-mediainfo ตรวจสอบว่าดีวีดีไดรฟว์ว่าสามารถเขียนไฟล์ได้หรือไม่ และข้อมูลรายละเอียดอื่นของไดรฟว์

ตัวอย่างการตรวจสอบไดรฟว์

[root@server ~]# dvd+rw-mediainfo /dev/dvd
INQUIRY: [LITE-ON ][DVDRW LH-18A1P ][GL0F]
GET [CURRENT] CONFIGURATION:
Mounted Media: 11h, DVD-R Sequential
Media ID: RITEKG05
Current Write Speed: 8.0x1385=11080KB/s
Write Speed #0: 8.0x1385=11080KB/s
Write Speed #1: 6.0x1385=8310KB/s
Write Speed #2: 4.0x1385=5540KB/s
Write Speed #3: 2.0x1385=2770KB/s
...

ขั้นตอนที่ 3 – เตรียมไฟล์ที่จะเขียน
เตรียมไฟล์ที่จะเขียนลงบนแผ่น เช่นอยู่ใน /tmp/data-to-write/

ขั้นตอนที่ 4 – เขียนไฟล์ลงดีวีดี
ใส่แผ่นเปล่าที่จะเขียนเข้าไปในไดรฟว์ แล้วใช้คำสั่ง growisofs เพื่อเขียนไฟล์ที่เตรียมไว้ ลงบนแผ่น

ตัวอย่างการใช้คำสั่ง growisofs เพื่อเขียนไฟล์ที่เก็บอยู่ใน /tmp/data-to-write/ ลงบนแผ่น

[root@server ~]# cd /tmp/data-to-write/
[root@server data-to-write]# growisofs -dvd-compat -Z /dev/dvd -joliet-long -R -V "DataBackup-20080512" .
Executing 'mkisofs -joliet-long -R -V DataBackup-20080512 . | builtin_dd of=/dev/dvd obs=32k seek=0'
0.27% done, estimate finish Mon May 12 13:52:03 2008
0.55% done, estimate finish Mon May 12 13:54:28 2008
0.82% done, estimate finish Mon May 12 14:09:05 2008
...
99.17% done, estimate finish Mon May 12 13:58:33 2008
99.44% done, estimate finish Mon May 12 13:58:33 2008
99.72% done, estimate finish Mon May 12 13:58:33 2008
Total translation table size: 0
Total rockridge attributes bytes: 7016
Total directory bytes: 17270
Path table size(bytes): 74
Max brk space used 0
1825135 extents written (3564 MB)
builtin_dd: 1825136*2KB out @ average 7.5x1352KBps
/dev/dvd: flushing cache
/dev/dvd: updating RMA
/dev/dvd: closing disc
/dev/dvd: reloading tray

หมายเหตุ: เครื่องหมายจุด “.” สุดท้ายของคำสั่ง growisofs หมายถึงให้เขียนไฟล์จากไดเร็คทอรีปัจจุบันนี้ลงบนแผ่น

ขั้นตอนที่ 5 – ตรวจสอบไฟล์ที่เขียนเสร็จแล้ว
ขั้นสุดท้าย ตรวจสอบไฟล์ที่เขียนลงบนแผ่น

ตัวอย่างการตรวจสอบไฟล์

[root@server ~]# mount /dev/dvd /media/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@server ~]# cd /media
[root@server media]# ls
FILE-1.DAT FILE-2.DAT FILE-3.DAT
...

เมื่อตรวจสอบไฟล์บนแผ่นว่าครบถ้วนถูกต้องแล้ว ก็ใช้คำสั่ง eject เพื่อเอาแผ่นออกมาจากไดรฟว์

[root@server media]# cd /
[root@server media]# eject

หลังจากนั้นเราก็สามารถลบไฟล์ที่เก็บสำรองลงบนแผ่นแล้ว ออกจากฮาร์ดดิสก์ของเราได้เลย ได้เนื้อที่เพิ่มมาอีกเพียบเลย

เขียนไฟล์ iso ลงแผ่นดีวีดีโดยตรงเลย
ขอเพิ่มเติมสำหรับเขียนไฟล์ที่ทำเป็นอิมเมจไว้แล้วเช่นไฟล์ประเภท iso สามารถทำได้โดยใช้คำสั่ง growisofs เหมือนกันแต่เป็นคำสั่งเป็นดังนี้

ตัวอย่างการเขียนไฟล์ DVD-Image.iso ลงบนแผ่นดีวีดี


[root@server ~]# growisofs -dvd-compat -Z /dev/dvd=DVD-Image.iso
Executing 'builtin_dd if=DVD-Image.iso of=/dev/dvd obs=32k seek=0'
/dev/dvd: "Current Write Speed" is 3.3x1352KBps.
3080192/4513529856 ( 0.1%) @0.5x, remaining 73:13 RBU 100.0% UBU 9.7%
27754496/4513529856 ( 0.6%) @5.3x, remaining 18:51 RBU 100.0% UBU 99.6%
52756480/4513529856 ( 1.2%) @5.4x, remaining 14:05 RBU 100.0% UBU 99.6%
...

ข้อมูลอ้างอิง