Skip to content

WSL distributivlarini jonli saqlash (Keep-Alive) ​

WSL2 bilan ishlashni endi boshlagan ko'plab foydalanuvchilar bir "tushunmovchilik"ga duch kelishadi: Linux o'rnatilgan bo'lsa-da, nega terminalni yopish bilanoq u bir ozdan keyin "avtomatik o'chadi"? Nega u doimiy ishlab turolmaydi?

Ushbu maqolada avval bu hodisani tasvirlaymiz, so'ngra Microsoft WSLni nega shunday loyihalaganini tushuntiramiz va nihoyat WSL Dashboard yordamida jonli (keep-alive) Linux distributivini qanday ishga tushirishni ko'rsatamiz.

1. Hozirgi holat: Terminal yopilgandan so'ng Linux tezda avtomatik o'chadi ​

Quyidagi holatni boshdan kechirganmisiz:

  1. Biror Linux distributivining terminalini oching, Linux avtomatik ishga tushadi, hech qanday buyruq bajarish shart emas;
  2. Terminal oynasini yopgach, Linux ishlashda davom etmaydi — taxminan 60 soniyadan so'ng u avtomatik o'chadi;
  3. Terminalni qayta ochsangiz, Linux yana avtomatik ishga tushadi va shu tariqa aylanib davom etadi.

NOTE

WSL2 ning standart "bo'sh turish vaqti (idle timeout)" taxminan 60 soniya: distributivda ishlayotgan jarayonlar bo'lmaganda (masalan, barcha terminallarni yopganingizda), WSL virtual mashinasi xotira kabi tizim resurslarini bo'shatish uchun avtomatik o'chadi.

Bu xatti-harakat WSL2 ning standart dizaynidir, u na nosozlik, na xato.

2. Microsoft WSLni nega shunday loyihalagan? ​

2.1 WSL2 mohiyatan engil vaznli virtual mashinadir ​

WSL2 Hyper-V engil vaznli virtual mashinasi (utility VM) orqali to'liq Linux yadrosini ishga tushiradi. Har bir ishlayotgan distributiv xotira resurslarini real ravishda egallaydi. Agar barcha distributivlar doimiy ravishda fonda qolsa, bitta mashinada bir vaqtning o'zida bir nechta distributivni ishga tushirish yuzlab MB yoki hatto bir necha GB xotirani behuda sarflab, butun mashinaning ishlashini sekinlashtiradi.

2.2 Resurslarni talabga qarab taqsimlash dizayn falsafasi ​

Windowsning dizayn falsafasi — "resurslarni talabga qarab taqsimlash, kerak bo'lmaganda bo'shatish":

  • Ko'pchilik foydalanuvchilar uchun: terminalni ochish = Linux kerak; terminalni yopish = hozir kerak emas;
  • Faqat kam sonli foydalanuvchilarga Linux 7×24 soat uzluksiz ishlashi kerak.

Shuning uchun WSL "talab bo'yicha ishga tushirish, bo'sh qolganda to'xtatish" strategiyasini qo'llaydi, xotira kabi resurslar kerak bo'lmaganda avtomatik ravishda tizimga qaytariladi.

2.3 O'xshatish: Xonadan chiqayotganda chiroqni o'chirish ​

WSLning "bo'sh qolganda avtomatik o'chishi" xonadan chiqayotganda chiroqni o'chirishga o'xshaydi: elektrni tejaydi, samaraliroq. Ammo "xona doimo yorug' bo'lishi kerak" bo'lganlar uchun bu juda noqulay — aynan shu keep-alive ehtiyojining kelib chiqishi.

TIP

Agar Linux doimiy ishlashini xohlasangiz (masalan, xizmatlarni joylashtirish, rejalashtirilgan vazifalarni bajarish, dasturchi serverini qurish va h.k.), iltimos keyingi bo'limni o'qing va distributivni keep-alive qilish uchun WSL Dashboarddan foydalaning.

3. Keep-alive Linuxni ishga tushirish uchun WSL Dashboarddan foydalanish ​

WSL Dashboard Linux distributivingizni doimiy ishlab turishining ikkita oddiy usulini taqdim etadi.

Usul birinchi: "Ishga tushirish" tugmasini bosing ​

WSL Dashboardning "O'rnatilgan Linux distributivlari" ro'yxatida:

  1. Keep-alive qilmoqchi bo'lgan distributivni toping;
  2. O'sha distributiv qatoridagi "Ishga tushirish" tugmasini bosing.

Bosgandan so'ng distributiv darhol uyg'onib, doimiy ishlaydi; siz uni o'zingiz to'xtatmaguningizcha, u bo'sh qolgani uchun avtomatik o'chmaydi. Bu usul "hozir Linux doimiy ishlashi kerak" bo'lgan vaqtinchalik keep-alive holatlari uchun mos keladi.

Usul ikkinchi: "Windows ishga tushganda bu distributivni avtomatik ishga tushirish." katagiga belgi qo'ying ​

WSL Dashboardning "O'rnatilgan Linux distributivlari" ro'yxatida:

  1. Maqsadli distributiv qatoridagi "Sozlamalar" tugmasini bosing, sozlamalar oynasini (pop-up) oching;
  2. Oynada "Windows ishga tushganda bu distributivni avtomatik ishga tushirish." katagiga belgi qo'ying;
  3. Sozlamalarni saqlang.

Belgi qo'yilgach, har safar Windows ishga tushganda/tizimga kirilganda, o'sha distributiv avtomatik ishga tushadi, hech qanday qo'lda amal talab qilinmaydi va "ishga tushishi bilan keep-alive" ta'minlanadi. Bu usul Linux uzoq muddat onlayn bo'lishi kerak bo'lgan (masalan, dasturchi serverlari, doimiy xizmatlar) holatlar uchun mos keladi.

TIP

  • Faqat vaqtincha kerak bo'lsa → usul birinchidan foydalaning ("Ishga tushirish"ni bosing);
  • Uzoq muddat onlayn kerak bo'lsa → usul ikkinchidan foydalaning ("Windows ishga tushganda bu distributivni avtomatik ishga tushirish." katagiga belgi qo'ying).