CBS.log फ़ाइल का आकार 20 GB क्यों है


129

दो दिन पहले मेरे पास एक पूर्ण C:ड्राइव था, जिसके बाद मैंने 8 जीबी डेटा हटा दिया। अगले दिन हार्ड ड्राइव फिर से भरी हुई थी, इसलिए मैंने एक और 5 जीबी हटाने के साथ जारी रखा, और अगले दिन एक बार फिर डिस्क भरी हुई थी।

डिस्क स्थान को इतनी जल्दी भरने के लिए कुछ खोज के बाद, मैंने windirstatयह खोजने के लिए उपकरण का उपयोग किया कि कौन सी फाइलें सबसे अधिक स्थान लेती हैं। मुझे पता चला कि CBS.logफ़ाइल, जो c:\windows\logs\cbs\20 जीबी में स्थित है , बड़ी है।

मैं विंडोज 8 का उपयोग कर रहा हूं।

  • क्या यह फ़ाइल इतनी बड़ी होनी चाहिए, और यदि नहीं, तो मैं आकार कैसे कम कर सकता हूं?
  • इस फ़ाइल का उद्देश्य क्या है?
  • क्या मैं इसे हटा सकता हूं?

क्या आपने क्रिया लॉगिंग को जोड़ा है? blogs.technet.com/b/joscon/archive/2010/11/18/…
magicandre1981

जवाबों:


34

यह एक फ़ाइल है जो Microsoft Windows संसाधन परीक्षक (SFC.exe) द्वारा बनाई गई है।

नहीं, यह इतना बड़ा नहीं होना चाहिए। CBS.persist.log को तब उत्पन्न किया जाना चाहिए जब CBS का आकार लगभग 50 मेगा वाट हो। CBS.log को cbs.persist.log पर कॉपी किया जाना चाहिए और एक नई cbs.log फ़ाइल शुरू की जानी चाहिए।

आप फ़ाइल को संपीड़ित करने का प्रयास कर सकते हैं:

  • यदि आप CBS.log फ़ाइल पर राइट क्लिक करते हैं
  • इसके बाद Properties पर क्लिक करें
  • सामान्य टैब पर, उन्नत पर क्लिक करें
  • "डिस्क स्थान बचाने के लिए सामग्री संपीड़ित करें" की जाँच करें और ठीक पर क्लिक करें

या, यदि आप सुनिश्चित हैं कि आपका सिस्टम ठीक चल रहा है, तो आप इस फ़ाइल को हटा सकते हैं। अगली बार चलने पर SFC.exe एक नया निर्माण करेगा। लेकिन, यह समस्याओं के निवारण के लिए उपयोगी हो सकता है।


16
सिर्फ एक FYI, CBS.logSFC द्वारा उत्पन्न नहीं होता है। हालांकि SFC इसे ( [SR]टैग के साथ ) अपेंड करता है, ऐसा लगता है कि TrustedInstaller.exe (उर्फ CBS उर्फ ​​कंपोनेंट बेस्ड सर्विसिंग) लॉग फ़ाइलों को बनाता है। स्रोत: अंडरस्टैंडिंग कम्पोनेंट-बेस्ड सर्विसिंग
विनायक

3
उम, मुझे गंभीरता से संदेह है कि NTFS संपीड़न ट्रस्टेडइन्स्टॉलर फॉर्म makecabको लॉगफाइल पर चलाने की कोशिश को रोक देगा , जो कि आकार में होने पर मर जाएगा = = 2 GiB। एक बेहतर विचार इसे कुछ अन्य स्पष्ट संपीड़न प्रारूप में संपीड़ित करना है, जो आम तौर पर इसे एक नया फ़ाइल नाम देगा, इस प्रकार makecab
ट्रस्टेडइन्स्टॉलर

5
@SamB सही है। यह समस्या इसलिए होती है क्योंकि .CAB प्रारूप में 2GiB फ़ाइल का आकार हार्ड सीमा होता है, और TrustedInstaller makecabनियमित रूप से जारी रहेगा , हर बार आपके अस्थायी फ़ोल्डर में एक नई ~ 100MiB फ़ाइल बनाता है। समाधान 2GB लॉग फ़ाइल को हटाने के लिए है (जो सुरक्षित रूप से किया जा सकता है, क्योंकि ये केवल समस्या निवारण के लिए उपयोग किए जाते हैं)।
साइक्लोन 0044

6
क्यों सही उत्तर के रूप में चिह्नित किया जाता है जब @Vinayak को इसका गलत विवरण मिलता है? निश्चित रूप से यही "एडिट" फंक्शन के लिए है?
1

85

मेरे पास 17 gb की cbs.persist.log फ़ाइल थी, क्योंकि मुझे यकीन था कि यह मुझे मेरा ssd नहीं भर रहा था, मैंने विंडोज़ लॉग डायरेक्टरी में असामान्य बड़ी फ़ाइलों की खोज की। वैसे भी केवल एक संपीड़न मुद्दे के बारे में सोच सकता है।

इसलिए, सीबीएस फ़ोल्डर में मैंने निम्नलिखित विधि का उपयोग करके संपीड़न को रीसेट किया है:

  1. Taskmanager सेवाओं में TrustedInstaller.exe (विंडोज मॉड्यूल इंस्टॉलर) को अक्षम करें
  2. C: \ Windows \ Logs \ CBS निर्देशिका में सभी .log फ़ाइलें हटाएँ, .persist और .c फ़ाइलों को भी हटाएँ।
  3. TrustedInstaller.exe को फिर से सक्षम करें

नोट: CBS फ़ोल्डर को साफ करना संपीड़न प्रक्रिया को रीसेट करता है, इसलिए नई बनाई गई लॉग फ़ाइलों को संपीड़न में .cab फ़ाइलों की तुलना में 50 एमबी से अधिक बड़ा नहीं होना चाहिए।

कोई प्रत्यक्ष दृश्य परिणाम नहीं है, आपको तब तक प्रतीक्षा करने की आवश्यकता है जब तक कि ऐसी लॉग फ़ाइल पर्याप्त बड़ी न हो।

यह समाधान 1 वर्ष के बाद भी विंडोज 7/8 / 8.1 पर मेरे लिए काम करता है

हालांकि मुझे यकीन नहीं है कि संपीड़न फिर से कभी भी विफल नहीं होगा, अगर यह करता है ... तो बस समाधान को फिर से दोहराएं लेकिन सीबीएस फ़ोल्डर में फ़ाइलों को हटाने से पहले TrustedInstaller को अक्षम करना सुनिश्चित करें।

उम्मीद है की यह मदद करेगा।


5
आप Windows मॉड्यूल इंस्टॉलर को कैसे अक्षम करते हैं? "सेवा" विंडो में, शुरू करने, रोकने, फिर से शुरू करने, रोकने आदि के सभी बटन धूसर हो जाते हैं। Windows कार्य प्रबंधक भी TrustedInstaller.exe को मारने में असमर्थ है ..
Alph.Dev 10

3
@ Alph.Dev services.mscविन + आर ("रन") के माध्यम से शुरू करें , सेवा ढूंढें, राइट क्लिक करें - गुण - प्रारंभ: अक्षम करें। फिर रिबूट करें, फ़ाइलों को साफ करें, और इसे मैन्युअल या स्वचालित पर सेट करें (मेरे Win7 सिस्टम पर स्वचालित डिफ़ॉल्ट था)।
चर्की

आसान तरीका है, इसे हटाने के लिए सिर्फ लॉकहंटर का उपयोग करें।
मेजकिनटोर


27

बस अगर किसी को आश्चर्य होता है कि ऐसा क्यों होता है। मेरा मानना ​​है कि मैंने विशेष शर्तों को फिर से तैयार किया है (मुझे यकीन है कि इन स्थितियों के अन्य रूपांतर हैं जो समान परिणाम का कारण बन सकते हैं):

  1. मैंने बहुत बड़ी संख्या में बहुत बड़े विंडोज अपडेट (भाषा पैक और सर्विस पैक आदि का एक गुच्छा) शुरू किया, जबकि मेरे पास बड़ी संख्या में अन्य एप्लिकेशन और खिड़कियां खुली थीं (मैं एक डेवलपर हूं)। मैं फिर लंच करने चला गया।
  2. विंडोज अपडेट तब तक चला जब तक सिस्टम मेमोरी (रैम) से बाहर नहीं चला। मेरे पास 32 गीगाबाइट हैं, लेकिन यह पर्याप्त नहीं था।
  3. "विश्वसनीय इंस्टालर। Exe" ("विंडोज मॉड्यूल इंस्टॉलर" सेवा) ने तेजी से बढ़ती लॉग फ़ाइल को संपीड़ित करने की कोशिश की, लेकिन रन नहीं कर सका, या तो लॉग बहुत तेजी से बढ़ गया, या यह कम मेमोरी के कारण शुरू नहीं हो सका, अथवा दोनों। इसलिए जब इसकी आवश्यकता थी, तो विंडोज मॉड्यूल इंस्टॉलर सेवा भी शुरू नहीं हुई, (यहां तक ​​कि अस्थायी रूप से)।
  4. तब से, यह लॉग फ़ाइल के साथ सौदा नहीं कर सकता था, क्योंकि यह बहुत बड़ा था। कैब संपीड़न (लगभग 25 गीगाबाइट!) और इतना ही दुष्चक्र शुरू हो गया था और कुछ भी इसे रोक नहीं सका (मैनुअल हस्तक्षेप के अलावा जैसा कि वर्णित है) जिन "ऊपर"।
  5. एक बार जब लॉग फ़ाइल मेरे एसएसडी पर 60 गीगाबाइट तक बढ़ गई, तो इसने मेरे सभी खाली स्थान का उपयोग किया और मुझे "कम भंडारण स्थान" चेतावनी मिली, और कारण की तलाश शुरू कर दी।

निम्न प्रक्रिया से समस्या ठीक हो गई है: "Windows मॉड्यूल इंस्टॉलर सेवा को अक्षम करें, C: \ Windows \ Logs \ CBS \ फ़ोल्डर की सामग्री हटाएं, और 'C: \ Windows \ Temp' फ़ोल्डर - उपयोग में किसी भी फाइल को छोड़ दें, फिर विंडोज मॉड्यूल इंस्टॉलर सेवा को फिर से शुरू करें और इसे 'मैनुअल' स्टार्ट (डिफ़ॉल्ट) पर सेट करें। रीबूट।


2
मेरी मशीन पर c: \ windows \ temp में हजारों फाइलें थीं - उम्मीद है, यह सोचकर कि कुछ सौ फाइलों पर CBS.log की विस्फोटक वृद्धि को कम करने का सही प्रभाव पड़ेगा
Toybuilder

10

वर्कअराउंड के रूप में, विंडोज 7 पर, यदि "विंडोज मॉड्यूल इंस्टॉलर" सेवा बंद हो जाती है, तो इसे शुरू करने से लॉग रोटेशन प्रक्रिया को ट्रिगर करने के लिए प्रकट होता है जो एक ताज़ा cbs.log फ़ाइल बनाता है और पुरानी फ़ाइल को एक संकुचित CbsPersist .cc संग्रह में ले जाता है। मेरी 500mb लॉग फ़ाइल 30mb तक संकुचित हो गई।

ध्यान दें कि इसे चलाने में कुछ मिनट लग सकते हैं। सेवा अपने आप ही बंद हो जाने के बाद लगता है।


10
ध्यान दें कि अपने आप से काम नहीं करता है, अगर किसी भी फाइल ने पहले से ही 2GiB के निशान को मारा है, जैसा कि makecabबस तब देता है जब वह उस तक पहुंच जाता है (एक भ्रष्ट cab_*फ़ाइल को छोड़कर %WINDIR%\Temp); उस स्थिति में, आपको ओवरसाइज्ड CbsPersist_*.logफ़ाइल को किसी भी तरह से निपटाने की आवश्यकता है इसलिए TrustedInstaller ("विंडोज मॉड्यूल इंस्टॉलर") makecabस्टार्टअप पर उन पर चलने की कोशिश नहीं करेगा । मैंने .log.xz फ़ाइलों में कम्प्रेस करने के लिए 7-ज़िप का उपयोग किया, लेकिन हटाने या नाम बदलने का भी विकल्प होगा। उसके बाद, इसे पुनः आरंभ करने से यथोचित आकार का ध्यान रखा जाएगा।
सैमबी

6
@SamB सही है। यह समस्या इसलिए होती है क्योंकि .CAB प्रारूप में 2GiB फ़ाइल का आकार हार्ड सीमा होता है, और TrustedInstaller makecabनियमित रूप से जारी रहेगा , हर बार आपके अस्थायी फ़ोल्डर में एक नई ~ 100MiB फ़ाइल बनाता है। समाधान 2GB लॉग फ़ाइल को हटाने के लिए है (जो सुरक्षित रूप से किया जा सकता है, क्योंकि ये केवल समस्या निवारण के लिए उपयोग किए जाते हैं)। पोस्ट करने के लिए बहुत बहुत धन्यवाद, आप इस समस्या के मूल कारण तक पहुँच गए। मैं विंडोज 7 SP1 64-बिट पर हूँ। मुझे विश्वास नहीं हो रहा है कि Microsoft ने अभी तक इसे ठीक नहीं किया है।
साइक्लोन 0044

यदि वह सेवा सक्रिय है, तो "रिस्टार्ट" चुनने का समान प्रभाव पड़ता है। यदि आप लॉग्स \ CBS निर्देशिका को संपीड़ित के रूप में सेट करते हैं तो यह प्रभाव इतना अच्छा नहीं है ।
PJTraill

5

मेरे मामले में मैं अक्षम होने के बाद भी सेवा को रोकने में सक्षम नहीं था। निम्नलिखित चरणों ने मुझे सेवा को रोकने और सीबीएस लॉग को हटाने में मदद की।

C:\Windows\system32>net stop TrustedInstaller
The requested pause, continue, or stop is not valid for this service.

More help is available by typing NET HELPMSG 2191.

C:\Windows\system32>sc qc TrustedInstaller
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: TrustedInstaller
    TYPE               : 10  WIN32_OWN_PROCESS
    START_TYPE         : 4   DISABLED
    ERROR_CONTROL      : 1   NORMAL
    BINARY_PATH_NAME   : C:\Windows\servicing\TrustedInstaller.exe
    LOAD_ORDER_GROUP   : ProfSvc_Group
    TAG                : 0
    DISPLAY_NAME       : Windows Modules Installer
    DEPENDENCIES       :
    SERVICE_START_NAME : localSystem

C:\Windows\system32>tasklist | find /i "TrustedInstaller.exe"
TrustedInstaller.exe          2164 Services                   0    132,404 K

C:\Windows\system32>taskkill /f /im "TrustedInstaller.exe"
SUCCESS: The process "TrustedInstaller.exe" with PID 2164 has been terminated.

बस अगर यह किसी की मदद करेगा।



संभवतः। इसलिए हमें लॉग फ़ाइल को निकालने के लिए उपरोक्त सेवा को बंद करने की आवश्यकता है।
ज्ञानयोग

1
हां, लेकिन चूंकि आप इसे मैन्युअल रूप से रोक नहीं सकते हैं, इसलिए आपको अक्षम करना होगा और रिबूट करना होगा।
स्टैकज़ोफ़ज़टफ़

अपने W7x64 पर मैं सेवा को अक्षम नहीं कर सका लेकिन मैं TrustedInstaller.exe को मार सकता था। इसने फ़ाइल से लॉक हटा दिया और मैं इसे हटाने में सक्षम था।
user136036

1

सर्वर 2008 R2 पर, मेरा C:\windows\tempखाली था। मैंने cbs लॉग हटाने की कोशिश की और 2.5 GB cbs लॉग वापस लौटाता रहा, इसलिए मैंने C:\windows\tempलॉग को हटाने के प्रयास के बाद जांच की और बड़ी संख्या में .dmpफाइलें वहां दिखाई दीं।

इन्हें हटा दिया गया और लॉग फ़ाइल अब चली गई है। डिस्क स्थान बरामद हुआ है। (मेरा इसे हटाने के बाद भी वापस लौटता रहा।)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.