कैसे समझें कि डिस्क स्थान क्या ले रहा है?


86

मैं WinDirStat के लिए एक लिनक्स विकल्प की तलाश कर रहा हूं । मैं जानना चाहूंगा कि मेरी हार्ड ड्राइव में क्या जगह है।

एक प्रोग्राम जो कंसोल पर काम करता है और इसके लिए UI की आवश्यकता नहीं होती है।


ncduमेरा पसंदीदा उत्तर है, लेकिन मैं पहला उत्तर कहता हूं कि आपको इससे समस्या है जो आपके प्रश्न में नहीं है।
एसडीसोलर

जवाबों:


74

Ncdu को स्थापित करने में आपके मुद्दों के आधार पर मेरी सिफारिश का उपयोग duऔर sortसाथ में करना होगा।

उदाहरण के लिए:

  • du /home | sort -rn (सभी फाइलों / निर्देशिकाओं को / घर के नीचे सर्च करेंगे और उन्हें सबसे बड़ी से छोटी से छोटी तक क्रमबद्ध करेंगे।
  • du -h /home | sort -rh(वही लेकिन इसे MB / KB / etc में दिखाएंगे) - ध्यान दें कि इसके लिए कोर्यूटिल्स 7.5 या नए ( sort --versionजांचने के लिए) की आवश्यकता है

आप अपनी पसंद के किसी भी निर्देशिका के साथ / घर को बदल सकते हैं।


यह उत्कृष्ट है, मदद के लिए धन्यवाद। मेरी कोरुटील्स 5.97 है - क्या यही कारण है कि डु -h का क्रम ठीक नहीं है?
ripper234

हां, आपको du /home | sort -rnकोरुटिल्स 5.97 के साथ समझौता करना होगा या सर्वरफॉल्ट ( serverfault.com/q/62411/60012 ) पर दिखाए गए अनुसार पर्ल आदि के साथ कुछ 'जादू' का उपयोग करना होगा
NJ

2
OTOH यदि एक बड़ी उप-उप-निर्देशिका है, तो इसका ब्लोट परिणामों के शीर्ष पर कई बार (उस dir और प्रत्येक माता-पिता के लिए) दिखाएगा, और IMHO जो वास्तविक ब्लोट से विचलित होता है। नीचे सुझाए गए "ncdu" के प्रयोग से मदद मिल सकती है, मैं इसे आज़माने जा रहा हूँ। =)
लैपो

2
मुझे -size को "उपयोगी" खोजने का विकल्प भी मिलता है, क्योंकि यह आपको एक निश्चित के तहत सभी फाइलों को खोजने की सुविधा देता है। कम से कम जीएनयू खोजने के लिए, आप कुछ ऐसा कर सकते हैं: वर्तमान निर्देशिका के नीचे 100 मीटर से बड़ी फ़ाइलों को खोजने के लिए "-size + 100M"।
गाबे

89

यदि आप एक कमांड-लाइन टूल चाहते हैं, तो मैं ncdu , का ncurses संस्करण पसंद करता हूं du। यह डिस्क (या किसी दिए गए फ़ोल्डर) को स्कैन करता है और फिर शीर्ष-स्तरीय अंतरिक्ष उपयोग दिखाता है; आप उस निर्देशिका के लिए संबंधित सारांश प्राप्त करने के लिए किसी दिए गए निर्देशिका का चयन कर सकते हैं, और पुनर्मिलन की आवश्यकता के बिना वापस जा सकते हैं:

Ncdu का स्क्रीनशॉट


यदि आप GUI प्रोग्राम के साथ ठीक हैं, तो WinDirStat मैंने पाया है , Filelight सबसे नज़दीकी चीज़ है; यह अंतरिक्ष की खपत का एक ग्राफिकल दृश्य दिखाता है:

फाइललाइट का स्क्रीनशॉट

जैसे ncdu, फाइललाइट आपको उस निर्देशिका के लिए ब्रेकडाउन प्राप्त करने के लिए दिए गए निर्देशिका का चयन करने देता है


4
क्या आपको नहीं लगता कि QDirStat WinDirStat के करीब है?
जानूस ट्रॉल्सन 11

39

आपको पता होना चाहिए कि WinDirStat वास्तव में KDirStat का एक पोर्ट है , जो कि लिनक्स / केडीई प्रोग्राम है। इसलिए, यदि आप WinDirStat के लिए लिनक्स विकल्प की तलाश कर रहे हैं, तो आपको निश्चित रूप से KDirStat पर एक नज़र डालनी चाहिए । यह पहले से ही सबसे विकृत में पैक किया गया है, बस इसे स्थापित करें।

एक अन्य विकल्प फाइललाइट है, जो पहले से ही माइकल मर्ज़ेक द्वारा उद्धृत किया गया है, और कॉनकेर प्लगइन fsview(आप इसे कमांड-लाइन से स्टैंडअलोन चला सकते हैं)।


16
वाह, मुझे कभी यह एहसास नहीं हुआ कि (मुझे लगता है कि नाम में "विन" एक सस्ता होना चाहिए था)। एक सहकर्मी ने एक बार मुझसे पूछा कि क्या WinSCP का लिनक्स संस्करण था ; मैं एक छोटे से अंदर की मृत्यु हो गई
माइकल Mrozek

3
@ स्पष्ट टिप्पणी। आउच। बस ouch।
डेविड वनिल

2
ध्यान दें कि इसे उबंटू के लिए K4DirStat कहा जाएगा यदि सॉफ्टवेयर सेंटर के माध्यम से स्थापित किया जाए
y3sh

याsudo apt-get install k4dirstat
y3sh 21

34

एक और GUI कार्यक्रम है: baobab

वैकल्पिक शब्द


विलेख में, अगर मैं उबंटू पर हूं तो मैं किसी विकल्प की तलाश करने की जहमत नहीं उठाऊंगा। baobapबस बहुत हो गया।
फुनेहे

यह फाइलों की संख्या को भी दिखाता है, जिन्हें कभी-कभी डिस्क स्पेस के रूप में भी
जांचना पड़ता है

9

QDirStat (पूर्व में KDirStat) का उपयोग करें ।

इसमें एक पर्ल स्क्रिप्ट शामिल है, जो किसी UI को चलाने / स्थापित करने के लिए बिना किसी आवश्यकता के सर्वर / कंसोल पर एक कैश फ़ाइल उत्पन्न करता है; इसे अपने डेस्कटॉप मशीन में स्थानांतरित करें और इसे gui क्लाइंट में देखें।

देखें https://unix.stackexchange.com/a/256516/186308 जानकारी के लिए।


यह हास्यास्पद तेजी से है। बहुत अच्छा उपकरण
फिल्प २

7

मुझे निम्न कमांड लाइन पसंद है:

$  du -s -m -x * | sort -n

इसे तोड़कर, duडिस्क उपयोग दिखाता है; -sकहते हैं, प्रत्येक तर्क के लिए कुल प्रिंट करें (वर्तमान निर्देशिका में प्रत्येक आइटम), -mकहते हैं कि मेगाबाइट में आकार दिखाएं। इससे काम करने में आसानी होती है; सॉर्ट वास्तव में -hआउटपुट को नहीं समझता है । -xअन्य फ़ाइल सिस्टम पर ध्यान नहीं देता; यह तब उपयोगी होता है जब अंतरिक्ष हॉग को खोजने का प्रयास किया जाता है /varऔर /var/spool/fooएक अलग फाइल सिस्टम होता है।


क्या शीर्ष उत्तर पहले से उपयोग नहीं है du?
मुरु

हां, लेकिन मेरे सिस्टम पर डु / होम में दसियों हजार फाइलें लौटती हैं; मैं शायद ही कभी परवाह करता हूं कि उन फाइलों में से 100 सबसे बड़ा क्या है (कहते हैं); मैं आमतौर पर जानना चाहता हूं कि कौन सी उपनिर्देशिकाएं सबसे अधिक स्थान ले रही हैं।
पी जोसलिन

-S के बजाय, मैंने --max-गहराई = 2 निर्दिष्ट किया, क्योंकि मैं एक निर्देशिका को रूट डायरेक्टरी से नीचे जाना चाहता था, लेकिन आपके उत्तर ने मुझे उस दिशा में इंगित किया। धन्यवाद!
जॉन एइसब्रेनर

6

/ Www.vrplumber.com/programming/runsnakerun/ से भी इस शांत अजगर स्क्रिप्ट है

bzr branch lp:~mcfletch/squaremap/trunk squaremap

यह सबसे अधिक सुविधा संपन्न नहीं है, लेकिन यह एक एकल लिपि स्क्रिप्ट से चलाया जाता है, इसलिए यह अत्यंत पोर्टेबल है।

वैकल्पिक शब्द


6

यदि आप विंडसैट के बारे में स्क्रीन पर नजर डालते हैं तो यह पता चलता है कि यह kdirstat पर आधारित है।

http://kdirstat.sourceforge.net/


मुझे उत्तर पसंद है - लेकिन क्या आप कुछ संदर्भ या विवरण जोड़ सकते हैं?
वोल्कर सेगेल


3

xdiskusage बहुत लचीला है, बहुत दुबला निर्भरता के साथ हल्का है, संकलन करने में आसान है।

यह एक पेड़ को बाएं से दाएं दिखाता है कि आप माउस या तीर कुंजी के साथ नेविगेट कर सकते हैं, ज़ूम इन (क्लिक या दर्ज करें) कर सकते हैं, कुछ हिस्सों को बेहतर दृश्य के लिए छिपा सकते हैं, क्रमबद्ध क्रम बदल सकते हैं, कुंजी या संदर्भ मेनू के साथ रंगों आदि की संख्या बदल सकते हैं।

यह इतना वजनदार है कि आप इसे अच्छे प्रदर्शन के साथ एक दूरस्थ एसएसएच लिंक पर उपयोग कर सकते हैं। इस स्थिति में मैं -qकमांड लाइन विकल्प की सलाह देता हूं कि फाइलें चलते समय दिखाई देने वाली प्रगति पट्टी को अक्षम करें।

आप वैकल्पिक रूप से duअपने आप को पहले से चला सकते हैं ।

एक स्थिति एक दूरस्थ फाइलसिस्टम है जो पूर्ण या निकट-पूर्ण है। उस सिस्टम को चलाने पर du -ak | gzip >log_of_disk_usage.txt.gz, आउटपुट प्राप्त करें और gzip -dc log_of_disk_usage.txt.gz | xdiskusage -aqस्थानीय रूप से चलाएं ।
या यहां तक ​​कि ssh myremotesystem "cd /filesystem_near_full/ ; du -ak | gzip" > log_of_disk_usage.txt.gzदूर से कुछ भी लिखे बिना परिणाम को स्थानीय रूप से संग्रहीत करने के लिए।

xdiskusage फाइलसिस्टम को संशोधित करने की पेशकश नहीं करता है (जैसे कूड़ेदान में ले जाना, आदि) लेकिन आप क्लिपबोर्ड पर एक पथ को कॉपी कर सकते हैं और एक फ़ाइल प्रबंधक, टर्मिनल आदि में पेस्ट कर सकते हैं।

xdiskusage स्क्रीनशॉट


2

मैंने हाल ही में कमांड लाइन टूल (सीएलआई, टीयूआई नहीं) का उपयोग किया है: http://zevv.nl/play/code/philesight/

यह एक पीएनजी फाइल तैयार करता है जिसे आप कहीं और देख सकते हैं। इसमें एक CGI स्क्रिप्ट भी है।

सबसे अधिक संभावना है कि आप अपने स्थानीय कार्य केंद्र पर पाठ मोड तक सीमित नहीं हैं, इसलिए यह उचित होना चाहिए।


1

यह भी देखने के लिए कि आपके द्वारा डु उपयोग का उपयोग करके निर्देशिका को खोजने के बाद आकार द्वारा सॉर्ट की गई किसी विशिष्ट निर्देशिका में फ़ाइलें देखने के लिए:

ls -lrSh

1

Duc ( https://duc.zevv.nl/ ) कमांड लाइन से काम करेगा।

इसे डेबियन 9 में इस तरह स्थापित और इस्तेमाल किया जा सकता है:

# apt install duc
# duc index /
# duc graph /

इसके साथ आपको duc.pngवर्तमान निर्देशिका में एक फ़ाइल मिलेगी । अब, आप इस फ़ाइल को दूसरे GUI सक्षम कंप्यूटर पर कॉपी कर सकते हैं और यह इस तरह दिखेगा: duc.png

नोट: Duc उस उपकरण का प्रतिस्थापन है जिसका @OCTAGRAM ने अपने उत्तर में उल्लेख किया है।

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