يتلقى Windows Server 2022 كل شهر تحديثًا تراكميًا كبيرًا، إضافة إلى تحديثات أصغر لـ .NET وDefender. على صورتنا ينزّلها Windows بنفسه وينتظر أن تقرر تثبيتها، فلا تفاجئك إعادة تشغيل أبدًا. والوجه الآخر: إن لم تثبّتها أنت فلن يثبّتها أحد. يعرض هذا الدليل ثلاث طرق لذلك، وكيف تجري إعادة التشغيل، وكيف تستعيد مساحة القرص التي تتركها التحديثات. وللحصول على الأرقام نقلنا تثبيتًا لـ Windows Server 2022 خطوة خطوة من إصداره الأصلي في مارس 2022 حتى تحديث أكتوبر 2026.
1. اعرف إصدارك
افتح PowerShell ونفّذ:
$v = Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion'
"{0}.{1}" -f $v.CurrentBuild, $v.UBR
الرقم الثاني هو مستوى التحديث. بدأ خادمنا من 20348.587 من مارس 2022، وبعد كل التحديثات صار 20348.5761، أي التحديث التراكمي لأكتوبر 2026. ومن هنا تبدأ الآن أيضًا خوادم Windows التي تطلبها منا: حدّثنا صورتنا بهذه الخطوات نفسها في 25 أكتوبر 2026. يعرض Get-HotFix ما هو مثبّت:
Get-HotFix | Sort-Object InstalledOn | Select-Object -Last 5
2. ثبّت التحديثات
اختر ما يناسبك. الطرق الثلاث تستخدم Windows Update نفسه.
الإعدادات. Start → Settings → Update & Security → Windows Update → Check for updates، ثم Install now. إذا ذكرت الصفحة أن مؤسستك تدير بعض الإعدادات، فتلك سياستنا «التنزيل فقط». وهي لا تمنعك من التثبيت.
sconfig. اكتب sconfig في PowerShell. يسألك الخيار 6) Install updates عمّا يبحث عنه: اختر All quality updates ثم ثبّت. يعرض الخيار 5) Update setting على صورتنا Download only، ويمكنك منه أيضًا التحويل إلى Automatic الذي يثبّت ويعيد التشغيل وفق جدوله الخاص.
في القائمة نفسها خيار Feature updates. لا تقربه إلا إذا كانت لديك رخصة لإصدار أحدث من Windows Server. يحذّر sconfig من أن تحديث الميزات يحتاج إلى مفتاح منتج جديد ويعطّل الإصدار الذي لديك.
PowerShell. للسكربت أو المهمة المجدولة، تؤدي واجهة Windows Update البرمجية نفسها العمل كله دون وحدات إضافية. هذا ما شغّلناه:
$session = New-Object -ComObject Microsoft.Update.Session
$result = $session.CreateUpdateSearcher().Search("IsInstalled=0 and IsHidden=0 and Type='Software'")
$updates = New-Object -ComObject Microsoft.Update.UpdateColl
foreach ($u in $result.Updates) { $u.AcceptEula(); [void]$updates.Add($u); $u.Title }
if ($updates.Count -gt 0) {
$d = $session.CreateUpdateDownloader(); $d.Updates = $updates; [void]$d.Download()
$i = $session.CreateUpdateInstaller(); $i.Updates = $updates
$r = $i.Install(); "Result: $($r.ResultCode) Restart needed: $($r.RebootRequired)"
} else { "Nothing to install" }
شغّله في PowerShell بصلاحيات المسؤول. رمز النتيجة 2 يعني النجاح، وعلى خادم محدَّث يطبع فقط Nothing to install.
3. أعد التشغيل واتركه يُكمل
بعد التحديث التراكمي يحتاج Windows إلى إعادة تشغيل، وقد يعيد التشغيل مرتين. هذا ما رأيناه:
| الجولة | ما الذي ثُبّت | مدة التثبيت | إعادات التشغيل |
|---|---|---|---|
| 1 | التحديث التراكمي لسبتمبر 2026، تحديث .NET، Defender، أداة إزالة البرامج الضارة | 22 دقيقة | دقيقتان و51 ثانية، ثم بعد نحو دقيقة أعاد Windows التشغيل مرة أخرى من تلقاء نفسه |
| 2 | التحديث التراكمي لأكتوبر 2026، Defender | 17 دقيقة | نحو دقيقتين، بما فيها إعادة تشغيل تلقائية ثانية |
| 3 | منصة Defender وتعريفاته | 33 ثانية | لا شيء |
| 4 | لم يبقَ شيء | — | — |
أمران يجب أن تعرفهما:
- إعادة التشغيل الثانية طبيعية. بعد نحو دقيقة من إعادة اتصالنا أعاد Windows التشغيل من تلقاء نفسه لينهي التحديث. إذا انقطعت جلسة سطح المكتب البعيد بعد الدخول مباشرة، فهذا على الأرجح السبب. انتظر دقيقة ثم اتصل من جديد.
- لا توقفه بالقوة بينما تظهر «Working on updates». أعد التشغيل من قائمة «ابدأ» أو بـ
Restart-Computerثم انتظر. الإيقاف القسري أثناء استبدال ملفات النظام هو الطريقة المعتادة التي يترك بها تحديثٌ Windows عاجزًا عن الإقلاع.
ثم تحقّق من جديد. الخادم المتأخر شهورًا يتلقى التحديثات على طبقات: لم يُعرض علينا تحديث أكتوبر إلا بعد تثبيت تحديث سبتمبر. كرّر حتى لا يجد البحث شيئًا.
4. استعد مساحة القرص
التحديثات تكبّر القرص. يحتفظ Windows بالإصدار القديم من كل ملف نظام يستبدله كي تتمكن من إلغاء تثبيت تحديث لاحقًا. على خادمنا ذي القرص 50 GB:
| المرحلة | المساحة المستخدمة |
|---|---|
| الصورة الأصلية من 2022 | 12.6 GB |
| أثناء التحديث التراكمي الأول | 20.8 GB |
| بعد التحديثين التراكميين | 24.5 GB |
بعد StartComponentCleanup | 17.3 GB |
بعد /ResetBase | 15.7 GB |
| بعد تفريغ ذاكرة تنزيلات التحديثات | 14.6 GB |
نظّف من PowerShell بصلاحيات المسؤول:
Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore
Dism.exe /Online /Cleanup-Image /StartComponentCleanup
يعرض الأمر الأول كم يمكن استعادته. والثاني يحذف الإصدارات القديمة من المكونات التي حلّت محلها تحديثات أحدث. على خادمنا عمل 14 دقيقة وحرّر 6.9 GB. إضافة /ResetBase حرّرت 1.6 GB أخرى في نحو دقيقة ونصف، لكن بعدها لا يمكن إلغاء تثبيت التحديثات المثبّتة. على خادم يعمل كنا سنتخطاه ونبقيه لوقت تحتاج فيه إلى المساحة فعلًا.
ويمكن حذف الملفات التي نزّلها Windows Update أيضًا. كانت تشغل لدينا 1.1 GB:
Stop-Service wuauserv
Remove-Item C:\Windows\SoftwareDistribution\Download\* -Recurse -Force
Start-Service wuauserv
لمعرفة ما يملأ القرص غير التحديثات، تجد في مقالة مساحة القرص أرقامًا لـ Windows وLinux.
5. اجعلها عادة
تصدر Microsoft تحديثات الأمان في الثلاثاء الثاني من كل شهر. مرة في الشهر شغّل الخيار 6 في sconfig أو السكربت أعلاه، وأعد التشغيل، ثم تحقّق من جديد. قبل أي تحديث كبير انسخ المهم خارج الخادم. وإن لم تفعل بعد، فأمّن RDP: التحديثات تسدّ ثغرات Windows، لكنها لا تمنع أحدًا من تخمين كلمة مرور ضعيفة.
أي باقة تختار
التحديثات تحتاج إلى مساحة. اختبرنا على Windows-Small (4 vCPU، و4 GB، و50 GB، و$11 شهريًا)، وبعد تحديثين تراكميين بقي أكثر من 25 GB فارغة. إذا كنت تنوي تثبيت برامج كبيرة، فـ Windows-Medium يمنحك 60 GB بسعر $19 شهريًا. باقات Windows الأربع كلها في صفحة Windows VPS، والدفع بـ USDT أو USDC أو ETH على شبكات Base أو Ethereum أو Polygon.
التعليقات
لا تعليقات بعد. كن الأول.