मेरे उबंटू क्लाउड सर्वर ने केवल 900MB डिस्क स्थान छोड़ा है।
मैं केवल निर्देशिका / tmp को खाली करूंगा और सोचूंगा कि क्या कोई अन्य स्थान साफ करना है।
sudo docker container prune -f && sudo docker image prune -f
मेरे उबंटू क्लाउड सर्वर ने केवल 900MB डिस्क स्थान छोड़ा है।
मैं केवल निर्देशिका / tmp को खाली करूंगा और सोचूंगा कि क्या कोई अन्य स्थान साफ करना है।
sudo docker container prune -f && sudo docker image prune -f
जवाबों:
sudo apt-get autoremove
जो बहुत सारे guff (पुरानी गुठली इत्यादि) को साफ कर सकता है, जिन्हें बदल दिया गया है। आप सिनैप्टिक में एक समान काम कर सकते हैं (इसे लोड करें और स्थिति बटन और फिर ऑटो-हटाने योग्य विकल्प का चयन करें)।
aptitude
इसके बजाय उपयोग करते हैं apt-get
, तो आप जाते ही इसे साफ कर सकते हैं, लेकिन पुराने प्रतिष्ठानों के लिए सुरक्षा अद्यतन के रूप में स्थापित गुठली का बेड़ा इकट्ठा करना काफी आम है।
dpkg --get-selections | grep linux-image
)।
पहले से इंस्टॉल किए गए डाउनलोड किए गए पैकेज (.deb) को हटाने के लिए (और अब ज़रूरत नहीं है)
sudo apt-get clean
आपके कैश में संग्रहीत सभी संग्रहित अभिलेखों को निकालने के लिए जिन्हें अब डाउनलोड नहीं किया जा सकता है (इस प्रकार पैकेज जो अब रिपॉजिटरी में नहीं हैं या जिनके पास रिपॉजिटरी में एक नया संस्करण है)।
sudo apt-get autoclean
अनावश्यक पैकेजों को हटाने के लिए (किसी ऐप को अनइंस्टॉल करने के बाद ऐसे पैकेज हो सकते हैं जिनकी आपको अब आवश्यकता नहीं है)
sudo apt-get autoremove
पुराने कर्नेल संस्करणों को हटाने के लिए
sudo apt-get remove --purge linux-image-X.X.XX-XX-generic
यदि आप नहीं जानते कि कौन सा कर्नेल संस्करण निकालना है
dpkg --get-selections | grep linux-image
स्रोत: लिम्पियनडो उबंटू : कॉमांडोस वाई प्रोग्रामस (एक्जीकेशियन) ( Google अनुवादित )
clean
ने काफी जगह खाली कर दी। इसके तुरंत बाद, मैं भागा autoclean
और मेरी खाली जगह 45MB कम हो गई। रनिंग clean
ने फिर से इस अतिरिक्त स्थान को जारी किया।
sudo apt-get clean
-simply- संकुल के सभी स्थानीय प्रतिलिपि को हटा देगा जो आपके पास हो सकता है एक इंस्टालेशन + अपग्रेड करते समय डाउनलोड किया गया। यह / var / cache / apt / अभिलेखागार निर्देशिका को लगभग खाली कर देगा। ... तो अगली बार जब आप sudo apt-get update
इसे चलाएंगे तो सब कुछ फिर से डाउनलोड हो जाएगा (पहले से ही)। बस एक सिर-ऊपर! .. :)
वर्तमान dir में शीर्ष 10 सबसे बड़े उपखंडों को दिखाएं।
du -sk * | sort -nr | head -10
फाइललाइट या kDirStat का उपयोग करके देखें कि डिस्क स्थान नेत्रहीन कहाँ जा रहा है
जाँच करें कि क्या आपके पास हटाने के लिए पुरानी गुठली है
ls -lh /boot
सफाई पैकेज
sudo apt-get autoremove
sudo apt-get autoclean
आकार द्वारा क्रमबद्ध सभी स्थापित पैकेजों की सूची देखें। यदि आप कुछ बड़ा देखते हैं और इसका उपयोग नहीं करते हैं - तो इसकी स्थापना रद्द करें
dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -nr | less
अनुवाद के साथ साफ अप्रयुक्त भाषा की फाइलें (उनमें से बहुत सारे हैं)
sudo apt-get install localepurge
/ var / tmp / की सामग्री जांचें
du -sh /var/tmp/
जाँच भी करें
man deborphan
बड़ी फ़ाइलों के लिए खोजें:
find / -type f -size +1024k
या
find / -size +50000 -exec ls -lahg {} \;
बड़े स्थापित पैकेज
dpigs
यह पैकेज का हिस्सा है: डेबियन-गुडीज़
ncdu
, जो यह देखने का एक तेज़ तरीका प्रदान करती है कि कौन सी निर्देशिका आपके डिस्क स्थान का उपयोग कर रही है
kDirStat
द्वारा प्रतिस्थापित किया गया हैbaobab
मैंने पुराने कर्नेल और हेडर फ़ाइलों को हटाकर लगभग 2 गिग्स मुक्त किए:
उपयोग
uname -r
अपने वर्तमान संस्करण की जांच करने के लिए, फिर
dpkg -l linux-image-* linux-headers-*
सभी पुराने कर्नेल और हेडर फ़ाइलों को देखने के लिए
sudo apt-get remove linux-image-<XYZ> linux-headers-<XYZ>
apt-get remove
आदेश, वाइल्डकार्ड का समर्थन करता है तो आप कर सकते हैं apt-get remove linux-image 3.0.* linux-headers-3.0.*
उदाहरण के लिए, एक बार में कई से छुटकारा पाने के।
सुनिश्चित करें कि आप निश्चित रूप से वर्तमान कर्नेल को नहीं मारेंगे! और शायद एक या दो पुराने संस्करण रखें, बस मामले में ... लेकिन 10 या 20 नहीं!
मैं वास्तव में आपको ब्लीचबिट प्रोग्राम की सलाह देता हूं, जो उबंटू की हर चीज को साफ करता है।
निम्नलिखित कमांड का उपयोग करके इसे स्थापित करें:
sudo apt-get install bleachbit
कुछ पैकेज काफी बड़े हो सकते हैं। इनका उपयोग करने का एक सुविधाजनक तरीका है dpigs
। यह डिफ़ॉल्ट रूप से स्थापित नहीं है, लेकिन debian-goodies
( GitHub प्रोजेक्ट ) में पाया जा सकता है
sudo apt-get install debian-goodies
फिर:
$ dpigs
419576 texlive-latex-extra-doc
204112 nvidia-319
175463 google-chrome-stable
141058 linux-image-extra-3.11.0-15-generic
113173 libreoffice-core
104822 valgrind
102322 qt4-doc
93337 blender
91105 texlive-pstricks-doc
90517 libboost1.53-dev
कुछ विकल्प हैं:
-n, --lines=N
Display the N largest packages on the system (default 10).
-s, --status=status-file
Use status-file instead of the default dpkg status file.
-S, --source
Display the largest source packages of binary packages installed
on the system.
-H, --human-readable
Display package sizes in human-readable format (like ls -lh or du -h)
-h, --help
Display this message.
ध्यान दें: यदि आपने अभी कर्नेल को अपग्रेड किया है, तो पुराने संस्करणों को हटाने से पहले रिबूट करें!
यह जांचना याद रखें कि आप किस कर्नेल का उपयोग कर रहे हैं:
uname -r
फिर जड़ के रूप में:
sudo apt-get remove --purge $(dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d')
इस आदेश के साथ आवश्यक गुठली निकालने के लिए सुरक्षित नहीं होने के लिए उस धागे को पढ़ें !
यदि आप यूएफडब्ल्यू का उपयोग करते हैं, तो लॉग फ़ोल्डर की जांच करें। मेरी एक मशीन पर, UFW एक दो दिनों में 8Gb लॉग जेनरेट कर रहा था।
आप apt कैश को भी खाली कर सकते हैं:
sudo apt-get clean
BleachBit ( sourceforge पर स्थित ) का उपयोग करने का प्रयास करें । यह एक शानदार कार्यक्रम है। मूल विचार यह है कि यह डिस्क स्थान को जल्दी से मुक्त करता है और सिस्टम में छिपे हुए बहुत सारे कबाड़ को हटा देता है। लगभग 70 अनुप्रयोग हैं जो इसे पहचान सकते हैं और साफ पोंछ सकते हैं। मुफ्त डिस्क स्थान को "पोंछ" करने के लिए इसका उपयोग करने की क्षमता भी है। मुझे लगता है कि यह केवल linux के लिए खिड़कियों से CCleaner के रूप में है।
लॉग फ़ाइलों की बड़ी संख्या के लिए भी जाँच करें:
sudo du -h /var/log
या जैसा कि रूबॉइंट कमेंड्स में बताता है, आप NCurses डिस्क उपयोग टूल का उपयोग कर सकते हैं:
sudo ncdu /var/log
sudo ncdu /var/log
सबसे पहले, सभी बड़े फ़ोल्डर्स और फ़ाइलों को सूचीबद्ध करने के लिए एक उपकरण है। लॉन्चर में बस 'बाओबाब' टाइप करें। फ़ोल्डर्स और फ़ाइलों को हटाने से आपको अधिक स्थान प्राप्त करने की आवश्यकता नहीं है।
फिर, डबल फ़ाइलों को हटाने के लिए एक कार्यक्रम है। कार्यक्रम कहा जाता है fslint
। दर्ज करके स्थापित करें
sudo apt-get install fslint
एक टर्मिनल में।
या चित्रमय रूप से
आप पैकेज कैश को भी साफ़ कर सकते हैं
sudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove
चौथा चरण पुरानी कर्नेल प्रविष्टियों को हटाने के लिए है। आप Synaptic को स्थापित और खोलकर ऐसा कर सकते हैं। सिनैप्टिक में, पुराने कर्नेल प्रविष्टियों (प्रत्येक कर्नेल प्रविष्टि जो GRUB में नवीनतम को छोड़कर प्रदर्शित होती है) को खोजें और इसे हटा दें।
एक अच्छा कदम एप्लिकेशन कैश को निकालना है। इसे स्थापित करके चलाएं bleachbit
:
sudo apt-get install bleachbit
या चित्रमय रूप से
महत्वपूर्ण: हटाए गए कैश को पुनर्स्थापित नहीं किया जा सकता है!
अंतिम चरण फ़ाइल सिस्टम को डीफ़्रैग्मेन्ट करना है। इसके लिए निम्न कार्य करें:
cd $HOME
git clone git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git
cd e2fsprogs
./configure
make
इन कमांड्स के साथ, आप e2fsprogs को डाउनलोड और संकलित करें। (यदि आपको या समुदाय को प्रोग्राम इंस्टॉल करने का बेहतर तरीका मिल गया है, तो कृपया संपादित करें!)
यह भी सुनिश्चित करें कि git-core
स्थापित है। यदि नहीं, तो निष्पादित करें:
sudo apt-get install git-core
या सॉफ्टवेयर सेंटर का उपयोग कर
अब आप के साथ कार्यक्रम चला सकते हैं:
cd $HOME/e2fsprogs/misc
./e4defrag /dev/sda1 #defragment /dev/sda1
./e4defrag -v /dev/sda1 # verbose output
./e4defrag -c /dev/sda1 # see overview of fragmentation status
फ़ाइल सिस्टम या फ़ोल्डर / फ़ाइल जिसे आप चाहते हैं, के साथ / dev / sda1 को बदलें। ध्यान दें कि किसी डिवाइस (जैसे HDD) को डीफ़्रैग्मेन्ट करने के लिए आपको रूट विशेषाधिकार की आवश्यकता होती है, लेकिन आपकी अपनी फ़ाइलों के लिए नहीं।
स्रोत (जर्मन): यहाँ
sudo apt-get install ncdu
यह स्क्रिप्ट सांत्वना पर सबसे बड़ा हिस्सा निष्पादित करेगा:
--purge
स्विच का उपयोग नहीं करते हैं तो apt-get
)इस सामग्री के साथ एक फ़ाइल बनाएं और इसे निष्पादन योग्य अधिकार दें:
#!/bin/bash
# Adapted from 71529-ubucleaner.sh - http://www.opendesktop.org/CONTENT/content-files/71529-ubucleaner.sh
OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
YELLOW="\033[1;33m"; RED="\033[0;31m"; ENDCOLOR="\033[0m"
if [ $USER != root ]; then
echo -e $RED"Error: must be root! Exiting..."$ENDCOLOR
exit 0
fi
echo -e $YELLOW"Cleaning apt ..."$ENDCOLOR
aptitude clean
apt-get autoremove
apt-get autoclean
echo -e $YELLOW"Those packages were uninstalled without --purge:"$ENDCOLOR
echo $OLDCONF
#apt-get purge "$OLDCONF" # fixes the error in the original script
for PKGNAME in $OLDCONF ; do # a better way to handle errors
echo -e $YELLOW"Purge package $PKGNAME"
apt-cache show "$PKGNAME"|grep Description: -A3
apt-get -y purge "$PKGNAME"
done
echo -e $YELLOW"Removing old kernels..."$ENDCOLOR
echo current kernel you are using:
uname -a
aptitude purge $OLDKERNELS
echo -e $YELLOW"Emptying every trashes..."$ENDCOLOR
rm -rf /home/*/.local/share/Trash/*/** &> /dev/null
rm -rf /root/.local/share/Trash/*/** &> /dev/null
echo -e $YELLOW"Script Finished!"$ENDCOLOR
71529-ubucleaner.sh से अनुकूलित
कुछ उपकरण जो आपको बड़े फ़ोल्डर और पैकेज खोजने में मदद करेंगे:
sudo apt-get install ncdu debian-goodies deborphan
sudo ncdu / # lists all folders by size on the console (like the gui `baobab`)
dpigs -H # shows large packages that you don't use
man deborphan # finds packages that have no packages depending on them
deborphan --guess-all --libdevel | xargs apt-get -s purge
अपने सिस्टम में अप्रयुक्त भाषाओं की स्थापना रद्द करने के लिए स्थानीय स्तर का उपयोग करें:
sudo apt-get install localepurge
LANG=c snap list --all | awk '/disabled/{print $1, $3}' | \
while read snapname revision; do \
snap remove "$snapname" --revision="$revision"; \
done
सभी आवश्यकताओं को पूरा करने के लिए एक बढ़िया चित्रमय GUI उपकरण:
sudo apt-get install bleachbit
इसके अतिरिक्त आप उबंटू विकी में बताए गए मैनपेज और डॉक्यूमेंटेशन को हटा सकते हैं :
एक फ़ाइल /etc/dpkg/dpkg.cfg.d/01_nodoc बनाएं जो वांछित फ़िल्टर निर्दिष्ट करती है। उदाहरण:
path-exclude /usr/share/doc/*
# if we need to keep copyright files for legal reasons:
# path-include /usr/share/doc/*/copyright
path-exclude /usr/share/man/*
path-exclude /usr/share/groff/*
path-exclude /usr/share/info/*
# lintian stuff is small, but really unnecessary
path-exclude /usr/share/lintian/*
path-exclude /usr/share/linda/*
प्रोजेक्ट-कॉन्फिगर के पोस्टस्टीन में फ़ाइलों और निर्देशिकाओं के एक ही सेट को निकालें। उदाहरण:
echo "Removing documentation..."
# if we need to keep copyright files for legal reasons:
# find /usr/share/doc -depth -type f ! -name copyright | xargs rm || true
# else:
find /usr/share/doc -depth -type f | xargs rm || true
rm -rf /usr/share/man/* /usr/share/groff/* /usr/share/info/* /usr/share/lintian/* /usr/share/linda/* /var/cache/man/*
uname -a
। यदि आपने अभी-अभी-अभी-पहले कुरकुरा किया और नया कर्नेल प्राप्त किया, तो इसका कारण यह हो सकता है, कि आपके द्वारा उपयोग किया जा रहा वर्तमान कर्नेल नवीनतम स्थापित नहीं है? इस स्क्रिप्ट शुरू करने से पहले फिर एक repoot है
'/ Tmp' निर्देशिका को तब तक मैन्युअल रूप से साफ नहीं किया जाना चाहिए जब तक कि पूरी तरह से आवश्यक न हो (यानी: एक बंद आवेदन स्वयं के बाद साफ-सुथरा नहीं हुआ)।
आप खोज कर सकते हैं कि 'डु' कमांड का उपयोग करके स्थान कहां से भर सकता है; आमतौर पर रुचि के स्थान '/ var' के अंदर होते हैं। दो सामान्य संदिग्धों का नाम '/ var / log' और '/ var / cache'। हालाँकि, मेरे पास कुछ यूज़र्स हैं जो एक बैकअप यूटिलिटी इंस्टॉल करते हैं और कभी भी यह महसूस नहीं करते हैं कि यह '/ var / backup' में GB के वृद्धिशील बैकअप बनाता है जो पूरे डिस्क स्थान को भरने के लिए एक सप्ताह या महीने का निर्माण करता है।
साफ करने के लिए ubuntu-tweak का उपयोग करें ।
यह सभी सफाई करता है।
यदि आपने पहले से ही बहुत सारे कबाड़ को हटा दिया है, लेकिन डिस्क स्थान केवल रिबूट ubuntu साफ नहीं लगता है। या अगर आप इसी तरह के सवाल में सिर्फ कमांड चलाना नहीं चाहते हैं तो रीबूट करें ।
sudo service rsyslog restart
जब मुझे सर्वर पर अधिक खाली जगह बनाने की आवश्यकता होती है तो मैं इस कमांड का उपयोग करता हूं। यह सभी फ़ाइलों को बड़ा लगता है, फिर 50 एमबी और "डु-एच" फाइलों की बेहतर सूची बनाता है और "सॉर्ट-एन" के बाद पाइप को सूची के आकार के अनुसार फ़ाइल आकार द्वारा क्रमबद्ध किया जाता है।
find / -size +50M -type f -exec du -h {} \; | sort -n
ncdu /
इसके बजाय धूल का इस्तेमाल करना बेहतर
du -h
, sort -h
साथ ही उपयोग करें ।