Lab 2: REAL DOS cho Win XP vs 2k3 HƯỚNG DẪN TẠO REAL DOS DUAL BOOT CÙNG WIN XP (Nguồn tham khảo: Mai Nhựt Tân - LBVMVT – 267) Người viết: takechij Như ta đã biết, hệ điều hành Windows XP không hỗ trợ DOS thực như cách dòng Windows 3.x.x hay 9x, nên một số người dùng máy tính phải tích hợp môi trường DOS thực chạy độc lập với Windows XP để tiện cho việc sao lưu dữ liệu từ môi trường DOS. Ngặt nổi MS-DOS (DOS thực) không thể gọi khởi động trên phân vùng ổ cứng có định dạng NTFS được, nhiều người đã phải từ bỏ tính năng bảo mật của NTFS để trở về với FAT32 với mục đích boot vào DOS từ ổ cứng. Bài viết này sẽ hướng dẫn các bạn tạo ra một môi trường DOS nạp được trên cả phân vùng NTFS đã cài Windows XP (áp dụng cho HĐH từ Windows XP trở về sau). Khắc phục cho các máy không vào được DOS hoặc không muốn cài lại HĐH. Các bạn còn nhớ bài Lab 1 chứ, nếu bài đó các bạn không có khả năng thực hiện vì không muốn cài lại HĐH hoặc không tạo ra DOS thực được thì bài Lab này sẽ khắc phục điều đó! 1. Chuẩn bị các phần mềm: WinImage, Gimage, Avlgomgr và 1 file ảnh đĩa mềm có dạng *.img hoặc *.ima. Link download: http://www.mediafire.com/?xhj3urvv6bh53p5 2. Chuẩn bị các file: ghost.exe, choice.com, reboot.com, shutdown.com, mouse.com, autoexec.bat với nội dung như bài Lab 1. Link download: http://www.mediafire.com/?ee7ko46ypq6sdse 3. Tiến hành Thực ra, chúng ta sẽ phải giả lập quá trình boot vào DOS thực từ một file ảnh đĩa mềm được đặt trên ổ đĩa cứng. Trước hết bạn cần phải có một file ảnh đĩa mềm, có dạng *.img hoặc *.ima, có khả năng khởi động được vào DOS (cái này bạn có thể download trên mạng). Tuy nhiên, dung lượng các file ảnh đĩa mềm lại khá nhỏ, thường thì chỉ 1,4MB hay 2,81MB nên khó mà tích hợp các công cụ sao lưu cần thiết (như trình Symantic Ghost chẳng hạn) được. Ở đây, bạn sẽ tạo file ảnh đĩa mềm khởi động lên đến 5,62MB bằng phần mềm Gimage. BƯỚC 1: bạn sử dụng Gimage để tạo ra 1 file ảnh *.img hoặc *.ima. 1. Khởi động chương trình và chuyển sang giao diện tiếng Anh. 2. Mở file GRLDR nằm cùng thư mục với GImage 3. Chọn dung lượng của file ảnh (nên chọn con số dưới 7200KB vì trên dung lượng này DOS sẽ không boot được). 4. Tại đây các bạn chọn nơi lưu file ảnh đĩa mềm, nên lưu ở phân vùng chứa HĐH Windows XP, ở đây, mình lưu ở C:\MSDOS.ima. 5. Bấm Create để tạo ảnh đĩa, bấm No trong hộp thoại hiện ra kế tiếp rồi thoát ra khỏi chương trình. BƯỚC 2: các bạn dùng một chương trình biên tập ảnh đĩa mềm để mở file ảnh đĩa có khả năng boot vào DOS được mà mình đã đề cập ở đầu bài. Bài viết này dùng phần mềm WinImage. Các bạn Cài WinImage, mở chương trình lên ta sẽ được giao diện như sau: Các bạn Click vào Nút Open và mở file ảnh đĩa mềm có khả năng boot vào DOS mà các bạn đã download về. Các bạn bấm vào nút Extract để lấy những file trong đĩa mềm này ra và lưu vào một thư mục bất kì. Ở đây mình lưu vào D:\Extract Boot File, sau đó xoá file Autoexec.bat vừa Extract ra trong thư mục D:\Extract Boot File Tiếp tục, các bạn copy các file Autoexec.bat, shutdown.com, reboot.com, choice.com, ghost.exe, mouse.com vào thư mục mà các bạn Extract các file từ file đĩa mềm ra (trong bài là thư mục Extract Boot File). Tiếp theo các bạn vào Menu Image, chọn Boot sector properties…., 1. Click Save 2. Chọn vị trí lưu và đặt tên cho file boot 3. Click Save là OK [FONT="]BƯỚC 3:[FONT="] bạn vẫn dùng WinImage, nhưng lần này chúng ta sẽ Open file *.img mà ta đã tạo ra bằng chương trình Gimage (Trong bài mình lưu file này với tên MSDOS.IMA ở ổ đĩa C: )[/FONT][/FONT] [FONT="]Sau khi mở file các bạn sẽ có nội dung của file như hình dưới. Các bạn click chọn file grubldr.sys và nhấn delete -- > yes (xoá nó).[/FONT] [FONT="]Tiêp theo các bạn nhấn vào nút Import và chọn tất cả các file có trong thư mục Extract để nhập vào.[/FONT] [FONT="]Tiếp tục, vào vào menu Image, chọn Boot sector properties…, click nút Open và chọn file bootsector.bin lúc nãy vừa Save. (Trong bài mình mình lưu tại d:\bootsector.bin). Đóng cửa sổ Boot sector properties…[/FONT] [FONT="]OK! Cuối cùng chọn SAVE và close cửa sổ WinImage[/FONT] [FONT="]BƯỚC 4:[FONT="] các bạn sẽ sử dụng phần mềm Avlgomgr![/FONT][/FONT] [FONT="]1. [FONT="]Click Open và chỉ đến file *.ima mà ta đã tạo ra bằng phần mềm Gimage và sửa đổi bằng WinImage (Trong bài mình lưu với tên MSDOS.ima ở ổ đĩa C: )[/FONT][/FONT] [FONT="]2. [FONT="]Ở ô Full path of curent system’s Boot.ini, các bạn chỉ đường dẫn đến file Boot.ini[/FONT][/FONT] 3. Sau khi bấm Assemble, chương trình sẽ tạo thêm file Avlgo.bin và Avlgo.sys đồng thời tích hợp DOS vào menu boot của Windows. Các bạn lưu ý, 2 file này các bạn phải giữ nguyên tên của nó, nếu đổi tên thì boot của boot của các bạn sẽ không hoạt động. Các bạn có thể sửa dòng tiêu đề khi boot bằng cách Edit file boot.ini, cách làm như ở Lab 1. Bạn nên khởi động lại để kiểm tra kết quả. Nếu thấy xuất hiện thêm mục mới trong menu boot và boot được vào DOS thì công việc của bạn đã thành công. Trường hợp không hiện menu boot mà boot thẳng vào Windows thì bạn mở file Boot.ini ra, sửa lại giá trị timeout cho hợp lý. Nếu hiện menu boot mà không boot được vào DOS hay gặp lỗi phát sinh gì, bạn nên kiểm tra lại file ảnh đĩa. Để sửa tên của Menu vào DOS các bạn cũng chỉnh sửa file boot.ini nhé. Mình vừa giới thiệu cho các bạn cách làm REAL DOS cho WINXP (có thể áp dụng cho 2k3 và các phiên bản trở về trước) Với phần mềm Avlgomgr các bạn còn có thể tạo Hiren’t boot từ HDD, bài lab 3 mình sẽ giới thiệu phần này! ^^
Bài viết hay. Mình đã từng làm ghost boot tự động cho Fast32 (chạy trên dos) và làm cho cd/dvd nhưng trên NTFS thì chưa. Cái file boot của ổ đĩa mềm ngày xưa tìm nguyên buổi mới ra :snicker:. Bạn nào muốn làm trên CD/DVD thì có thể tham khảo http://2mit.org/forum/showthread.php/6415-Lam-dia-ghost-window-tu-dong-
cài file boot của đĩa mềm mình cũng đã up lên cho các bạn mọi thứ đều có link hết 1. Chuẩn bị các phần mềm: WinImage, Gimage, Avlgomgr và 1 file ảnh đĩa mềm có dạng *.img hoặc *.ima. Link download: http://www.mediafire.com/?xhj3urvv6bh53p5 2. Chuẩn bị các file: ghost.exe, choice.com, reboot.com, shutdown.com, mouse.com, autoexec.bat với nội dung như bài Lab 1. Link download: http://www.mediafire.com/?ee7ko46ypq6sdse thanks mọi người đã ủng hộ:congratulate: đang tiếp tục hoàn thành các bài Lab tiếp theo dành cho Win 7 iu quý :029: Cách này không áp dụng được cho Win 7, Win 7 dùng Windows Boot Manager để quản lý Boot table của mình Còn bài lab 1 vs lab 2 của mình dùng "boot.ini" chỉ có trong WinXP trở về trước
Theo mình. Nếu trong bài lab này thì không được. Nhưng nếu bạn sử dụng các chương trình boot manager khác hoặc biết edit Boot manager của windows 7 thì được. Mình cũng chưa thử thằng Boot manager.
dùng chương trình EasyBCD có thể tích hợp được hiren's boot trên windows 7.Mình đã test thử thành công.
Windows boot manager chỉ có Vista trở về sau mới sử dụng. Muốn chỉnh sửa ta sẽ dùng BCDEDIT p/s: cái này chỉ dùng nếu ta muốn tìm hiểu bản chất của việc boot thôi nhé, còn không thì dùng easyBCD cho nó khỏe :012: Đây là Boot Table của máy mình và ai muốn tìm hiểu thì có Help ở dưới k: Windows Boot Manager -------------------- identifier {bootmgr} device partition=\Device\HarddiskVolume1 description Windows Boot Manager locale en-US inherit {globalsettings} default {current} resumeobject {d7b0d7b2-14b2-11e0-8ad6-f8550b3590bc} displayorder {current} toolsdisplayorder {memdiag} timeout 30 Windows Boot Loader ------------------- identifier {current} device partition=C: path \Windows\system32\winload.exe description Windows 7 locale en-US inherit {bootloadersettings} recoverysequence {d7b0d7b4-14b2-11e0-8ad6-f8550b3590bc} recoveryenabled Yes osdevice partition=C: systemroot \Windows resumeobject {d7b0d7b2-14b2-11e0-8ad6-f8550b3590bc} nx OptIn ================================================================================= C:\Users\Administrator>bcdedit /? BCDEDIT - Boot Configuration Data Store Editor The Bcdedit.exe command-line tool modifies the boot configuration data store. The boot configuration data store contains boot configuration parameters and controls how the operating system is booted. These parameters were previously in the Boot.ini file (in BIOS-based operating systems) or in the nonvolatile RAM entries (in Extensible Firmware Interface-based operating systems). You can use Bcdedit.exe to add, delete, edit, and append entries in the boot configuration data store. For detailed command and option information, type bcdedit.exe /? <command>. For example, to display detailed information about the /createstore command, type: bcdedit.exe /? /createstore For an alphabetical list of topics in this help file, run "bcdedit /? TOPICS". Commands that operate on a store ================================ /createstore Creates a new and empty boot configuration data store. /export Exports the contents of the system store to a file. This file can be used later to restore the state of the system store. /import Restores the state of the system store using a backup file created with the /export command. /sysstore Sets the system store device (only affects EFI systems, does not persist across reboots, and is only used in cases where the system store device is ambiguous). Commands that operate on entries in a store =========================================== /copy Makes copies of entries in the store. /create Creates new entries in the store. /delete Deletes entries from the store. /mirror Creates mirror of entries in the store. Run bcdedit /? ID for information about identifiers used by these commands. Commands that operate on entry options ====================================== /deletevalue Deletes entry options from the store. /set Sets entry option values in the store. Run bcdedit /? TYPES for a list of datatypes used by these commands. Run bcdedit /? FORMATS for a list of valid data formats. Commands that control output ============================ /enum Lists entries in the store. /v Command-line option that displays entry identifiers in full, rather than using names for well-known identifiers. Use /v by itself as a command to display entry identifiers in full for the ACTIVE type. Running "bcdedit" by itself is equivalent to running "bcdedit /enum ACTIVE". Commands that control the boot manager ====================================== /bootsequence Sets the one-time boot sequence for the boot manager. /default Sets the default entry that the boot manager will use. /displayorder Sets the order in which the boot manager displays the multiboot menu. /timeout Sets the boot manager time-out value. /toolsdisplayorder Sets the order in which the boot manager displays the tools menu. Commands that control Emergency Management Services for a boot application ========================================================================== /bootems Enables or disables Emergency Management Services for a boot application. /ems Enables or disables Emergency Management Services for an operating system entry. /emssettings Sets the global Emergency Management Services parameters. Command that control debugging ============================== /bootdebug Enables or disables boot debugging for a boot application. /dbgsettings Sets the global debugger parameters. /debug Enables or disables kernel debugging for an operating system entry. /hypervisorsettings Sets the hypervisor parameters. ===================================================================== C:\Users\Administrator>bcdedit /? topics TOPICS IN THIS HELP FILE To display help for a topic, run "bcdedit /? <topic>" where <topic> is one of the following: bootdebug /bootdebug command. bootems /bootems command. bootsequence /bootsequence command. copy /copy command. create /create command. createstore /createstore command. dbgsettings /dbgsettings command. debug /debug command. default /default command. delete /delete command. deletevalue /deletevalue command. displayorder /displayorder command. ems /ems command. emssettings /emssettings command. enum /enum command. export /export command. FORMATS Formats for types. hypervisorsettings /hypervisorsettings command. ID Identifiers for entries.. import /import command. mirror /mirror command. set /set command. store /store command-line option. timeout /timeout command. toolsdisplayorder /toolsdisplayorder command. TYPES Types that apply to any entry. TYPES BOOTAPP Types that apply to boot applications. These include the boot manager, memory diagnostic application, Windows OS loader, and the resume application. TYPES BOOTMGR Types that apply to the boot manager. TYPES BOOTSECTOR Types that apply to the boot sector application. TYPES CUSTOMTYPES Custom types. TYPES FWBOOTMGR Types that apply to the firmware boot manager TYPES MEMDIAG Types that apply to the memory diagnostic application TYPES NTLDR Types that apply to the NTLDR based OS loader TYPES OSLOADER Types that apply to the Windows OS loader TYPES RESUME Types that apply to the resume application v /v command-line option ========================================================================== C:\Users\Administrator>bcdedit /? /create This command creates a new entry in the boot configuration data store. If a well-known identifier is specified, then the /application, /inherit and /device options cannot be specified. If the <id> is not specified, or if <id>is not well-known, then you must specify an /application, /inherit or /device option. bcdedit /create [{<id>}] [/d <description>] [/application <apptype> | /inherit [<apptype>] | /inherit DEVICE | /device] <id> Specifies the identifier to be used for the new entry. For more information about identifiers, run "bcdedit /? ID". <description> Specifies the description to be applied to the new entry. /application <apptype> Specifies that the new entry must be an application entry. <apptype> specifies the application type. <apptype> can be one of the following: BOOTSECTOR OSLOADER RESUME STARTUP If you use other application types instead of one of these, you must also specify a well-known identifier. /inherit [<apptype>] Specifies that the new entry must be an inherit entry, and <apptype> specifies the application type. If <apptype> is not specified, then the entry can be inherited by any entry. If specified, <apptype> can be one of the following: BOOTMGR BOOTSECTOR FWBOOTMGR MEMDIAG NTLDR OSLOADER RESUME The modifier prevents the inherit entry from being inherited by an application entry of <apptype>. /inherit DEVICE Specifies that the new entry must be an inherit entry, and that the entry can only be inherited by a device options entry. /device Specifies that the new entry must be an additional device options entry. Examples: The following command creates a NTLDR based OS loader entry (Ntldr): bcdedit /create {ntldr} /d "Earlier Windows OS Loader" The following command creates a RAM disk additional options entry: bcdedit /create {ramdiskoptions} The following command creates a new operating system boot entry: bcdedit /create /d "Windows Vista" /application osloader The following command creates a new debugger settings entry: bcdedit /create {dbgsettings} ========================================================================== C:\Users\Administrator>bcdedit /? /createstore bcdedit /createstore <filename> This command created a new empty boot configuration data store. The created store is not a system store. <filename> Specifies the filename of the boot configuration data store. If the filename contains spaces, it must be enclosed in quotation marks (""). Example: The following command creates the specified store file: bcdedit /createstore C:\DATA\BCD ============================================================================= C:\Users\Administrator>bcdedit /? /create This command creates a new entry in the boot configuration data store. If a well-known identifier is specified, then the /application, /inherit and /device options cannot be specified. If the <id> is not specified, or if <id>is not well-known, then you must specify an /application, /inherit or /device option. bcdedit /create [{<id>}] [/d <description>] [/application <apptype> | /inherit [<apptype>] | /inherit DEVICE | /device] <id> Specifies the identifier to be used for the new entry. For more information about identifiers, run "bcdedit /? ID". <description> Specifies the description to be applied to the new entry. /application <apptype> Specifies that the new entry must be an application entry. <apptype> specifies the application type. <apptype> can be one of the following: BOOTSECTOR OSLOADER RESUME STARTUP If you use other application types instead of one of these, you must also specify a well-known identifier. /inherit [<apptype>] Specifies that the new entry must be an inherit entry, and <apptype> specifies the application type. If <apptype> is not specified, then the entry can be inherited by any entry. If specified, <apptype> can be one of the following: BOOTMGR BOOTSECTOR FWBOOTMGR MEMDIAG NTLDR OSLOADER RESUME The modifier prevents the inherit entry from being inherited by an application entry of <apptype>. /inherit DEVICE Specifies that the new entry must be an inherit entry, and that the entry can only be inherited by a device options entry. /device Specifies that the new entry must be an additional device options entry. Examples: The following command creates a NTLDR based OS loader entry (Ntldr): bcdedit /create {ntldr} /d "Earlier Windows OS Loader" The following command creates a RAM disk additional options entry: bcdedit /create {ramdiskoptions} The following command creates a new operating system boot entry: bcdedit /create /d "Windows Vista" /application osloader The following command creates a new debugger settings entry: bcdedit /create {dbgsettings}