Burg Configuration Guide (Quick and Dirty)
หลังจากที่ลง Ubuntu 10.10 มาแล้ว ก็อ่าน Review ที่ Blognone และปรับเปลี่ยนตามที่เขาแนะนำกันหลาย ๆ อย่าง จนสุดท้ายติดตั้ง BURG ซึ่งผลที่ได้ก็เรียบร้อยสวยงามดี แอบมีติด ๆ ขัด ๆ บ้างเล็กน้อย
พอใช้จริงก็มีปัญหาเล็กน้อยคือ ข้อความแสดงชื่อ OS นั้นมันยาวไป ไม่เข้ากับบางธีมของ BURG (ผมใช้ Sora) เลยต้องกลับไปค้นเกี่ยวกับการแก้ไขการตั้งค่าของ GRUB ซึ่ง BURG ก็ใช้ไฟล์รูปแบบเดียวกัน สุดท้ายก็ได้ Boot loader สวย ๆ มาใช้สักที

- ไปที่โฟลเดอร์ BURG โดยใช้ Terminal สั่ง
cd /etc/burg.d - สำรองไฟล์
tar -cf backup.tar 00_header 10_linux 30_os-prober 40_custom - เปิดไฟล์ 10_linux ขึ้นมาด้วย
gksu gedit 10_linux
ค้นหา code ส่วนนี้ (ประมาณบรรทัดที่ 30)
if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then OS=GNU/Linux OSLABEL=linux else OS="${GRUB_DISTRIBUTOR} GNU/Linux" OSLABEL="$(echo ${GRUB_DISTRIBUTOR} | tr '[A-Z]' '[a-z]' | cut -d' ' -f1)" fi
ตัดเอา GNU/Linux ออก เพื่อให้ข้อความสั้นลง
เปลี่ยน OS=GNU/Linux เป็น OS=""
เปลี่ยน OS="${GRUB_DISTRIBUTOR} GNU/Linux" เป็น OS="${GRUB_DISTRIBUTOR}"
ค้นหา code ส่วนนี้ (ประมาณบรรทัดที่ 58)
linux_entry () { os="$1" version="$2" recovery="$3" args="$4" if ${recovery} ; then title="$(gettext_quoted "%s, with Linux %s (recovery mode)")" auth_option=${AUTH_RESCUE} else title="$(gettext_quoted "%s, with Linux %s")" auth_option=${AUTH_NORMAL} fi
เปลี่ยน title="$(gettext_quoted "%s, with Linux %s (recovery mode)")" เป็น title="$(gettext_quoted "%s %s (Recovery)")" (ลดความยาวของคำลง)
เปลี่ยน title="$(gettext_quoted "%s, with Linux %s")" เป็น title="$(gettext_quoted "%s %s")" (เอา , with Linux ออกไป)
ค้นหา code ส่วนนี้ (ประมาณบรรทัดที่ 113)
while [ "x$list" != "x" ] ; do linux=`version_find_latest $list` echo "Found linux image: $linux" >&2 basename=`basename $linux` dirname=`dirname $linux` rel_dirname=`make_system_path_relative_to_its_root $dirname` version=`echo $basename | sed -e "s,^[^0-9]*-,,g"` alt_version=`echo $version | sed -e "s,\.old$,,g"` linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
เพิ่ม 2 บรรทัดนี้ไว้ด้านล่างของ linux_root_device_thisversion="${LINUX_ROOT_DEVICE}" (ตัวแปร codename เก็บชื่อเล่นของ OS ส่วน version_no_generic คือให้ตัดคำ -generic หลังหมายเลขรุ่นออกไป)
codename="`lsb_release -cs`" version_no_generic="`echo ${version} | cut -d "-" -f 1-2`"
ค้นหา code ส่วนนี้ (ประมาณบรรทัดที่ 140)
linux_entry "${OS}" "${version}" false \ "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}" if [ "x${GRUB_DISABLE_LINUX_RECOVERY}" != "xtrue" ]; then linux_entry "${OS}" "${version}" true \ "single ${GRUB_CMDLINE_LINUX}" fi
เปลี่ยน ${version} เป็น ${version_no_generic} ซึ่งมีอยู่ 2 ที่ เพื่อเอา -generic ออก แต่พอดีผมไม่ได้ใช้ codename ถ้าจะเอา codename แทนดิสโทรก็ เปลี่ยน ${OS}] เป็น ${codename}
บันทึกไฟล์ 10_linux เป็นการจบการแก้ไขการตั้งค่าที่เกี่ยวกับลินุกซ์ดิสโทร
เปิดไฟล์ 30_os-proper ขึ้นมา
ค้นหา code ส่วนนี้ (ประมาณบรรทัดที่ 124 -- ของ Windows ส่วน OS ตัวอื่นผมไม่มีบนเครื่อง เลยไม่รู้จะลองเล่นยังไง)
echo "Found ${LONGNAME} on ${DEVICE}" >&2 case ${BOOT} in chain)
เพิ่ม code นี้ไว้บน code ด้านบน โดยเปลี่ยนคำว่า Windows 7 (loader) ตามชื่อ OS ของคุณตามที่ปรากฏอยู่ใน boot loader และเปลี่ยน Windows 7 เป็นชื่ออะไรก็ได้ตามต้องการ
if [ "${LONGNAME}" = "Windows 7 (loader)" ] ; then LONGNAME="Windows 7" fi
ค้นหา code ส่วนนี้ (ประมาณบรรทัดที่ 130)
menuentry "${LONGNAME} (on ${DEVICE})" --class ${OSLABEL} --class os ${AUTH_NORMAL}{
ตัด (on ${DEVICE}) ออกไป (ไม่ต้องการรู้ว่าอยู่บนพาร์ทิชั่นไหน) จะได้เป็น
menuentry "${LONGNAME}" --class ${OSLABEL} --class os ${AUTH_NORMAL}{
บันทึกไฟล์ 30_os-proper
ถ้าต้องการให้ Windows อยู่เป็นตัวแรก (ด้วยเหตุผลอะไรก็แล้วแต่) ก็เปลี่ยนไฟล์ 30_os-proper เป็น 03_os-proper ก็ได้ เพราะทั้ง GRUB และ BURG จะเรียกไฟล์ไปตามลำดับตัวเลขนั่นเอง
ปรับปรุงไฟล์ปรับแต่งใหม่โดยสั่ง sudo update-burg
ทดลองรันโดยการเรียก burg-emu หากลงเอาไว้ หากไม่ได้ลงก็ติดตั้งเข้ามาเลย หรือจะดูตอนทำงานจริงก็ตามแต่
ข้อมูลเพิ่มเติมอื่น ๆ





Add new comment