Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
451,11 KB
Nội dung
Trường Viện Đại học Mở Hà Nội Khoa công nghệ thông tin BÁO CÁO BÀI TẬP LỚN HỆ ĐIỀU HÀNH Đề tài: Quảnlýregistrytrongwindow Giáo viên giảng dạy: Thầy giáo Nguyễn Thanh Tùng Sinh viên thực hiện: Vũ Anh Tuấn Lớp: 10B6 QUẢNLÝREGISTRYTRONGWINDOW I. Giới thiệu về RegistryRegistry là một cơ sở dữ liệu dùng để lưu trữ thông tin về những sự thay đổi, những lựa chọn, những cấu hình từ người sử dụng Windows. Registry bao gồm tất cả các thông tin về phần cứng, phần mềm, người sử dụng. Registry luôn được cập nhật khi người sử dụng tiến hành sự thay đổi trong các thành phần của Control Panel, File Associations, và một số thay đổi trong menu Options của một số ứng dụng, Windows Registry là một kho chứa khổng lồ, một cơ sở dữ liệu có thứ bậc, dễ dàng truy cập, dùng để lưu các thiết lập hệ thống (và rất nhiều thông tin khác). Nếu can thiệp không đúng, bạn có thể gặp phải những vấn đề nghiêm trọng. Tuy nhiên, nếu hiểu những gì đang thực hiện với Registry, ta có thể điều chỉnh khá nhiều tham số của Windows theo mong muốn của mình. Registry Editor cho phép người dùng thực hiện các chức năng sau đây: • Tạo lập, thao tác, đổi tên và xóa các khóa registry, khóa con, các giá trị và dữ liệu giá trị • Nhập và xuất các file REG, xuất khẩu dữ liệu trong các định dạng nhị phân • Tải, thao tác và gỡ bỏ các các hive định dạng tập tin registry (Windows NT dựa trên hệ thống chỉ) • Thiết lập quyền truy cập dựa trên ACL (Windows NT dựa trên hệ thống) • người dung có thể đánh dấu các lựa chọn các khóa registry mà mình yêu thích • Tìm chuỗi đặc biệt trong tên của từ khóa, tên dữ liệu giá trị và giá trị • Điều khiển từ xa chỉnh sửa registry trên một máy tính nối mạng Registry có cấu trúc hình cây, tương tự như cấu trúc của cây thư mục với rất nhiều nhánh con tỏa ra tùy theo cấu trúc ứng dụng. Thông thường Registry của Windows có 5 nhánh chính, mỗi nhánh đảm nhận việc lưu trữ những thông tin riêng biệt. Mỗi nhánh chính tỏa ra rất nhiều nhánh con và những nhánh con này cũng lưu trữ vô số thông tin đặc thù về mọi thứ có trong Windows: HKEY_CLASSES_ROOT: Lưu những thông tin dùng chung cho toàn bộ hệ thống. HKEY_CURRENT_USER: Lưu những thông tin cho người dùng đang sử dụng hoặc đăng nhập vào Windows. HKEY_LOCAL_MACHINE: Lưu những thông tin về hệ thống, phần cứng, phần mềm… HKEY_USERS: Lưu những thông tin của tất cả các User (người dùng), mỗi user là một nhánh với tên là số ID định dạng của user đó. HKEY_CURRENT_CONFIG: Lưu thông tin về cấu hình hiện tại đang dùng. Page 2 II. Sự khác biệt Registrytrong các thế hệ Window. Windows Registry có thể được chỉnh sửa thủ công bằng cách sử dụng các chương trình như regedit.exe và trên các phiên bản cũ của Windows, Regedt32.exe, mặc dù những công cụ này không tiếp xúc với một số siêu dữ liệu registry như lần sửa đổi cuối cùng. Nó cũng bổ sung cách giải quyết trong các mã mà nó cho phép các khóa Registry được đổi tên, như các API cơ bản không hỗ trợ khả năng này. Hệ điều hành Windows 9x Regedit.exe có thể được sử dụng trong Windows và cũng có trong chế độ thực MS-DOS . [16] Windows NT đã giới thiệu cho phép để chỉnh sửa Registry. Windows NT 4.0 và Windows 2000 đã được phân phát với cả hai chương trình Windows Regedit.exe 9x và chương trình Regedt32.exe Windows NT 3.x. Có một vài sự khác biệt nhau giữa hai cách biên tập trên các flaforms này: Hinh 1: Registry Edittor trongWindow 3.11 Page 3 Hình 2: Registry Edittor trongWindow 7 • Regedit.exe có một cái nhìn cây bên trái bắt đầu từ "My Computer" và liệt kê tất cả các hives liên quan đã được nạp. Regedt32.exe có một cái nhìn cây bên trái, nhưng mỗi tổ có cửa sổ riêng của nó, do đó, cây chỉ hiển thị các từ khóa. • Regedit.exe đại diện cho ba thành phần của một giá trị (tên, kiểu dữ liên, và giá trị của dữ liệu) như là các cột riêng biệt của một bảng. Regedt32.exe đại diện cho nó như là một danh sách các chuỗi. • Regedit.exe hỗ trợ kích chuột phải vào các mục trong một cái nhìn cây để điều chỉnh các thuộc tính và các thiết lập khác. Regedt32.exe yêu cầu tất cả các thao tác được thực hiện từ thanh menu trên cùng. • Regedit.exe hỗ trợ tìm kiếm tên chính, các giá trị, hoặc dữ liệu trong suốt toàn bộ registry, trong khi Regedt32.exe chỉ được hỗ trợ tìm kiếm cho tên quantrọngtrong một tổ nhóm tại một thời điểm. • Phiên bản trước đó của regedit.exe không hỗ trợ chỉnh sửa cho phép. Vì vậy, những phiên bản đầu, chỉ Regedt32.exe có thể truy cập đầy đủ chức năng của một đăng ký NT. Regedit.exe trong Windows XP hỗ trợ cho phép chỉnh sửa. • Regedit.exe chỉ hỗ trợ chuỗi (REG_SZ), nhị phân (REG_BINARY), và giá trị DWORD (REG_DWORD). Regedt32.exe hỗ trợ cả những kiểu dữ liệu đó, cộng với chuỗi mở rộng (REG_EXPAND_SZ) và đa chuỗi (REG_MULTI_SZ). Việc cố Page 4 gắng để chỉnh sửa các kiểu khóa dữ liệu không được hỗ trợ với regedit.exe trên Windows 2000 hoặc Windows NT 4.0 là sẽ không thể chuyển đổi được. Windows XP là hệ thống đầu tiên tích hợp hai chương trình này thành một, thông qua giao diện Regedit.exe và thêm các chức năng Regedt32.exe. Sự khác biệt được liệt kê ở trên không được áp dụng trên Windows XP và các hệ thống mới hơn; Regedit.exe là trình biên tập được cải thiện, và Regedt32.exe là ngược lại. III. Những entry giá trị trong các giá trị registry. Dữ liệu Registry được duy trì như những entry giá trị dưới khoá Registry.Như hình dưới đây: Một entry giá trị có ba phần : tên của giá trị,kiểu giữ liệu và giá trị của nó ,có thể là những giá trị có một số độ dài. Page 5 Một entry giá trị không thể lớn quá 1MB.Giá trị từ 0 tới 0x7fffffff được dùng cho định nghĩa bởi hệ thống, và những ứng dụng được khuyến khích là nên dùng những kiểu này. Giá trị từ 0x80000000 tới 0x7ffffffff được dành cho những ứng dụng. Registry có thể chỉnh sửa trực tiếp, làm thay đổi các thông số thông qua Registry Editor. Chạy Registry Editor bằng các kiểu dữ liệu dùng trong Registry: - REG_BINARY: Dữ liệu nhị phân. Hầu hết thông tin phần tử phần tử phần cứng được lưu dạng dữ liệu nhị phân. - REG_DWORD: Kiểu Double Word cho phép người dùng nhập theo cơ số 16 (HEX) hoặc cơ số 10 (DECIMAL). Rất nhiều tham số cho những điều khiển thiết bị và những dịch vụ dạng kiểu này. Dữ liệu trả về là một số có độ dài 4 bite. - REG_EXPAND_SZ: Một xâu dữ liệu mở rộng, nó là một xâu chứa một biến sẽ được thay thế khi một ứng dụng gọi. Ví dụ: "%SystemRoot%" thay cho đường dẫn Windows\System32 - REG_SZ: giá trị chứa danh sách hay đa giá trị. Một thứ tự các kí tự hiển thị dạng văn bản có thể đọc được. Ví dụ: DisplayName :REG_SZ : Messenger - REG_MULTI_SZ: Một xâu phức . giá trị chứa danh sách hay đa giá trị trong dạng văn bản người có thể đọc. IV. Nội dung các khóa trong Registry. 1. HKEY_CLASSES_ROOT. HKEY_CLASSES_ROOT (viết tắt là HKCR) chứa hai loại thông tin là các tổ hợp file có đuôi mở rộng và các đăng kí về COM class (Component Object Model). Các thông tin này được chứa trong rất nhiều khoá. Hầu hết các khoá có giá trị REG_SZ đều chỉ tới một khoá khác trong HKCR chứa các thông tin về các lớp file có cùng đuôi mở rộng. Ví dụ, HKCR\ .xls sẽ chỉ tới thông tin về các file Microsoft Excel.Sheet.8. Các khoá còn lại chứa các cấu hình của các đối tượng COM đăng kí trong hệ thống. Khoá HKEY_CLASSES_ ROOT là handle key bao gồm tất cả các phần mở rộng file kết hợp với những file có thể thực hiện được. Nó cũng xác định cách thức một chương trình ứng dụng sẽ phản ứng khi một file tài liệu được kích đúp. Trong Windows khoá HKEY_CLASSES_ ROOT chứa thông tin tương tự như trong mục HKEY_LACAL_MACHINE\SOFTWARE\ CLASSES. Người lập trình không cần quan tâm đến vị trí thực sự của nó khi phát triển tệp tin thi hành trong mục Start up. Thay vào đó họ chỉ cần gửi dữ liệu tới mục HKEY_CLASSES_ ROOT. Page 6 HKEY_CLASSES_ROOT trong Window98 Dữ liệu trong HKCR đến từ hai nguồn: - Dữ liệu về đăng kí của mỗi lớp người dùng trong HKCU\SOFTWARE\ Classes. - Dữ liệu về đăng kí các lớp hệ thống mở rộng trong HKLM\SOFTWARE \Classes. Sự bổ sung các dữ liệu về đăng kí mỗi lớp người dùng là một đổi mới trong Win2000. Sự thay đổi này đã xoá đi một lỗ hổng về bảo mật trong Win NT4, một người sử dụng không có đặc quyền có thể thay đổi hoặc xoá các khoá trong HKCR, do đó làm ảnh hưởng đến hoạt động của các ứng dụng trong hệ thống. Trong Win2000, người dùng và các ứng dụng không có đặc quyền có thể đọc các dữ liệu về hệ thống mở rộng (systemwide) nhưng chỉ có thể thay đổi các dữ liệu riêng của họ. Hệ thống không thể chạy nếu không có HKEY_CLASSES_ROOT ; rất khó có thể hiệu chỉnh sự hoạt động của nó. HKEY_CLASSES_ROOT là một trong những lí do chính bạn cần tới Registry: cần thiết để điều khiển các chương trình ứng dụng và hệ điều hành. 2. HKEY_CURRENT_USER Page 7 HKEY_CURRENT_USER trong Win98. HKEY_CURRENT_USER (viết tắt là HKCU): Là khoá Root chứa những dữ liệu liên quan tới cấu hình phần cứng và các quyền ưu tiên của người đăng nhập hệ thống cục bộ. Nó trỏ tới hiện trạng người sử dụng (user’s profile) của người sử dụng hiện thời, được lưu trên đĩa cứng ở \Documents and Settings \ <username>\ Ntuser.dat (trong Win2000). Một hiện trạng người sử dụng chứa thông tin định nghĩa sự xuất hiện và cách hoạt động của Destop người sử dụng, kết nối mạng, và những thiết lập môi trường khác. Mỗi khi một hiện trạng người sử dụng được nạp (ví dụ vào lúc đăng nhập hoặc khi một tiến trình phục vụ chạy thông qua một người dùng riêng biệt), HKCU sẽ tạo một liên kết tới khoá con về người dùng của khoá HKEY_USER. HKEY_CURRENT_USER chứa tất cả thông tin cần thiết để thiết lập một môi trường người sử dụng trên máy tính. Những thông tin như một nhóm chương trình, những tham chiếu ứng dụng, màu màn hình và những tham chiếu cá nhân khác, mức độ an toàn cần thiết. HKEY_CURRENT_USER cho phép người lập trình và các nhà phát triển phần mềm dễ dàng truy nhập tới nơi thiết lập đăng nhập hiện hành. HKEY_CURRENT_USERS chứa những thông tin giống như thông tin được liệt kê trong mục security indentifer của HKEY_USRERS. Bất kì sự thay đổi nào trong HKEY_CURRENT_USER ngay lập tức cũng làm cho HKEY_USERES thay đổi theo và ngược lại . 3. HKEY_LOCAL_MACHINE HKEY_LOCAL_MACHINE (viết tắt HKLM) chứa dữ liệu cấu hình cho máy tính cục bộ. Thông tin trong cơ sở dữ liệu này được sử dụng bởi ứng dụng, các điều khiển thiết bị, và hệ thống Windows nhận ra dữ liệu cấu hình cho máy tính địa phương. Nó có chức năng điều khiển hệ thống và phần mềm, chứa hệ thống thông tin cho máy tính từ cài đặt phần mền tới mạng và cấu hình phần cứng. Sự cài đặt này là độc lập với người sử dụng vì chúng được tạo cho tất cả các người sử dụng hệ thống. HKEY_LOCAL_MACHINE trong Win98. Page 8 HKEY_LOCAL_MACHINE chứa năm cây con, bao gồm: a. HARDWARE: Cơ sở dữ liệu này mô tả phần cứng vật lí trong máy tính, cách điều khiển thiết bị sử dụng phần cứng đó, những ánh xạ và dữ liệu liên quan kết nối tới những kernel-modedriver với nhiều mã chế độ người sử dụng. Tất cả dữ liệu trong cây này được tạo lại mỗi lần hệ thống khởi động. - Khoá Description mô tả phần cứng máy tính thực tế. - Khóa DeviceMap chứa dữ liệu hỗn hợp trong định dạng đặc biệt tới những lớp đặc biệt của trình điểu khiển. - Khoá ResourceMap mô tả những điều khiển thiết bị nào yêu cầu tài nguyên phần cứng nào. Cây con HKEY_LOCAL_MACHINE\HARDWARE chứa dữ liệu phần cứng trongRegistry được tính toán tại thời điểm khởi động hệ thống. Nó bao gồm các thông tin về những phần tử hệ thống trên bảng mạch hệ thống và về những ngắt được gắn vào bởi những thiết bị cụ thể. Cây con HARDWARE chứa những tập dữ liệu quan trọngvà riêng biệt trong ba khoá con: Description, DeviceMap, ResourceMap. Tất cả thông tin trong HKEY_LOCAL_MACHINE\HARDWARE là không cố định, điều đó có nghĩa là những thiết lập được tính mỗi lần hệ thống khởi động và loại bỏ khi hệ thống tắt .Những ứng dụng và những điều khiển thiết bị sử dụng cây con này để đọc thông tin về những phần tử hệ thống, những dữ liệu lưu trực tiếp vào khoá con DeviceMap. * Khoá con Description. Khoá con Description của HKEY_LOCAL_MACHINE\HARDWARE hiển thị ra thông tin từ cơ sở dữ liệu phần cứng xây dựng bởi firmware, bộ tìm nhận phần cứng và thực hiện, nó quản lí giao diện giữa Kernel và hệ thống con môi trường: - Nếu máy tính là dạng kiểu Risc, cơ sở dữ liệu này là một bản sao của cơ sở dữ liệu cấu hình arc lấy từ firmware. - Nếu máy tính là máy X86, cơ sở dữ liệu này chứa dữ liệu tìm bởi trình tìm nhận phần cứng, nó là một chương trình chạy như một phần trong thứ tự khởi động Windows. Bộ tìm nhận phần cứng trên máy họ X86 là NTDETECT.COM. - Nếu máy đích không phải là máy tính tương thích máy PC, OEM sẽ hỗ trợ phiên bản NTDETECT.COM của nó như là trình tìm nhận phần cứng. Trình tìm nhận cho họ máy tính họ X86 phát hiện những đối tượng sau: Bus/adapter type Video adapter Keyboard Floating point coprocessor Page 9 Scsi adapters Mouse Communication ports Floppy driver Machine ID Parallel ports HKEY_LOCAL_MACHINE\HARDWARE\description\System\Multifun-tionAdaptor chứa rất nhiều khoá con khác, mỗi khoá tương ứng với điều khiển bus cụ thể trên máy tính cục bộ. Mỗi khoá con mô tả một lớp điều khiển bao gồm những điều khiển ổ đĩa, màn hình bàn phím, các cổng song song cổng nối tiếp và thiết bị SCSI. Đường dẫn của khóa con mô tả kiểu phần tử. Việc đánh số cho các thiết bị từ 0. Tên của khoá con MultifuntionAdapter tuỳ thuộc vào kiểu bus. * Khoá con DeviceMap. Dưới khoá DeviceMap, mỗi khoá con Device chứa một hay nhiều giá trị chỉ ra vị trí trongRegistry cho thông tin điều khiển cụ thể cho dạng phần tử đó. Giá trị của mỗi khoá con Device mô tả một cổng hay đường dẫn cho một khoá con Service trong HKEY_LOCAL_MACHINE\ ControlSetnnn\ services, nó chứa thông tin và điều khiển thiết bị. Khoá con Services đó chứa thông tin cho một người quản trị hệ thống có thể cần để gỡ rối và thậm chí là những thông tin hiển thị về thiết bị bởi trình chuẩn đoán của Windows. * Khoá con ResourceMap. Khoá con ResourceMap dưới HKEY_LOCAL_MACHINE\ HARDWARE ánh xạ các điều khiển thiết bị tới những tài nguyên mà điều khiển nó sử dụng. Mỗi khoá con ResourceMap chứa những dữ liệu báo bởi điều khiển thiết bị về sử dụng cổng vào ra , địa chỉ bộ nhớ vào ra , ngắt các kênh DMA . Dữ liệu trong khoá con ResourceMap là không ổn định , do vậy khoá này được tạo ra mỗi khi khởi động Windows. Dưới khoá con ResourceMap có những khoá con DeviceClass cho các thiết bị. Mỗi khoá con này chứa một hay nhiều khoá con DriverName cùng với thông tin về một điều khiển cụ thể . b. SAM. HKLM|\SAM chứa các thông tin về nhóm (group) và tài khoản (account) địa phương, như user passwords, các định nghĩa nhóm và các tổ hợp tên miền. SAM là chữ viết tắt của Security Account Manager. Hệ thống Windows 2000 Server hoạt động như các bộ điều khiển tên miền lưu giữ các tài khoản tên miền và nhóm trong thư mục Active. Một cách ngầm định, các mô tả về bảo mật (security descriptor) trong khoá SAM được định cấu hình mà thậm chí tài khoản của người quản trị cũng không bị truy cập. Bạn có thể thay đổi các mô tả về bảo mật để cho phép truy cập, đọc thông tin về người quản trị nếu bạn muốn có vai trò ngang hàng với người quản trị, nhưng các thông tin đó là không rõ ràng vì dữ liệu không có cơ sở và các mật khẩu được mã hoá với cách riêng, do đó bạn không thể xác định mật khẩu từ dạng mã hoá của nó. c. SECURITY. Page 10 . registry trong window Giáo viên giảng dạy: Thầy giáo Nguyễn Thanh Tùng Sinh viên thực hiện: Vũ Anh Tuấn Lớp: 10B6 QUẢN LÝ REGISTRY TRONG WINDOW I. Giới thiệu. màn ảnh, âm thanh và các chức năng liên quan khác . - HKEY_USERS.DEFAULTAPPEVENTS: Khoá này liệt kê các sự kiện về nhãn, sự miêu tả âm thanh và chức năng