เอาของเก่าที่เคยลองไว้มาทดสอบใหม่
จากการที่ apt-get install dosemu แล้วไม่สามารถรันได้
จึงเอาซอร์สมาคอมไพล์เอง
ก่อนอื่นต้องลบของเก่าออกให้หมดก่อน
$ sudo dpkg --purge dosemu
$ cd
$ sudo rm -rf .dosemu
ตามด้วยติดตั้งใหม่
$ su
# apt-get install bsdmainutils checkinstall libsdl1.2-dev flex bison
# cd /usr/src
# wget http://heanet.dl.sourceforge.net/sourceforge/dosemu/dosemu-1.3.3.tgz
# wget http://heanet.dl.sourceforge.net/sourceforge/dosemu/dosemu-freedos-b9r5a-bin.tgz
# tar xvfz dosemu-1.3.3.tgz
# cd dosemu-1.3.3
# ./configure --with-x --with-fdtarball=/usr/src/dosemu-freedos-b9r5a-bin.tgz --x-includes=/usr/include/X11 --x-libraries=/usr/lib/X11 --with-slangdir=/usr/lib
( ถ้าเป็นเดเบียนใช้ # ./configure --with-fdtarball=/usr/src/dosemu-freedos-b9r5a-bin.tgz เฉย ๆ )
# make
# checkinstall -D make install
( # dpkg -i dosemu-1.3.3_1.3.3-1_i386.deb )
# exit
ทดสอบการรัน
$ dosemu
เขาจะขึ้นเป็น xdosemu โดยอัตโนมัติ
ไฟล์ของ freedos จะอยู่ที่ ~/.dosemu/drive_c
คำสั่งสร้างเน็ตเวิรกไดร์ฟคือ
C:\ lredir h: \linux\fs/mnt/smbfs/data
C:\ lredir i: \linux\fs/mnt/smbfs/app
ไดรฟ์ h จะโยงไปหา /mnt/smbfs/data
และไดรฟ์ i จะโยงไปหา /mnt/smbfs/app
$ mkdir ~/dos
$ cd ~/.dosemu/drives
$ ln -sf ~/dos d
$ vi ~/.dosemu/drive_c/autoexec.bat
ลบบรรทัด lredir d: linux\fs%DOSDRIVE_D% ออก เพิ่มบรรทัด lredir h: linux\fs/mnt/smbfs/data เพิ่มบรรทัด lredir i: linux\fs/mnt/smbfs/app
แก้ไข config.sys ให้สามารถเปิดไฟล์ได้มากขึ้น
$ vi ~/.dosemu/drive-c/config.sys
เพิ่มบรรทัด
files=100
เพิ่มเครื่องพิมพ์จากเครือข่าย 2 ตัวคือ epson และ epson2
ติดตั้งเครื่องพิมพ์จาก cups โดยเรียกเข้าไปที่ http://localhost:631/
เพิ่มเครื่องพิมพ์ของเครือข่าย samba คือ epson และ epson2
ต่อด้วยการเรียกใช้ lpadmin อีกที
$ lpadmin -p epson -u allow:all -E -v smb://server1/epson -P /etc/cups/ppd/epson.ppd
$ lpadmin -p epson2 -u allow:all -E -v smb://server2/epson2 -P /etc/cups/ppd/epson2.ppd
$ vi ~/dosemurc
$_printer_command = "lpr -l -P epson, lpr -l -P epson2"
ตั้งแต่ย้ายมาใช้เดเบียน sid อะไร ๆ มันง่ายขึ้นเยอะเลย
เดี๋ยวนี้แพคเกจ dosemu ไม่ได้แยก freedos แบบแต่ก่อนแล้ว
ดังนั้น การลงแพกเกจก็เพียงแค่ง่าย ๆ ว่า
$ sudo aptitude install dosemu
แค่นี้เอง เสร็จแล้ว
/etc/dosemu/freedos
/etc/dosemu/drives
/etc/dosemu/dosemu.conf
เหมือนเดิมต่อไปคงคอมไพล์อะไรไม่เป็นแล้ว :P
update
ถ้าพิมพ์จากดอส (ผ่านคำสั่ง lpr ในไฟล์ /etc/dosemu/dosemu.conf) แล้วพิมพ์ไม่ออก ต้องติดตั้งแพกเกจ cupsys-bsd เพิ่ม
$ sudo aptitude install cupsys-bsd
เนื่องจากโปรแกรม lpr ในแพกเกจ cupsys-bsd ทำงานถูกต้องกว่าในแพกเกจ lpr เอง
บันทึกไว้เนื่องจากแพกเกจนี้ไม่ได้ถูกติดตั้งไว้เป็นแพกเกจมาตรฐานของ sid
ดูรายละเอียดการติดตั้ง cups ได้ที่ ติดตั้งเครื่องพิมพ์ให้เครือข่าย
ทดสอบ dosemu บนอูบุนตู-feisty และ เดเบียน-lenny ที่เป็นแพกเก็จจากดิสโตรเอง ผลปรากฎว่าการทำงานราบรื่นขึ้น แต่ยังมีปัญหาพิมพ์ออกเครื่องพิมพ์เครือข่ายไม่ได้เหมือนเดิม
จึงต้องกลับไปเอาแพกเกจจาก DOSEMU.org มาคอมไพล์เอง
ขั้นตอนการคอมไพล์เหมือนที่ เคยคอมไพล์ไว้คราวก่อน
มีที่แปลกออกไปคือ
$_printer_command = "lpr -l -P epson1, lpr -l -P epson2"
... $_lpt1 = "lpr -l -P epson1" $_lpt2 = "lpr -l -P epson2" ...
ดูง่ายและเป็นระเบียบขึ้น
ที่เหลือก็คงเหมือนเดิม
เผื่อใครอยากลองแต่ขี้เกียจคอมไพล์เอง ลองดาวน์โหลดไปใช้ได้
แต่ยังไงก็ต้องทำในส่วนของ Freedos-1.0 เอาเอง และแพกเกจที่สร้างขึ้น ถูกสร้างขึ้นจาก checkinstall ดังนั้นจึงขาดคุณสมบัติของแพกเกจมาตรฐานของเดเบียนไปหลายอย่างครับ
ผลการใช้งานก็รันได้เร็วและราบรื่นเหมือนเดิม สามารถพิมพ์ออกเครือข่ายได้เรียบร้อยครับ