Мой облачный сервер Ubuntu оставил только 900 МБ дискового пространства.
Я просто опустошу каталог / tmp и буду интересоваться, есть ли другое место для очистки.
sudo docker container prune -f && sudo docker image prune -f
Мой облачный сервер Ubuntu оставил только 900 МБ дискового пространства.
Я просто опустошу каталог / tmp и буду интересоваться, есть ли другое место для очистки.
sudo docker container prune -f && sudo docker image prune -f
Ответы:
sudo apt-get autoremove
Это может убрать много болтовни (старые ядра и т. Д.), Которые были заменены. Вы можете сделать то же самое в Synaptic (загрузить его и выбрать кнопку состояния, а затем опцию «Автоудаление»).
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
Источник: Limpiando Ubuntu: Командос у programas (actualización) ( Google переведено )
clean
освободил довольно много места. Сразу после этого я побежал, autoclean
и мое свободное место сократилось на 45 МБ. Запуск clean
снова освободил это дополнительное пространство.
dpkg --get-selections | grep linux-image
чего я вызвал ошибку при загрузке - ubuntu исчез из меню загрузки grub - этот ответ устранил проблему - попробуйте не удалять последний образ
sudo apt-get clean
он просто упростит удаление всех локальных копий пакетов, которые могут у вас быть загружается при выполнении установки + обновление. Это почти очистит каталог / var / cache / apt / archives. ... Так что в следующий раз, когда вы запустите, sudo apt-get update
он все заново загрузит (уже там). Просто хедз-ап! .. :)
показать топ 10 самых больших подкаталогов в текущем каталоге.
du -sk * | sort -nr | head -10
используйте filelight или 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
это часть пакета: debian-goodies
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!
Я действительно рекомендую вам программу BleachBit, которая очищает все в Ubuntu.
Установите его с помощью следующей команды:
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, проверьте папку журнала. На одной из моих машин UFW генерировал 8 Гб бревен за пару дней.
Вы также можете очистить кэш apt с помощью:
sudo apt-get clean
Попробуйте использовать BleachBit ( находится на sourceforge ). Это отличная программа. Основная идея заключается в том, что он быстро освобождает дисковое пространство и удаляет много мусора, скрытого в системе. Есть около 70 приложений, которые он может распознать и стереть. Также есть возможность использовать его, чтобы «стереть» свободное место на диске. Я думаю об этом как CCleaner из Windows только для Linux.
Проверьте наличие большого количества файлов журнала:
sudo du -h /var/log
Или, как указывает rubo77 в комментариях , вы можете использовать инструмент использования диска 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. В 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 на нужную вам файловую систему или папку / файл. Обратите внимание, что для дефрагментации устройства (например, жесткого диска) вам нужны привилегии root, но не для ваших собственных файлов.
Источник (немецкий): здесь
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
Используйте localepurge для удаления неиспользуемых языков в вашей системе:
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
Отличный графический графический инструмент для удовлетворения всех потребностей:
sudo apt-get install bleachbit
Кроме того, вы можете удалить man-страницы и документацию, как описано в Ubuntu Wiki :
Создайте файл /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/*
Удалите тот же набор файлов и каталогов в postinst проекта-config. Пример:
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
. В случае, если вы только что выполнили apt-get ugrade и получили новое ядро, это может быть причиной того, что текущий используемый вами kurnel не самый новый, который установлен? Сделайте перезагрузку, прежде чем запускать этот скрипт
Каталог '/ tmp' никогда не следует очищать вручную, если в этом нет крайней необходимости (т. Е. Закрытое приложение не очищало после себя).
Вы можете искать, где место может быть заполнено, используя команду 'du'; обычно интересные места находятся внутри '/ var'. Чтобы назвать двух обычных подозреваемых, «/ var / log» и «/ var / cache». Хотя у меня было несколько пользователей, которые устанавливали утилиту резервного копирования и никогда не понимали, что она создает ГБ инкрементных резервных копий в / var / backup, которые создаются в течение недели или месяца для заполнения всего дискового пространства.
Используйте убунту-твик для очистки.
он очищает все * .deb, которые загружаются в установочные приложения.
Если вы уже удалили много мусора, но пространство на диске не выглядит чистым, просто перезагрузите Ubuntu. Или, если вы не хотите перезагружаться, просто запустите команду, как в похожем вопросе .
sudo service rsyslog restart
Когда мне нужно освободить больше места на серверах, я использую эту команду. Он находит все файлы, размер которых превышает 50 МБ, и "du -h" составляет лучший список файлов, а "sort -n" после нумерации списка каналов сортируется по размеру файла.
find / -size +50M -type f -exec du -h {} \; | sort -n
ncdu /
вместо
du -h
, использовать sort -h
также.