

حافظه شگفت انگيز ويندور 7 (1)
همچنين رجيستري، اغلب کارهاي سيستمي مثل نصب برنامه ها، افزودن دستگاه هاي جانبي، ايجاد حساب کاربري، پيکربندي شبکه، و خيلي موارد بيشتر را رصد مي نمايد. اگر شما دقت کرده باشيد، منوهاي shortcut و کادرهاي محاوره اي Properties، وابسته به چيزي که شما کليک مي نماييد، متفاوت به نظر مي رسند. و اين به برکت رجيستري است. رجيستري، آنچه را شما کليک مي کنيد، مي شناسد و مي داند به عنوان نتيجه کار، چه گزينه هايي بايد ظاهر شوند. در کل هزاران هزار تنظيمات جداگانه در رجيستري ذخيره مي گردد. وقتي شما تصوير پس زمينه دسک تاپ ويندوز خود را با استفاده از پنجره personalization پانل کنترل تغيير مي دهيد، دفعه بعد که کامپيوترتان را راه اندازي مي کنيد Windows چطور بايد بداند که کدام تصوير يا رنگ را انتخاب کرده بوديد؟ اگر درايو نمايش گر ويدئويي خود را تغيير دهيد، Windows7 مي فهمد که بايد در هنگام راه اندازي از آن درايور استفاده نمايد، نه درايور ابتدايي که در طول نصب خود بارگذاري کرده بود؟ به عبارت ديگر، Windows7 چگونه تنظيمات و گزينه هاي مختلفي که خودتان انتخاب کرده ايد و يا با سيستم شما تناسب دارند را به ياد مي سپارد؟
راز اين حافظه شگفت انگيز Windows7 در رجيستري آن نهفته است. رجيستري يک مخزن مرکزي است که Windows7 از آن براي ذخيره سازي هر چيزي که به پيکربندي سيستم شما مربوط مي شود، استفاده مي کند. اين موارد عبارتند از:
- اطلاعات مربوط به تمام سخت افزارهاي نصب شده بر روي کامپيوتر شما
- منابع مورد استفاده اين ابزارها
- فهرستي از درايورهاي ابزار که Windows7 در هنگام راه اندازي خود بارگذاري مي کند
-تنظيماتي که Windows7 به طور داخلي از آنها استفاده مي نمايد
- داده هاي نوع فايل که يک نوع بخصوص از فايل ها را با يک نرم افزار کاربردي خاص مرتبط مي سازند
- تصاوير پس زمينه، الگوهاي رنگ و ساير تنظميات سفارشي سازي اينترفيس کاربري
- ساير تنظميات سفارشي سازي براي مواردي نظير منوي start و Taskbar
- اتصالات شبکه و اينترنت به همراه کلمات عبور آنها
- تنظيمات مربوطه به نرم افزارهاي کاربردي Windows7 نظير Windows Explorer و internet Explorer
- تنظيمات و گزينه هاي سفارشي سازي براي بسياري از نرم افزارهاي کاربردي طرف ثالث
- همه اين موارد در يک محل مرکزي ذخيره شده و به لطف يک ابزار سودمند که تحت عنوان Registry Editor شناخته مي شود، در اختيار شما قرار دارد تا (با دقت و احتياط کامل) به بررسي آن پرداخته و به سازي نماييد.
مرزهاي کاملا دوستانه
توجه داشته باشيد که Registry Editor احتمالاً خطرناک ترين ابزار در زرادخانه Windows7 به حساب مي آيد. نقش رجيستري عملکرد روان Windows7 به حدي تعيين کننده است که يک تغيير بي احتياطانه بر روي يک ورودي رجيستري مي تواند سيستم شما را به زانو درآورد. در نتيجه، حالا که Registry Editor را باز کرده ايد، به هيچ وجه بدون شناخت و دليل کافي اقدام به دست کاري تنظيمات آن نکنيد.
احتياط
راز کليدها
بخش سمت چپ پنجره
Registry Editor به صفحه فولدرها در پنجره Explorer شبيه است، با اين استثناء که شما در اينجا بجاي فولدرها، با کليدها روبرو مي شويد. از آنجايي که هيچ اصطلاح بهتري براي اين بخش وجود ندارد، ما قسمت سمت چپ پنجره Registry Editor را Keys pane مي ناميم.
Keys pane همانند بخش فولدرها در پنجره Explorer، در يک ساختار سلسله مراتبي درخت واره اي سازمان دهي شده است. 5 کليدي که وقتي Registry Editor را براي اولين بار اجرا مي کنيد قابل مشاهده هستند، کليدهاي ويژه اي با نام Handle هستند (به همين دليل است که نام همه آنها با HKEY آغاز مي شود.) به مجموع اين کليدها، کليدهاي ريشه (root Keys) رجيستري گفته مي شود.
همه اين کليدها حاوي کليدهاي فرعي (subkeys) هستند که مي توانيد آنها را با کليک بر روي پيکان سمت چپ هر کليد و يا با انتخاب يک کليد و فشار «+» بر روي بخش عددي صفحه کليدتان، نمايش دهيد. براي بستن يک کليد، بر روي علامت «-» کنار آن کليک نموده و يا پس از انتخاب کليد مورد نظر کليد «-» را بر روي بخش عددي صفحه کليدتان فشار دهيد. در اينجا نيز عملکرد، کاملا به نحوه هدايت فولدرها در Explorer شباهت دارد.
توجه داشته باشيد که براي مشاهده همه کليدها بطور مناسب، احتمالا بايد اندازه Keys pane را افزايش دهيد. براي اين کار، بر روي نوار جدا کننده دو بخش سمت چپ و راست پنجره کليک کرده و آن را به سمت راست بکشيد. به طور جايگزين مي توانيد از منوي View گزينه Split را انتخاب نموده و سپس از کليدهاي مکان نما براي تنظيم موقعيت نوار جداکننده استفاده نماييد ( پس از اتمام کار خود کليد Enter را فشار دهيد.)
آشنايي اوليه
Name: اين ستون نام هر تنظيمي که در کليد انتخاب شده جاري قرار دارد را نمايش مي دهد (شبيه به يک اسم فايل در Explorer)
Type: اين ستون، نوع داده هاي مربوط به هر تنظيم را نشان مي دهد. 6 نوع احتمالي از انواع داده ها وجود دارند:
REG_SZ: اين يک ارزش رشته (String Value) است.
REG_MULTI_SZ: يک مجموعه از رشته ها
REG_EXPAND_SZ: اين يک ارزش رشته بوده و حاوي نام يک متغير محيطي است که در ارزش آن متغير گسترش يافته. براي مثال، متغير محيطي %SystemRoot% فولدري را نگهداري مي کند که Windows7 در آن نصب شده است. بنابراين اگر يک تنظيم رجيستري را با مقدار System32/%\%SystemRoot مشاهده کنيد و Windows7 در مسير C:\Windows نصب شده باشد، ارزش توسعه يافته اين تنظيم بصورت C:\Windows/System32\ خواهد بود.
REG_DWORD: اين يک ارزش Double Word است، يک ارزش هگزادسيمال 32 بيتي که به صورت 8 رقم بيان شده. براي مثال، 11 در ساختار هگزادسيمال معادل 17 در واحد دسيمال است، در نتيجه اين عدد بايد در يک قالب DWORD بصورت (0x00000011(17 بيان گردد (چرا «Double Word»؟ زيرا يک ارزش 32 بيتي بيانگر 3 بايت از داده ها است و از آنجايي که يک عبارت يا word در حوزه برنامه نويسي بصورت دو بايت تعريف مي شود، بنابراين يک ارزش 4 بايتي بايد يک Double word باشد).
REG_QWORD: اين يک ارزش Quadruple Word است، يک ارزش هگزادسيمال 64 بيتي که بصورت 16 رقم نمايش داده مي شود. توجه داشته باشيد که صفرهاي مقدماتي براي 8 رقم بالا اختصاص يافته اند. بنابراين، hex11 بصورت (0x00000011(17 و hex 100000000 بصورت (0x100000000(4294967296 بيان مي گردد.
REG_BINARY: اين ارزش يک سري از ارقام هگزادسيمال است.
Data: اين ستون ارزش تعيين شده براي هر تنظيم را نشان مي دهد.
$نقاط آغازين رجيستري
کليدهاي ريشه، نقاط آغازين رجيستري شما هستند، بنابراين بايستي با نوع داده هايي که در هر يک از آنها نگه داري مي شوند، آشنا شويد. ما در اينجا توضيح خلاصه اي را درباره محتويات هر کليد ارائه مي کنيم:
HKEY_CLASSES_ROOT
HKEY_CLASSES_ROOT که معمولا بطور خلاصه تحت عنوان HKCR از آن ياد مي شود، حاوي داده هاي مربوط به پسوندهاي فايل و برنامه هاي مرتبط با هر يک از آنها، آبجکتهايي که در سيستم Windows7 وجود دارند و همچنين نرم افزارهاي کاربردي و اطلاعات اتوماسيون آنها مي باشد. همچنين کليدهايي در رابطه با ميان برها و ساير ويژگي هاي اينترفيس در اين کليد ريشه قرار گرفته اند.
بخش بالايي اين کليد حاوي کليدهاي فرعي براي پسوندهاي فايل مختلف است. براي مثال، شما bmp را براي فايل هاي بيت مپ (paint, text) را براي فايل هاي متني (Notepad) خواهيد ديد. در هر يک از اين کليدهاي فرعي، تنظيمات Default، نام نوع فايل ثبت شده در رابطه با آن پسوند را نشان مي دهد. براي مثال، پسوند txt. با نوع فايل txtfile ارتباط دارد.
HKEY_CLASSES_ROOT عملا يک کپي (يا آن طور که از اين نوع کليدهاي کپي شده نام برده مي شود، يک (alias از کليد فرعي HKEY_LOCAL_MACHINE\Software\Classes در کليد ريشه HKEY_LOCAL_MACHINE است.
رجيستري يک کپي (alias) از HKEY_CLASSES_ROOT را ايجاد مي کند تا دسترسي به اين کليدها را براي نرم افزارهاي کاربردي آسان تر نموده و سازگاري با برنامه هاي موروثي را بهبود بخشد.
HKEY_CURRENT_USER
HKEY_CURRENT_USER که معمولا بطور خلاصه تحت عنوان HKCU شناخته مي شود، حاوي داده هاي مرتبط با کاربري مي باشد که در حال حاضر Login کرده است. اين کليد ريشه، حاوي تنظيمات خاص کاربر براي گزينه هاي پانل کنترل، اتصالات شبکه، نرم افزارهاي کاربردي و بسياري موارد ديگر است. توجه داشته باشيد که اگر خط مشي هاي گروهي (Group policies) بر روي حساب يک کاربر اعمال شده باشند، اين تنظيمات در کليد فرعي HKEY_USERS\sid ذخيره مي گردد (که در آن sid همان Security ID کاربر است).
هنگامي که کاربر logon مي کند، اين تنظيمات به HKEY_CURRENT_USER کپي مي شوند. براي تمام کاربران، HKEY_CURRENT_USER از فايل پروفايل کابري ntuser.dat (که در Userprofile قرار دارد) ساخته شده است.
اما اجازه بدهيد ببينيم که چگونه مي توانيد SID هر کاربر را پيدا کنيم. ابتدا کليد زير را در رجيستري باز نماييد:
HKLM\SOFTWARE\Microsoft\Windows NT\Current Version\profileList\
در اينجا شما فهرستي از SID ها را خواهيد يافت. آنهايي که با 21-5-1-s شروع مي شوند، SID هاي کاربري هستند. يکي از اين SID ها را انتخاب کرده و سپس تنظيمات ProfileImagePath را بررسي کنيد که در قالب SystemDrive\Users\user خواهد بود (که در آن، user يک نام کاربري مرتبط با SID مورد نظر است).
در اين جا به تعدادي از مهمترين کليدهاي فرعي HKEY_CURRENT_USER و توضيح خلاصه اي درباره هر يک از آنها اشاره مي کنيم:
AppEvents: حاوي فايل هاي صوتي است که وقتي يک رويداد خاص سيستمي اتفاق مي افتد (نظير Maximize شدن يک پنجره)، پخش مي شوند.
Control Panel: حاوي تنظيمات مربوط به آيکن هاي خاص پانل کنترل است.
Keyboard Layout: حاوي چيدمان صفحه کليد انتخاب شده از طريق آيکن Keyboard در پانل کنترل است.
Network: حاوي تنظيمات مربوط به درايوهاي Mapped در شبکه مي باشد.
Software: حاوي تنظيمات خاص کاربر در رابطه با نرم افزارهاي کاربردي نصب شده و خود ويندوز است.
HKEY_LOCAL_MACHINE
HKEY_LOCAL_MACHINE) حاوي داده هاي پيکربندي non-user-specific براي سخت افزار و نرم افزاهاي کاربردي سيستم شما است. شما از سه کليد فرعي زير بيش از سايرين استفاده خواهيد کرد:
Hardware: حاوي کليدهاي فرعي مرتبط با درگاه هاي سريال و مودم ها و همچنين پردازنده مميز شناور است.
Software: حاوي تنظيمات خاص کامپيوتر در رابطه با نرم افزارهاي کاربردي نصب شده است. کليد فرعي Classes در اين کليد فرعي يک کپي (alias) از HKEY_CLASSES_ROOT است. کليد فرعي مايکروسافت حاوي تنظيمات مرتبط با ويندوز (و همچنين ساير محصولات مايکروسافت که آنها را بر روي کامپيوتر خود نصب کرده ايد) مي باشد.
System: حاوي کليدهاي فرعي و تنظيمات مرتبط با راه اندازي ويندوز است.
HKEY-USERS) HKU) حاوي تنظيماتي است که به موارد موجود در HKEY_CURRENT_USER شباهت دارند. HKEY_USERS براي ذخيره سازي تنظيمات براي کاربران با خط مشي هاي گروهي تعريف شده و همچنين تنظيمات پيش فرض (در کليد فرعي DEFAULT) که به يک پروفايل کاربري جديد Map مي شوند، مورد استفاده قرار مي گيرند.
HKEY_CURRENT_CONFIG
(HKEY_CURRENT_CONFIG) HKCC حاوي تنظيمات مرتبط با پروفايل سخت افزاري جاري است.
اگر ماشين شما تنها از يک پروفايل سخت افزار استفاده مي کند، HKEY_CURRENT_CONFIG يک کپي (alias) از HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001 خواهد بود. اگر ماشين شما از پروفايل هاي سخت افزاري متعددي استفاده مي کند، HKEY_CURRENT_CONFIG يک کپي از HKEY_LOCAL_MACHINE\SYSTEM\ControSetnnn خواهد بود که در آن nnn شناسه عددي پروفايل سخت افزاري جاري مي باشد. اين شناسه توسط تنظيمات CurrentConfig در کليد زير تعيين شده است:
HKLM\SYSTEM\CurrentControlSet\Control\IDConfigDB
زيرمجموعه هاي رجيستري
در عين حال هر کاربر hive مخصوص به خود را دارد که در طول فرآيند Logon به HKEY_CURRENT_USER، نگاشت (Mapped) مي گردد. فايل هاي پشتيباني کننده براي hive هر کاربر در Users\user ذخيره مي شوند که در آن user نام کاربر است. در هر مورد، فايل ntuser.dat حاوي داده هاي hive بوده و فايل ntuser.dat.log1 نيز تغييرات hive را پيگيري مي کند. اگر يک کاربر داراي خط مشيهاي گروهي اعمال شده بر روي حساب خود باشد، داده هاي او در يک کليد فرعي HKEY_USERS ذخيره شده اند.
ضرورت امنيت
ممانعت از دست کاري غيرمجاز
بر روي گوي Start کليک کرده، فرمان gpedit.msc را در فيلد Search تايپ نموده و سپس کليد Enter را فشار دهيد.
به ترتيب شاخه هاي User Configuration Administrative Templates را باز کنيد.
بر روي خط مشي Prevent Access to Registry Editing Tools دو بار کليک نماييد.
بر روي گزينه Enable کليک کنيد.
در فهرست Disable Regedit from Running Silently؟، بر روي Yes کليک نماييد.
بر روي OK کليک کنيد.
توجه داشته باشيد که به اين ترتيب خود شما نيز ديگر نمي توانيد از Registry Editor استفاده کنيد. با اين حال، مي توانيد با غيرفعال نمودن موقتي اين خط مشي براي اجراي Registry Editor، مشکل مذکور را برطرف کنيد. حتي بهتر از آن، شما مي توانيد اسکريپت زير را اجرا کنيد که Registry Editor را بين حالتهاي فعال و غيرفعال سوئيچ مي نمايد:
به ياد داشته باشيد که شما بايد اين اسکريپت را به عنوان سرپرست اجرا کنيد.
کار عاقلانه
منبع:بزرگراه رايانه 135
ادامه دارد...