Friday, May 25, 2007

Tạo đĩa khôi phục Recovery Console trong Windows XP



Cách duy nhất để có được phiên bản nhỏ gọn của Windows XP Recovery Console trên một đĩa CD là copy các file cần thiết từ đĩa cài vào phương tiện cứu nguy nào đó của bạn.

Dù sớm hay muộn bất kỳ người nào dùng Windows XP cũng phải đối mặt với vấn đề trục trặc của Windows như mất mật khẩu, lỗi hệ điều hành do virus, hacker gây ra…

Có thể hệ thống khởi động bị lỗi, hay đơn giản chỉ là khôi phục lại một file hệ thống không hoạt động, hoặc vô hiệu hoá dịch vụ hệ thống là nguyên nhân gây ra các vấn đề trong Windows.

Trong các trường hợp đó bạn chỉ cần thiết lập lại một số chế độ hoạt động nguyên gốc như ban đầu mà không cần thao tác trên toàn bộ hệ điều hành.

May mắn thay, Microsoft cũng cung cấp một chức năng nhỏ gọn, gọi là Recovery Console trên đĩa cài hệ thống để giải quyết các vấn đề này. Chỉ cần cho đĩa vào, khởi động hệ thống, nhấn phím “R” khi được nhắc và chức năng khôi phục sẽ cố gắng xác định vị trí chương trình cài đặt Windows hiện thời. Nếu tìm ra, bạn sẽ được nhắc đăng nhập vào hệ thống trong vai trò là người quản trị. Sau đó chương trình đưa ra các mức độ khôi phục hệ thống khác nhau trên màn hình nền command prompt cho bạn lựa chọn. Bạn phải sử dụng chức năng chế độ ký tự của Windows.

Recovery Console cũng có thể cài đặt bên trong ổ cứng của bạn, song song với hệ điều hành mà không phải dùng đến đĩa CD. Một cách khác bạn có thể làm là ghi chương trình Recovery Console vào cùng một đĩa CD khởi động (CD Boot).

Cách làm dễ nhất để tạo một đĩa CD Windows XP Recovery Console rất đơn giản là chỉ cần copy toàn bộ nội dung đĩa cài Windows sang một đĩa CD khác. Nhưng từ Windows XP trở đi, kích thước đĩa cài là khoảng 600 MB. Không phải lúc nào chúng ta cũng có đủ khả năng để sao chép. Tuy nhiên, bạn có thể lược bỏ bớt những file cài đặt chỉ giữ lại các thành phần cơ bản cần thiết cho chương trình Recovery Console có thể chạy được , khi đó dung lượng lưu trữ chỉ còn nhỏ hơn 10 Mb.

Trước khi đi sâu hơn, chúng ta cũng cần chú ý một số vấn đề kỹ thuật quan trọng. Chẳng hạn quá trình boot bằng đĩa CD trong Windows XP hơi khác một chút và hoàn toàn không tương thích với boot trong ổ cứng hay boot bằng đĩa mềm.

Ví dụ, bộ nạp khởi động XP “thông thường” nằm trong boot sector của ổ cứng hoặc đĩa mềm, bắt đầu hoạt động bằng việc tìm kiếm một file gọi là ntldr trong thư mục gốc của hệ thống file hiện thời. Sau đó nó đọc nội dung của file điều khiển menu boot boot.ini và thực hiện các hoạt động theo tiến trình mà người sử dụng đã lựa chọn.

Tuy nhiên, Windows XP thường sử dụng một kiểu đọc khởi động khác cho các đĩa CD Media cái mà không sử dụng ntldr hoặc boot.ini. Thay vì các đĩa CD khởi động thường tìm 1 file gọi là setupdr.bin bên trong thư mục phụ i386setupldr.bin là một phiên bản đặc biệt của hệ thống chương trình cài đặt. Nhưng quan trọng hơn cả là ntldr không có bất kỳ một phương thức nào hỗ trợ cho hệ thống file ISO 9660 vì vậy mà nó không thể sử dụng cho các đĩa CD Media

Tất cả điều này có nghĩa là bạn không thể chỉ copy nội dung cài của Recovery Console từ ổ cứng sang đĩa CD mà khiến nó hoạt động được. Một vấn đề là ntldr không được dùng trên đĩa CD, trong khi khởi động duy nhất của Windows XP có thể nhận được từ đĩa CD nằm trong chương trình cài đặt hệ thống.

Bạn cần những gì?

Cách thức cơ bản ở đây là copy số lượng nhỏ nhất các tệp cơ bản của file cài Windows XP sang ổ cứng, và sau là copy sang một đĩa CD hay đĩa cứng. Phương thức dễ nhất là yêu cầu Windows cài đặt lại hệ điều hành, khi đó chỉ có các file cài cơ bản mới được copy sang ổ cứng. Nhưng không may việc tái cài đặt làm cho file boot.ini của hệ thống cập nhật chương trình và ép buộc hệ thống phải khởi động lại ngay lập tức.

Chúng ta sẽ phải cố gắng tránh việc khởi động lại máy. Sau đó đơn giản chỉ là copy các file cần vào hệ thống file trên đĩa CD. Cuối cùng là xoá sạch toàn bộ.

Để thực hiện được điều này, bạn cần một nguồn cài đặt phù hợp với phiên bản và gói dịch vụ trong hệ điều hành của bạn. Ví dụ nếu bạn đang dùng Windows Server 2003 Enterprise Edition với SP1, bạn sẽ cần file cài đặt có cùng phiên bản với gói dịch vụ đặt trong các phương tiện cài đặt.

Bạn cũng cần một chức năng có thể giải nén bộ nạp khởi động từ đĩa CD Windows XP. Hoặc bạn có thể dùng một trong các phần khởi động của Windows 2000, Windows XP lấy từ trên mạng internet. Bạn cũng sẽ cần một số loại chương trình master trên CD để tạo ra một đĩa khởi động hoặc tạo ra hệ thống đa khởi động menu.

Bạn cũng nên dùng một số phần mềm máy ảo cho quá trình cài đặt và giải nén. Nếu không bạn sẽ bị lẫn lộn với các file boot hệ thống và rất mạo hiểm khi dùng một hệ thống kiểu này. Vì rất có khả năng bạn sẽ tình cờ làm cho hệ thống không thể boot được. Hãy chú ý điểm này.

Có một số Recovery Console ISO được làm trước đó đang trôi nổi trên internet. Các bạn không nên dùng chúng bởi vì, có thể chúng không tương thích với phiên bản và gói dịch vụ trong hệ điều hành của bạn. Trong khi không có lý do gì để nghi ngờ đòi hỏi toàn vẹn của tác giả và các file trong Recovery Console. Hơn nữa các chương trình đó cũng không đáng tin.

Thật tệ là Microsoft không cung cấp các gói có sẵn các file tiêu chuẩn Recovery Console như là một ưu đãi cho khách hàng. Mặc dù Microsoft có cung cấp các phần mềm download từ website, nhưng các file này không phù hợp với Recovery Console xây dựng trên nền đĩa CD.

Cài đặt file Setup

Khi đã có đủ các thành phần cần thiết, bước đầu tiên là bạn cài đặt hệ điều hành lên ổ cứng, dùng bất cứ phương tiện cài đặt nào mà bạn có (có thể là đĩa CD, hay cài đặt từ mạng hoặc bất cứ nguồn nào khác).

Bạn có thể cập nhật và áp dụng các bản vá lỗi, nhưng đừng cho phép Windows Update áp dụng bất cứ gói dịch vụ bổ sung nào. Hệ điều hành cài đặt và phương tiện cài đặt phải có cùng mức service pack. Nếu không thì các bước tiếp theo sẽ bị lỗi. Do đó nếu bạn dùng các gói dịch vụ, bạn sẽ cần quay lại và cài đặt dùng thử.

Khi hệ thống tương đối ổn định, mở cửa sổ lệnh command prompt và điều hướng cho phương tiện cài đặt tìm chương trình thực thi wint32.exe (nằm trong thư mục con i386). Sau đó chạy câu lệnh ".\winnt32.exe /noreboot" từ cửa sổ lệnh. Câu lệnh này thực hiện việc copy các file cài chủ chốt sang ổ cứng của hệ thống. Đối số "/noreboot" lệnh với chương trình là không bắt buộc khởi động lại máy ngay lập tức sau khi cài như bình thường.

Màn hình "Welcome to Windows Setup" sẽ xuất hiện như trong hình sau:



Trong hộp thoại sổ xuống chọn kiểu cài đặt "New Installation (Advanced)". Sau đó xuất hiện thỏa thuận về bản quyền sử dụng, có thể bạn sẽ phải nhập các mã số bản quyền.

Tiếp theo bạn được nhắc định dạng lại ổ theo kiểu NTFS, hãy chọn “No” để dùng lại được các file cài đặt cho Recovery Console, tối thiểu hoá biến và có thể định dạng lại ổ hệ thống chúng ta muốn sửa chữa sau này.

Sau đó bạn sẽ được hỏi liệu có muốn cập nhật các file cài đặt này hay không. Chọn “No” để tiến trình cài đặt xem xét các file update trong ổ cứng cục bộ của bạn khi tiếp tục. Các file này không thể nằm trong các hệ thống khác.

Cuối cùng chương trình sẽ bắt đầu sao chép các file cài vào thư mục gốc trong ổ cứng của bạn và kết thúc tốt đẹp quá trình cài đặt.

Lấy những gì chúng ta cần


Trong phần này, bạn nên có một thư mục gọi là $WIN_NT$.~BT trong thư mục gốc ở ổ C, cùng với một số file thông thường dùng trong quá trình cài đặt khác khi khởi động lại hệ thống. Chúng ta sẽ lấy các file này và một số file từ phương tiện cài đặt. Sau đó xoá tất cả các phần không cần thiết còn lại


Xác định vị trí cho thư mục $WIN_NT$.~BT, và xoá các file bootsect.dat, migrate.inf, winnt.sif trong đó file bootsect.dat chứa thông tin tham số ổ cứng của bạn. Sự hiện diện của file này có thể là nguyên nhân tiềm ẩn của các vấn đề không mong đợi với các hệ thống khác. Hai file còn lại có thể là nguyên nhân nhầm lẫn cho quá trình cài đặt.

Xác định lại vị trí cho thư mục gốc trong ổ C và đặt lại tên thư mục $WIN_NT$.~BTi386.

Tạo một thư mục khác trong thư mục gốc của ổ C, gọi là rcfiles. Chuyển thư mục i386 vào rcfiles để có đường dẫn c:\rcfiles\i386 và chuyển txtsetup.sif từ thư mục gốc của ổ C vào thư mục mới c:\rcfiles\i386.


Định vị lại vị trí phương tiện cài: Trong thư mục gốc của cây cài đặt sẽ có hai hay nhiều file bắt đầu với các ký tự: WIN51. Các tên file là quan trọng. Ví dụ Windows XP Professional SP2 có các file WIN51, WIN51P, WIN51P.SP1, và WIN51.SP2. Windows Server 2003 Enterprise Edition SP1 có các file WIN51, WIN51I, và WIN51I.SP1. Bạn cần sao chép tất cả các file WIN51* vào thư mục gốc của rcfiles được tạo ra trong bước trước.

Bây giờ chuyển toàn bộ thư mục rcfiles vào hệ thống CD điều khiển phần mềm.

Tại thời điểm này bạn đã làm việc với hệ thống cài đặt. Để bắt đầu, trước hết xoá file có tên $ldr$ trong C:\ directory. Nếu có thư mục $WIN_NT$.~LS trong thư mục gốc ở ổ C bạn cũng có thể xoá.

Bạn cũng cần sửa file boot.ini Windows để quá trình khởi động Windows trở lại bình thường. Đầu tiên dùng câu lệnh attrib để xoá sạch các thuộc tính hệ thống ẩn và chỉ đọc trong file boot.ini. Sau đó copy file boot.bak vào boot.ini (boot.bak được chương trình cài đặt tự động tạo ra). Sau đó lại dùng câu lệnh attib để có thể đánh giấu các file system, hidden và read-only trong file boot.ini mới.


C:\> attrib boot.ini "s "h "r
C:\> copy boot.bak boot.ini 1 file(s) copied
C:\> attrib boot.ini +s +h +r

Đó là các câu lệnh đã miêu tả. Bạn nên trở lại hệ thống cài đặt thông thường.

Xây dựng đĩa CD

Dùng phần mềm điều khiển CD, tạo một đĩa boot mới và thêm nội dung thư mục rcfiles vào gốc của hệ thống file CD. Không được thêm bản thân thư mục rcfiles mà là nội dung của nó.

Giống như trước, bạn phải dùng sector khởi động CD của Windows 2000 hoặc Windows XP cho sector khởi động


Nếu bạn tạo một đĩa CD Recovery Console độc lập, bạn sẽ cần phần mềm điều khiển CD tới file trên sector khởi động. Phần mềm điều khiển nên được thiết lập theo chế độ “no emulation” và nên có 2 sector định phần tới boot. Màn hình đưới thể hiện điều này trong Nero Burning ROM.


Bây giờ tạo một CD hay file ISO và sau đó đưa sản phẩm tạo thành trở lại máy kiểm tra.

Chúng ta có thể boot từ CD. Nó sẽ tự động bắt đầu quá trình bài đặt. Ấn phím “R” khi được nhắc, bạn sẽ vào chương trình Recovery Console. (Bạn cũng có thể ấn phím “F10” trong màn hình đầu tiên để trực tiếp vào phần giao tiếp người - máy).


Quá trình trên trả ra kết quả trong một CD cài đặt cơ bản khoảng 7MB. CD này chỉ chạy được chương trình Recovery Console và chỉ chạy được những dạng cơ bản nhất. Bạn không thể cài đặt được Windows với đĩa CD này. Và bạn cũng có thể gặp một số vấn đề khi dùng Recovery Console trên máy khác, có kiểu phần cứng kkác.

Ví dụ, nếu bạn đã từng phải ấn giữ phím F6 trong suốt quá trình cài đặt thông thường để nạp một ổ lưu trữ, bạn cũng cần làm như vậy với quá trình Recovery Console. Tuy nhiên, bạn có thể phân dòng các ổ đó vào Recovery Console của bạn để chúng được nạp bằng setupldr.bin khi đĩa CD bắt đầu hoạt động.


Quá trình này được mô tả trong http://www.jsifaq.com/SF/Tips/Tip.aspx?id=6575http://gosh.msfnhosting.com/txtsetup.htm. Một bản sao mới của txtsetup.inf được đặt trong thư mục gốc ở ổ C trong suốt quá trình cài đặt. Bạn đã phải đặt nó vào thư mục i386 trong phần trước. Bạn có thể tìm nó tại đó khi cần.

Một vấn đề khác có thể phát sinh với các hệ thống dùng các tầng cứng ảo hay các bộ vi xử lý khác nhau. Ví dụ nếu hệ thống kiểm tra của bạn dùng bộ vi xử lý đơn HAL, bạn sẽ có vấn đề với các hệ thống dùng vi HAL đa xử lý. v.v.. Bạn có thể giải quyết vấn đề này bằng cách lặp lại quá trình cài đặt trên các hệ thống đa kiểu và hợp nhất quá trình cài đặt cuối cùng.


Một vấn đề khác là bạn chỉ có thể tạo ra một loại Recovery Console trên một đĩa CD. Bạn không thể có các loại khác nhau cho Windows XP Professional và Windows Server 2003, hoặc cùng một phiên bản Windows nhưng gói dữ liệu khác nhau. Đó là do tất cả các hệ điều hành Recoverty Console sẽ tìm file setup trong thư mục i386 của đĩa CD. Nhưng mỗi file trong một phiên bản khác nhau một chút. Vì thế chúng không thể cùng dùng một loại đĩa CD Recovery Console.

Một số người giải quyết vấn đề này bằng cách thiết lập cho mỗi console đặc trưng trong từng phiên bản một thư mục riêng. Và sau đó dùng một trình soạn thảo để thay đổi nơi sector boot của CD và setupldr.bin tìm kiếm các file của chúng.

Một điều cần xem xét khác là Recovery Console được giới hạn mặc định. Tuy nhiên bạn có thể loại bỏ một số thành phần nâng cao bằng cách chỉnh sửa một số thanh ghi trong máy của bạn.

Hãy nhớ rằng Recovery Console cố gắng truy cập các file cài đặt hệ điều hành khi nó nạp. Điều đó có nghĩa là bao gồm cả việc đọc và ghi. Vì thế phương thức này làm việc thậm chí ngay cả khi bạn boot Recovery Console từ một đĩa CD.

No comments:

Sign up for PayPal and start accepting credit card payments instantly.